Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members

# 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:

[legend]
Collaboration diagram for RTCP_SDES_Packet:

[legend]
List of all members.

## Public Methods
| 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 Methods
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_t * | chunk_
| 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:

- RTCP_Packet.h
- RTCP_Packet.cpp