H323_UserInputCapability Class Reference

#include <h323caps.h>

Inheritance diagram for H323_UserInputCapability:

H323Capability List of all members.

Construction

enum  SubTypes {
  BasicString, IA5String, GeneralString, SignalToneH245,
  HookFlashH245, SignalToneRFC2833, NumSubTypes
}
static const char * GetSubTypeName (SubTypes subType)
ostream & operator<< (ostream &strm, SubTypes subType)
 H323_UserInputCapability (SubTypes subType)

Public Member Functions

Overrides from class PObject
virtual PObject * Clone () const
Identification functions
virtual MainTypes GetMainType () const
virtual unsigned GetSubType () const
virtual PString GetFormatName () const
Operations
virtual H323ChannelCreateChannel (H323Connection &connection, H323Channel::Directions dir, unsigned sessionID, const H245_H2250LogicalChannelParameters *param) const
Protocol manipulation
virtual PBoolean OnSendingPDU (H245_Capability &pdu) const
virtual PBoolean OnSendingPDU (H245_DataType &pdu) const
virtual PBoolean OnSendingPDU (H245_ModeElement &pdu) const
virtual PBoolean OnReceivedPDU (const H245_Capability &pdu)
virtual PBoolean OnReceivedPDU (const H245_DataType &pdu, PBoolean receiver)
virtual PBoolean IsUsable (const H323Connection &connection) const

Static Public Member Functions

static void AddAllCapabilities (H323Capabilities &capabilities, PINDEX descriptorNum, PINDEX simultaneous)

Protected Attributes

SubTypes subType

Detailed Description

This class describes the UserInput psuedo-channel.


Member Enumeration Documentation

enum H323_UserInputCapability::SubTypes

Enumerator:
BasicString 
IA5String 
GeneralString 
SignalToneH245 
HookFlashH245 
SignalToneRFC2833 
NumSubTypes 


Constructor & Destructor Documentation

H323_UserInputCapability::H323_UserInputCapability ( SubTypes  subType  ) 

Create the capability for User Input. The subType parameter is a value from the enum H245_UserInputCapability::Choices.


Member Function Documentation

static const char* H323_UserInputCapability::GetSubTypeName ( SubTypes  subType  )  [static]

virtual PObject* H323_UserInputCapability::Clone (  )  const [virtual]

Create a copy of the object.

virtual MainTypes H323_UserInputCapability::GetMainType (  )  const [virtual]

Get the main type of the capability.

This function is overridden by one of the three main sub-classes off which real capabilities would be descendend.

Implements H323Capability.

virtual unsigned H323_UserInputCapability::GetSubType (  )  const [virtual]

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

Implements H323Capability.

virtual PString H323_UserInputCapability::GetFormatName (  )  const [virtual]

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

Implements H323Capability.

virtual H323Channel* H323_UserInputCapability::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 PBoolean H323_UserInputCapability::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 is pure.

Parameters:
pdu  PDU to set information on

Implements H323Capability.

virtual PBoolean H323_UserInputCapability::OnSendingPDU ( H245_DataType pdu  )  const [virtual]

This function is called whenever and outgoing 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 is pure.

Parameters:
pdu  PDU to set information on

Reimplemented from H323Capability.

virtual PBoolean H323_UserInputCapability::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 calls the OnSendingPDU() function with a more specific PDU type.

Parameters:
pdu  PDU to set information on

Implements H323Capability.

virtual PBoolean H323_UserInputCapability::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 PFalse then the received PDU codec description is not supported, so will be ignored. The default behaviour simply returns PTrue.

Parameters:
pdu  PDU to get information from

Reimplemented from H323Capability.

virtual PBoolean H323_UserInputCapability::OnReceivedPDU ( const H245_DataType pdu,
PBoolean  receiver 
) [virtual]

This function is called whenever and incoming 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 is pure.

Parameters:
pdu  PDU to get information from
receiver  Is receiver OLC

Reimplemented from H323Capability.

virtual PBoolean H323_UserInputCapability::IsUsable ( const H323Connection connection  )  const [virtual]

Validate that the capability is usable given the connection. This checks agains the negotiated protocol version number and remote application to determine if this capability should be used in TCS or OLC pdus.

The default behaviour will check for early versions and return PFalse for RFC2833 mode.

Reimplemented from H323Capability.

static void H323_UserInputCapability::AddAllCapabilities ( H323Capabilities capabilities,
PINDEX  descriptorNum,
PINDEX  simultaneous 
) [static]

Parameters:
capabilities  Table to add capabilities to
descriptorNum  The member of the capabilityDescriptor to add
simultaneous  The member of the SimultaneousCapabilitySet to add


Friends And Related Function Documentation

ostream& operator<< ( ostream &  strm,
SubTypes  subType 
) [friend]


Member Data Documentation

SubTypes H323_UserInputCapability::subType [protected]


The documentation for this class was generated from the following file:
Generated on Mon Sep 15 11:49:32 2008 for OPAL by  doxygen 1.5.1