# H323_T38Capability Class Reference

`#include <h323t38.h>`

Inheritance diagram for H323_T38Capability:

List of all members.

## Construction

enum | TransportMode { e_UDP, e_DualTCP, e_SingleTCP, NumTransportModes }
| H323_T38Capability (TransportMode mode)

## Public Member Functions

TransportMode | GetTransportMode () const
Overrides from class PObject
Comparison | Compare (const PObject &obj) const
virtual PObject * | Clone () const
Identification functions
virtual unsigned | GetSubType () const
virtual PString | GetFormatName () const
Operations
virtual H323Channel * | CreateChannel (H323Connection &connection, H323Channel::Directions dir, unsigned sessionID, const H245_H2250LogicalChannelParameters *param) const
Protocol manipulation
virtual PBoolean | OnSendingPDU (H245_DataApplicationCapability &pdu) const
virtual PBoolean | OnSendingPDU (H245_DataMode &pdu) const
virtual PBoolean | OnSendingPDU (H245_DataProtocolCapability &proto, H245_T38FaxProfile &profile) const
virtual PBoolean | OnReceivedPDU (const H245_DataApplicationCapability &pdu)

## Protected Attributes

TransportMode | mode

## Detailed Description

This class describes the T.38 standard capability.

## Member Enumeration Documentation

enum H323_T38Capability::TransportMode

Enumerator:

  e_UDP |
  e_DualTCP |
  e_SingleTCP |
  NumTransportModes |

## Constructor & Destructor Documentation

H323_T38Capability::H323_T38Capability | ( | TransportMode | mode | ) |

Create a new capability.

## Member Function Documentation

Comparison H323_T38Capability::Compare | ( | const PObject & | obj | ) | const

Compare two capability instances. This compares the main and sub-types of the capability.

Reimplemented from H323Capability.

virtual PObject* H323_T38Capability::Clone | ( |  | ) | const`[virtual]`

Create a copy of the object.

virtual unsigned H323_T38Capability::GetSubType | ( |  | ) | const`[virtual]`

Get the sub-type of the capability. This is a code dependent on the main type of the capability.

This returns the e_t38fax enum value from the protocol ASN H245_DataApplicationCapability_application class.

Implements H323Capability.

virtual PString H323_T38Capability::GetFormatName | ( |  | ) | const`[virtual]`

Get the name of the media data format this class represents.

Implements H323Capability.

virtual H323Channel* H323_T38Capability::CreateChannel | ( | H323Connection & | connection,
|  | H323Channel::Directions | dir,
|  | unsigned | sessionID,
|  | const H245_H2250LogicalChannelParameters * | param |
| ) |  |  | const`[virtual]`

Create the channel instance, allocating resources as required.

Parameters:

  connection | Owner connection for channel
  dir | Direction of channel
  sessionID | Session ID for RTP channel
  param | Parameters for channel

Implements H323Capability.

virtual PBoolean H323_T38Capability::OnSendingPDU | ( | H245_DataApplicationCapability & | pdu | ) | const`[virtual]`

This function is called whenever and outgoing TerminalCapabilitySet or OpenLogicalChannel PDU is being constructed for the control channel. It allows the capability to set the PDU fields from information in members specific to the class.

The default behaviour sets the pdu and calls OnSendingPDU with a H245_DataProtocolCapability parameter.

Reimplemented from H323DataCapability.

virtual PBoolean H323_T38Capability::OnSendingPDU | ( | H245_DataMode & | pdu | ) | const`[virtual]`

This function is called whenever and outgoing RequestMode PDU is being constructed for the control channel. It allows the capability to set the PDU fields from information in members specific to the class.

The default behaviour sets the pdu and calls OnSendingPDU with a H245_DataProtocolCapability parameter.

Parameters:

  pdu | PDU to set information on

Implements H323DataCapability.

virtual PBoolean H323_T38Capability::OnSendingPDU | ( | H245_DataProtocolCapability & | proto,
|  | H245_T38FaxProfile & | profile |
| ) |  |  | const`[virtual]`

This function is called whenever and outgoing PDU is being constructed for the control channel. It allows the capability to set the PDU fields from information in members specific to the class.

The default behaviour sets tcp or udp as required.

Parameters:

  proto | PDU to set information on
  profile | PDU to set information on

virtual PBoolean H323_T38Capability::OnReceivedPDU | ( | const H245_DataApplicationCapability & | pdu | ) | `[virtual]`

This function is called whenever and incoming TerminalCapabilitySet or OpenLogicalChannel PDU has been used to construct the control channel. It allows the capability to set from the PDU fields, information in members specific to the class.

The default behaviour gets the data rate field from the PDU.

Parameters:

  pdu | PDU to set information on

Reimplemented from H323DataCapability.

TransportMode H323_T38Capability::GetTransportMode | ( |  | ) | const`[inline]`

## Member Data Documentation

TransportMode H323_T38Capability::mode `[protected]`

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

- h323t38.h