h4508.h

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

Generated on Mon Sep 15 11:49:08 2008 for OPAL by  doxygen 1.5.1