# OpalRFC2833Proto Class Reference

`#include <rfc2833.h>`

Collaboration diagram for OpalRFC2833Proto:

[legend]

## Public Member Functions

| OpalRFC2833Proto (const PNotifier &receiveNotifier, const OpalMediaFormat &mediaFormat)
| ~OpalRFC2833Proto ()
virtual bool | SendToneAsync (char tone, unsigned duration)
virtual void | OnStartReceive (char tone, unsigned timestamp)
virtual void | OnStartReceive (char tone)
virtual void | OnEndReceive (char tone, unsigned duration, unsigned timestamp)
void | UseRTPSession (bool rx, OpalRTPSession *session)
OpalMediaFormat | GetTxMediaFormat () const
OpalMediaFormat | GetRxMediaFormat () const
void | SetTxMediaFormat (const OpalMediaFormat &mediaFormat)
void | SetRxMediaFormat (const OpalMediaFormat &mediaFormat)

## Static Public Member Functions

static PINDEX | ASCIIToRFC2833 (char tone, bool hasNSE)
static char | RFC2833ToASCII (PINDEX rfc2833, bool hasNSE)

## Protected Types

| ReceiveIdle
| ReceiveActive
| ReceiveEnding
| TransmitIdle
| TransmitActive
| TransmitEnding1
| TransmitEnding2
| TransmitEnding3
enum | { ReceiveIdle, ReceiveActive, ReceiveEnding }
enum | { TransmitIdle, TransmitActive, TransmitEnding1, TransmitEnding2, TransmitEnding3 }

## Protected Member Functions

void | SendAsyncFrame ()
| PDECLARE_RTPFilterNotifier (OpalRFC2833Proto, ReceivedPacket)
| PDECLARE_NOTIFIER (PTimer, OpalRFC2833Proto, ReceiveTimeout)
| PDECLARE_NOTIFIER (PTimer, OpalRFC2833Proto, AsyncTimeout)

## Protected Attributes

OpalMediaFormat | m_baseMediaFormat
RTP_DataFrame::PayloadTypes | m_txPayloadType
RTP_DataFrame::PayloadTypes | m_rxPayloadType
OpalRFC2833EventsMask | m_txEvents
OpalRFC2833EventsMask | m_rxEvents
PNotifier | m_receiveNotifier
OpalRTPSession::FilterNotifier | m_receiveHandler
enum OpalRFC2833Proto:: { ... } | m_receiveState
PMutex | m_receiveMutex
BYTE | m_receivedTone
unsigned | m_tonesReceived
PTimer | m_receiveTimer
DWORD | m_previousReceivedTimestamp
enum OpalRFC2833Proto:: { ... } | m_transmitState
PMutex | m_sendMutex
OpalRTPSession * | m_rtpSession
PTimer | m_asyncTransmitTimer
PTimer | m_asyncDurationTimer
DWORD | m_transmitTimestamp
bool | m_rewriteTransmitTimestamp
PTimeInterval | m_asyncStart
BYTE | m_transmitCode
unsigned | m_transmitDuration

## Member Enumeration Documentation

anonymous enum`[protected]`

Enumerator:

  ReceiveIdle |
  ReceiveActive |
  ReceiveEnding |

anonymous enum`[protected]`

Enumerator:

  TransmitIdle |
  TransmitActive |
  TransmitEnding1 |
  TransmitEnding2 |
  TransmitEnding3 |

## Constructor & Destructor Documentation

OpalRFC2833Proto::OpalRFC2833Proto | ( | const PNotifier & | receiveNotifier,
|  | const OpalMediaFormat & | mediaFormat |
| ) |  |  |

OpalRFC2833Proto::~OpalRFC2833Proto | ( |  | ) |

## Member Function Documentation

static PINDEX OpalRFC2833Proto::ASCIIToRFC2833 | ( | char | tone,
|  | bool | hasNSE |
| ) |  |  | `[static]`

OpalMediaFormat OpalRFC2833Proto::GetRxMediaFormat | ( |  | ) | const

