OPAL
Version 3.14.3
|
#include <h323caps.h>
Public Member Functions | |
Construction | |
H323DataCapability (unsigned maxBitRate) | |
Identification functions | |
virtual MainTypes | GetMainType () const |
Operations | |
virtual unsigned | GetDefaultSessionID () 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 | OnSendingPDU (H245_DataApplicationCapability &pdu) const |
virtual PBoolean | OnSendingPDU (H245_DataApplicationCapability &pdu, CommandType type) const |
virtual PBoolean | OnSendingPDU (H245_DataMode &pdu) const =0 |
virtual PBoolean | OnReceivedPDU (const H245_Capability &pdu) |
virtual PBoolean | OnReceivedPDU (const H245_DataType &pdu, PBoolean receiver) |
virtual PBoolean | OnReceivedPDU (const H245_DataApplicationCapability &pdu) |
virtual PBoolean | OnReceivedPDU (const H245_DataApplicationCapability &pdu, CommandType type) |
![]() | |
H323Capability () | |
H323Capability (const H323Capability &other) | |
H323Capability & | operator= (const H323Capability &other) |
~H323Capability () | |
Comparison | Compare (const PObject &obj) const |
void | PrintOn (ostream &strm) const |
virtual unsigned | GetSubType () const =0 |
virtual PString | GetFormatName () const =0 |
virtual void | SetTxFramesInPacket (unsigned frames) |
virtual unsigned | GetTxFramesInPacket () const |
virtual unsigned | GetRxFramesInPacket () const |
virtual H323Channel * | CreateChannel (H323Connection &connection, H323Channel::Directions dir, unsigned sessionID, const H245_H2250LogicalChannelParameters *param) const |
virtual PBoolean | IsMatch (const PASN_Object &subTypePDU, const PString &mediaPacketization) const |
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... | |
Protected Attributes | |
OpalBandwidth | m_maxBitRate |
![]() | |
unsigned | assignedCapabilityNumber |
CapabilityDirection | capabilityDirection |
Unique ID assigned to capability. More... | |
OpalMediaFormat | m_mediaFormat |
Additional Inherited Members | |
![]() | |
enum | MainTypes { e_Audio, e_Video, e_Data, e_UserInput, e_GenericControl, e_H235Security, e_FEC, e_NumMainTypes } |
enum | { DefaultAudioSessionID = 1, DefaultVideoSessionID = 2, DefaultDataSessionID = 3, MasterAllocatedBaseSessionID, DeferredSessionID = 1000000 } |
enum | CommandType { e_TCS, e_OLC, e_ReqMode } |
enum | CapabilityDirection { e_Unknown, e_Receive, e_Transmit, e_ReceiveAndTransmit, e_NoDirection, NumCapabilityDirections } |
![]() | |
static H323Capability * | Create (const PString &name) |
![]() | |
OpalMediaFormat & | GetWritableMediaFormat () const |
This class describes the interface to a data channel used to transfer data via the logical channels opened and managed by the H323 control channel.
An application may create a descendent off this class and override functions as required for descibing a codec.
H323DataCapability::H323DataCapability | ( | unsigned | maxBitRate | ) |
Create a new data capability.
maxBitRate | Maximum bit rate for data in 100's b/s |
|
virtual |
Get the default RTP session. This function gets the default RTP session ID for the capability type. For example audio capabilities return the value H323Capability::DefaultAudioSessionID etc.
The default behaviour returns 3, indicating a data session.
Reimplemented from H323Capability.
|
virtual |
Get the main type of the capability. Always returns e_Data.
Implements H323Capability.
|
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.
pdu | PDU to get information from |
Reimplemented from H323Capability.
|
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.
pdu | PDU to get information from |
receiver | Is receiver OLC |
Reimplemented from H323Capability.
|
virtual |
This function is called whenever and incoming TerminalCapabilitySet or 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.
pdu | PDU to set information on |
Reimplemented in H323NonStandardDataCapability, H323_T120Capability, and H323_H224_HDLCTunnelingCapability.
|
virtual |
pdu | PDU to set information on |
type | Type of PDU to send in |
Reimplemented in H323GenericDataCapability.
|
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.
pdu | PDU to set information on |
Implements H323Capability.
|
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 calls the OnSendingPDU() function with a more specific PDU type.
pdu | PDU to set information on |
Reimplemented from H323Capability.
|
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.
pdu | PDU to set information on |
Reimplemented from H323Capability.
|
virtual |
This function is called whenever and outgoing TerminalCapabilitySet or 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.
pdu | PDU to set information on |
Reimplemented in H323NonStandardDataCapability, H323_T120Capability, and H323_H224_HDLCTunnelingCapability.
|
virtual |
pdu | PDU to set information on |
type | Type of PDU to send in |
Reimplemented in H323GenericDataCapability.
|
pure 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 sets the PDUs tag according to the GetSubType() function (translated to different enum).
pdu | PDU to set information on |
Implemented in H323GenericDataCapability, H323NonStandardDataCapability, H323_T120Capability, and H323_H224_HDLCTunnelingCapability.
|
protected |