Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

RTPMpegPacket Class Reference

#include <RTPMpegPacket.h>

List of all members.


Detailed Description

An RTPMpegPacket is intended to be capsulated into an RTPPacket when transmitting mpeg data with rtp under the rtp audio/video profile. It stores information about the mpeg data as described in rfc 2250. This implementation doesn't transport real mpeg data. It is intended to simulate storing mpeg data by adding length. Currently only one header field (picture type) is filled with the right value. The values for the other header fields can't be determined by reading the gdf file.
See also:
RTPAVProfilePayload32Sender

RTPAVProfilePayload32Receiver


Public Member Functions

 RTPMpegPacket (const char *name=NULL)
 RTPMpegPacket (const RTPMpegPacket &packet)
virtual ~RTPMpegPacket ()
RTPMpegPacketoperator= (const RTPMpegPacket &packet)
virtual cObject * dup () const
virtual const char * className () const
virtual int payloadLength ()
virtual int pictureType ()
virtual void setPictureType (int pictureType)

Static Public Member Functions

static int headerLength ()

Private Attributes

int _mzb
 Not used.
int _two
 Not used.
int _temporalReference
 Not used.
int _activeN
 Not used.
int _newPictureHeader
 Not used.
int _sequenceHeaderPresent
 Not used.
int _beginningOfSlice
 Not used.
int _endOfSlice
 Not used.
int _pictureType
 The picture type of the frame this packet belongs to.
int _fbv
 Not used.
int _bfc
 Not used.
int _ffv
 Not used.
int _ffc
 Not used.


Constructor & Destructor Documentation

RTPMpegPacket::RTPMpegPacket const char *  name = NULL  ) 
 

Default constructor.

00027                                                     : cPacket(name) {
00028     _mzb = 0;
00029     _two = 0;
00030     _temporalReference = 0;
00031     _activeN = 0;
00032     _newPictureHeader = 0;
00033     _sequenceHeaderPresent = 0;
00034     _beginningOfSlice = 0;
00035     _endOfSlice = 0;
00036     _pictureType = 0;
00037     _fbv = 0;
00038     _bfc = 0;
00039     _ffv = 0;
00040     _ffc = 0;
00041     // the standard header is 4 bytes long
00042     setLength(headerLength());
00043 };

RTPMpegPacket::RTPMpegPacket const RTPMpegPacket packet  ) 
 

Copy constructor.

00046                                                         : cPacket(packet) {
00047     setName(packet.name());
00048     _mzb = packet._mzb;
00049     _two = packet._two;
00050     _temporalReference = packet._temporalReference;
00051     _activeN = packet._activeN;
00052     _newPictureHeader = packet._newPictureHeader;
00053     _sequenceHeaderPresent = packet._sequenceHeaderPresent;
00054     _beginningOfSlice = packet._beginningOfSlice;
00055     _endOfSlice = packet._endOfSlice;
00056     _pictureType = packet._pictureType;
00057     _fbv = packet._fbv;
00058     _bfc = packet._bfc;
00059     _ffv = packet._ffv;
00060     _ffc = packet._ffc;
00061 };

RTPMpegPacket::~RTPMpegPacket  )  [virtual]
 

Destructor.

00064                               {
00065 };


Member Function Documentation

const char * RTPMpegPacket::className  )  const [virtual]
 

Returns the class name "RTPMpegPacket".

00079                                            {
00080     return "RTPMpegPacket";
00081 };

cObject * RTPMpegPacket::dup  )  const [virtual]
 

Duplicates the RTPMpegPacket by calling the copy constructor.

00074                                   {
00075     return new RTPMpegPacket(*this);
00076 };

int RTPMpegPacket::headerLength  )  [static]
 

Returns the constant header length (4 bytes).

00084                                 {
00085     return 4;
00086 };

RTPMpegPacket & RTPMpegPacket::operator= const RTPMpegPacket packet  ) 
 

Assignment operator.

00068                                                                    {
00069     cPacket::operator=(packet);
00070     return *this;
00071 };

int RTPMpegPacket::payloadLength  )  [virtual]
 

Returns the size of mpeg data.

00089                                  {
00090     return length() - headerLength();
00091 };

int RTPMpegPacket::pictureType  )  [virtual]
 

Returns the picture type of the frame the data in this packet belongs to.

00094                                {
00095     return _pictureType;
00096 };

void RTPMpegPacket::setPictureType int  pictureType  )  [virtual]
 

Sets the picture type.

00099                                                   {
00100     _pictureType = pictureType;
00101 }


Member Data Documentation

int RTPMpegPacket::_activeN [private]
 

Not used.

int RTPMpegPacket::_beginningOfSlice [private]
 

Not used.

int RTPMpegPacket::_bfc [private]
 

Not used.

int RTPMpegPacket::_endOfSlice [private]
 

Not used.

int RTPMpegPacket::_fbv [private]
 

Not used.

int RTPMpegPacket::_ffc [private]
 

Not used.

int RTPMpegPacket::_ffv [private]
 

Not used.

int RTPMpegPacket::_mzb [private]
 

Not used.

int RTPMpegPacket::_newPictureHeader [private]
 

Not used.

int RTPMpegPacket::_pictureType [private]
 

The picture type of the frame this packet belongs to.

int RTPMpegPacket::_sequenceHeaderPresent [private]
 

Not used.

int RTPMpegPacket::_temporalReference [private]
 

Not used.

int RTPMpegPacket::_two [private]
 

Not used.


The documentation for this class was generated from the following files:
Generated on Sat Apr 1 20:52:24 2006 for INET Framework for OMNeT++/OMNEST by  doxygen 1.4.1