H323NonStandardCapabilityInfo Class Reference

`#include <h323caps.h>`

Inheritance diagram for H323NonStandardCapabilityInfo:

## Public Types

typedef PObject::Comparison(* | CompareFuncType) (struct PluginCodec_H323NonStandardCodecData *)

## Public Member Functions

| H323NonStandardCapabilityInfo (CompareFuncType compareFunc, const BYTE *dataBlock, PINDEX dataSize)
| H323NonStandardCapabilityInfo (const BYTE *dataBlock, PINDEX dataSize, PINDEX comparisonOffset=0, PINDEX comparisonLength=P_MAX_INDEX)
| H323NonStandardCapabilityInfo (const PString &oid, const BYTE *dataBlock, PINDEX dataSize, PINDEX comparisonOffset=0, PINDEX comparisonLength=P_MAX_INDEX)
| H323NonStandardCapabilityInfo (BYTE country, BYTE extension, WORD maufacturer, const BYTE *dataBlock, PINDEX dataSize, PINDEX comparisonOffset=0, PINDEX comparisonLength=P_MAX_INDEX)
virtual | ~H323NonStandardCapabilityInfo ()
virtual PBoolean | OnSendingPDU (PBYTEArray &data) const
virtual PBoolean | OnReceivedPDU (const PBYTEArray &data)
PBoolean | IsMatch (const H245_NonStandardParameter &param) const
PObject::Comparison | CompareParam (const H245_NonStandardParameter &param) const

## Protected Member Functions

PBoolean | OnSendingNonStandardPDU (PASN_Choice &pdu, unsigned nonStandardTag) const
PBoolean | OnReceivedNonStandardPDU (const PASN_Choice &pdu, unsigned nonStandardTag)
PObject::Comparison | CompareInfo (const H323NonStandardCapabilityInfo &obj) const
PObject::Comparison | CompareData (const PBYTEArray &data) const

## Protected Attributes

PString | oid
BYTE | t35CountryCode
BYTE | t35Extension
WORD | manufacturerCode
PBYTEArray | nonStandardData
PINDEX | comparisonOffset
PINDEX | comparisonLength
CompareFuncType | compareFunc

## Detailed Description

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

It is expected that an application makes a descendent off H323NonStandardAudioCapability or H323NonStandardVideoCapability which multiply inherit from this class.

## Member Typedef Documentation

typedef PObject::Comparison(* H323NonStandardCapabilityInfo::CompareFuncType) (struct PluginCodec_H323NonStandardCodecData *)

## Constructor & Destructor Documentation

H323NonStandardCapabilityInfo::H323NonStandardCapabilityInfo | ( | CompareFuncType | compareFunc,
|  | const BYTE * | dataBlock,
|  | PINDEX | dataSize
| ) |  |

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

Parameters

  dataBlock | Non-Standard data for codec type
  dataSize | Size of dataBlock. If 0 and dataBlock != NULL use strlen(dataBlock)

H323NonStandardCapabilityInfo::H323NonStandardCapabilityInfo | ( | const BYTE * | dataBlock,
|  | PINDEX | dataSize,
|  | PINDEX | comparisonOffset = `0`,
|  | PINDEX | comparisonLength = `P_MAX_INDEX`
| ) |  |

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

Parameters

  dataBlock | Non-Standard data for codec type
  dataSize | Size of dataBlock. If 0 and dataBlock != NULL use strlen(dataBlock)
  comparisonOffset | Offset into dataBlock to compare
  comparisonLength | Length of bytes to compare

H323NonStandardCapabilityInfo::H323NonStandardCapabilityInfo | ( | const PString & | oid,
|  | const BYTE * | dataBlock,
|  | PINDEX | dataSize,
|  | PINDEX | comparisonOffset = `0`,
|  | PINDEX | comparisonLength = `P_MAX_INDEX`
| ) |  |

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

Parameters

  dataBlock | Non-Standard data for codec type
  dataSize | Size of dataBlock. If 0 and dataBlock != NULL use strlen(dataBlock)

H323NonStandardCapabilityInfo::H323NonStandardCapabilityInfo | ( | BYTE | country,
|  | BYTE | extension,
|  | WORD | maufacturer,
|  | const BYTE * | dataBlock,
|  | PINDEX | dataSize,
|  | PINDEX | comparisonOffset = `0`,
|  | PINDEX | comparisonLength = `P_MAX_INDEX`
| ) |  |

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

Parameters

  country | t35 information
  extension | t35 information
  maufacturer | t35 information
  dataBlock | Non-Standard data for codec type
  dataSize | Size of dataBlock. If 0 and dataBlock != NULL use strlen(dataBlock)
  comparisonOffset | Offset into dataBlock to compare
  comparisonLength | Length of bytes to compare

virtual H323NonStandardCapabilityInfo::~H323NonStandardCapabilityInfo | ( |  | ) |

virtual

Destroy the capability information

## Member Function Documentation

PObject::Comparison H323NonStandardCapabilityInfo::CompareData | ( | const PBYTEArray & | data | ) | const

protected

Parameters

  data | Data field in PDU received

PObject::Comparison H323NonStandardCapabilityInfo::CompareInfo | ( | const H323NonStandardCapabilityInfo & | obj | ) | const

protected

PObject::Comparison H323NonStandardCapabilityInfo::CompareParam | ( | const H245_NonStandardParameter & | param | ) | const

PBoolean H323NonStandardCapabilityInfo::IsMatch | ( | const H245_NonStandardParameter & | param | ) | const

PBoolean H323NonStandardCapabilityInfo::OnReceivedNonStandardPDU | ( | const PASN_Choice & | pdu,
|  | unsigned | nonStandardTag
| ) |  |

protected

virtual PBoolean H323NonStandardCapabilityInfo::OnReceivedPDU | ( | const PBYTEArray & | data | ) |

virtual

This function validates and uses the non-standard data field.

The default behaviour returns true if data is equal to fixedData.

Parameters

  data | Data field in PDU received

PBoolean H323NonStandardCapabilityInfo::OnSendingNonStandardPDU | ( | PASN_Choice & | pdu,
|  | unsigned | nonStandardTag
| ) |  | const

protected

virtual PBoolean H323NonStandardCapabilityInfo::OnSendingPDU | ( | PBYTEArray & | data | ) | const

virtual

This function gets the non-standard data field.

The default behaviour sets data to fixedData.

Parameters

  data | Data field in PDU to send

## Field Documentation

CompareFuncType H323NonStandardCapabilityInfo::compareFunc

protected

PINDEX H323NonStandardCapabilityInfo::comparisonLength

protected

PINDEX H323NonStandardCapabilityInfo::comparisonOffset

protected

WORD H323NonStandardCapabilityInfo::manufacturerCode

protected

PBYTEArray H323NonStandardCapabilityInfo::nonStandardData

protected

PString H323NonStandardCapabilityInfo::oid

protected

BYTE H323NonStandardCapabilityInfo::t35CountryCode

protected

BYTE H323NonStandardCapabilityInfo::t35Extension

protected

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

- h323caps.h