OPAL Version 3.10.2
OpalRFC2833Proto Class Reference

#include <rfc2833.h>

Public Member Functions

 OpalRFC2833Proto (OpalRTPConnection &conn, 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)
const RTP_Session::FilterNotifierGetReceiveHandler () const
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

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

OpalRTPConnectionm_connection
OpalMediaFormat m_baseMediaFormat
RTP_DataFrame::PayloadTypes m_txPayloadType
RTP_DataFrame::PayloadTypes m_rxPayloadType
OpalRFC2833EventsMask m_txEvents
OpalRFC2833EventsMask m_rxEvents
PNotifier m_receiveNotifier
RTP_Session::FilterNotifier m_receiveHandler
enum OpalRFC2833Proto:: { ... }  m_receiveState
BYTE m_receivedTone
unsigned m_tonesReceived
PTimer m_receiveTimer
DWORD m_previousReceivedTimestamp
enum OpalRFC2833Proto:: { ... }  m_transmitState
RTP_Sessionm_rtpSession
PTimer m_asyncTransmitTimer
PTimer m_asyncDurationTimer
DWORD m_transmitTimestamp
bool m_rewriteTransmitTimestamp
PTimeInterval m_asyncStart
BYTE m_transmitCode
unsigned m_transmitDuration
PMutex m_mutex

Member Enumeration Documentation

anonymous enum [protected]
Enumerator:
ReceiveIdle 
ReceiveActive 
ReceiveEnding 
anonymous enum [protected]
Enumerator:
TransmitIdle 
TransmitActive 
TransmitEnding1 
TransmitEnding2 
TransmitEnding3 

Constructor & Destructor Documentation

OpalRFC2833Proto::OpalRFC2833Proto ( OpalRTPConnection conn,
const PNotifier &  receiveNotifier,
const OpalMediaFormat mediaFormat 
)
OpalRFC2833Proto::~OpalRFC2833Proto ( )

Member Function Documentation

static PINDEX OpalRFC2833Proto::ASCIIToRFC2833 ( char  tone,
bool  hasNSE 
) [static]
const RTP_Session::FilterNotifier& OpalRFC2833Proto::GetReceiveHandler ( ) const [inline]

References m_receiveHandler.

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,
unsigned  timestamp 
) [virtual]
virtual void OpalRFC2833Proto::OnStartReceive ( char  tone) [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)

Field Documentation

PTimeInterval OpalRFC2833Proto::m_asyncStart [protected]
PMutex OpalRFC2833Proto::m_mutex [protected]
PNotifier OpalRFC2833Proto::m_receiveNotifier [protected]
enum { ... } OpalRFC2833Proto::m_receiveState [protected]
unsigned OpalRFC2833Proto::m_tonesReceived [protected]
enum { ... } OpalRFC2833Proto::m_transmitState [protected]

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