H323_H224Channel Class Reference

#include <h323h224.h>

Inheritance diagram for H323_H224Channel:

H323Channel

List of all members.

Public Member Functions

 H323_H224Channel (H323Connection &connection, const H323Capability &capability, Directions direction, RTP_UDP &session, unsigned sessionID)
 ~H323_H224Channel ()
virtual H323Channel::Directions GetDirection () const
virtual BOOL SetInitialBandwidth ()
virtual void Receive ()
virtual void Transmit ()
virtual BOOL Open ()
virtual BOOL Start ()
virtual void Close ()
virtual BOOL OnSendingPDU (H245_OpenLogicalChannel &openPDU) const
virtual void OnSendOpenAck (const H245_OpenLogicalChannel &openPDU, H245_OpenLogicalChannelAck &ack) const
virtual BOOL OnReceivedPDU (const H245_OpenLogicalChannel &pdu, unsigned &errorCode)
virtual BOOL OnReceivedAckPDU (const H245_OpenLogicalChannelAck &pdu)
virtual BOOL OnSendingPDU (H245_H2250LogicalChannelParameters &param) const
virtual void OnSendOpenAck (H245_H2250LogicalChannelAckParameters &param) const
virtual BOOL OnReceivedPDU (const H245_H2250LogicalChannelParameters &param, unsigned &errorCode)
virtual BOOL OnReceivedAckPDU (const H245_H2250LogicalChannelAckParameters &param)
virtual BOOL SetDynamicRTPPayloadType (int newType)
RTP_DataFrame::PayloadTypes GetDynamicRTPPayloadType () const
OpalH224HandlerGetHandler () const

Protected Member Functions

virtual BOOL ExtractTransport (const H245_TransportAddress &pdu, BOOL isDataPort, unsigned &errorCode)

Protected Attributes

unsigned sessionID
Directions direction
RTP_UDPrtpSession
H323_RTP_SessionrtpCallbacks
OpalH224Handlerh224Handler
RTP_DataFrame::PayloadTypes rtpPayloadType


Detailed Description

This class implements a H.224 logical channel

Constructor & Destructor Documentation

H323_H224Channel::H323_H224Channel ( H323Connection connection,
const H323Capability capability,
Directions  direction,
RTP_UDP session,
unsigned  sessionID 
)

H323_H224Channel::~H323_H224Channel (  ) 


Member Function Documentation

virtual H323Channel::Directions H323_H224Channel::GetDirection (  )  const [virtual]

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

Implements H323Channel.

virtual BOOL H323_H224Channel::SetInitialBandwidth (  )  [virtual]

Set the initial bandwidth for the channel. This calculates the initial bandwidth required by the channel and returns TRUE if the connection can support this bandwidth.

The default behaviour gets the bandwidth requirement from the codec object created by the channel.

Reimplemented from H323Channel.

virtual void H323_H224Channel::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_H224Channel::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_H224Channel::Open (  )  [virtual]

Open the channel. The default behaviour just calls connection.OnStartLogicalChannel() and if successful sets the opened member variable.

Reimplemented from H323Channel.

virtual BOOL H323_H224Channel::Start (  )  [virtual]

This is called when the channel can start transferring data.

Implements H323Channel.

virtual void H323_H224Channel::Close (  )  [virtual]

virtual BOOL H323_H224Channel::OnSendingPDU ( H245_OpenLogicalChannel openPDU  )  const [virtual]

Fill out the OpenLogicalChannel PDU for the particular channel type.

Implements H323Channel.

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

The default behaviour does nothing.

Reimplemented from H323Channel.

virtual BOOL H323_H224Channel::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 behaviour just returns TRUE.

Reimplemented from H323Channel.

virtual BOOL H323_H224Channel::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 behaviour just returns TRUE.

Reimplemented from H323Channel.

virtual BOOL H323_H224Channel::OnSendingPDU ( H245_H2250LogicalChannelParameters param  )  const [virtual]

virtual void H323_H224Channel::OnSendOpenAck ( H245_H2250LogicalChannelAckParameters param  )  const [virtual]

virtual BOOL H323_H224Channel::OnReceivedPDU ( const H245_H2250LogicalChannelParameters param,
unsigned &  errorCode 
) [virtual]

virtual BOOL H323_H224Channel::OnReceivedAckPDU ( const H245_H2250LogicalChannelAckParameters param  )  [virtual]

virtual BOOL H323_H224Channel::SetDynamicRTPPayloadType ( int  newType  )  [virtual]

RTP_DataFrame::PayloadTypes H323_H224Channel::GetDynamicRTPPayloadType (  )  const [inline]

References rtpPayloadType.

OpalH224Handler* H323_H224Channel::GetHandler (  )  const [inline]

References h224Handler.

virtual BOOL H323_H224Channel::ExtractTransport ( const H245_TransportAddress pdu,
BOOL  isDataPort,
unsigned &  errorCode 
) [protected, virtual]


Member Data Documentation

unsigned H323_H224Channel::sessionID [protected]

Referenced by GetHandler().


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

Generated on Mon Sep 1 12:39:55 2008 for OpenH323 by  doxygen 1.5.6