OPAL Version 3.10.4

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Class Hierarchy
- Data Fields

Static Public Member Functions | Protected Attributes
H323_UserInputCapability Class Reference

`#include <h323caps.h>`

Inheritance diagram for H323_UserInputCapability:

enum | MainTypes { e_Audio, e_Video, e_Data, e_UserInput, e_GenericControl, e_NumMainTypes }
enum | { DefaultAudioSessionID = 1, DefaultVideoSessionID = 2, DefaultDataSessionID = 3, DefaultH224SessionID = 4 }
enum | CommandType { e_TCS, e_OLC, e_ReqMode }
enum | CapabilityDirection { e_Unknown, e_Receive, e_Transmit, e_ReceiveAndTransmit, e_NoDirection, NumCapabilityDirections }

## 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 H323Channel * | CreateChannel (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
Public Member Functions inherited from H323Capability
| H323Capability ()
Comparison | Compare (const PObject &obj) const
void | PrintOn (ostream &strm) const
virtual unsigned | GetDefaultSessionID () const
virtual void | SetTxFramesInPacket (unsigned frames)
virtual unsigned | GetTxFramesInPacket () const
virtual unsigned | GetRxFramesInPacket () const
virtual PBoolean | IsMatch (const PASN_Choice &subTypePDU) const
CapabilityDirection | GetCapabilityDirection () const
void | SetCapabilityDirection (CapabilityDirection dir)
unsigned | GetCapabilityNumber () const
| Get unique capability number.
void | SetCapabilityNumber (unsigned num)
| Set unique capability number.
OpalMediaFormat | GetMediaFormat () const
bool | UpdateMediaFormat (const OpalMediaFormat &format)
RTP_DataFrame::PayloadTypes | GetPayloadType () const
| Get the payload type for the capaibility.
void | SetPayloadType (RTP_DataFrame::PayloadTypes pt)
| Set the payload type for the capaibility.
virtual void | AttachQoS (RTP_QOS *)
| Attach a QoS specification to this channel.

## Static Public Member Functions

static void | AddAllCapabilities (H323Capabilities &capabilities, PINDEX descriptorNum, PINDEX simultaneous, bool includeRFC2833=true)
static H323Capability * | Create (const PString &name)

## Protected Attributes

SubTypes | subType
Protected Attributes inherited from H323Capability
unsigned | assignedCapabilityNumber
CapabilityDirection | capabilityDirection
| Unique ID assigned to capability.

## 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)

## Additional Inherited Members

Protected Member Functions inherited from H323Capability
OpalMediaFormat & | GetWritableMediaFormat () const

## 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 void H323_UserInputCapability::AddAllCapabilities | ( | H323Capabilities & | capabilities,
|  | PINDEX | descriptorNum,
|  | PINDEX | simultaneous,
|  | bool | includeRFC2833 = `true`
| ) |  |

static

Parameters:

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

virtual PObject* H323_UserInputCapability::Clone | ( |  | ) | const

virtual

Create a copy of the object.

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 PString H323_UserInputCapability::GetFormatName | ( |  | ) | const

virtual

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

Implements H323Capability.

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.

static const char* H323_UserInputCapability::GetSubTypeName | ( | SubTypes | subType | ) |

static

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 false for RFC2833 mode.

Reimplemented from 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 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 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::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.

## Friends And Related Function Documentation

ostream& operator<< | ( | ostream & | strm,
|  | SubTypes | subType
| ) |  |

friend

## Field Documentation

SubTypes H323_UserInputCapability::subType

protected

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

- h323caps.h