34 #ifndef OPAL_H323_H323CAPS_H
35 #define OPAL_H323_H323CAPS_H
55 class H245_Capability;
57 class H245_ModeElement;
58 class H245_AudioCapability;
60 class H245_VideoCapability;
62 class H245_DataApplicationCapability;
64 class H245_DataProtocolCapability;
65 class H245_H2250LogicalChannelParameters;
66 class H245_TerminalCapabilitySet;
67 class H245_NonStandardParameter;
70 class H245_CapabilityIdentifier;
71 class H245_GenericCapability;
72 class H245_GenericParameter;
112 Comparison
Compare(
const PObject & obj)
const;
116 void PrintOn(ostream & strm)
const;
212 const H245_H2250LogicalChannelParameters * param
233 H245_Capability & pdu
255 H245_ModeElement & pdu
271 const H245_Capability & pdu
282 const H245_DataType & pdu,
289 const PASN_Choice & subTypePDU,
290 const PString & mediaPacketization
363 P_REMOVE_VIRTUAL(PBoolean,
IsMatch(
const PASN_Choice &)
const,
false);
387 const BYTE * dataBlock,
394 const BYTE * dataBlock,
404 const BYTE * dataBlock,
416 const BYTE * dataBlock,
439 const PBYTEArray &
data
442 PBoolean
IsMatch(
const H245_NonStandardParameter & param)
const;
445 const H245_NonStandardParameter & param
451 unsigned nonStandardTag
454 const PASN_Choice & pdu,
455 unsigned nonStandardTag
462 const PBYTEArray &
data
497 H245_GenericCapability & pdu,
503 const H245_GenericCapability & pdu,
509 const H245_GenericCapability & param
540 const H245_H2250LogicalChannelParameters * param
627 H245_Capability & pdu
651 H245_ModeElement & pdu
663 H245_AudioCapability & pdu,
667 H245_AudioCapability & pdu,
696 const H245_Capability & pdu
709 const H245_DataType & pdu,
722 const H245_AudioCapability & pdu,
723 unsigned & packetSize
726 const H245_AudioCapability & pdu,
727 unsigned & packetSize,
751 const BYTE * dataBlock,
757 const BYTE * dataBlock = NULL,
767 const BYTE * dataBlock = NULL,
779 const BYTE * dataBlock = NULL,
791 Comparison
Compare(
const PObject & obj)
const;
815 H245_AudioCapability & pdu,
840 const H245_AudioCapability & pdu,
841 unsigned & packetSize
847 const PASN_Choice & subTypePDU,
848 const PString & mediaPacketization
871 const PString & capabilityId,
872 unsigned fixedBitRate
881 Comparison
Compare(
const PObject & obj)
const;
905 H245_AudioCapability & pdu,
931 const H245_AudioCapability & pdu,
932 unsigned & packetSize,
939 const PASN_Choice & subTypePDU,
940 const PString & mediaPacketization
946 template <const
char * o
id, const OpalAudioFormat & fmtFunc(),
unsigned fixedBitRate = 0>
1012 H245_Capability & pdu
1036 H245_ModeElement & pdu
1047 H245_VideoCapability & pdu
1050 H245_VideoCapability & pdu,
1063 H245_VideoMode & pdu
1076 const H245_Capability & pdu
1087 const H245_DataType & pdu,
1099 const H245_VideoCapability & pdu
1102 const H245_VideoCapability & pdu,
1126 const BYTE * dataBlock,
1132 const BYTE * dataBlock = NULL,
1133 PINDEX dataSize = 0,
1141 const PString &
oid,
1142 const BYTE * dataBlock = NULL,
1143 PINDEX dataSize = 0,
1154 const BYTE * dataBlock = NULL,
1155 PINDEX dataSize = 0,
1166 Comparison
Compare(
const PObject & obj)
const;
1191 H245_VideoCapability & pdu
1203 H245_VideoMode & pdu
1215 const H245_VideoCapability & pdu
1221 const PASN_Choice & subTypePDU,
1222 const PString & mediaPacketization
1245 const PString & capabilityId,
1246 PINDEX maxBitRate = 0
1255 Comparison
Compare(
const PObject & obj)
const;
1279 H245_VideoCapability & pdu,
1292 H245_VideoMode & pdu
1304 const H245_VideoCapability & pdu,
1311 const PASN_Choice & subTypePDU,
1312 const PString & mediaPacketization
1318 template <const
char * o
id, const OpalV
ideoFormat & fmtFunc()>
1353 const PString & identifier
1378 H245_VideoCapability & pdu,
1391 H245_VideoMode & pdu
1403 const H245_VideoCapability & pdu,
1410 const PASN_Choice & subTypePDU,
1411 const PString & mediaPacketization
1435 const PString & identifier
1465 H245_Capability & pdu
1476 H245_ModeElement & pdu
1489 const H245_Capability & pdu
1495 const PASN_Choice & subTypePDU,
1496 const PString & mediaPacketization
1511 const H245_H2250LogicalChannelParameters * param
1539 Comparison
Compare(
const PObject & obj)
const;
1543 virtual PObject *
Clone()
const;
1564 H245_VideoCapability & pdu,
1577 const H245_VideoCapability & pdu,
1602 virtual PObject *
Clone()
const;
1616 #endif // OPAL_VIDEO
1670 H245_Capability & pdu
1694 H245_ModeElement & pdu
1705 H245_DataApplicationCapability & pdu
1708 H245_DataApplicationCapability & pdu,
1734 const H245_Capability & pdu
1745 const H245_DataType & pdu,
1757 const H245_DataApplicationCapability & pdu
1760 const H245_DataApplicationCapability & pdu,
1789 const BYTE * dataBlock = NULL,
1790 PINDEX dataSize = 0,
1798 unsigned maxBitRate,
1799 const PString &
oid,
1800 const BYTE * dataBlock = NULL,
1801 PINDEX dataSize = 0,
1809 unsigned maxBitRate,
1813 const BYTE * dataBlock = NULL,
1814 PINDEX dataSize = 0,
1825 Comparison
Compare(
const PObject & obj)
const;
1850 H245_DataApplicationCapability & pdu
1874 const H245_DataApplicationCapability & pdu
1880 const PASN_Choice & subTypePDU,
1881 const PString & mediaPacketization
1926 virtual PObject *
Clone()
const;
1985 virtual PObject *
Clone()
const;
2018 const H245_H2250LogicalChannelParameters * param
2033 H245_Capability & pdu
2056 H245_ModeElement & pdu
2069 const H245_Capability & pdu
2080 const H245_DataType & pdu,
2099 PINDEX descriptorNum,
2100 PINDEX simultaneous,
2101 bool includeRFC2833 =
true
2114 PARRAY(H323CapabilitiesListArray, H323CapabilitiesList);
2120 PBoolean
SetSize(PINDEX newSize);
2132 PBoolean
SetSize(PINDEX newSize);
2152 const H245_TerminalCapabilitySet & pdu
2212 PINDEX descriptorNum,
2213 PINDEX simultaneous,
2220 PINDEX descriptorNum,
2221 PINDEX simultaneous,
2232 PINDEX descriptorNum,
2233 PINDEX simultaneous,
2234 const PString & name,
2235 PBoolean exact =
false
2241 PINDEX descriptorNum,
2242 PINDEX simultaneous,
2243 const PString & name,
2244 PBoolean exact =
false
2283 const PString & formatName
2290 const PStringArray & formatNames
2305 unsigned capabilityNumber
2324 const PString & formatName,
2327 PBoolean exact =
false
2356 const H245_Capability & cap
2365 const H245_DataType & dataType,
2366 const PString & mediaPacketization = PString::Empty()
2375 const H245_ModeElement & modeElement,
2376 const PString & mediaPacketization = PString::Empty()
2386 unsigned subType = UINT_MAX
2393 H245_TerminalCapabilitySet & pdu
2409 const PStringArray & preferenceOrder
2421 unsigned capabilityNumber
2434 unsigned capabilityNumber1,
2435 unsigned capabilityNumber2
2458 #define H323_REGISTER_CAPABILITY(cls, capName) static H323CapabilityFactory::Worker<cls> cls##Factory(capName, true); \
2463 #endif // OPAL_H323_H323CAPS_H