# RTCPCompoundHandler Class Reference
[RTCP compound packets manipulation.]

low level structs and RTCP packet parsing and building methods. More...

`#include <rtcppkt.h>`

Inheritance diagram for RTCPCompoundHandler:

List of all members.

## Classes

struct | APPPacket
| Struct for APP (application specific) RTCP packets. More...
struct | BYEPacket
| Struct for BYE (leaving session) RTCP packets. More...
struct | FIRPacket
| Struct for Full Intra-frame Request (FIR) RTCP packet. More...
struct | NACKPacket
| Struct for Negative ACKnowledgements (NACK) RTCP packet. More...
struct | ReceiverInfo
| Struct for the data contained in a receiver info block. More...
struct | RecvReport
| raw structure of the source and every receiver report in an SR or RR RTCP packet. More...
struct | RRBlock
| Struct for a receiver info block in a SR (sender report) or an RR (receiver report) RTCP packet. More...
struct | RTCPFixedHeader
| Fixed RTCP packet header. More...
struct | RTCPPacket
| Struct representing general RTCP packet headers as they are sent through the network. More...
struct | SDESChunk
| Struct for a chunk of items in a SDES RTCP packet. More...
struct | SDESItem
| Struct for an item description of a SDES packet. More...
struct | SenderInfo
| Struct for the sender info block in a SR (sender report) RTCP packet. More...
struct | SendReport
| Struct for SR (sender report) RTCP packets. More...

## Public Member Functions

void | setPathMTU (uint16 mtu)
uint16 | getPathMTU ()

## Protected Types

enum | { defaultPathMTU = 1500 }

## Protected Member Functions

| RTCPCompoundHandler (uint16 mtu=defaultPathMTU)
| ~RTCPCompoundHandler ()
bool | checkCompoundRTCPHeader (size_t len)
| Perform RTCP compound packet header validity check as specified in draft-ietv-avt-rtp-new.

## Protected Attributes

unsigned char * | rtcpSendBuffer
unsigned char * | rtcpRecvBuffer

## Friends

class | RTCPSenderInfo
class | RTCPReceiverInfo

## Detailed Description

low level structs and RTCP packet parsing and building methods.

Intended to be used, through inheritance, in RTCP management classes, such as QueueRTCPManager.

Author:
  Federico Montesino Pouzols <fedemp@altern.org>

## Member Enumeration Documentation

anonymous enum`[protected]`

Enumerator:

  defaultPathMTU |

## Constructor & Destructor Documentation

RTCPCompoundHandler::RTCPCompoundHandler | ( | uint16 | mtu = `defaultPathMTU` ) | `[protected]`

RTCPCompoundHandler::~RTCPCompoundHandler | ( | ) | `[protected]`

## Member Function Documentation

bool RTCPCompoundHandler::checkCompoundRTCPHeader | ( | size_t | len ) | `[protected]`

Perform RTCP compound packet header validity check as specified in draft-ietv-avt-rtp-new.

This method follows appendix A.2. Correct version, payload type, padding bit and length of every RTCP packet in the compound are verified.

Parameters:

  len | length of the RTCP compound packet in the reception buffer

Returns:
  whether the header is valid.

uint16 RTCPCompoundHandler::getPathMTU | ( | ) | `[inline]`

void RTCPCompoundHandler::setPathMTU | ( | uint16 | mtu ) | `[inline]`

## Friends And Related Function Documentation

friend class RTCPReceiverInfo `[friend]`

friend class RTCPSenderInfo `[friend]`

## Member Data Documentation

unsigned char* RTCPCompoundHandler::rtcpRecvBuffer `[protected]`

unsigned char* RTCPCompoundHandler::rtcpSendBuffer `[protected]`

The documentation for this class was generated from the following file:

- rtcppkt.h