RTCP_SDES_Packet Class Reference

The Source Description packet is sent by all members of a session. At a minimum, the canonical name (or CNAME) is sent with each RTCP packet. Other items such as name, email, or location are included less frequently. More...

#include <RTCP_Packet.h>

Inheritance diagram for RTCP_SDES_Packet:

Inheritance graph
[legend]
Collaboration diagram for RTCP_SDES_Packet:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 RTCP_SDES_Packet (char *buffer, int *len)
 Constructor for incoming SDES packets.
 RTCP_SDES_Packet (void)
 Constructor for outgoing SDES packets.
virtual ~RTCP_SDES_Packet (void)
 Destructor.
void add_item (ACE_UINT32 ssrc, unsigned char type, unsigned char length, const char *data)
void add_priv_item (ACE_UINT32 ssrc, unsigned char nameLength, const char *name, unsigned char dataLength, const char *data)
unsigned int packet_size (void)
 Returns the size of the packet in bytes.
void dump (void)
 Prints the contents of the packet.
ACE_UINT32 ssrc (void)

Private Member Functions

void build_packet (void)
 Used to create the byte representation of the RTCP packet.
void add_chunk (ACE_UINT32 ssrc)
 Add a chunk to the packet.

Private Attributes

unsigned long num_chunks_
sdesChunk_tchunk_
 A linked list of chunks for this packet (only 1 for non-mixers).

Detailed Description

The Source Description packet is sent by all members of a session. At a minimum, the canonical name (or CNAME) is sent with each RTCP packet. Other items such as name, email, or location are included less frequently.


Constructor & Destructor Documentation

RTCP_SDES_Packet::RTCP_SDES_Packet ( char *  buffer,
int *  len 
)

Constructor for incoming SDES packets.

RTCP_SDES_Packet::RTCP_SDES_Packet ( void   ) 

Constructor for outgoing SDES packets.

RTCP_SDES_Packet::~RTCP_SDES_Packet ( void   )  [virtual]

Destructor.


Member Function Documentation

void RTCP_SDES_Packet::add_chunk ( ACE_UINT32  ssrc  )  [private]

Add a chunk to the packet.

void RTCP_SDES_Packet::add_item ( ACE_UINT32  ssrc,
unsigned char  type,
unsigned char  length,
const char *  data 
)

This will add a standard item of type and length for the ssrc specified. When the first item for a ssrc is added, a chunk is created. Subsequent items for that ssrc are added to the same chunk. New chunks are created for each unique ssrc.

void RTCP_SDES_Packet::add_priv_item ( ACE_UINT32  ssrc,
unsigned char  nameLength,
const char *  name,
unsigned char  dataLength,
const char *  data 
)

This will add a private item using the name and data for the ssrc specified. When the first item for a ssrc is added, a chunk is created. Subsequent items for that ssrc are added to the same chunk. New chunks are created for each unique ssrc.

void RTCP_SDES_Packet::build_packet ( void   )  [private, virtual]

Used to create the byte representation of the RTCP packet.

Implements RTCP_Packet.

void RTCP_SDES_Packet::dump ( void   ) 

Prints the contents of the packet.

unsigned int RTCP_SDES_Packet::packet_size ( void   )  [virtual]

Returns the size of the packet in bytes.

Implements RTCP_Packet.

ACE_UINT32 RTCP_SDES_Packet::ssrc ( void   )  [inline]

This returns the synchronization source id for this packet. This assumes that this source is only receiving messages from end systems (i.e. only one source id per SDES)


Member Data Documentation

sdesChunk_t* RTCP_SDES_Packet::chunk_ [private]

A linked list of chunks for this packet (only 1 for non-mixers).

unsigned long RTCP_SDES_Packet::num_chunks_ [private]

The number of chunks contained in this packet. 1 for end systems, 1+ for mixers


The documentation for this class was generated from the following files:
Generated on Tue Jan 30 14:29:22 2007 for TAO_AV by  doxygen 1.4.7-1