h323h224.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef OPAL_H224_H323H224_H
00028 #define OPAL_H224_H323H224_H
00029
00030 #ifdef P_USE_PRAGMA
00031 #pragma interface
00032 #endif
00033
00034 #include <opal/buildopts.h>
00035
00036 #if OPAL_HAS_H224
00037 #if OPAL_H323
00038
00039 #include <h323/h323caps.h>
00040
00041 #include <h224/h224.h>
00042 #include <h224/h224handler.h>
00043
00044
00047 class H323_H224_AnnexQCapability : public H323DataCapability
00048 {
00049 PCLASSINFO(H323_H224_AnnexQCapability, H323DataCapability);
00050
00051 public:
00052
00053 H323_H224_AnnexQCapability();
00054 ~H323_H224_AnnexQCapability();
00055
00056 Comparison Compare(const PObject & obj) const;
00057
00058 virtual PObject * Clone() const;
00059
00060 virtual unsigned GetSubType() const;
00061
00062 virtual PString GetFormatName() const;
00063
00064 virtual H323Channel * CreateChannel(H323Connection & connection,
00065 H323Channel::Directions direction,
00066 unsigned int sessionID,
00067 const H245_H2250LogicalChannelParameters * params) const;
00068
00069 virtual PBoolean OnSendingPDU(H245_DataApplicationCapability & pdu) const;
00070 virtual PBoolean OnSendingPDU(H245_DataMode & pdu) const;
00071 virtual PBoolean OnReceivedPDU(const H245_DataApplicationCapability & pdu);
00072 };
00073
00074
00077 class H323_H224_HDLCTunnelingCapability : public H323DataCapability
00078 {
00079 PCLASSINFO(H323_H224_HDLCTunnelingCapability, H323DataCapability);
00080
00081 public:
00082
00083 H323_H224_HDLCTunnelingCapability();
00084 ~H323_H224_HDLCTunnelingCapability();
00085
00086 Comparison Compare(const PObject & obj) const;
00087
00088 virtual PObject * Clone() const;
00089
00090 virtual unsigned GetSubType() const;
00091
00092 virtual PString GetFormatName() const;
00093
00094 virtual H323Channel * CreateChannel(H323Connection & connection,
00095 H323Channel::Directions direction,
00096 unsigned int sessionID,
00097 const H245_H2250LogicalChannelParameters * params) const;
00098
00099 virtual PBoolean OnSendingPDU(H245_DataApplicationCapability & pdu) const;
00100 virtual PBoolean OnSendingPDU(H245_DataMode & pdu) const;
00101 virtual PBoolean OnReceivedPDU(const H245_DataApplicationCapability & pdu);
00102
00103 };
00104
00105 #define OPAL_REGISTER_H224_CAPABILITY() \
00106 H323_REGISTER_CAPABILITY(H323_H224_AnnexQCapability, GetOpalH224_H323AnnexQ().GetName()); \
00107 H323_REGISTER_CAPABILITY(H323_H224_HDLCTunnelingCapability, GetOpalH224_HDLCTunneling().GetName()); \
00108
00109
00110 #endif // OPAL_H323
00111
00112 #endif // OPAL_HAS_H224
00113
00114 #endif // OPAL_H224_H323H224_H