h4509.h

Go to the documentation of this file.
00001 //
00002 // h4509.h
00003 //
00004 // Code automatically generated by asnparse.
00005 //
00006 
00007 #include <opal/buildopts.h>
00008 
00009 #if ! H323_DISABLE_H4509
00010 
00011 #ifndef __H4509_H
00012 #define __H4509_H
00013 
00014 #ifdef P_USE_PRAGMA
00015 #pragma interface
00016 #endif
00017 
00018 #include <ptclib/asner.h>
00019 
00020 #include "h4501.h"
00021 #include "h225.h"
00022 #include "h4501.h"
00023 #include "h4504.h"
00024 #include "h4501.h"
00025 #include "h4507.h"
00026 
00027 
00028 //
00029 // H323CallCompletionOperations
00030 //
00031 
00032 class H4509_H323CallCompletionOperations : public PASN_Enumeration
00033 {
00034 #ifndef PASN_LEANANDMEAN
00035     PCLASSINFO(H4509_H323CallCompletionOperations, PASN_Enumeration);
00036 #endif
00037   public:
00038     H4509_H323CallCompletionOperations(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
00039 
00040     enum Enumerations {
00041       e_ccbsRequest = 40,
00042       e_ccnrRequest = 27,
00043       e_ccCancel,
00044       e_ccExecPossible,
00045       e_ccRingout = 31,
00046       e_ccSuspend,
00047       e_ccResume
00048     };
00049 
00050     H4509_H323CallCompletionOperations & operator=(unsigned v);
00051     PObject * Clone() const;
00052 };
00053 
00054 
00055 //
00056 // CcArg
00057 //
00058 
00059 class H4509_CcShortArg;
00060 class H4509_CcLongArg;
00061 
00062 class H4509_CcArg : public PASN_Choice
00063 {
00064 #ifndef PASN_LEANANDMEAN
00065     PCLASSINFO(H4509_CcArg, PASN_Choice);
00066 #endif
00067   public:
00068     H4509_CcArg(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00069 
00070     enum Choices {
00071       e_shortArg,
00072       e_longArg
00073     };
00074 
00075 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00076     operator H4509_CcShortArg &() const;
00077 #else
00078     operator H4509_CcShortArg &();
00079     operator const H4509_CcShortArg &() const;
00080 #endif
00081 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00082     operator H4509_CcLongArg &() const;
00083 #else
00084     operator H4509_CcLongArg &();
00085     operator const H4509_CcLongArg &() const;
00086 #endif
00087 
00088     PBoolean CreateObject();
00089     PObject * Clone() const;
00090 };
00091 
00092 
00093 //
00094 // CallCompletionErrors
00095 //
00096 
00097 class H4509_CallCompletionErrors : public PASN_Enumeration
00098 {
00099 #ifndef PASN_LEANANDMEAN
00100     PCLASSINFO(H4509_CallCompletionErrors, PASN_Enumeration);
00101 #endif
00102   public:
00103     H4509_CallCompletionErrors(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
00104 
00105     enum Enumerations {
00106       e_shortTermRejection = 1010,
00107       e_longTermRejection,
00108       e_remoteUserBusyAgain,
00109       e_failureToMatch
00110     };
00111 
00112     H4509_CallCompletionErrors & operator=(unsigned v);
00113     PObject * Clone() const;
00114 };
00115 
00116 
00117 //
00118 // ArrayOf_MixedExtension
00119 //
00120 
00121 class H4504_MixedExtension;
00122 
00123 class H4509_ArrayOf_MixedExtension : public PASN_Array
00124 {
00125 #ifndef PASN_LEANANDMEAN
00126     PCLASSINFO(H4509_ArrayOf_MixedExtension, PASN_Array);
00127 #endif
00128   public:
00129     H4509_ArrayOf_MixedExtension(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00130 
00131     PASN_Object * CreateObject() const;
00132     H4504_MixedExtension & operator[](PINDEX i) const;
00133     PObject * Clone() const;
00134 };
00135 
00136 
00137 //
00138 // CcRequestArg
00139 //
00140 
00141 class H4509_CcRequestArg : public PASN_Sequence
00142 {
00143 #ifndef PASN_LEANANDMEAN
00144     PCLASSINFO(H4509_CcRequestArg, PASN_Sequence);
00145 #endif
00146   public:
00147     H4509_CcRequestArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00148 
00149     enum OptionalFields {
00150       e_ccIdentifier,
00151       e_retain_sig_connection,
00152       e_extension
00153     };
00154 
00155     H4501_EndpointAddress m_numberA;
00156     H4501_EndpointAddress m_numberB;
00157     H225_CallIdentifier m_ccIdentifier;
00158     H4507_BasicService m_service;
00159     PASN_Boolean m_can_retain_service;
00160     PASN_Boolean m_retain_sig_connection;
00161     H4509_ArrayOf_MixedExtension m_extension;
00162 
00163     PINDEX GetDataLength() const;
00164     PBoolean Decode(PASN_Stream & strm);
00165     void Encode(PASN_Stream & strm) const;
00166 #ifndef PASN_NOPRINTON
00167     void PrintOn(ostream & strm) const;
00168 #endif
00169     Comparison Compare(const PObject & obj) const;
00170     PObject * Clone() const;
00171 };
00172 
00173 
00174 //
00175 // CcRequestRes
00176 //
00177 
00178 class H4509_CcRequestRes : public PASN_Sequence
00179 {
00180 #ifndef PASN_LEANANDMEAN
00181     PCLASSINFO(H4509_CcRequestRes, PASN_Sequence);
00182 #endif
00183   public:
00184     H4509_CcRequestRes(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00185 
00186     enum OptionalFields {
00187       e_extension
00188     };
00189 
00190     PASN_Boolean m_retain_service;
00191     H4509_ArrayOf_MixedExtension m_extension;
00192 
00193     PINDEX GetDataLength() const;
00194     PBoolean Decode(PASN_Stream & strm);
00195     void Encode(PASN_Stream & strm) const;
00196 #ifndef PASN_NOPRINTON
00197     void PrintOn(ostream & strm) const;
00198 #endif
00199     Comparison Compare(const PObject & obj) const;
00200     PObject * Clone() const;
00201 };
00202 
00203 
00204 //
00205 // CcShortArg
00206 //
00207 
00208 class H4509_CcShortArg : public PASN_Sequence
00209 {
00210 #ifndef PASN_LEANANDMEAN
00211     PCLASSINFO(H4509_CcShortArg, PASN_Sequence);
00212 #endif
00213   public:
00214     H4509_CcShortArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00215 
00216     enum OptionalFields {
00217       e_ccIdentifier,
00218       e_extension
00219     };
00220 
00221     H225_CallIdentifier m_ccIdentifier;
00222     H4509_ArrayOf_MixedExtension m_extension;
00223 
00224     PINDEX GetDataLength() const;
00225     PBoolean Decode(PASN_Stream & strm);
00226     void Encode(PASN_Stream & strm) const;
00227 #ifndef PASN_NOPRINTON
00228     void PrintOn(ostream & strm) const;
00229 #endif
00230     Comparison Compare(const PObject & obj) const;
00231     PObject * Clone() const;
00232 };
00233 
00234 
00235 //
00236 // CcLongArg
00237 //
00238 
00239 class H4509_CcLongArg : public PASN_Sequence
00240 {
00241 #ifndef PASN_LEANANDMEAN
00242     PCLASSINFO(H4509_CcLongArg, PASN_Sequence);
00243 #endif
00244   public:
00245     H4509_CcLongArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00246 
00247     enum OptionalFields {
00248       e_numberA,
00249       e_numberB,
00250       e_ccIdentifier,
00251       e_service,
00252       e_extension
00253     };
00254 
00255     H4501_EndpointAddress m_numberA;
00256     H4501_EndpointAddress m_numberB;
00257     H225_CallIdentifier m_ccIdentifier;
00258     H4507_BasicService m_service;
00259     H4509_ArrayOf_MixedExtension m_extension;
00260 
00261     PINDEX GetDataLength() const;
00262     PBoolean Decode(PASN_Stream & strm);
00263     void Encode(PASN_Stream & strm) const;
00264 #ifndef PASN_NOPRINTON
00265     void PrintOn(ostream & strm) const;
00266 #endif
00267     Comparison Compare(const PObject & obj) const;
00268     PObject * Clone() const;
00269 };
00270 
00271 
00272 #endif // __H4509_H
00273 
00274 #endif // if ! H323_DISABLE_H4509
00275 
00276 
00277 // End of h4509.h

Generated on Mon Feb 23 02:01:33 2009 for OPAL by  doxygen 1.5.1