OPAL  Version 3.14.3
H323_RealTimeChannel Class Referenceabstract

#include <channels.h>

Inheritance diagram for H323_RealTimeChannel:
Collaboration diagram for H323_RealTimeChannel:

Public Member Functions

Construction
 H323_RealTimeChannel (H323Connection &connection, const H323Capability &capability, Directions direction)
 
Overrides from class H323Channel
virtual PBoolean OnSendingPDU (H245_OpenLogicalChannel &openPDU) const
 
virtual void OnSendOpenAck (const H245_OpenLogicalChannel &open, H245_OpenLogicalChannelAck &ack) const
 
virtual void OnSendOpenAck (H245_H2250LogicalChannelAckParameters &param) const
 
virtual PBoolean OnReceivedPDU (const H245_OpenLogicalChannel &pdu, unsigned &errorCode)
 
virtual PBoolean OnReceivedAckPDU (const H245_OpenLogicalChannelAck &pdu)
 
Operations
virtual PBoolean OnSendingPDU (H245_H2250LogicalChannelParameters &param) const
 
virtual PBoolean OnSendingAltPDU (H245_ArrayOf_GenericInformation &alternate) const =0
 
virtual PBoolean OnReceivedPDU (const H245_H2250LogicalChannelParameters &param, unsigned &errorCode)
 
virtual PBoolean OnReceivedAckPDU (const H245_H2250LogicalChannelAckParameters &param)
 
RTP_DataFrame::PayloadTypes GetDynamicRTPPayloadType () const
 
- Public Member Functions inherited from H323UnidirectionalChannel
 H323UnidirectionalChannel (H323Connection &connection, const H323Capability &capability, Directions direction)
 
 ~H323UnidirectionalChannel ()
 
virtual Directions GetDirection () const
 
virtual PBoolean SetInitialBandwidth ()
 
virtual bool PreOpen ()
 
virtual PBoolean Open ()
 
virtual bool UpdateMediaFormat (const OpalMediaFormat &mediaFormat)
 Update media format options. More...
 
virtual OpalMediaStreamPtr GetMediaStream () const
 
virtual void SetMediaStream (OpalMediaStreamPtr mediaStream)
 
- Public Member Functions inherited from H323Channel
 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)
 
OpalBandwidth GetBandwidthUsed () const
 
bool SetBandwidthUsed (OpalBandwidth bandwidth)
 
const H323CapabilityGetCapability () const
 
OpalMediaFormat GetMediaFormat () const
 Get the media format (from capability) More...
 
virtual unsigned GetSessionID () const
 
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)
 

Additional Inherited Members

- Public Types inherited from H323Channel
enum  Directions { IsBidirectional, IsTransmitter, IsReceiver, NumDirections }
 
- Protected Member Functions inherited from H323UnidirectionalChannel
virtual void InternalClose ()
 
- Protected Attributes inherited from H323UnidirectionalChannel
bool receiver
 
OpalMediaStreamPtr m_mediaStream
 

Detailed Description

This class is for encpsulating the IETF Real Time Protocol interface.

Constructor & Destructor Documentation

H323_RealTimeChannel::H323_RealTimeChannel ( H323Connection connection,
const H323Capability capability,
Directions  direction 
)

Create a new channel.

Parameters
connectionConnection to endpoint for channel
capabilityCapability channel is using
directionDirection of channel

Member Function Documentation

RTP_DataFrame::PayloadTypes H323_RealTimeChannel::GetDynamicRTPPayloadType ( ) const
virtual PBoolean H323_RealTimeChannel::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 H323Channel.

virtual PBoolean H323_RealTimeChannel::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.

Parameters
paramAcknowledgement PDU

Reimplemented in H323_RTPChannel.

virtual PBoolean H323_RealTimeChannel::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 H323Channel.

virtual PBoolean H323_RealTimeChannel::OnReceivedPDU ( const H245_H2250LogicalChannelParameters &  param,
unsigned &  errorCode 
)
virtual

This is called when request to create a channel is received from a remote machine and is about to be acknowledged.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.

Parameters
paramAcknowledgement PDU
errorCodeError on failure

Reimplemented in H323_RTPChannel.

virtual PBoolean H323_RealTimeChannel::OnSendingAltPDU ( H245_ArrayOf_GenericInformation &  alternate) const
pure virtual

Alternate RTP port information for Same NAT

Parameters
alternateAlternate RTP ports

Implemented in H323_RTPChannel.

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

Fill out the OpenLogicalChannel PDU for the particular channel type.

Parameters
openPDUOpen PDU to send.

Reimplemented from H323Channel.

virtual PBoolean H323_RealTimeChannel::OnSendingPDU ( H245_H2250LogicalChannelParameters &  param) const
virtual

Fill out the OpenLogicalChannel PDU for the particular channel type.

Parameters
paramOpen PDU to send.

Reimplemented in H323_RTPChannel.

virtual void H323_RealTimeChannel::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 H323Channel.

virtual void H323_RealTimeChannel::OnSendOpenAck ( H245_H2250LogicalChannelAckParameters &  param) const
virtual
Parameters
paramAcknowledgement PDU

Reimplemented in H323_RTPChannel.


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