# H323GenericControlCapability Class Reference

`#include <h323caps.h>`

Inheritance diagram for H323GenericControlCapability:

[legend]
Collaboration diagram for H323GenericControlCapability:
[legend]

## Public Member Functions

Construction
| H323GenericControlCapability (const PString &identifier)
Identification functions
virtual MainTypes | GetMainType () const
virtual unsigned | GetSubType () const
Protocol manipulation
virtual PBoolean | OnSendingPDU (H245_Capability &pdu) const
virtual PBoolean | OnSendingPDU (H245_ModeElement &pdu) const
virtual PBoolean | OnReceivedPDU (const H245_Capability &pdu)
virtual PBoolean | IsMatch (const PASN_Choice &subTypePDU, const PString &mediaPacketization) const
Operations
virtual H323Channel * | CreateChannel (H323Connection &connection, H323Channel::Directions dir, unsigned sessionID, const H245_H2250LogicalChannelParameters *param) const

## Detailed Description

This class describes a generic control capability, as used in H.239

## Constructor & Destructor Documentation

H323GenericControlCapability::H323GenericControlCapability | ( | const PString & | identifier | ) |

Create a new data capability.

Parameters:

  identifier | Indentifer (OID) for generic control

## Member Function Documentation

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

Create the channel instance, allocating resources as required. This creates a logical channel object appropriate for the parameters provided. Not if param is NULL, sessionID must be provided, otherwise this is taken from the fields in param.

Parameters:

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

Implements H323Capability.

virtual MainTypes H323GenericControlCapability::GetMainType | ( |  | ) | const`[virtual]`

Get the main type of the capability. Always returns e_Data.

Implements H323Capability.

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

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

This returns H245_VideoCapability::e_extendedVideoCapability.

Implements H323Capability.

virtual PBoolean H323GenericControlCapability::IsMatch | ( | const PASN_Choice & | subTypePDU,
|  | const PString & | mediaPacketization |
| ) |  |  | const`[virtual]`

Compare the generic part of the capability, if applicable.

Parameters:

  subTypePDU | sub-type PDU of H323Capability
  mediaPacketization | Media packetization used

Reimplemented from H323Capability.

virtual PBoolean H323GenericControlCapability::OnReceivedPDU | ( | const H245_Capability & | pdu | ) | `[virtual]`

This function is called whenever and incoming TerminalCapabilitySet PDU is received on the control channel, and a new H323Capability descendent was created. This completes reading fields from the PDU into the classes members.

If the function returns false then the received PDU codec description is not supported, so will be ignored. The default behaviour simply returns true.

Parameters:

  pdu | PDU to get information from

Reimplemented from H323Capability.

virtual PBoolean H323GenericControlCapability::OnSendingPDU | ( | H245_ModeElement & | 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 is pure.

Parameters:

  pdu | PDU to set information on

Implements H323Capability.

virtual PBoolean H323GenericControlCapability::OnSendingPDU | ( | H245_Capability & | pdu | ) | const`[virtual]`

This function is called whenever and outgoing TerminalCapabilitySet 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 calls the OnSendingPDU() function with a more specific PDU type.

Parameters:

  pdu | PDU to set information on

Implements H323Capability.

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

- h323caps.h