OpalMediaFormat OpalRFC2833Proto::GetTxMediaFormat | ( |  | ) | const

virtual void OpalRFC2833Proto::OnEndReceive | ( | char | tone,
|  | unsigned | duration,
|  | unsigned | timestamp |
| ) |  |  | `[virtual]`

virtual void OpalRFC2833Proto::OnStartReceive | ( | char | tone | ) | `[virtual]`

virtual void OpalRFC2833Proto::OnStartReceive | ( | char | tone,
|  | unsigned | timestamp |
| ) |  |  | `[virtual]`

OpalRFC2833Proto::PDECLARE_NOTIFIER | ( | PTimer | ,
|  | OpalRFC2833Proto | ,
|  | AsyncTimeout |  |
| ) |  |  | `[protected]`

OpalRFC2833Proto::PDECLARE_NOTIFIER | ( | PTimer | ,
|  | OpalRFC2833Proto | ,
|  | ReceiveTimeout |  |
| ) |  |  | `[protected]`

OpalRFC2833Proto::PDECLARE_RTPFilterNotifier | ( | OpalRFC2833Proto | ,
|  | ReceivedPacket |  |
| ) |  |  | `[protected]`

static char OpalRFC2833Proto::RFC2833ToASCII | ( | PINDEX | rfc2833,
|  | bool | hasNSE |
| ) |  |  | `[static]`

void OpalRFC2833Proto::SendAsyncFrame | ( |  | ) | `[protected]`

virtual bool OpalRFC2833Proto::SendToneAsync | ( | char | tone,
|  | unsigned | duration |
| ) |  |  | `[virtual]`

void OpalRFC2833Proto::SetRxMediaFormat | ( | const OpalMediaFormat & | mediaFormat | ) |

void OpalRFC2833Proto::SetTxMediaFormat | ( | const OpalMediaFormat & | mediaFormat | ) |

void OpalRFC2833Proto::UseRTPSession | ( | bool | rx,
|  | OpalRTPSession * | session |
| ) |  |  |

## Field Documentation

PTimer OpalRFC2833Proto::m_asyncDurationTimer `[protected]`

PTimeInterval OpalRFC2833Proto::m_asyncStart `[protected]`

PTimer OpalRFC2833Proto::m_asyncTransmitTimer `[protected]`

OpalMediaFormat OpalRFC2833Proto::m_baseMediaFormat `[protected]`

DWORD OpalRFC2833Proto::m_previousReceivedTimestamp `[protected]`

BYTE OpalRFC2833Proto::m_receivedTone `[protected]`

OpalRTPSession::FilterNotifier OpalRFC2833Proto::m_receiveHandler `[protected]`

PMutex OpalRFC2833Proto::m_receiveMutex `[protected]`

PNotifier OpalRFC2833Proto::m_receiveNotifier `[protected]`

enum { ... } OpalRFC2833Proto::m_receiveState `[protected]`

PTimer OpalRFC2833Proto::m_receiveTimer `[protected]`

bool OpalRFC2833Proto::m_rewriteTransmitTimestamp `[protected]`

OpalRTPSession* OpalRFC2833Proto::m_rtpSession `[protected]`

OpalRFC2833EventsMask OpalRFC2833Proto::m_rxEvents `[protected]`

RTP_DataFrame::PayloadTypes OpalRFC2833Proto::m_rxPayloadType `[protected]`

PMutex OpalRFC2833Proto::m_sendMutex `[protected]`

unsigned OpalRFC2833Proto::m_tonesReceived `[protected]`

BYTE OpalRFC2833Proto::m_transmitCode `[protected]`

unsigned OpalRFC2833Proto::m_transmitDuration `[protected]`

enum { ... } OpalRFC2833Proto::m_transmitState `[protected]`

DWORD OpalRFC2833Proto::m_transmitTimestamp `[protected]`

OpalRFC2833EventsMask OpalRFC2833Proto::m_txEvents `[protected]`

RTP_DataFrame::PayloadTypes OpalRFC2833Proto::m_txPayloadType `[protected]`

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

- rfc2833.h