#include <channels.h>
Inheritance diagram for H323UnidirectionalChannel:
Public Member Functions | |
void | OnMediaCommand (OpalMediaCommand &command) |
Construction | |
H323UnidirectionalChannel (H323Connection &connection, const H323Capability &capability, Directions direction) | |
~H323UnidirectionalChannel () | |
Overrides from class H323Channel | |
virtual Directions | GetDirection () const |
virtual PBoolean | SetInitialBandwidth () |
virtual PBoolean | Open () |
virtual PBoolean | Start () |
virtual void | OnMiscellaneousCommand (const H245_MiscellaneousCommand_type &type) |
Member variable access | |
virtual OpalMediaStreamPtr | GetMediaStream () const |
Protected Member Functions | |
virtual void | InternalClose () |
Protected Attributes | |
bool | receiver |
OpalMediaStreamPtr | mediaStream |
An application may create a descendent off this class and override functions as required for operating the channel protocol.
H323UnidirectionalChannel::H323UnidirectionalChannel | ( | H323Connection & | connection, | |
const H323Capability & | capability, | |||
Directions | direction | |||
) |
Create a new channel.
connection | Connection to endpoint for channel |
capability | Capability channel is using |
direction | Direction of channel |
H323UnidirectionalChannel::~H323UnidirectionalChannel | ( | ) |
Destroy the channel, deleting the associated media stream.
virtual Directions H323UnidirectionalChannel::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 OpalMediaStreamPtr H323UnidirectionalChannel::GetMediaStream | ( | ) | const [virtual] |
Get the media stream associated with this logical channel. The default behaviour returns NULL.
Reimplemented from H323Channel.
virtual void H323UnidirectionalChannel::InternalClose | ( | ) | [protected, virtual] |
void H323UnidirectionalChannel::OnMediaCommand | ( | OpalMediaCommand & | command | ) | [virtual] |
Reimplemented from H323Channel.
virtual void H323UnidirectionalChannel::OnMiscellaneousCommand | ( | const H245_MiscellaneousCommand_type & | type | ) | [virtual] |
Process a miscellaneous command on the logical channel. The default behaviour passes this on to the codec if not NULL.
type | Command to process |
Reimplemented from H323Channel.
virtual PBoolean H323UnidirectionalChannel::Open | ( | ) | [virtual] |
Open the channel.
Reimplemented from H323Channel.
virtual PBoolean H323UnidirectionalChannel::SetInitialBandwidth | ( | ) | [virtual] |
Set the initial bandwidth for the channel. This calculates the initial bandwidth required by the channel and returns PTrue if the connection can support this bandwidth.
The default behaviour gets the bandwidth requirement from the codec object created by the channel.
Implements H323Channel.
virtual PBoolean H323UnidirectionalChannel::Start | ( | ) | [virtual] |
This is called when the channel can start transferring data. The default action is to start one threads, with it either calling Receive() or Transmit() depending on the receiver member variable.
Implements H323Channel.
Reimplemented in H323_ExternalRTPChannel.
bool H323UnidirectionalChannel::receiver [protected] |