OPAL
Version 3.10.10
|
#include <channels.h>
Public Member Functions | |
Construction | |
H323BidirectionalChannel (H323Connection &connection, const H323Capability &capability) | |
Overrides from class H323Channel | |
virtual Directions | GetDirection () const |
virtual PBoolean | Start () |
![]() | |
virtual bool | OnMediaCommand (const OpalMediaCommand &) |
H323Channel (H323Connection &connection, const H323Capability &capability) | |
~H323Channel () | |
virtual void | PrintOn (ostream &strm) const |
const H323ChannelNumber & | GetNumber () const |
void | SetNumber (const H323ChannelNumber &num) |
const H323ChannelNumber & | GetReverseChannel () const |
void | SetReverseChannel (const H323ChannelNumber &num) |
unsigned | GetBandwidthUsed () const |
PBoolean | SetBandwidthUsed (unsigned bandwidth) |
const H323Capability & | GetCapability () 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 } |
![]() | |
virtual void | InternalClose () |
![]() | |
H323EndPoint & | endpoint |
H323Connection & | connection |
H323Capability * | capability |
H323ChannelNumber | number |
H323ChannelNumber | reverseChannel |
bool | opened |
bool | paused |
PAtomicInteger | m_terminating |
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.
H323BidirectionalChannel::H323BidirectionalChannel | ( | H323Connection & | connection, |
const H323Capability & | capability | ||
) |
Create a new channel.
connection | Connection to endpoint for channel |
capability | Capability channel is using |
|
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 |
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.