www.pudn.com > openh323-v1_15_1-src.zip > h4503.h


// 
// h4503.h 
// 
// Code automatically generated by asnparse. 
// 
 
#if ! H323_DISABLE_H4503 
 
#ifndef __H4503_H 
#define __H4503_H 
 
#ifdef P_USE_PRAGMA 
#pragma interface 
#endif 
 
#include  
 
#include "h4501.h" 
#include "h225.h" 
#include "h225.h" 
#include "h4501.h" 
#include "h4501.h" 
 
 
// 
// H323CallDiversionOperations 
// 
 
class H4503_H323CallDiversionOperations : public PASN_Enumeration 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_H323CallDiversionOperations, PASN_Enumeration); 
#endif 
  public: 
    H4503_H323CallDiversionOperations(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 
 
    enum Enumerations { 
      e_activateDiversionQ = 15, 
      e_deactivateDiversionQ, 
      e_interrogateDiversionQ, 
      e_checkRestriction, 
      e_callRerouting, 
      e_divertingLegInformation1, 
      e_divertingLegInformation2, 
      e_divertingLegInformation3, 
      e_divertingLegInformation4 = 100, 
      e_cfnrDivertedLegFailed = 23 
    }; 
 
    H4503_H323CallDiversionOperations & operator=(unsigned v); 
    PObject * Clone() const; 
}; 
 
 
// 
// DiversionReason 
// 
 
class H4503_DiversionReason : public PASN_Enumeration 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_DiversionReason, PASN_Enumeration); 
#endif 
  public: 
    H4503_DiversionReason(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 
 
    enum Enumerations { 
      e_unknown, 
      e_cfu, 
      e_cfb, 
      e_cfnr 
    }; 
 
    H4503_DiversionReason & operator=(unsigned v); 
    PObject * Clone() const; 
}; 
 
 
// 
// IntResultList 
// 
 
class H4503_IntResult; 
 
class H4503_IntResultList : public PASN_Array 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_IntResultList, PASN_Array); 
#endif 
  public: 
    H4503_IntResultList(unsigned tag = UniversalSet, TagClass tagClass = UniversalTagClass); 
 
    PASN_Object * CreateObject() const; 
    H4503_IntResult & operator[](PINDEX i) const; 
    PObject * Clone() const; 
}; 
 
 
// 
// Procedure 
// 
 
class H4503_Procedure : public PASN_Enumeration 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_Procedure, PASN_Enumeration); 
#endif 
  public: 
    H4503_Procedure(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 
 
    enum Enumerations { 
      e_cfu, 
      e_cfb, 
      e_cfnr 
    }; 
 
    H4503_Procedure & operator=(unsigned v); 
    PObject * Clone() const; 
}; 
 
 
// 
// SubscriptionOption 
// 
 
class H4503_SubscriptionOption : public PASN_Enumeration 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_SubscriptionOption, PASN_Enumeration); 
#endif 
  public: 
    H4503_SubscriptionOption(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 
 
    enum Enumerations { 
      e_noNotification, 
      e_notificationWithoutDivertedToNr, 
      e_notificationWithDivertedToNr 
    }; 
 
    H4503_SubscriptionOption & operator=(unsigned v); 
    PObject * Clone() const; 
}; 
 
 
// 
// CallDiversionErrors 
// 
 
class H4503_CallDiversionErrors : public PASN_Enumeration 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_CallDiversionErrors, PASN_Enumeration); 
#endif 
  public: 
    H4503_CallDiversionErrors(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 
 
    enum Enumerations { 
      e_invalidDivertedNumber = 12, 
      e_specialServiceNumber = 14, 
      e_diversionToServedUserNumber, 
      e_numberOfDiversionsExceeded = 24, 
      e_temporarilyUnavailable = 1000, 
      e_notAuthorized = 1007, 
      e_unspecified 
    }; 
 
    H4503_CallDiversionErrors & operator=(unsigned v); 
    PObject * Clone() const; 
}; 
 
 
// 
// BasicService 
// 
 
class H4503_BasicService : public PASN_Enumeration 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_BasicService, PASN_Enumeration); 
#endif 
  public: 
    H4503_BasicService(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 
 
    enum Enumerations { 
      e_allServices 
    }; 
 
    H4503_BasicService & operator=(unsigned v); 
    PObject * Clone() const; 
}; 
 
 
// 
// ExtensionSeq 
// 
 
class H4501_Extension; 
 
class H4503_ExtensionSeq : public PASN_Array 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_ExtensionSeq, PASN_Array); 
#endif 
  public: 
    H4503_ExtensionSeq(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); 
 
    PASN_Object * CreateObject() const; 
    H4501_Extension & operator[](PINDEX i) const; 
    PObject * Clone() const; 
}; 
 
 
// 
// IntResult_extension 
// 
 
class H4503_ExtensionSeq; 
class H225_NonStandardParameter; 
 
class H4503_IntResult_extension : public PASN_Choice 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_IntResult_extension, PASN_Choice); 
#endif 
  public: 
    H4503_IntResult_extension(unsigned tag = 0, TagClass tagClass = UniversalTagClass); 
 
    enum Choices { 
      e_extensionSeq, 
      e_nonStandardData 
    }; 
 
#if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 
    operator H4503_ExtensionSeq &() const; 
#else 
    operator H4503_ExtensionSeq &(); 
    operator const H4503_ExtensionSeq &() const; 
#endif 
#if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 
    operator H225_NonStandardParameter &() const; 
#else 
    operator H225_NonStandardParameter &(); 
    operator const H225_NonStandardParameter &() const; 
#endif 
 
    BOOL CreateObject(); 
    PObject * Clone() const; 
}; 
 
 
// 
// IntResult 
// 
 
class H4503_IntResult : public PASN_Sequence 
{ 
#ifndef PASN_LEANANDMEAN 
    PCLASSINFO(H4503_IntResult, PASN_Sequence); 
#endif 
  public: 
    H4503_IntResult(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); 
 
    enum OptionalFields { 
      e_extension 
    }; 
 
    H4501_EndpointAddress m_servedUserNr; 
    H4503_BasicService m_basicService; 
    H4503_Procedure m_procedure; 
    H4501_EndpointAddress m_divertedToAddress; 
    PASN_Boolean m_remoteEnabled; 
    H4503_IntResult_extension m_extension; 
 
    PINDEX GetDataLength() const; 
    BOOL Decode(PASN_Stream & strm); 
    void Encode(PASN_Stream & strm) const; 
#ifndef PASN_NOPRINTON 
    void PrintOn(ostream & strm) const; 
#endif 
    Comparison Compare(const PObject & obj) const; 
    PObject * Clone() const; 
}; 
 
 
#endif // __H4503_H 
 
#endif // if ! H323_DISABLE_H4503 
 
 
// End of h4503.h