OPAL  Version 3.10.4
H323_T120Channel Class Reference

#include <h323t120.h>

Inheritance diagram for H323_T120Channel:
H323DataChannel H323UnidirectionalChannel H323Channel

Public Member Functions

virtual void HandleChannel ()
Construction
 H323_T120Channel (H323Connection &connection, const H323Capability &capability, Directions direction, unsigned sessionID)
Overrides from class H323Channel
virtual void Receive ()
virtual void Transmit ()
virtual PBoolean OnSendingPDU (H245_OpenLogicalChannel &openPDU) const
virtual void OnSendOpenAck (const H245_OpenLogicalChannel &open, H245_OpenLogicalChannelAck &ack) const
virtual PBoolean OnReceivedPDU (const H245_OpenLogicalChannel &pdu, unsigned &errorCode)
virtual PBoolean OnReceivedAckPDU (const H245_OpenLogicalChannelAck &pdu)
- Public Member Functions inherited from H323DataChannel
 H323DataChannel (H323Connection &connection, const H323Capability &capability, Directions direction, unsigned sessionID)
 ~H323DataChannel ()
virtual unsigned GetSessionID () const
virtual PBoolean CreateListener ()
virtual PBoolean CreateTransport ()
- Public Member Functions inherited from H323UnidirectionalChannel
 H323UnidirectionalChannel (H323Connection &connection, const H323Capability &capability, Directions direction)
 ~H323UnidirectionalChannel ()
virtual Directions GetDirection () const
virtual PBoolean SetInitialBandwidth ()
virtual PBoolean Open ()
virtual PBoolean Start ()
virtual OpalMediaStreamPtr GetMediaStream () const
- Public Member Functions inherited from H323Channel
virtual bool OnMediaCommand (const OpalMediaCommand &)
 H323Channel (H323Connection &connection, const H323Capability &capability)
 ~H323Channel ()
virtual void PrintOn (ostream &strm) const
const H323ChannelNumberGetNumber () const
void SetNumber (const H323ChannelNumber &num)
const H323ChannelNumberGetReverseChannel () const
void SetReverseChannel (const H323ChannelNumber &num)
unsigned GetBandwidthUsed () const
PBoolean SetBandwidthUsed (unsigned bandwidth)
const H323CapabilityGetCapability () const
PBoolean IsPaused () const
void SetPause (PBoolean pause)
virtual bool SetSessionID (unsigned sessionID)
virtual PBoolean GetMediaTransportAddress (OpalTransportAddress &data, OpalTransportAddress &control) const
virtual void Close ()
PBoolean IsOpen () const
virtual void OnFlowControl (long bitRateRestriction)
virtual void OnMiscellaneousCommand (const H245_MiscellaneousCommand_type &type)
virtual void OnMiscellaneousIndication (const H245_MiscellaneousIndication_type &type)
virtual void OnJitterIndication (DWORD jitter, int skippedFrameCount, int additionalBuffer)

Protected Attributes

OpalT120Protocolt120handler
- Protected Attributes inherited from H323DataChannel
unsigned sessionID
H323Listenerlistener
PBoolean autoDeleteListener
H323Transporttransport
PBoolean autoDeleteTransport
PBoolean separateReverseChannel
- Protected Attributes inherited from H323UnidirectionalChannel
bool receiver
OpalMediaStreamPtr mediaStream
- Protected Attributes inherited from H323Channel
H323EndPointendpoint
H323Connectionconnection
H323Capabilitycapability
H323ChannelNumber number
H323ChannelNumber reverseChannel
bool opened
bool paused
PAtomicInteger m_terminating

Additional Inherited Members

- Protected Member Functions inherited from H323DataChannel
virtual void InternalClose ()

Detailed Description

This class describes the T.120 logical channel.


Constructor & Destructor Documentation

H323_T120Channel::H323_T120Channel ( H323Connection connection,
const H323Capability capability,
Directions  direction,
unsigned  sessionID 
)

Create a new channel.

Parameters:
connectionConnection to endpoint for channel
capabilityCapability channel is using
directionDirection of channel
sessionIDSession ID for channel

Member Function Documentation

virtual void H323_T120Channel::HandleChannel ( )
virtual
virtual PBoolean H323_T120Channel::OnReceivedAckPDU ( const H245_OpenLogicalChannelAck &  pdu)
virtual

This is called after a request to create a channel occurs from the local machine via the H245LogicalChannelDict::Open() function, and the request has been acknowledged by the remote endpoint.

The default makes sure the parameters are compatible and passes on the PDU to the rtp session.

Parameters:
pduAcknowledgement PDU

Reimplemented from H323DataChannel.

virtual PBoolean H323_T120Channel::OnReceivedPDU ( const H245_OpenLogicalChannel &  pdu,
unsigned &  errorCode 
)
virtual

This is called after a request to create a channel occurs from the local machine via the H245LogicalChannelDict::Open() function, and the request has been acknowledged by the remote endpoint.

The default makes sure the parameters are compatible and passes on the PDU to the rtp session.

Parameters:
pduOpen PDU
errorCodeError code on failure

Reimplemented from H323DataChannel.

virtual PBoolean H323_T120Channel::OnSendingPDU ( H245_OpenLogicalChannel &  openPDU) const
virtual

Fill out the OpenLogicalChannel PDU for the particular channel type.

Parameters:
openPDUOpen PDU to send.

Reimplemented from H323DataChannel.

virtual void H323_T120Channel::OnSendOpenAck ( const H245_OpenLogicalChannel &  open,
H245_OpenLogicalChannelAck &  ack 
) const
virtual

This is called when request to create a channel is received from a remote machine and is about to be acknowledged.

Parameters:
openOpen PDU
ackAcknowledgement PDU

Reimplemented from H323DataChannel.

virtual void H323_T120Channel::Receive ( )
virtual

Handle channel data reception.

   This is called by the thread started by the Start() function and is
   typically a loop reading  from the transport and handling PDU's.

   The default behaviour here is to call HandleChannel()
virtual void H323_T120Channel::Transmit ( )
virtual

Handle channel data transmission.

   This is called by the thread started by the Start() function and is
   typically a loop reading from the codec and writing to the transport
   (eg an RTP_session).

   The default behaviour here is to call HandleChannel()

Field Documentation

OpalT120Protocol* H323_T120Channel::t120handler
protected

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