OPAL  Version 3.12.9
H323GenericControlCapability Class Reference

#include <h323caps.h>

Inheritance diagram for H323GenericControlCapability:
Collaboration diagram for H323GenericControlCapability:

Public Member Functions

Construction
 H323GenericControlCapability (const PString &identifier)
 
Identification functions
virtual MainTypes GetMainType () const
 
virtual unsigned GetSubType () const
 
Protocol manipulation
virtual PBoolean OnSendingPDU (H245_Capability &pdu) const
 
virtual PBoolean OnSendingPDU (H245_ModeElement &pdu) const
 
virtual PBoolean OnReceivedPDU (const H245_Capability &pdu)
 
virtual PBoolean IsMatch (const PASN_Choice &subTypePDU, const PString &mediaPacketization) const
 
Operations
virtual H323ChannelCreateChannel (H323Connection &connection, H323Channel::Directions dir, unsigned sessionID, const H245_H2250LogicalChannelParameters *param) const
 
- Public Member Functions inherited from H323Capability
 H323Capability ()
 
Comparison Compare (const PObject &obj) const
 
void PrintOn (ostream &strm) const
 
virtual PString GetFormatName () const =0
 
virtual unsigned GetDefaultSessionID () const
 
virtual void SetTxFramesInPacket (unsigned frames)
 
virtual unsigned GetTxFramesInPacket () const
 
virtual unsigned GetRxFramesInPacket () const
 
virtual PBoolean OnSendingPDU (H245_DataType &pdu) const
 
virtual PBoolean OnReceivedPDU (const H245_DataType &pdu, PBoolean receiver)
 
virtual PBoolean IsUsable (const H323Connection &connection) const
 
CapabilityDirection GetCapabilityDirection () const
 
void SetCapabilityDirection (CapabilityDirection dir)
 
unsigned GetCapabilityNumber () const
 Get unique capability number. More...
 
void SetCapabilityNumber (unsigned num)
 Set unique capability number. More...
 
OpalMediaFormat GetMediaFormat () const
 
bool UpdateMediaFormat (const OpalMediaFormat &format)
 
RTP_DataFrame::PayloadTypes GetPayloadType () const
 Get the payload type for the capaibility. More...
 
void SetPayloadType (RTP_DataFrame::PayloadTypes pt)
 Set the payload type for the capaibility. More...
 
- Public Member Functions inherited from H323GenericCapabilityInfo
 H323GenericCapabilityInfo (const PString &id, unsigned maxBitRate, bool fixedBitRate)
 
virtual ~H323GenericCapabilityInfo ()
 

Additional Inherited Members

- Public Types inherited from H323Capability
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
}
 
- Static Public Member Functions inherited from H323Capability
static H323CapabilityCreate (const PString &name)
 
- Protected Member Functions inherited from H323Capability
OpalMediaFormatGetWritableMediaFormat () const
 
- Protected Member Functions inherited from H323GenericCapabilityInfo
virtual PBoolean OnSendingGenericPDU (H245_GenericCapability &pdu, const OpalMediaFormat &mediaFormat, H323Capability::CommandType type) const
 
virtual PBoolean OnReceivedGenericPDU (OpalMediaFormat &mediaFormat, const H245_GenericCapability &pdu, H323Capability::CommandType type)
 
PBoolean IsMatch (const OpalMediaFormat &mediaFormat, const H245_GenericCapability &param) const
 
PObject::Comparison CompareInfo (const H323GenericCapabilityInfo &obj) const
 
- Protected Attributes inherited from H323Capability
unsigned assignedCapabilityNumber
 
CapabilityDirection capabilityDirection
 Unique ID assigned to capability. More...
 
OpalMediaFormat m_mediaFormat
 
- Protected Attributes inherited from H323GenericCapabilityInfo
PString m_identifier
 
unsigned m_maxBitRate
 
bool m_fixedBitRate
 

Detailed Description

This class describes a generic control capability, as used in H.239

Constructor & Destructor Documentation

H323GenericControlCapability::H323GenericControlCapability ( const PString &  identifier)

Create a new data capability.

Parameters
identifierIndentifer (OID) for generic control

Member Function Documentation

virtual H323Channel* H323GenericControlCapability::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
connectionOwner connection for channel
dirDirection of channel
sessionIDSession ID for RTP channel
paramParameters for channel

Implements H323Capability.

virtual MainTypes H323GenericControlCapability::GetMainType ( ) const
virtual

Get the main type of the capability. Always returns e_Data.

Implements H323Capability.

virtual unsigned H323GenericControlCapability::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_extendedVideoCapability.

Implements H323Capability.

virtual PBoolean H323GenericControlCapability::IsMatch ( const PASN_Choice &  subTypePDU,
const PString &  mediaPacketization 
) const
virtual

Compare the generic part of the capability, if applicable.

Parameters
subTypePDUsub-type PDU of H323Capability
mediaPacketizationMedia packetization used

Reimplemented from H323Capability.

virtual PBoolean H323GenericControlCapability::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
pduPDU to get information from

Reimplemented from H323Capability.

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

Parameters
pduPDU to set information on

Implements H323Capability.

virtual PBoolean H323GenericControlCapability::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 is pure.

Parameters
pduPDU to set information on

Implements H323Capability.


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