Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

RTPPacket.h

Go to the documentation of this file.
00001 /***************************************************************************
00002                           RTPPacket.h  -  description
00003                              -------------------
00004     begin                : Mon Oct 22 2001
00005     copyright            : (C) 2001 by Matthias Oppitz
00006     email                : Matthias.Oppitz@gmx.de
00007  ***************************************************************************/
00008 
00009 /***************************************************************************
00010  *                                                                         *
00011  *   This program is free software; you can redistribute it and/or modify  *
00012  *   it under the terms of the GNU General Public License as published by  *
00013  *   the Free Software Foundation; either version 2 of the License, or     *
00014  *   (at your option) any later version.                                   *
00015  *                                                                         *
00016  ***************************************************************************/
00017 
00022 #ifndef __RTPPACKET_H__
00023 #define __RTPPACKET_H__
00024 
00025 #include "omnetpp.h"
00026 
00027 #include "types.h"
00028 
00036 class RTPPacket : public cPacket {
00037 
00038         public:
00042                 RTPPacket(const char *name = NULL);
00043                 
00047                 RTPPacket(const RTPPacket& packet);
00048                 
00052                 virtual ~RTPPacket();
00053                 
00057                 RTPPacket& operator=(const RTPPacket& packet);
00058                 
00062                 virtual cObject *dup() const;
00063                 
00067                 virtual const char *className() const;
00068                 
00072                 virtual void info(char *buf);
00073                 
00077                 virtual void writeContents(ostream& os);
00078                 
00082                 virtual int marker();
00083                 
00087                 virtual void setMarker(int marker);
00088                 
00092                 virtual int payloadType();
00093                 
00097                 virtual void setPayloadType(int payloadType);
00098                 
00102                 virtual u_int16 sequenceNumber();
00103                 
00107                 virtual void setSequenceNumber(u_int16 sequenceNumber);
00108                 
00112                 virtual u_int32 timeStamp();
00113                 
00117                 virtual void setTimeStamp(u_int32 timeStamp);
00118                 
00122                 virtual u_int32 ssrc();
00123                 
00127                 virtual void setSSRC(u_int32 ssrc);
00128                 
00132                 static int fixedHeaderLength();
00133                 
00138                 virtual int headerLength();
00139                 
00143                 virtual int payloadLength();
00144                 
00149                 static int compareFunction(cObject *packet1, cObject *packet2);
00150 
00151         protected:
00152         
00156                 int _version;
00157                 
00162                 int _padding;
00163                 
00168                 int _extension;
00169                 
00175                 int _csrcCount;
00176                 
00180                 int _marker;
00181                 
00185                 int _payloadType;
00186                 
00190                 u_int16 _sequenceNumber;
00191                 
00195                 u_int32 _timeStamp;
00196                 
00200                 u_int32 _ssrc;
00201                 
00202                 // no mixers, no contributing sources
00203                 //int _csrc[];
00204                 
00205                 
00206 
00207 };
00208 
00209 #endif

Generated on Tue Sep 12 12:20:20 2006 for RTP model for OMNeT++ by  doxygen 1.4.2