H323NonStandardCapabilityInfo Class Reference

#include <h323caps.h>

Inheritance diagram for H323NonStandardCapabilityInfo:

H323NonStandardDataCapability H323_T38NonStandardCapability List of all members.

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 BOOL OnSendingPDU (PBYTEArray &data) const
virtual BOOL OnReceivedPDU (const PBYTEArray &data)
BOOL IsMatch (const H245_NonStandardParameter &param) const
PObject::Comparison CompareParam (const H245_NonStandardParameter &param) const

Protected Member Functions

BOOL OnSendingNonStandardPDU (PASN_Choice &pdu, unsigned nonStandardTag) const
BOOL 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

virtual BOOL 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

virtual BOOL 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

BOOL H323NonStandardCapabilityInfo::IsMatch ( const H245_NonStandardParameter param  )  const

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

BOOL H323NonStandardCapabilityInfo::OnSendingNonStandardPDU ( PASN_Choice &  pdu,
unsigned  nonStandardTag 
) const [protected]

BOOL H323NonStandardCapabilityInfo::OnReceivedNonStandardPDU ( const PASN_Choice &  pdu,
unsigned  nonStandardTag 
) [protected]

PObject::Comparison H323NonStandardCapabilityInfo::CompareInfo ( const H323NonStandardCapabilityInfo obj  )  const [protected]

PObject::Comparison H323NonStandardCapabilityInfo::CompareData ( const PBYTEArray &  data  )  const [protected]

Parameters:
data  Data field in PDU received


Member Data Documentation

PString H323NonStandardCapabilityInfo::oid [protected]

BYTE H323NonStandardCapabilityInfo::t35CountryCode [protected]

BYTE H323NonStandardCapabilityInfo::t35Extension [protected]

WORD H323NonStandardCapabilityInfo::manufacturerCode [protected]

PBYTEArray H323NonStandardCapabilityInfo::nonStandardData [protected]

PINDEX H323NonStandardCapabilityInfo::comparisonOffset [protected]

PINDEX H323NonStandardCapabilityInfo::comparisonLength [protected]

CompareFuncType H323NonStandardCapabilityInfo::compareFunc [protected]


The documentation for this class was generated from the following file:
Generated on Fri Mar 7 06:33:58 2008 for OPAL by  doxygen 1.5.1