RTP_ControlFrame Class Reference

#include <rtp.h>


Public Types

 e_IntraFrameRequest = 192
 e_SenderReport = 200
 e_ReceiverReport
 e_SourceDescription
 e_Goodbye
 e_ApplDefined
 e_TransportLayerFeedBack
 e_PayloadSpecificFeedBack
 e_END
 e_CNAME
 e_NAME
 e_EMAIL
 e_PHONE
 e_LOC
 e_TOOL
 e_NOTE
 e_PRIV
 NumDescriptionTypes
 e_PictureLossIndication = 1
 e_SliceLostIndication
 e_ReferencePictureSelectionIndication
 e_FullIntraRequest
 e_TemporalSpatialTradeOffRequest
 e_TemporalSpatialTradeOffNotification
 e_VideoBackChannelMessage
 e_ApplicationLayerFbMessage = 15
enum  PayloadTypes {
  e_IntraFrameRequest = 192, e_SenderReport = 200, e_ReceiverReport, e_SourceDescription,
  e_Goodbye, e_ApplDefined, e_TransportLayerFeedBack, e_PayloadSpecificFeedBack
}
enum  DescriptionTypes {
  e_END, e_CNAME, e_NAME, e_EMAIL,
  e_PHONE, e_LOC, e_TOOL, e_NOTE,
  e_PRIV, NumDescriptionTypes
}
enum  PayloadSpecificFbTypes {
  e_PictureLossIndication = 1, e_SliceLostIndication, e_ReferencePictureSelectionIndication, e_FullIntraRequest,
  e_TemporalSpatialTradeOffRequest, e_TemporalSpatialTradeOffNotification, e_VideoBackChannelMessage, e_ApplicationLayerFbMessage = 15
}

Public Member Functions

 RTP_ControlFrame (PINDEX compoundSize=2048)
unsigned GetVersion () const
unsigned GetCount () const
void SetCount (unsigned count)
unsigned GetPayloadType () const
void SetPayloadType (unsigned t)
PINDEX GetPayloadSize () const
void SetPayloadSize (PINDEX sz)
BYTE * GetPayloadPtr () const
PBoolean ReadNextPacket ()
PBoolean StartNewPacket ()
void EndPacket ()
PINDEX GetCompoundSize () const
void Reset (PINDEX size)
void StartSourceDescription (DWORD src)
void AddSourceDescriptionItem (unsigned type, const PString &data)
unsigned GetFbType () const
void SetFbType (unsigned type, PINDEX fciSize)

Protected Attributes

PINDEX compoundOffset
PINDEX payloadSize

Data Structures

struct  FbFCI
struct  FbFIR
struct  FbTSTO
struct  ReceiverReport
struct  SenderReport
struct  SourceDescription


Detailed Description

An RTP control frame encapsulation.


Member Enumeration Documentation

enum RTP_ControlFrame::DescriptionTypes

Enumerator:
e_END 
e_CNAME 
e_NAME 
e_EMAIL 
e_PHONE 
e_LOC 
e_TOOL 
e_NOTE 
e_PRIV 
NumDescriptionTypes 

enum RTP_ControlFrame::PayloadSpecificFbTypes

Enumerator:
e_PictureLossIndication 
e_SliceLostIndication 
e_ReferencePictureSelectionIndication 
e_FullIntraRequest 
e_TemporalSpatialTradeOffRequest 
e_TemporalSpatialTradeOffNotification 
e_VideoBackChannelMessage 
e_ApplicationLayerFbMessage 

enum RTP_ControlFrame::PayloadTypes

Enumerator:
e_IntraFrameRequest 
e_SenderReport 
e_ReceiverReport 
e_SourceDescription 
e_Goodbye 
e_ApplDefined 
e_TransportLayerFeedBack 
e_PayloadSpecificFeedBack 


Constructor & Destructor Documentation

RTP_ControlFrame::RTP_ControlFrame ( PINDEX  compoundSize = 2048  ) 


Member Function Documentation

void RTP_ControlFrame::AddSourceDescriptionItem ( unsigned  type,
const PString &  data 
)

Parameters:
type  Description type
data  Data for description

void RTP_ControlFrame::EndPacket (  ) 

PINDEX RTP_ControlFrame::GetCompoundSize (  )  const

unsigned RTP_ControlFrame::GetCount (  )  const [inline]

unsigned RTP_ControlFrame::GetFbType (  )  const [inline]

BYTE* RTP_ControlFrame::GetPayloadPtr (  )  const

PINDEX RTP_ControlFrame::GetPayloadSize (  )  const [inline]

unsigned RTP_ControlFrame::GetPayloadType (  )  const [inline]

unsigned RTP_ControlFrame::GetVersion (  )  const [inline]

PBoolean RTP_ControlFrame::ReadNextPacket (  ) 

void RTP_ControlFrame::Reset ( PINDEX  size  ) 

void RTP_ControlFrame::SetCount ( unsigned  count  ) 

void RTP_ControlFrame::SetFbType ( unsigned  type,
PINDEX  fciSize 
)

void RTP_ControlFrame::SetPayloadSize ( PINDEX  sz  ) 

void RTP_ControlFrame::SetPayloadType ( unsigned  t  ) 

PBoolean RTP_ControlFrame::StartNewPacket (  ) 

void RTP_ControlFrame::StartSourceDescription ( DWORD  src  ) 

Parameters:
src  SSRC/CSRC identifier


Field Documentation

PINDEX RTP_ControlFrame::compoundOffset [protected]

PINDEX RTP_ControlFrame::payloadSize [protected]


The documentation for this class was generated from the following file:
Generated on Sun Nov 21 20:20:54 2010 for OPAL by  doxygen 1.4.7