h323annexg.h

Go to the documentation of this file.
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 <opal/buildopts.h>
00035 
00036 #include <h323/h323trans.h>
00037 #include <h323/h501pdu.h>
00038 
00039 
00040 class PASN_Sequence;
00041 class PASN_Choice;
00042 
00043 class H323EndPoint;
00044 
00045 
00047 
00050 class H323_AnnexG : public H323Transactor
00051 {
00052   PCLASSINFO(H323_AnnexG, H323Transactor);
00053   public:
00056     enum {
00057       DefaultUdpPort = 2099,
00058       DefaultTcpPort = 2099
00059     };
00060 
00063     H323_AnnexG(
00064       H323EndPoint & endpoint,  
00065       H323Transport * transport 
00066     );
00067     H323_AnnexG(
00068       H323EndPoint & endpoint,           
00069       const H323TransportAddress & addr 
00070     );
00071 
00074     ~H323_AnnexG();
00076 
00081     void PrintOn(
00082       ostream & strm    
00083     ) const;
00085 
00090     virtual H323TransactionPDU * CreateTransactionPDU() const;
00091 
00094     virtual PBoolean HandleTransaction(
00095       const PASN_Object & rawPDU
00096     );
00097 
00100     virtual void OnSendingPDU(
00101       PASN_Object & rawPDU
00102     );
00104 
00107     virtual PBoolean OnReceiveServiceRequest              (const H501PDU & pdu, const H501_ServiceRequest & pduBody);
00108     virtual PBoolean OnReceiveServiceConfirmation         (const H501PDU & pdu, const H501_ServiceConfirmation & pduBody);
00109     virtual PBoolean OnReceiveServiceRejection            (const H501PDU & pdu, const H501_ServiceRejection & pduBody);
00110     virtual PBoolean OnReceiveServiceRelease              (const H501PDU & pdu, const H501_ServiceRelease & pduBody);
00111     virtual PBoolean OnReceiveDescriptorRequest           (const H501PDU & pdu, const H501_DescriptorRequest & pduBody);
00112     virtual PBoolean OnReceiveDescriptorConfirmation      (const H501PDU & pdu, const H501_DescriptorConfirmation & pduBody);
00113     virtual PBoolean OnReceiveDescriptorRejection         (const H501PDU & pdu, const H501_DescriptorRejection & pduBody);
00114     virtual PBoolean OnReceiveDescriptorIDRequest         (const H501PDU & pdu, const H501_DescriptorIDRequest & pduBody);
00115     virtual PBoolean OnReceiveDescriptorIDConfirmation    (const H501PDU & pdu, const H501_DescriptorIDConfirmation & pduBody);
00116     virtual PBoolean OnReceiveDescriptorIDRejection       (const H501PDU & pdu, const H501_DescriptorIDRejection & pduBody);
00117     virtual PBoolean OnReceiveDescriptorUpdate            (const H501PDU & pdu, const H501_DescriptorUpdate & pduBody);
00118     virtual PBoolean OnReceiveDescriptorUpdateACK         (const H501PDU & pdu, const H501_DescriptorUpdateAck & pduBody);
00119     virtual PBoolean OnReceiveAccessRequest               (const H501PDU & pdu, const H501_AccessRequest & pduBody);
00120     virtual PBoolean OnReceiveAccessConfirmation          (const H501PDU & pdu, const H501_AccessConfirmation & pduBody);
00121     virtual PBoolean OnReceiveAccessRejection             (const H501PDU & pdu, const H501_AccessRejection & pduBody);
00122     virtual PBoolean OnReceiveRequestInProgress           (const H501PDU & pdu, const H501_RequestInProgress & pduBody);
00123     virtual PBoolean OnReceiveNonStandardRequest          (const H501PDU & pdu, const H501_NonStandardRequest & pduBody);
00124     virtual PBoolean OnReceiveNonStandardConfirmation     (const H501PDU & pdu, const H501_NonStandardConfirmation & pduBody);
00125     virtual PBoolean OnReceiveNonStandardRejection        (const H501PDU & pdu, const H501_NonStandardRejection & pduBody);
00126     virtual PBoolean OnReceiveUnknownMessageResponse      (const H501PDU & pdu, const H501_UnknownMessageResponse & pduBody);
00127     virtual PBoolean OnReceiveUsageRequest                (const H501PDU & pdu, const H501_UsageRequest & pduBody);
00128     virtual PBoolean OnReceiveUsageConfirmation           (const H501PDU & pdu, const H501_UsageConfirmation & pduBody);
00129     virtual PBoolean OnReceiveUsageIndicationConfirmation (const H501PDU & pdu, const H501_UsageIndicationConfirmation & pduBody);
00130     virtual PBoolean OnReceiveUsageIndicationRejection    (const H501PDU & pdu, const H501_UsageIndicationRejection & pduBody);
00131     virtual PBoolean OnReceiveUsageRejection              (const H501PDU & pdu, const H501_UsageRejection & pduBody);
00132     virtual PBoolean OnReceiveValidationRequest           (const H501PDU & pdu, const H501_ValidationRequest & pduBody);
00133     virtual PBoolean OnReceiveValidationConfirmation      (const H501PDU & pdu, const H501_ValidationConfirmation & pduBody);
00134     virtual PBoolean OnReceiveValidationRejection         (const H501PDU & pdu, const H501_ValidationRejection & pduBody);
00135     virtual PBoolean OnReceiveAuthenticationRequest       (const H501PDU & pdu, const H501_AuthenticationRequest & pduBody);
00136     virtual PBoolean OnReceiveAuthenticationConfirmation  (const H501PDU & pdu, const H501_AuthenticationConfirmation & pduBody);
00137     virtual PBoolean OnReceiveAuthenticationRejection     (const H501PDU & pdu, const H501_AuthenticationRejection & pduBody);
00138     virtual PBoolean OnReceiveUnknown(const H501PDU &);
00139 
00140   protected:
00141     void Construct();
00142 };
00143 
00144 
00145 #endif // __OPAL_H323ANNEXG_H
00146 
00147 

Generated on Mon Sep 22 12:24:43 2008 for OPAL by  doxygen 1.5.1