h4508.h

Go to the documentation of this file.
00001 //
00002 // h4508.h
00003 //
00004 // Code automatically generated by asnparse.
00005 //
00006 
00007 #include <opal/buildopts.h>
00008 
00009 #if ! H323_DISABLE_H4508
00010 
00011 #ifndef __H4508_H
00012 #define __H4508_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 "h4505.h"
00022 
00023 
00024 //
00025 // NameOperations
00026 //
00027 
00028 class H4508_NameOperations : public PASN_Enumeration
00029 {
00030 #ifndef PASN_LEANANDMEAN
00031     PCLASSINFO(H4508_NameOperations, PASN_Enumeration);
00032 #endif
00033   public:
00034     H4508_NameOperations(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
00035 
00036     enum Enumerations {
00037       e_callingName,
00038       e_alertingName,
00039       e_connectedName,
00040       e_busyName
00041     };
00042 
00043     H4508_NameOperations & operator=(unsigned v);
00044     PObject * Clone() const;
00045 };
00046 
00047 
00048 //
00049 // Name
00050 //
00051 
00052 class H4508_NamePresentationAllowed;
00053 class H4508_NamePresentationRestricted;
00054 
00055 class H4508_Name : public PASN_Choice
00056 {
00057 #ifndef PASN_LEANANDMEAN
00058     PCLASSINFO(H4508_Name, PASN_Choice);
00059 #endif
00060   public:
00061     H4508_Name(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00062 
00063     enum Choices {
00064       e_namePresentationAllowed,
00065       e_namePresentationRestricted,
00066       e_nameNotAvailable
00067     };
00068 
00069 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00070     operator H4508_NamePresentationAllowed &() const;
00071 #else
00072     operator H4508_NamePresentationAllowed &();
00073     operator const H4508_NamePresentationAllowed &() const;
00074 #endif
00075 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00076     operator H4508_NamePresentationRestricted &() const;
00077 #else
00078     operator H4508_NamePresentationRestricted &();
00079     operator const H4508_NamePresentationRestricted &() const;
00080 #endif
00081 
00082     PBoolean CreateObject();
00083     PObject * Clone() const;
00084 };
00085 
00086 
00087 //
00088 // NamePresentationAllowed
00089 //
00090 
00091 class H4508_SimpleName;
00092 class H4508_ExtendedName;
00093 
00094 class H4508_NamePresentationAllowed : public PASN_Choice
00095 {
00096 #ifndef PASN_LEANANDMEAN
00097     PCLASSINFO(H4508_NamePresentationAllowed, PASN_Choice);
00098 #endif
00099   public:
00100     H4508_NamePresentationAllowed(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00101 
00102     enum Choices {
00103       e_simpleName,
00104       e_extendedName
00105     };
00106 
00107 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00108     operator H4508_SimpleName &() const;
00109 #else
00110     operator H4508_SimpleName &();
00111     operator const H4508_SimpleName &() const;
00112 #endif
00113 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00114     operator H4508_ExtendedName &() const;
00115 #else
00116     operator H4508_ExtendedName &();
00117     operator const H4508_ExtendedName &() const;
00118 #endif
00119 
00120     PBoolean CreateObject();
00121     PObject * Clone() const;
00122 };
00123 
00124 
00125 //
00126 // NamePresentationRestricted
00127 //
00128 
00129 class H4508_SimpleName;
00130 class H4508_ExtendedName;
00131 
00132 class H4508_NamePresentationRestricted : public PASN_Choice
00133 {
00134 #ifndef PASN_LEANANDMEAN
00135     PCLASSINFO(H4508_NamePresentationRestricted, PASN_Choice);
00136 #endif
00137   public:
00138     H4508_NamePresentationRestricted(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00139 
00140     enum Choices {
00141       e_simpleName,
00142       e_extendedName,
00143       e_restrictedNull
00144     };
00145 
00146 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00147     operator H4508_SimpleName &() const;
00148 #else
00149     operator H4508_SimpleName &();
00150     operator const H4508_SimpleName &() const;
00151 #endif
00152 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00153     operator H4508_ExtendedName &() const;
00154 #else
00155     operator H4508_ExtendedName &();
00156     operator const H4508_ExtendedName &() const;
00157 #endif
00158 
00159     PBoolean CreateObject();
00160     PObject * Clone() const;
00161 };
00162 
00163 
00164 //
00165 // SimpleName
00166 //
00167 
00168 class H4508_SimpleName : public PASN_OctetString
00169 {
00170 #ifndef PASN_LEANANDMEAN
00171     PCLASSINFO(H4508_SimpleName, PASN_OctetString);
00172 #endif
00173   public:
00174     H4508_SimpleName(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
00175 
00176     H4508_SimpleName(const char * v);
00177     H4508_SimpleName(const PString & v);
00178     H4508_SimpleName(const PBYTEArray & v);
00179 
00180     H4508_SimpleName & operator=(const char * v);
00181     H4508_SimpleName & operator=(const PString & v);
00182     H4508_SimpleName & operator=(const PBYTEArray & v);
00183     PObject * Clone() const;
00184 };
00185 
00186 
00187 //
00188 // ExtendedName
00189 //
00190 
00191 class H4508_ExtendedName : public PASN_BMPString
00192 {
00193 #ifndef PASN_LEANANDMEAN
00194     PCLASSINFO(H4508_ExtendedName, PASN_BMPString);
00195 #endif
00196   public:
00197     H4508_ExtendedName(unsigned tag = UniversalBMPString, TagClass tagClass = UniversalTagClass);
00198 
00199     H4508_ExtendedName & operator=(const char * v);
00200     H4508_ExtendedName & operator=(const PString & v);
00201     H4508_ExtendedName & operator=(const PWCharArray & v);
00202     H4508_ExtendedName & operator=(const PASN_BMPString & v);
00203     PObject * Clone() const;
00204 };
00205 
00206 
00207 #endif // __H4508_H
00208 
00209 #endif // if ! H323_DISABLE_H4508
00210 
00211 
00212 // End of h4508.h

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