OpenH323 1.18.0
|
00001 /* 00002 * h323annexg.h 00003 * 00004 * Implementation of H.323 Annex G using H.501 00005 * 00006 * Open H323 Library 00007 * 00008 * Copyright (c) 2003 Equivalence Pty. Ltd. 00009 * 00010 * The contents of this file are subject to the Mozilla Public License 00011 * Version 1.0 (the "License"); you may not use this file except in 00012 * compliance with the License. You may obtain a copy of the License at 00013 * http://www.mozilla.org/MPL/ 00014 * 00015 * Software distributed under the License is distributed on an "AS IS" 00016 * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See 00017 * the License for the specific language governing rights and limitations 00018 * under the License. 00019 * 00020 * The Original Code is Open H323 Library. 00021 * 00022 * The Initial Developer of the Original Code is Equivalence Pty. Ltd. 00023 * 00024 * Contributor(s): ______________________________________. 00025 */ 00026 00027 #ifndef __OPAL_H323ANNEXG_H 00028 #define __OPAL_H323ANNEXG_H 00029 00030 #ifdef P_USE_PRAGMA 00031 #pragma interface 00032 #endif 00033 00034 #include "h323trans.h" 00035 #include "h501pdu.h" 00036 00037 class PASN_Sequence; 00038 class PASN_Choice; 00039 00040 class H323EndPoint; 00041 00043 00046 class H323_AnnexG : public H323Transactor 00047 { 00048 PCLASSINFO(H323_AnnexG, H323Transactor); 00049 public: 00052 enum { 00053 DefaultUdpPort = 2099, 00054 DefaultTcpPort = 2099 00055 }; 00056 00059 H323_AnnexG( 00060 H323EndPoint & endpoint, 00061 H323Transport * transport 00062 ); 00063 H323_AnnexG( 00064 H323EndPoint & endpoint, 00065 const H323TransportAddress & addr 00066 ); 00067 00070 ~H323_AnnexG(); 00072 00077 void PrintOn( 00078 ostream & strm 00079 ) const; 00081 00086 virtual H323TransactionPDU * CreateTransactionPDU() const; 00087 00090 virtual BOOL HandleTransaction( 00091 const PASN_Object & rawPDU 00092 ); 00093 00096 virtual void OnSendingPDU( 00097 PASN_Object & rawPDU 00098 ); 00100 00103 virtual BOOL OnReceiveServiceRequest (const H501PDU & pdu, const H501_ServiceRequest & pduBody); 00104 virtual BOOL OnReceiveServiceConfirmation (const H501PDU & pdu, const H501_ServiceConfirmation & pduBody); 00105 virtual BOOL OnReceiveServiceRejection (const H501PDU & pdu, const H501_ServiceRejection & pduBody); 00106 virtual BOOL OnReceiveServiceRelease (const H501PDU & pdu, const H501_ServiceRelease & pduBody); 00107 virtual BOOL OnReceiveDescriptorRequest (const H501PDU & pdu, const H501_DescriptorRequest & pduBody); 00108 virtual BOOL OnReceiveDescriptorConfirmation (const H501PDU & pdu, const H501_DescriptorConfirmation & pduBody); 00109 virtual BOOL OnReceiveDescriptorRejection (const H501PDU & pdu, const H501_DescriptorRejection & pduBody); 00110 virtual BOOL OnReceiveDescriptorIDRequest (const H501PDU & pdu, const H501_DescriptorIDRequest & pduBody); 00111 virtual BOOL OnReceiveDescriptorIDConfirmation (const H501PDU & pdu, const H501_DescriptorIDConfirmation & pduBody); 00112 virtual BOOL OnReceiveDescriptorIDRejection (const H501PDU & pdu, const H501_DescriptorIDRejection & pduBody); 00113 virtual BOOL OnReceiveDescriptorUpdate (const H501PDU & pdu, const H501_DescriptorUpdate & pduBody); 00114 virtual BOOL OnReceiveDescriptorUpdateACK (const H501PDU & pdu, const H501_DescriptorUpdateAck & pduBody); 00115 virtual BOOL OnReceiveAccessRequest (const H501PDU & pdu, const H501_AccessRequest & pduBody); 00116 virtual BOOL OnReceiveAccessConfirmation (const H501PDU & pdu, const H501_AccessConfirmation & pduBody); 00117 virtual BOOL OnReceiveAccessRejection (const H501PDU & pdu, const H501_AccessRejection & pduBody); 00118 virtual BOOL OnReceiveRequestInProgress (const H501PDU & pdu, const H501_RequestInProgress & pduBody); 00119 virtual BOOL OnReceiveNonStandardRequest (const H501PDU & pdu, const H501_NonStandardRequest & pduBody); 00120 virtual BOOL OnReceiveNonStandardConfirmation (const H501PDU & pdu, const H501_NonStandardConfirmation & pduBody); 00121 virtual BOOL OnReceiveNonStandardRejection (const H501PDU & pdu, const H501_NonStandardRejection & pduBody); 00122 virtual BOOL OnReceiveUnknownMessageResponse (const H501PDU & pdu, const H501_UnknownMessageResponse & pduBody); 00123 virtual BOOL OnReceiveUsageRequest (const H501PDU & pdu, const H501_UsageRequest & pduBody); 00124 virtual BOOL OnReceiveUsageConfirmation (const H501PDU & pdu, const H501_UsageConfirmation & pduBody); 00125 virtual BOOL OnReceiveUsageIndicationConfirmation (const H501PDU & pdu, const H501_UsageIndicationConfirmation & pduBody); 00126 virtual BOOL OnReceiveUsageIndicationRejection (const H501PDU & pdu, const H501_UsageIndicationRejection & pduBody); 00127 virtual BOOL OnReceiveUsageRejection (const H501PDU & pdu, const H501_UsageRejection & pduBody); 00128 virtual BOOL OnReceiveValidationRequest (const H501PDU & pdu, const H501_ValidationRequest & pduBody); 00129 virtual BOOL OnReceiveValidationConfirmation (const H501PDU & pdu, const H501_ValidationConfirmation & pduBody); 00130 virtual BOOL OnReceiveValidationRejection (const H501PDU & pdu, const H501_ValidationRejection & pduBody); 00131 virtual BOOL OnReceiveAuthenticationRequest (const H501PDU & pdu, const H501_AuthenticationRequest & pduBody); 00132 virtual BOOL OnReceiveAuthenticationConfirmation (const H501PDU & pdu, const H501_AuthenticationConfirmation & pduBody); 00133 virtual BOOL OnReceiveAuthenticationRejection (const H501PDU & pdu, const H501_AuthenticationRejection & pduBody); 00134 virtual BOOL OnReceiveUnknown(const H501PDU &); 00135 00136 protected: 00137 void Construct(); 00138 }; 00139 00140 00141 #endif // __OPAL_H323ANNEXG_H 00142 00143