OPAL  Version 3.18.8
OpalH224Handler Class Reference

#include <h224handler.h>

Inherits PObject.

Collaboration diagram for OpalH224Handler:

Public Types

enum  {
  Broadcast = 0x0000, CMEClientListCode = 0x01, CMEExtraCapabilitiesCode = 0x02, CMEMessage = 0x00,
  CMECommand = 0xff, CountryCodeEscape = 0xff
}
 

Public Member Functions

 OpalH224Handler ()
 
 ~OpalH224Handler ()
 
bool AddClient (OpalH224Client &client)
 
bool RemoveClient (OpalH224Client &client)
 
void SetTransmitMediaStream (OpalH224MediaStream *transmitMediaStream)
 
virtual void StartTransmit ()
 
virtual void StopTransmit ()
 
bool SendClientList ()
 
bool SendExtraCapabilities ()
 
bool SendClientListCommand ()
 
bool SendExtraCapabilitiesCommand (const OpalH224Client &client)
 
bool SendExtraCapabilitiesMessage (const OpalH224Client &client, BYTE *data, PINDEX length)
 
bool TransmitClientFrame (const OpalH224Client &client, H224_Frame &frame)
 
virtual bool OnReceivedFrame (H224_Frame &frame)
 
virtual bool OnReceivedCMEMessage (H224_Frame &frame)
 
virtual bool OnReceivedClientList (H224_Frame &frame)
 
virtual bool OnReceivedClientListCommand ()
 
virtual bool OnReceivedExtraCapabilities (H224_Frame &frame)
 
virtual bool OnReceivedExtraCapabilitiesCommand ()
 

Protected Member Functions

bool TransmitFrame (H224_Frame &frame)
 
OpalH224ClientFindClient (BYTE clientID, BYTE extendedClientID, BYTE countryCode, BYTE countryCodeExtension, WORD manufacturerCode, BYTE manufacturerClientID) const
 
 PDECLARE_MUTEX (m_transmitMutex)
 

Protected Attributes

bool m_canTransmit
 
bool m_transmitHDLCTunneling
 
PINDEX m_transmitBitIndex
 
PTime m_transmitStartTime
 
OpalH224MediaStreamm_transmitMediaStream
 
OpalH224ClientList m_clients
 

Member Enumeration Documentation

anonymous enum
Enumerator
Broadcast 
CMEClientListCode 
CMEExtraCapabilitiesCode 
CMEMessage 
CMECommand 
CountryCodeEscape 

Constructor & Destructor Documentation

OpalH224Handler::OpalH224Handler ( )
OpalH224Handler::~OpalH224Handler ( )

Member Function Documentation

bool OpalH224Handler::AddClient ( OpalH224Client client)

Adds / removes the client from the client list

OpalH224Client* OpalH224Handler::FindClient ( BYTE  clientID,
BYTE  extendedClientID,
BYTE  countryCode,
BYTE  countryCodeExtension,
WORD  manufacturerCode,
BYTE  manufacturerClientID 
) const
protected
virtual bool OpalH224Handler::OnReceivedClientList ( H224_Frame frame)
virtual
virtual bool OpalH224Handler::OnReceivedClientListCommand ( )
virtual
virtual bool OpalH224Handler::OnReceivedCMEMessage ( H224_Frame frame)
virtual
virtual bool OpalH224Handler::OnReceivedExtraCapabilities ( H224_Frame frame)
virtual
virtual bool OpalH224Handler::OnReceivedExtraCapabilitiesCommand ( )
virtual
virtual bool OpalH224Handler::OnReceivedFrame ( H224_Frame frame)
virtual
OpalH224Handler::PDECLARE_MUTEX ( m_transmitMutex  )
protected
bool OpalH224Handler::RemoveClient ( OpalH224Client client)
bool OpalH224Handler::SendClientList ( )

Sends the complete client list with all clients registered

bool OpalH224Handler::SendClientListCommand ( )

Requests the remote side to send it's client list

bool OpalH224Handler::SendExtraCapabilities ( )

Sends the extra capabilities for all clients that indicate to have extra capabilities.

bool OpalH224Handler::SendExtraCapabilitiesCommand ( const OpalH224Client client)

Request the remote side to send the extra capabilities for the given client

bool OpalH224Handler::SendExtraCapabilitiesMessage ( const OpalH224Client client,
BYTE *  data,
PINDEX  length 
)

Callback for H.224 clients to send their extra capabilities

void OpalH224Handler::SetTransmitMediaStream ( OpalH224MediaStream transmitMediaStream)

Sets the transmit H224 media stream

virtual void OpalH224Handler::StartTransmit ( )
virtual
virtual void OpalH224Handler::StopTransmit ( )
virtual
bool OpalH224Handler::TransmitClientFrame ( const OpalH224Client client,
H224_Frame frame 
)

Callback for H.224 clients to send a client frame

bool OpalH224Handler::TransmitFrame ( H224_Frame frame)
protected

Field Documentation

bool OpalH224Handler::m_canTransmit
protected
OpalH224ClientList OpalH224Handler::m_clients
protected
PINDEX OpalH224Handler::m_transmitBitIndex
protected
bool OpalH224Handler::m_transmitHDLCTunneling
protected
OpalH224MediaStream* OpalH224Handler::m_transmitMediaStream
protected
PTime OpalH224Handler::m_transmitStartTime
protected

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