# H323_H224Channel Class Reference

`#include <h323h224.h>`

Inheritance diagram for H323_H224Channel:

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 PBoolean | SetInitialBandwidth ()
virtual PBoolean | Open ()
virtual PBoolean | Start ()
virtual void | Close ()
virtual PBoolean | OnSendingPDU (H245_OpenLogicalChannel &openPDU) const
virtual void | OnSendOpenAck (const H245_OpenLogicalChannel &openPDU, H245_OpenLogicalChannelAck &ack) const
virtual PBoolean | OnReceivedPDU (const H245_OpenLogicalChannel &pdu, unsigned &errorCode)
virtual PBoolean | OnReceivedAckPDU (const H245_OpenLogicalChannelAck &pdu)
virtual PBoolean | OnSendingPDU (H245_H2250LogicalChannelParameters &param) const
virtual void | OnSendOpenAck (H245_H2250LogicalChannelAckParameters &param) const
virtual PBoolean | OnReceivedPDU (const H245_H2250LogicalChannelParameters &param, unsigned &errorCode)
virtual PBoolean | OnReceivedAckPDU (const H245_H2250LogicalChannelAckParameters &param)
virtual PBoolean | SetDynamicRTPPayloadType (int newType)
RTP_DataFrame::PayloadTypes | GetDynamicRTPPayloadType () const

## Protected Member Functions

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

## Protected Attributes

unsigned | sessionID
Directions | direction
RTP_UDP & | rtpSession
H323_RTP_Session & | rtpCallbacks
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 PBoolean H323_H224Channel::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 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 PBoolean H323_H224Channel::Start | ( |  | ) | `[virtual]`

This is called when the channel can start transferring data.

Implements H323Channel.

virtual void H323_H224Channel::Close | ( |  | ) | `[virtual]`

This is called to clean up any threads on connection termination.

Reimplemented from H323Channel.

virtual PBoolean 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 & | openPDU,
|  | 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 PBoolean 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 PTrue.

Reimplemented from H323Channel.

virtual PBoolean 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 PTrue.

Reimplemented from H323Channel.

virtual PBoolean H323_H224Channel::OnSendingPDU | ( | H245_H2250LogicalChannelParameters & | param | ) | const`[virtual]`

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

virtual PBoolean H323_H224Channel::OnReceivedPDU | ( | const H245_H2250LogicalChannelParameters & | param,
|  | unsigned & | errorCode |
| ) |  |  | `[virtual]`

virtual PBoolean H323_H224Channel::OnReceivedAckPDU | ( | const H245_H2250LogicalChannelAckParameters & | param | ) | `[virtual]`

virtual PBoolean H323_H224Channel::SetDynamicRTPPayloadType | ( | int | newType | ) | `[virtual]`

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

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

## Member Data Documentation

unsigned H323_H224Channel::sessionID `[protected]`

Directions H323_H224Channel::direction `[protected]`

RTP_UDP& H323_H224Channel::rtpSession `[protected]`

H323_RTP_Session& H323_H224Channel::rtpCallbacks `[protected]`

RTP_DataFrame::PayloadTypes H323_H224Channel::rtpPayloadType `[protected]`

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

- h323h224.h