# H323GenericVideoCapability Class Reference

`#include <h323caps.h>`

Inheritance diagram for H323GenericVideoCapability:

[legend]
Collaboration diagram for H323GenericVideoCapability:
[legend]

## Public Member Functions

Construction
| H323GenericVideoCapability (const PString &capabilityId, PINDEX maxBitRate=0)
Overrides from class PObject
Comparison | Compare (const PObject &obj) const
Identification functions
virtual unsigned | GetSubType () const
Protocol manipulation
virtual PBoolean | OnSendingPDU (H245_VideoCapability &pdu, CommandType type) const
virtual PBoolean | OnSendingPDU (H245_VideoMode &pdu) const
virtual PBoolean | OnReceivedPDU (const H245_VideoCapability &pdu, CommandType type)
virtual PBoolean | IsMatch (const PASN_Choice &subTypePDU, const PString &mediaPacketization) const

## Detailed Description

This class describes the interface to a generic video codec used to transfer data via the logical channels opened and managed by the H323 control channel.

An application may create a descendent off this class and override functions as required for descibing the codec.

## Constructor & Destructor Documentation

H323GenericVideoCapability::H323GenericVideoCapability | ( | const PString & | capabilityId,
|  | PINDEX | maxBitRate = `0` |
| ) |  |  |

Create a new set of information about a non-standard codec.

Parameters:

  capabilityId | generic codec identifier (OID)
  maxBitRate | maxBitRate parameter for the GenericCapability

## Member Function Documentation

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

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

Reimplemented from H323Capability.

Reimplemented in H323H239VideoCapability.

virtual unsigned H323GenericVideoCapability::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_genericCapability.

Implements H323Capability.

Reimplemented in H323ExtendedVideoCapability.

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

Reimplemented in H323ExtendedVideoCapability.

virtual PBoolean H323GenericVideoCapability::OnReceivedPDU | ( | const H245_VideoCapability & | pdu,
|  | CommandType | type |
| ) |  |  | `[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 calls H323GenericCapabilityinfo::OnReceivedPDU() to handle the provided PDU.

Parameters:

  pdu | PDU to get information from
  type | Type of PDU to send in

Reimplemented from H323VideoCapability.

Reimplemented in H323ExtendedVideoCapability, and H323H239VideoCapability.

virtual PBoolean H323GenericVideoCapability::OnSendingPDU | ( | H245_VideoMode & | 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 PDUs tag according to the GetSubType() function (translated to different enum).

Parameters:

  pdu | PDU to set information on

Reimplemented from H323VideoCapability.

Reimplemented in H323ExtendedVideoCapability.

virtual PBoolean H323GenericVideoCapability::OnSendingPDU | ( | H245_VideoCapability & | pdu,
|  | CommandType | type |
| ) |  |  | 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 calls H323GenericCapabilityinfo::OnSendingPDU() to handle the PDU.

Parameters:

  pdu | PDU to set information on
  type | Type of PDU to send in

Reimplemented from H323VideoCapability.

Reimplemented in H323ExtendedVideoCapability, and H323H239VideoCapability.

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

- h323caps.h