h4509.h

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

Generated on Fri Mar 7 06:33:35 2008 for OPAL by  doxygen 1.5.1