#include <channels.h>
Inheritance diagram for H323_ExternalRTPChannel:
H323_ExternalRTPChannel::H323_ExternalRTPChannel | ( | H323Connection & | connection, | |
const H323Capability & | capability, | |||
Directions | direction, | |||
unsigned | sessionID | |||
) |
Create a new channel.
connection | Connection to endpoint for channel |
capability | Capability channel is using |
direction | Direction of channel |
sessionID | Session ID for channel |
H323_ExternalRTPChannel::H323_ExternalRTPChannel | ( | H323Connection & | connection, | |
const H323Capability & | capability, | |||
Directions | direction, | |||
unsigned | sessionID, | |||
const H323TransportAddress & | data, | |||
const H323TransportAddress & | control | |||
) |
Create a new channel.
connection | Connection to endpoint for channel |
capability | Capability channel is using |
direction | Direction of channel |
sessionID | Session ID for channel |
data | Data address |
control | Control address |
H323_ExternalRTPChannel::H323_ExternalRTPChannel | ( | H323Connection & | connection, | |
const H323Capability & | capability, | |||
Directions | direction, | |||
unsigned | sessionID, | |||
const PIPSocket::Address & | ip, | |||
WORD | dataPort | |||
) |
Create a new channel.
connection | Connection to endpoint for channel |
capability | Capability channel is using |
direction | Direction of channel |
sessionID | Session ID for channel |
ip | IP address of media server |
dataPort | Data port (control is dataPort+1) |
H323_ExternalRTPChannel::H323_ExternalRTPChannel | ( | H323Connection & | connection, | |
const H323Capability & | capability, | |||
Directions | direction, | |||
unsigned | sessionID | |||
) |
Create a new channel.
connection | Connection to endpoint for channel |
capability | Capability channel is using |
direction | Direction of channel |
sessionID | Session ID for channel |
H323_ExternalRTPChannel::H323_ExternalRTPChannel | ( | H323Connection & | connection, | |
const H323Capability & | capability, | |||
Directions | direction, | |||
unsigned | sessionID, | |||
const H323TransportAddress & | data, | |||
const H323TransportAddress & | control | |||
) |
Create a new channel.
connection | Connection to endpoint for channel |
capability | Capability channel is using |
direction | Direction of channel |
sessionID | Session ID for channel |
data | Data address |
control | Control address |
H323_ExternalRTPChannel::H323_ExternalRTPChannel | ( | H323Connection & | connection, | |
const H323Capability & | capability, | |||
Directions | direction, | |||
unsigned | sessionID, | |||
const PIPSocket::Address & | ip, | |||
WORD | dataPort | |||
) |
Create a new channel.
connection | Connection to endpoint for channel |
capability | Capability channel is using |
direction | Direction of channel |
sessionID | Session ID for channel |
ip | IP address of media server |
dataPort | Data port (control is dataPort+1) |
virtual unsigned H323_ExternalRTPChannel::GetSessionID | ( | ) | const [virtual] |
Indicate the session number of the channel. Return session for channel. This returns the session ID of the RTP_Session member variable.
Reimplemented from H323Channel.
virtual BOOL H323_ExternalRTPChannel::Start | ( | ) | [virtual] |
Start the channel.
Reimplemented from H323UnidirectionalChannel.
virtual BOOL H323_ExternalRTPChannel::IsRunning | ( | ) | const [virtual] |
Indicate if is started.
Reimplemented from H323Channel.
virtual void H323_ExternalRTPChannel::Receive | ( | ) | [virtual] |
Handle channel data reception.
This is called by the thread started by the Start() function and is typically a loop writing to the codec and reading from the transport (eg RTP_session).
Implements H323Channel.
virtual void H323_ExternalRTPChannel::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).
Implements H323Channel.
virtual BOOL H323_ExternalRTPChannel::OnSendingPDU | ( | H245_H2250LogicalChannelParameters & | param | ) | const [virtual] |
Fill out the OpenLogicalChannel PDU for the particular channel type.
param | Open PDU to send. |
Implements H323_RealTimeChannel.
virtual void H323_ExternalRTPChannel::OnSendOpenAck | ( | H245_H2250LogicalChannelAckParameters & | param | ) | const [virtual] |
This is called when request to create a channel is received from a remote machine and is about to be acknowledged.
param | Acknowledgement PDU |
Implements H323_RealTimeChannel.
virtual BOOL H323_ExternalRTPChannel::OnReceivedPDU | ( | const H245_H2250LogicalChannelParameters & | param, | |
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 behaviour sets the remote ports to send UDP packets to.
param | Acknowledgement PDU |
errorCode | Error on failure |
Implements H323_RealTimeChannel.
virtual BOOL H323_ExternalRTPChannel::OnReceivedAckPDU | ( | const H245_H2250LogicalChannelAckParameters & | param | ) | [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 behaviour sets the remote ports to send UDP packets to.
param | Acknowledgement PDU |
Implements H323_RealTimeChannel.
void H323_ExternalRTPChannel::SetExternalAddress | ( | const H323TransportAddress & | data, | |
const H323TransportAddress & | control | |||
) |
data | Data address |
control | Control address |
const H323TransportAddress& H323_ExternalRTPChannel::GetRemoteMediaAddress | ( | ) | const [inline] |
const H323TransportAddress& H323_ExternalRTPChannel::GetRemoteMediaControlAddress | ( | ) | const [inline] |
BOOL H323_ExternalRTPChannel::GetRemoteAddress | ( | PIPSocket::Address & | ip, | |
WORD & | dataPort | |||
) | const |
unsigned H323_ExternalRTPChannel::sessionID [protected] |
BOOL H323_ExternalRTPChannel::isRunning [protected] |