OPAL  Version 3.10.4
H323BidirectionalChannel Class Reference

#include <channels.h>

Inheritance diagram for H323BidirectionalChannel:
H323Channel

Public Member Functions

Construction
 H323BidirectionalChannel (H323Connection &connection, const H323Capability &capability)
Overrides from class H323Channel
virtual Directions GetDirection () const
virtual PBoolean Start ()
- 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 unsigned GetSessionID () const
virtual bool SetSessionID (unsigned sessionID)
virtual PBoolean GetMediaTransportAddress (OpalTransportAddress &data, OpalTransportAddress &control) const
virtual PBoolean SetInitialBandwidth ()=0
virtual PBoolean Open ()
virtual void Close ()
PBoolean IsOpen () const
virtual OpalMediaStreamPtr GetMediaStream () const
virtual PBoolean OnSendingPDU (H245_OpenLogicalChannel &openPDU) const =0
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)
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)

Additional Inherited Members

enum  Directions { IsBidirectional, IsTransmitter, IsReceiver, NumDirections }
- Protected Member Functions inherited from H323Channel
virtual void InternalClose ()
- Protected Attributes inherited from H323Channel
H323EndPointendpoint
H323Connectionconnection
H323Capabilitycapability
H323ChannelNumber number
H323ChannelNumber reverseChannel
bool opened
bool paused
PAtomicInteger m_terminating

Detailed Description

This class describes a bidirectional logical channel between the two endpoints. They may be created and deleted as required in the H245 protocol.

An application may create a descendent off this class and override functions as required for operating the channel protocol.


Constructor & Destructor Documentation

H323BidirectionalChannel::H323BidirectionalChannel ( H323Connection connection,
const H323Capability capability 
)

Create a new channel.

Parameters:
connectionConnection to endpoint for channel
capabilityCapability channel is using

Member Function Documentation

virtual Directions H323BidirectionalChannel::GetDirection ( ) const
virtual

Indicate the direction of the channel. Return if the channel is bidirectional, or unidirectional, and which direction for th latter case.

Implements H323Channel.

virtual PBoolean H323BidirectionalChannel::Start ( )
virtual

This is called when the channel can start transferring data. The default action is to start two threads, one calls Receive() and the other calls Transmit().

Implements H323Channel.


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