h248.h

Go to the documentation of this file.
00001 //
00002 // h248.h
00003 //
00004 // Code automatically generated by asnparse.
00005 //
00006 
00007 #if ! H323_DISABLE_H248
00008 
00009 #ifndef __H248_H
00010 #define __H248_H
00011 
00012 #ifdef P_USE_PRAGMA
00013 #pragma interface
00014 #endif
00015 
00016 #include <ptclib/asner.h>
00017 
00018 //
00019 // SecurityParmIndex
00020 //
00021 
00022 class H248_SecurityParmIndex : public PASN_OctetString
00023 {
00024 #ifndef PASN_LEANANDMEAN
00025     PCLASSINFO(H248_SecurityParmIndex, PASN_OctetString);
00026 #endif
00027   public:
00028     H248_SecurityParmIndex(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
00029 
00030     H248_SecurityParmIndex(const char * v);
00031     H248_SecurityParmIndex(const PString & v);
00032     H248_SecurityParmIndex(const PBYTEArray & v);
00033 
00034     H248_SecurityParmIndex & operator=(const char * v);
00035     H248_SecurityParmIndex & operator=(const PString & v);
00036     H248_SecurityParmIndex & operator=(const PBYTEArray & v);
00037     PObject * Clone() const;
00038 };
00039 
00040 
00041 //
00042 // SequenceNum
00043 //
00044 
00045 class H248_SequenceNum : public PASN_OctetString
00046 {
00047 #ifndef PASN_LEANANDMEAN
00048     PCLASSINFO(H248_SequenceNum, PASN_OctetString);
00049 #endif
00050   public:
00051     H248_SequenceNum(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
00052 
00053     H248_SequenceNum(const char * v);
00054     H248_SequenceNum(const PString & v);
00055     H248_SequenceNum(const PBYTEArray & v);
00056 
00057     H248_SequenceNum & operator=(const char * v);
00058     H248_SequenceNum & operator=(const PString & v);
00059     H248_SequenceNum & operator=(const PBYTEArray & v);
00060     PObject * Clone() const;
00061 };
00062 
00063 
00064 //
00065 // AuthData
00066 //
00067 
00068 class H248_AuthData : public PASN_OctetString
00069 {
00070 #ifndef PASN_LEANANDMEAN
00071     PCLASSINFO(H248_AuthData, PASN_OctetString);
00072 #endif
00073   public:
00074     H248_AuthData(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
00075 
00076     H248_AuthData(const char * v);
00077     H248_AuthData(const PString & v);
00078     H248_AuthData(const PBYTEArray & v);
00079 
00080     H248_AuthData & operator=(const char * v);
00081     H248_AuthData & operator=(const PString & v);
00082     H248_AuthData & operator=(const PBYTEArray & v);
00083     PObject * Clone() const;
00084 };
00085 
00086 
00087 //
00088 // MId
00089 //
00090 
00091 class H248_IP4Address;
00092 class H248_IP6Address;
00093 class H248_DomainName;
00094 class H248_PathName;
00095 
00096 class H248_MId : public PASN_Choice
00097 {
00098 #ifndef PASN_LEANANDMEAN
00099     PCLASSINFO(H248_MId, PASN_Choice);
00100 #endif
00101   public:
00102     H248_MId(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00103 
00104     enum Choices {
00105       e_ip4Address,
00106       e_ip6Address,
00107       e_domainName,
00108       e_deviceName,
00109       e_mtpAddress
00110     };
00111 
00112 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00113     operator H248_IP4Address &() const;
00114 #else
00115     operator H248_IP4Address &();
00116     operator const H248_IP4Address &() const;
00117 #endif
00118 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00119     operator H248_IP6Address &() const;
00120 #else
00121     operator H248_IP6Address &();
00122     operator const H248_IP6Address &() const;
00123 #endif
00124 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00125     operator H248_DomainName &() const;
00126 #else
00127     operator H248_DomainName &();
00128     operator const H248_DomainName &() const;
00129 #endif
00130 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00131     operator H248_PathName &() const;
00132 #else
00133     operator H248_PathName &();
00134     operator const H248_PathName &() const;
00135 #endif
00136 
00137     PBoolean CreateObject();
00138     PObject * Clone() const;
00139 };
00140 
00141 
00142 //
00143 // DomainName
00144 //
00145 
00146 class H248_DomainName : public PASN_Sequence
00147 {
00148 #ifndef PASN_LEANANDMEAN
00149     PCLASSINFO(H248_DomainName, PASN_Sequence);
00150 #endif
00151   public:
00152     H248_DomainName(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00153 
00154     enum OptionalFields {
00155       e_portNumber
00156     };
00157 
00158     PASN_IA5String m_name;
00159     PASN_Integer m_portNumber;
00160 
00161     PINDEX GetDataLength() const;
00162     PBoolean 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 // IP4Address
00174 //
00175 
00176 class H248_IP4Address : public PASN_Sequence
00177 {
00178 #ifndef PASN_LEANANDMEAN
00179     PCLASSINFO(H248_IP4Address, PASN_Sequence);
00180 #endif
00181   public:
00182     H248_IP4Address(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00183 
00184     enum OptionalFields {
00185       e_portNumber
00186     };
00187 
00188     PASN_OctetString m_address;
00189     PASN_Integer m_portNumber;
00190 
00191     PINDEX GetDataLength() const;
00192     PBoolean 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 // IP6Address
00204 //
00205 
00206 class H248_IP6Address : public PASN_Sequence
00207 {
00208 #ifndef PASN_LEANANDMEAN
00209     PCLASSINFO(H248_IP6Address, PASN_Sequence);
00210 #endif
00211   public:
00212     H248_IP6Address(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00213 
00214     enum OptionalFields {
00215       e_portNumber
00216     };
00217 
00218     PASN_OctetString m_address;
00219     PASN_Integer m_portNumber;
00220 
00221     PINDEX GetDataLength() const;
00222     PBoolean Decode(PASN_Stream & strm);
00223     void Encode(PASN_Stream & strm) const;
00224 #ifndef PASN_NOPRINTON
00225     void PrintOn(ostream & strm) const;
00226 #endif
00227     Comparison Compare(const PObject & obj) const;
00228     PObject * Clone() const;
00229 };
00230 
00231 
00232 //
00233 // PathName
00234 //
00235 
00236 class H248_PathName : public PASN_IA5String
00237 {
00238 #ifndef PASN_LEANANDMEAN
00239     PCLASSINFO(H248_PathName, PASN_IA5String);
00240 #endif
00241   public:
00242     H248_PathName(unsigned tag = UniversalIA5String, TagClass tagClass = UniversalTagClass);
00243 
00244     H248_PathName & operator=(const char * v);
00245     H248_PathName & operator=(const PString & v);
00246     PObject * Clone() const;
00247 };
00248 
00249 
00250 //
00251 // Transaction
00252 //
00253 
00254 class H248_TransactionRequest;
00255 class H248_TransactionPending;
00256 class H248_TransactionReply;
00257 class H248_TransactionResponseAck;
00258 
00259 class H248_Transaction : public PASN_Choice
00260 {
00261 #ifndef PASN_LEANANDMEAN
00262     PCLASSINFO(H248_Transaction, PASN_Choice);
00263 #endif
00264   public:
00265     H248_Transaction(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00266 
00267     enum Choices {
00268       e_transactionRequest,
00269       e_transactionPending,
00270       e_transactionReply,
00271       e_transactionResponseAck
00272     };
00273 
00274 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00275     operator H248_TransactionRequest &() const;
00276 #else
00277     operator H248_TransactionRequest &();
00278     operator const H248_TransactionRequest &() const;
00279 #endif
00280 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00281     operator H248_TransactionPending &() const;
00282 #else
00283     operator H248_TransactionPending &();
00284     operator const H248_TransactionPending &() const;
00285 #endif
00286 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00287     operator H248_TransactionReply &() const;
00288 #else
00289     operator H248_TransactionReply &();
00290     operator const H248_TransactionReply &() const;
00291 #endif
00292 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00293     operator H248_TransactionResponseAck &() const;
00294 #else
00295     operator H248_TransactionResponseAck &();
00296     operator const H248_TransactionResponseAck &() const;
00297 #endif
00298 
00299     PBoolean CreateObject();
00300     PObject * Clone() const;
00301 };
00302 
00303 
00304 //
00305 // TransactionId
00306 //
00307 
00308 class H248_TransactionId : public PASN_Integer
00309 {
00310 #ifndef PASN_LEANANDMEAN
00311     PCLASSINFO(H248_TransactionId, PASN_Integer);
00312 #endif
00313   public:
00314     H248_TransactionId(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
00315 
00316     H248_TransactionId & operator=(int v);
00317     H248_TransactionId & operator=(unsigned v);
00318     PObject * Clone() const;
00319 };
00320 
00321 
00322 //
00323 // TransactionPending
00324 //
00325 
00326 class H248_TransactionPending : public PASN_Sequence
00327 {
00328 #ifndef PASN_LEANANDMEAN
00329     PCLASSINFO(H248_TransactionPending, PASN_Sequence);
00330 #endif
00331   public:
00332     H248_TransactionPending(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00333 
00334     H248_TransactionId m_transactionId;
00335 
00336     PINDEX GetDataLength() const;
00337     PBoolean Decode(PASN_Stream & strm);
00338     void Encode(PASN_Stream & strm) const;
00339 #ifndef PASN_NOPRINTON
00340     void PrintOn(ostream & strm) const;
00341 #endif
00342     Comparison Compare(const PObject & obj) const;
00343     PObject * Clone() const;
00344 };
00345 
00346 
00347 //
00348 // TransactionResponseAck
00349 //
00350 
00351 class H248_TransactionAck;
00352 
00353 class H248_TransactionResponseAck : public PASN_Array
00354 {
00355 #ifndef PASN_LEANANDMEAN
00356     PCLASSINFO(H248_TransactionResponseAck, PASN_Array);
00357 #endif
00358   public:
00359     H248_TransactionResponseAck(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00360 
00361     PASN_Object * CreateObject() const;
00362     H248_TransactionAck & operator[](PINDEX i) const;
00363     PObject * Clone() const;
00364 };
00365 
00366 
00367 //
00368 // TransactionAck
00369 //
00370 
00371 class H248_TransactionAck : public PASN_Sequence
00372 {
00373 #ifndef PASN_LEANANDMEAN
00374     PCLASSINFO(H248_TransactionAck, PASN_Sequence);
00375 #endif
00376   public:
00377     H248_TransactionAck(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00378 
00379     enum OptionalFields {
00380       e_lastAck
00381     };
00382 
00383     H248_TransactionId m_firstAck;
00384     H248_TransactionId m_lastAck;
00385 
00386     PINDEX GetDataLength() const;
00387     PBoolean Decode(PASN_Stream & strm);
00388     void Encode(PASN_Stream & strm) const;
00389 #ifndef PASN_NOPRINTON
00390     void PrintOn(ostream & strm) const;
00391 #endif
00392     Comparison Compare(const PObject & obj) const;
00393     PObject * Clone() const;
00394 };
00395 
00396 
00397 //
00398 // ErrorCode
00399 //
00400 
00401 class H248_ErrorCode : public PASN_Integer
00402 {
00403 #ifndef PASN_LEANANDMEAN
00404     PCLASSINFO(H248_ErrorCode, PASN_Integer);
00405 #endif
00406   public:
00407     H248_ErrorCode(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
00408 
00409     H248_ErrorCode & operator=(int v);
00410     H248_ErrorCode & operator=(unsigned v);
00411     PObject * Clone() const;
00412 };
00413 
00414 
00415 //
00416 // ErrorText
00417 //
00418 
00419 class H248_ErrorText : public PASN_IA5String
00420 {
00421 #ifndef PASN_LEANANDMEAN
00422     PCLASSINFO(H248_ErrorText, PASN_IA5String);
00423 #endif
00424   public:
00425     H248_ErrorText(unsigned tag = UniversalIA5String, TagClass tagClass = UniversalTagClass);
00426 
00427     H248_ErrorText & operator=(const char * v);
00428     H248_ErrorText & operator=(const PString & v);
00429     PObject * Clone() const;
00430 };
00431 
00432 
00433 //
00434 // ContextID
00435 //
00436 
00437 class H248_ContextID : public PASN_Integer
00438 {
00439 #ifndef PASN_LEANANDMEAN
00440     PCLASSINFO(H248_ContextID, PASN_Integer);
00441 #endif
00442   public:
00443     H248_ContextID(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
00444 
00445     H248_ContextID & operator=(int v);
00446     H248_ContextID & operator=(unsigned v);
00447     PObject * Clone() const;
00448 };
00449 
00450 
00451 //
00452 // ContextAttrAuditRequest
00453 //
00454 
00455 class H248_ContextAttrAuditRequest : public PASN_Sequence
00456 {
00457 #ifndef PASN_LEANANDMEAN
00458     PCLASSINFO(H248_ContextAttrAuditRequest, PASN_Sequence);
00459 #endif
00460   public:
00461     H248_ContextAttrAuditRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00462 
00463     enum OptionalFields {
00464       e_topology,
00465       e_emergency,
00466       e_priority
00467     };
00468 
00469     PASN_Null m_topology;
00470     PASN_Null m_emergency;
00471     PASN_Null m_priority;
00472 
00473     PINDEX GetDataLength() const;
00474     PBoolean Decode(PASN_Stream & strm);
00475     void Encode(PASN_Stream & strm) const;
00476 #ifndef PASN_NOPRINTON
00477     void PrintOn(ostream & strm) const;
00478 #endif
00479     Comparison Compare(const PObject & obj) const;
00480     PObject * Clone() const;
00481 };
00482 
00483 
00484 //
00485 // Command
00486 //
00487 
00488 class H248_AmmRequest;
00489 class H248_SubtractRequest;
00490 class H248_AuditRequest;
00491 class H248_NotifyRequest;
00492 class H248_ServiceChangeRequest;
00493 
00494 class H248_Command : public PASN_Choice
00495 {
00496 #ifndef PASN_LEANANDMEAN
00497     PCLASSINFO(H248_Command, PASN_Choice);
00498 #endif
00499   public:
00500     H248_Command(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00501 
00502     enum Choices {
00503       e_addReq,
00504       e_moveReq,
00505       e_modReq,
00506       e_subtractReq,
00507       e_auditCapRequest,
00508       e_auditValueRequest,
00509       e_notifyReq,
00510       e_serviceChangeReq
00511     };
00512 
00513 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00514     operator H248_AmmRequest &() const;
00515 #else
00516     operator H248_AmmRequest &();
00517     operator const H248_AmmRequest &() const;
00518 #endif
00519 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00520     operator H248_SubtractRequest &() const;
00521 #else
00522     operator H248_SubtractRequest &();
00523     operator const H248_SubtractRequest &() const;
00524 #endif
00525 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00526     operator H248_AuditRequest &() const;
00527 #else
00528     operator H248_AuditRequest &();
00529     operator const H248_AuditRequest &() const;
00530 #endif
00531 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00532     operator H248_NotifyRequest &() const;
00533 #else
00534     operator H248_NotifyRequest &();
00535     operator const H248_NotifyRequest &() const;
00536 #endif
00537 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00538     operator H248_ServiceChangeRequest &() const;
00539 #else
00540     operator H248_ServiceChangeRequest &();
00541     operator const H248_ServiceChangeRequest &() const;
00542 #endif
00543 
00544     PBoolean CreateObject();
00545     PObject * Clone() const;
00546 };
00547 
00548 
00549 //
00550 // CommandReply
00551 //
00552 
00553 class H248_AmmsReply;
00554 class H248_AuditReply;
00555 class H248_NotifyReply;
00556 class H248_ServiceChangeReply;
00557 
00558 class H248_CommandReply : public PASN_Choice
00559 {
00560 #ifndef PASN_LEANANDMEAN
00561     PCLASSINFO(H248_CommandReply, PASN_Choice);
00562 #endif
00563   public:
00564     H248_CommandReply(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00565 
00566     enum Choices {
00567       e_addReply,
00568       e_moveReply,
00569       e_modReply,
00570       e_subtractReply,
00571       e_auditCapReply,
00572       e_auditValueReply,
00573       e_notifyReply,
00574       e_serviceChangeReply
00575     };
00576 
00577 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00578     operator H248_AmmsReply &() const;
00579 #else
00580     operator H248_AmmsReply &();
00581     operator const H248_AmmsReply &() const;
00582 #endif
00583 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00584     operator H248_AuditReply &() const;
00585 #else
00586     operator H248_AuditReply &();
00587     operator const H248_AuditReply &() const;
00588 #endif
00589 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00590     operator H248_NotifyReply &() const;
00591 #else
00592     operator H248_NotifyReply &();
00593     operator const H248_NotifyReply &() const;
00594 #endif
00595 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00596     operator H248_ServiceChangeReply &() const;
00597 #else
00598     operator H248_ServiceChangeReply &();
00599     operator const H248_ServiceChangeReply &() const;
00600 #endif
00601 
00602     PBoolean CreateObject();
00603     PObject * Clone() const;
00604 };
00605 
00606 
00607 //
00608 // AmmDescriptor
00609 //
00610 
00611 class H248_MediaDescriptor;
00612 class H248_ModemDescriptor;
00613 class H248_MuxDescriptor;
00614 class H248_EventsDescriptor;
00615 class H248_EventBufferDescriptor;
00616 class H248_SignalsDescriptor;
00617 class H248_DigitMapDescriptor;
00618 class H248_AuditDescriptor;
00619 
00620 class H248_AmmDescriptor : public PASN_Choice
00621 {
00622 #ifndef PASN_LEANANDMEAN
00623     PCLASSINFO(H248_AmmDescriptor, PASN_Choice);
00624 #endif
00625   public:
00626     H248_AmmDescriptor(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00627 
00628     enum Choices {
00629       e_mediaDescriptor,
00630       e_modemDescriptor,
00631       e_muxDescriptor,
00632       e_eventsDescriptor,
00633       e_eventBufferDescriptor,
00634       e_signalsDescriptor,
00635       e_digitMapDescriptor,
00636       e_auditDescriptor
00637     };
00638 
00639 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00640     operator H248_MediaDescriptor &() const;
00641 #else
00642     operator H248_MediaDescriptor &();
00643     operator const H248_MediaDescriptor &() const;
00644 #endif
00645 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00646     operator H248_ModemDescriptor &() const;
00647 #else
00648     operator H248_ModemDescriptor &();
00649     operator const H248_ModemDescriptor &() const;
00650 #endif
00651 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00652     operator H248_MuxDescriptor &() const;
00653 #else
00654     operator H248_MuxDescriptor &();
00655     operator const H248_MuxDescriptor &() const;
00656 #endif
00657 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00658     operator H248_EventsDescriptor &() const;
00659 #else
00660     operator H248_EventsDescriptor &();
00661     operator const H248_EventsDescriptor &() const;
00662 #endif
00663 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00664     operator H248_EventBufferDescriptor &() const;
00665 #else
00666     operator H248_EventBufferDescriptor &();
00667     operator const H248_EventBufferDescriptor &() const;
00668 #endif
00669 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00670     operator H248_SignalsDescriptor &() const;
00671 #else
00672     operator H248_SignalsDescriptor &();
00673     operator const H248_SignalsDescriptor &() const;
00674 #endif
00675 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00676     operator H248_DigitMapDescriptor &() const;
00677 #else
00678     operator H248_DigitMapDescriptor &();
00679     operator const H248_DigitMapDescriptor &() const;
00680 #endif
00681 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00682     operator H248_AuditDescriptor &() const;
00683 #else
00684     operator H248_AuditDescriptor &();
00685     operator const H248_AuditDescriptor &() const;
00686 #endif
00687 
00688     PBoolean CreateObject();
00689     PObject * Clone() const;
00690 };
00691 
00692 
00693 //
00694 // AuditReply
00695 //
00696 
00697 class H248_TerminationIDList;
00698 class H248_ErrorDescriptor;
00699 class H248_AuditResult;
00700 
00701 class H248_AuditReply : public PASN_Choice
00702 {
00703 #ifndef PASN_LEANANDMEAN
00704     PCLASSINFO(H248_AuditReply, PASN_Choice);
00705 #endif
00706   public:
00707     H248_AuditReply(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00708 
00709     enum Choices {
00710       e_contextAuditResult,
00711       e_error,
00712       e_auditResult
00713     };
00714 
00715 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00716     operator H248_TerminationIDList &() const;
00717 #else
00718     operator H248_TerminationIDList &();
00719     operator const H248_TerminationIDList &() const;
00720 #endif
00721 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00722     operator H248_ErrorDescriptor &() const;
00723 #else
00724     operator H248_ErrorDescriptor &();
00725     operator const H248_ErrorDescriptor &() const;
00726 #endif
00727 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00728     operator H248_AuditResult &() const;
00729 #else
00730     operator H248_AuditResult &();
00731     operator const H248_AuditResult &() const;
00732 #endif
00733 
00734     PBoolean CreateObject();
00735     PObject * Clone() const;
00736 };
00737 
00738 
00739 //
00740 // TerminationAudit
00741 //
00742 
00743 class H248_AuditReturnParameter;
00744 
00745 class H248_TerminationAudit : public PASN_Array
00746 {
00747 #ifndef PASN_LEANANDMEAN
00748     PCLASSINFO(H248_TerminationAudit, PASN_Array);
00749 #endif
00750   public:
00751     H248_TerminationAudit(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00752 
00753     PASN_Object * CreateObject() const;
00754     H248_AuditReturnParameter & operator[](PINDEX i) const;
00755     PObject * Clone() const;
00756 };
00757 
00758 
00759 //
00760 // AuditReturnParameter
00761 //
00762 
00763 class H248_ErrorDescriptor;
00764 class H248_MediaDescriptor;
00765 class H248_ModemDescriptor;
00766 class H248_MuxDescriptor;
00767 class H248_EventsDescriptor;
00768 class H248_EventBufferDescriptor;
00769 class H248_SignalsDescriptor;
00770 class H248_DigitMapDescriptor;
00771 class H248_ObservedEventsDescriptor;
00772 class H248_StatisticsDescriptor;
00773 class H248_PackagesDescriptor;
00774 class H248_AuditDescriptor;
00775 
00776 class H248_AuditReturnParameter : public PASN_Choice
00777 {
00778 #ifndef PASN_LEANANDMEAN
00779     PCLASSINFO(H248_AuditReturnParameter, PASN_Choice);
00780 #endif
00781   public:
00782     H248_AuditReturnParameter(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00783 
00784     enum Choices {
00785       e_errorDescriptor,
00786       e_mediaDescriptor,
00787       e_modemDescriptor,
00788       e_muxDescriptor,
00789       e_eventsDescriptor,
00790       e_eventBufferDescriptor,
00791       e_signalsDescriptor,
00792       e_digitMapDescriptor,
00793       e_observedEventsDescriptor,
00794       e_statisticsDescriptor,
00795       e_packagesDescriptor,
00796       e_emptyDescriptors
00797     };
00798 
00799 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00800     operator H248_ErrorDescriptor &() const;
00801 #else
00802     operator H248_ErrorDescriptor &();
00803     operator const H248_ErrorDescriptor &() const;
00804 #endif
00805 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00806     operator H248_MediaDescriptor &() const;
00807 #else
00808     operator H248_MediaDescriptor &();
00809     operator const H248_MediaDescriptor &() const;
00810 #endif
00811 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00812     operator H248_ModemDescriptor &() const;
00813 #else
00814     operator H248_ModemDescriptor &();
00815     operator const H248_ModemDescriptor &() const;
00816 #endif
00817 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00818     operator H248_MuxDescriptor &() const;
00819 #else
00820     operator H248_MuxDescriptor &();
00821     operator const H248_MuxDescriptor &() const;
00822 #endif
00823 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00824     operator H248_EventsDescriptor &() const;
00825 #else
00826     operator H248_EventsDescriptor &();
00827     operator const H248_EventsDescriptor &() const;
00828 #endif
00829 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00830     operator H248_EventBufferDescriptor &() const;
00831 #else
00832     operator H248_EventBufferDescriptor &();
00833     operator const H248_EventBufferDescriptor &() const;
00834 #endif
00835 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00836     operator H248_SignalsDescriptor &() const;
00837 #else
00838     operator H248_SignalsDescriptor &();
00839     operator const H248_SignalsDescriptor &() const;
00840 #endif
00841 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00842     operator H248_DigitMapDescriptor &() const;
00843 #else
00844     operator H248_DigitMapDescriptor &();
00845     operator const H248_DigitMapDescriptor &() const;
00846 #endif
00847 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00848     operator H248_ObservedEventsDescriptor &() const;
00849 #else
00850     operator H248_ObservedEventsDescriptor &();
00851     operator const H248_ObservedEventsDescriptor &() const;
00852 #endif
00853 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00854     operator H248_StatisticsDescriptor &() const;
00855 #else
00856     operator H248_StatisticsDescriptor &();
00857     operator const H248_StatisticsDescriptor &() const;
00858 #endif
00859 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00860     operator H248_PackagesDescriptor &() const;
00861 #else
00862     operator H248_PackagesDescriptor &();
00863     operator const H248_PackagesDescriptor &() const;
00864 #endif
00865 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00866     operator H248_AuditDescriptor &() const;
00867 #else
00868     operator H248_AuditDescriptor &();
00869     operator const H248_AuditDescriptor &() const;
00870 #endif
00871 
00872     PBoolean CreateObject();
00873     PObject * Clone() const;
00874 };
00875 
00876 
00877 //
00878 // IndAuditParameter
00879 //
00880 
00881 class H248_IndAudMediaDescriptor;
00882 class H248_IndAudEventsDescriptor;
00883 class H248_IndAudEventBufferDescriptor;
00884 class H248_IndAudSignalsDescriptor;
00885 class H248_IndAudDigitMapDescriptor;
00886 class H248_IndAudStatisticsDescriptor;
00887 class H248_IndAudPackagesDescriptor;
00888 
00889 class H248_IndAuditParameter : public PASN_Choice
00890 {
00891 #ifndef PASN_LEANANDMEAN
00892     PCLASSINFO(H248_IndAuditParameter, PASN_Choice);
00893 #endif
00894   public:
00895     H248_IndAuditParameter(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00896 
00897     enum Choices {
00898       e_indaudmediaDescriptor,
00899       e_indaudeventsDescriptor,
00900       e_indaudeventBufferDescriptor,
00901       e_indaudsignalsDescriptor,
00902       e_indauddigitMapDescriptor,
00903       e_indaudstatisticsDescriptor,
00904       e_indaudpackagesDescriptor
00905     };
00906 
00907 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00908     operator H248_IndAudMediaDescriptor &() const;
00909 #else
00910     operator H248_IndAudMediaDescriptor &();
00911     operator const H248_IndAudMediaDescriptor &() const;
00912 #endif
00913 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00914     operator H248_IndAudEventsDescriptor &() const;
00915 #else
00916     operator H248_IndAudEventsDescriptor &();
00917     operator const H248_IndAudEventsDescriptor &() const;
00918 #endif
00919 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00920     operator H248_IndAudEventBufferDescriptor &() const;
00921 #else
00922     operator H248_IndAudEventBufferDescriptor &();
00923     operator const H248_IndAudEventBufferDescriptor &() const;
00924 #endif
00925 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00926     operator H248_IndAudSignalsDescriptor &() const;
00927 #else
00928     operator H248_IndAudSignalsDescriptor &();
00929     operator const H248_IndAudSignalsDescriptor &() const;
00930 #endif
00931 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00932     operator H248_IndAudDigitMapDescriptor &() const;
00933 #else
00934     operator H248_IndAudDigitMapDescriptor &();
00935     operator const H248_IndAudDigitMapDescriptor &() const;
00936 #endif
00937 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00938     operator H248_IndAudStatisticsDescriptor &() const;
00939 #else
00940     operator H248_IndAudStatisticsDescriptor &();
00941     operator const H248_IndAudStatisticsDescriptor &() const;
00942 #endif
00943 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00944     operator H248_IndAudPackagesDescriptor &() const;
00945 #else
00946     operator H248_IndAudPackagesDescriptor &();
00947     operator const H248_IndAudPackagesDescriptor &() const;
00948 #endif
00949 
00950     PBoolean CreateObject();
00951     PObject * Clone() const;
00952 };
00953 
00954 
00955 //
00956 // IndAudPropertyGroup
00957 //
00958 
00959 class H248_IndAudPropertyParm;
00960 
00961 class H248_IndAudPropertyGroup : public PASN_Array
00962 {
00963 #ifndef PASN_LEANANDMEAN
00964     PCLASSINFO(H248_IndAudPropertyGroup, PASN_Array);
00965 #endif
00966   public:
00967     H248_IndAudPropertyGroup(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00968 
00969     PASN_Object * CreateObject() const;
00970     H248_IndAudPropertyParm & operator[](PINDEX i) const;
00971     PObject * Clone() const;
00972 };
00973 
00974 
00975 //
00976 // IndAudSignalsDescriptor
00977 //
00978 
00979 class H248_IndAudSignal;
00980 class H248_IndAudSeqSigList;
00981 
00982 class H248_IndAudSignalsDescriptor : public PASN_Choice
00983 {
00984 #ifndef PASN_LEANANDMEAN
00985     PCLASSINFO(H248_IndAudSignalsDescriptor, PASN_Choice);
00986 #endif
00987   public:
00988     H248_IndAudSignalsDescriptor(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00989 
00990     enum Choices {
00991       e_signal,
00992       e_seqSigList
00993     };
00994 
00995 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00996     operator H248_IndAudSignal &() const;
00997 #else
00998     operator H248_IndAudSignal &();
00999     operator const H248_IndAudSignal &() const;
01000 #endif
01001 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01002     operator H248_IndAudSeqSigList &() const;
01003 #else
01004     operator H248_IndAudSeqSigList &();
01005     operator const H248_IndAudSeqSigList &() const;
01006 #endif
01007 
01008     PBoolean CreateObject();
01009     PObject * Clone() const;
01010 };
01011 
01012 
01013 //
01014 // ServiceChangeResult
01015 //
01016 
01017 class H248_ErrorDescriptor;
01018 class H248_ServiceChangeResParm;
01019 
01020 class H248_ServiceChangeResult : public PASN_Choice
01021 {
01022 #ifndef PASN_LEANANDMEAN
01023     PCLASSINFO(H248_ServiceChangeResult, PASN_Choice);
01024 #endif
01025   public:
01026     H248_ServiceChangeResult(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01027 
01028     enum Choices {
01029       e_errorDescriptor,
01030       e_serviceChangeResParms
01031     };
01032 
01033 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01034     operator H248_ErrorDescriptor &() const;
01035 #else
01036     operator H248_ErrorDescriptor &();
01037     operator const H248_ErrorDescriptor &() const;
01038 #endif
01039 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01040     operator H248_ServiceChangeResParm &() const;
01041 #else
01042     operator H248_ServiceChangeResParm &();
01043     operator const H248_ServiceChangeResParm &() const;
01044 #endif
01045 
01046     PBoolean CreateObject();
01047     PObject * Clone() const;
01048 };
01049 
01050 
01051 //
01052 // WildcardField
01053 //
01054 
01055 class H248_WildcardField : public PASN_OctetString
01056 {
01057 #ifndef PASN_LEANANDMEAN
01058     PCLASSINFO(H248_WildcardField, PASN_OctetString);
01059 #endif
01060   public:
01061     H248_WildcardField(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
01062 
01063     H248_WildcardField(const char * v);
01064     H248_WildcardField(const PString & v);
01065     H248_WildcardField(const PBYTEArray & v);
01066 
01067     H248_WildcardField & operator=(const char * v);
01068     H248_WildcardField & operator=(const PString & v);
01069     H248_WildcardField & operator=(const PBYTEArray & v);
01070     PObject * Clone() const;
01071 };
01072 
01073 
01074 //
01075 // TerminationIDList
01076 //
01077 
01078 class H248_TerminationID;
01079 
01080 class H248_TerminationIDList : public PASN_Array
01081 {
01082 #ifndef PASN_LEANANDMEAN
01083     PCLASSINFO(H248_TerminationIDList, PASN_Array);
01084 #endif
01085   public:
01086     H248_TerminationIDList(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01087 
01088     PASN_Object * CreateObject() const;
01089     H248_TerminationID & operator[](PINDEX i) const;
01090     PObject * Clone() const;
01091 };
01092 
01093 
01094 //
01095 // StreamMode
01096 //
01097 
01098 class H248_StreamMode : public PASN_Enumeration
01099 {
01100 #ifndef PASN_LEANANDMEAN
01101     PCLASSINFO(H248_StreamMode, PASN_Enumeration);
01102 #endif
01103   public:
01104     H248_StreamMode(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
01105 
01106     enum Enumerations {
01107       e_sendOnly,
01108       e_recvOnly,
01109       e_sendRecv,
01110       e_inactive,
01111       e_loopBack
01112     };
01113 
01114     H248_StreamMode & operator=(unsigned v);
01115     PObject * Clone() const;
01116 };
01117 
01118 
01119 //
01120 // Name
01121 //
01122 
01123 class H248_Name : public PASN_OctetString
01124 {
01125 #ifndef PASN_LEANANDMEAN
01126     PCLASSINFO(H248_Name, PASN_OctetString);
01127 #endif
01128   public:
01129     H248_Name(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
01130 
01131     H248_Name(const char * v);
01132     H248_Name(const PString & v);
01133     H248_Name(const PBYTEArray & v);
01134 
01135     H248_Name & operator=(const char * v);
01136     H248_Name & operator=(const PString & v);
01137     H248_Name & operator=(const PBYTEArray & v);
01138     PObject * Clone() const;
01139 };
01140 
01141 
01142 //
01143 // PkgdName
01144 //
01145 
01146 class H248_PkgdName : public PASN_OctetString
01147 {
01148 #ifndef PASN_LEANANDMEAN
01149     PCLASSINFO(H248_PkgdName, PASN_OctetString);
01150 #endif
01151   public:
01152     H248_PkgdName(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
01153 
01154     H248_PkgdName(const char * v);
01155     H248_PkgdName(const PString & v);
01156     H248_PkgdName(const PBYTEArray & v);
01157 
01158     H248_PkgdName & operator=(const char * v);
01159     H248_PkgdName & operator=(const PString & v);
01160     H248_PkgdName & operator=(const PBYTEArray & v);
01161     PObject * Clone() const;
01162 };
01163 
01164 
01165 //
01166 // Relation
01167 //
01168 
01169 class H248_Relation : public PASN_Enumeration
01170 {
01171 #ifndef PASN_LEANANDMEAN
01172     PCLASSINFO(H248_Relation, PASN_Enumeration);
01173 #endif
01174   public:
01175     H248_Relation(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
01176 
01177     enum Enumerations {
01178       e_greaterThan,
01179       e_smallerThan,
01180       e_unequalTo
01181     };
01182 
01183     H248_Relation & operator=(unsigned v);
01184     PObject * Clone() const;
01185 };
01186 
01187 
01188 //
01189 // PropertyGroup
01190 //
01191 
01192 class H248_PropertyParm;
01193 
01194 class H248_PropertyGroup : public PASN_Array
01195 {
01196 #ifndef PASN_LEANANDMEAN
01197     PCLASSINFO(H248_PropertyGroup, PASN_Array);
01198 #endif
01199   public:
01200     H248_PropertyGroup(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01201 
01202     PASN_Object * CreateObject() const;
01203     H248_PropertyParm & operator[](PINDEX i) const;
01204     PObject * Clone() const;
01205 };
01206 
01207 
01208 //
01209 // EventBufferControl
01210 //
01211 
01212 class H248_EventBufferControl : public PASN_Enumeration
01213 {
01214 #ifndef PASN_LEANANDMEAN
01215     PCLASSINFO(H248_EventBufferControl, PASN_Enumeration);
01216 #endif
01217   public:
01218     H248_EventBufferControl(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
01219 
01220     enum Enumerations {
01221       e_off,
01222       e_lockStep
01223     };
01224 
01225     H248_EventBufferControl & operator=(unsigned v);
01226     PObject * Clone() const;
01227 };
01228 
01229 
01230 //
01231 // ServiceState
01232 //
01233 
01234 class H248_ServiceState : public PASN_Enumeration
01235 {
01236 #ifndef PASN_LEANANDMEAN
01237     PCLASSINFO(H248_ServiceState, PASN_Enumeration);
01238 #endif
01239   public:
01240     H248_ServiceState(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
01241 
01242     enum Enumerations {
01243       e_test,
01244       e_outOfSvc,
01245       e_inSvc
01246     };
01247 
01248     H248_ServiceState & operator=(unsigned v);
01249     PObject * Clone() const;
01250 };
01251 
01252 
01253 //
01254 // MuxType
01255 //
01256 
01257 class H248_MuxType : public PASN_Enumeration
01258 {
01259 #ifndef PASN_LEANANDMEAN
01260     PCLASSINFO(H248_MuxType, PASN_Enumeration);
01261 #endif
01262   public:
01263     H248_MuxType(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
01264 
01265     enum Enumerations {
01266       e_h221,
01267       e_h223,
01268       e_h226,
01269       e_v76,
01270       e_nx64k
01271     };
01272 
01273     H248_MuxType & operator=(unsigned v);
01274     PObject * Clone() const;
01275 };
01276 
01277 
01278 //
01279 // StreamID
01280 //
01281 
01282 class H248_StreamID : public PASN_Integer
01283 {
01284 #ifndef PASN_LEANANDMEAN
01285     PCLASSINFO(H248_StreamID, PASN_Integer);
01286 #endif
01287   public:
01288     H248_StreamID(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
01289 
01290     H248_StreamID & operator=(int v);
01291     H248_StreamID & operator=(unsigned v);
01292     PObject * Clone() const;
01293 };
01294 
01295 
01296 //
01297 // EventDM
01298 //
01299 
01300 class H248_DigitMapName;
01301 class H248_DigitMapValue;
01302 
01303 class H248_EventDM : public PASN_Choice
01304 {
01305 #ifndef PASN_LEANANDMEAN
01306     PCLASSINFO(H248_EventDM, PASN_Choice);
01307 #endif
01308   public:
01309     H248_EventDM(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01310 
01311     enum Choices {
01312       e_digitMapName,
01313       e_digitMapValue
01314     };
01315 
01316 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01317     operator H248_DigitMapName &() const;
01318 #else
01319     operator H248_DigitMapName &();
01320     operator const H248_DigitMapName &() const;
01321 #endif
01322 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01323     operator H248_DigitMapValue &() const;
01324 #else
01325     operator H248_DigitMapValue &();
01326     operator const H248_DigitMapValue &() const;
01327 #endif
01328 
01329     PBoolean CreateObject();
01330     PObject * Clone() const;
01331 };
01332 
01333 
01334 //
01335 // EventBufferDescriptor
01336 //
01337 
01338 class H248_EventSpec;
01339 
01340 class H248_EventBufferDescriptor : public PASN_Array
01341 {
01342 #ifndef PASN_LEANANDMEAN
01343     PCLASSINFO(H248_EventBufferDescriptor, PASN_Array);
01344 #endif
01345   public:
01346     H248_EventBufferDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01347 
01348     PASN_Object * CreateObject() const;
01349     H248_EventSpec & operator[](PINDEX i) const;
01350     PObject * Clone() const;
01351 };
01352 
01353 
01354 //
01355 // SignalsDescriptor
01356 //
01357 
01358 class H248_SignalRequest;
01359 
01360 class H248_SignalsDescriptor : public PASN_Array
01361 {
01362 #ifndef PASN_LEANANDMEAN
01363     PCLASSINFO(H248_SignalsDescriptor, PASN_Array);
01364 #endif
01365   public:
01366     H248_SignalsDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01367 
01368     PASN_Object * CreateObject() const;
01369     H248_SignalRequest & operator[](PINDEX i) const;
01370     PObject * Clone() const;
01371 };
01372 
01373 
01374 //
01375 // SignalRequest
01376 //
01377 
01378 class H248_Signal;
01379 class H248_SeqSigList;
01380 
01381 class H248_SignalRequest : public PASN_Choice
01382 {
01383 #ifndef PASN_LEANANDMEAN
01384     PCLASSINFO(H248_SignalRequest, PASN_Choice);
01385 #endif
01386   public:
01387     H248_SignalRequest(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01388 
01389     enum Choices {
01390       e_signal,
01391       e_seqSigList
01392     };
01393 
01394 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01395     operator H248_Signal &() const;
01396 #else
01397     operator H248_Signal &();
01398     operator const H248_Signal &() const;
01399 #endif
01400 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01401     operator H248_SeqSigList &() const;
01402 #else
01403     operator H248_SeqSigList &();
01404     operator const H248_SeqSigList &() const;
01405 #endif
01406 
01407     PBoolean CreateObject();
01408     PObject * Clone() const;
01409 };
01410 
01411 
01412 //
01413 // SignalType
01414 //
01415 
01416 class H248_SignalType : public PASN_Enumeration
01417 {
01418 #ifndef PASN_LEANANDMEAN
01419     PCLASSINFO(H248_SignalType, PASN_Enumeration);
01420 #endif
01421   public:
01422     H248_SignalType(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
01423 
01424     enum Enumerations {
01425       e_brief,
01426       e_onOff,
01427       e_timeOut
01428     };
01429 
01430     H248_SignalType & operator=(unsigned v);
01431     PObject * Clone() const;
01432 };
01433 
01434 
01435 //
01436 // SignalName
01437 //
01438 
01439 class H248_SignalName : public H248_PkgdName
01440 {
01441 #ifndef PASN_LEANANDMEAN
01442     PCLASSINFO(H248_SignalName, H248_PkgdName);
01443 #endif
01444   public:
01445     H248_SignalName(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
01446 
01447     H248_SignalName(const char * v);
01448     H248_SignalName(const PString & v);
01449     H248_SignalName(const PBYTEArray & v);
01450 
01451     H248_SignalName & operator=(const char * v);
01452     H248_SignalName & operator=(const PString & v);
01453     H248_SignalName & operator=(const PBYTEArray & v);
01454     PObject * Clone() const;
01455 };
01456 
01457 
01458 //
01459 // NotifyCompletion
01460 //
01461 
01462 class H248_NotifyCompletion : public PASN_BitString
01463 {
01464 #ifndef PASN_LEANANDMEAN
01465     PCLASSINFO(H248_NotifyCompletion, PASN_BitString);
01466 #endif
01467   public:
01468     H248_NotifyCompletion(unsigned tag = UniversalBitString, TagClass tagClass = UniversalTagClass);
01469 
01470     PObject * Clone() const;
01471 };
01472 
01473 
01474 //
01475 // RequestID
01476 //
01477 
01478 class H248_RequestID : public PASN_Integer
01479 {
01480 #ifndef PASN_LEANANDMEAN
01481     PCLASSINFO(H248_RequestID, PASN_Integer);
01482 #endif
01483   public:
01484     H248_RequestID(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
01485 
01486     H248_RequestID & operator=(int v);
01487     H248_RequestID & operator=(unsigned v);
01488     PObject * Clone() const;
01489 };
01490 
01491 
01492 //
01493 // ModemType
01494 //
01495 
01496 class H248_ModemType : public PASN_Enumeration
01497 {
01498 #ifndef PASN_LEANANDMEAN
01499     PCLASSINFO(H248_ModemType, PASN_Enumeration);
01500 #endif
01501   public:
01502     H248_ModemType(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
01503 
01504     enum Enumerations {
01505       e_v18,
01506       e_v22,
01507       e_v22bis,
01508       e_v32,
01509       e_v32bis,
01510       e_v34,
01511       e_v90,
01512       e_v91,
01513       e_synchISDN
01514     };
01515 
01516     H248_ModemType & operator=(unsigned v);
01517     PObject * Clone() const;
01518 };
01519 
01520 
01521 //
01522 // DigitMapName
01523 //
01524 
01525 class H248_DigitMapName : public H248_Name
01526 {
01527 #ifndef PASN_LEANANDMEAN
01528     PCLASSINFO(H248_DigitMapName, H248_Name);
01529 #endif
01530   public:
01531     H248_DigitMapName(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
01532 
01533     H248_DigitMapName(const char * v);
01534     H248_DigitMapName(const PString & v);
01535     H248_DigitMapName(const PBYTEArray & v);
01536 
01537     H248_DigitMapName & operator=(const char * v);
01538     H248_DigitMapName & operator=(const PString & v);
01539     H248_DigitMapName & operator=(const PBYTEArray & v);
01540     PObject * Clone() const;
01541 };
01542 
01543 
01544 //
01545 // DigitMapValue
01546 //
01547 
01548 class H248_DigitMapValue : public PASN_Sequence
01549 {
01550 #ifndef PASN_LEANANDMEAN
01551     PCLASSINFO(H248_DigitMapValue, PASN_Sequence);
01552 #endif
01553   public:
01554     H248_DigitMapValue(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01555 
01556     enum OptionalFields {
01557       e_startTimer,
01558       e_shortTimer,
01559       e_longTimer,
01560       e_durationTimer
01561     };
01562 
01563     PASN_Integer m_startTimer;
01564     PASN_Integer m_shortTimer;
01565     PASN_Integer m_longTimer;
01566     PASN_IA5String m_digitMapBody;
01567     PASN_Integer m_durationTimer;
01568 
01569     PINDEX GetDataLength() const;
01570     PBoolean Decode(PASN_Stream & strm);
01571     void Encode(PASN_Stream & strm) const;
01572 #ifndef PASN_NOPRINTON
01573     void PrintOn(ostream & strm) const;
01574 #endif
01575     Comparison Compare(const PObject & obj) const;
01576     PObject * Clone() const;
01577 };
01578 
01579 
01580 //
01581 // ServiceChangeAddress
01582 //
01583 
01584 class H248_IP4Address;
01585 class H248_IP6Address;
01586 class H248_DomainName;
01587 class H248_PathName;
01588 
01589 class H248_ServiceChangeAddress : public PASN_Choice
01590 {
01591 #ifndef PASN_LEANANDMEAN
01592     PCLASSINFO(H248_ServiceChangeAddress, PASN_Choice);
01593 #endif
01594   public:
01595     H248_ServiceChangeAddress(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01596 
01597     enum Choices {
01598       e_portNumber,
01599       e_ip4Address,
01600       e_ip6Address,
01601       e_domainName,
01602       e_deviceName,
01603       e_mtpAddress
01604     };
01605 
01606 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01607     operator H248_IP4Address &() const;
01608 #else
01609     operator H248_IP4Address &();
01610     operator const H248_IP4Address &() const;
01611 #endif
01612 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01613     operator H248_IP6Address &() const;
01614 #else
01615     operator H248_IP6Address &();
01616     operator const H248_IP6Address &() const;
01617 #endif
01618 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01619     operator H248_DomainName &() const;
01620 #else
01621     operator H248_DomainName &();
01622     operator const H248_DomainName &() const;
01623 #endif
01624 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01625     operator H248_PathName &() const;
01626 #else
01627     operator H248_PathName &();
01628     operator const H248_PathName &() const;
01629 #endif
01630 
01631     PBoolean CreateObject();
01632     PObject * Clone() const;
01633 };
01634 
01635 
01636 //
01637 // ServiceChangeMethod
01638 //
01639 
01640 class H248_ServiceChangeMethod : public PASN_Enumeration
01641 {
01642 #ifndef PASN_LEANANDMEAN
01643     PCLASSINFO(H248_ServiceChangeMethod, PASN_Enumeration);
01644 #endif
01645   public:
01646     H248_ServiceChangeMethod(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
01647 
01648     enum Enumerations {
01649       e_failover,
01650       e_forced,
01651       e_graceful,
01652       e_restart,
01653       e_disconnected,
01654       e_handOff
01655     };
01656 
01657     H248_ServiceChangeMethod & operator=(unsigned v);
01658     PObject * Clone() const;
01659 };
01660 
01661 
01662 //
01663 // ServiceChangeProfile
01664 //
01665 
01666 class H248_ServiceChangeProfile : public PASN_Sequence
01667 {
01668 #ifndef PASN_LEANANDMEAN
01669     PCLASSINFO(H248_ServiceChangeProfile, PASN_Sequence);
01670 #endif
01671   public:
01672     H248_ServiceChangeProfile(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01673 
01674     PASN_IA5String m_profileName;
01675 
01676     PINDEX GetDataLength() const;
01677     PBoolean Decode(PASN_Stream & strm);
01678     void Encode(PASN_Stream & strm) const;
01679 #ifndef PASN_NOPRINTON
01680     void PrintOn(ostream & strm) const;
01681 #endif
01682     Comparison Compare(const PObject & obj) const;
01683     PObject * Clone() const;
01684 };
01685 
01686 
01687 //
01688 // PackagesDescriptor
01689 //
01690 
01691 class H248_PackagesItem;
01692 
01693 class H248_PackagesDescriptor : public PASN_Array
01694 {
01695 #ifndef PASN_LEANANDMEAN
01696     PCLASSINFO(H248_PackagesDescriptor, PASN_Array);
01697 #endif
01698   public:
01699     H248_PackagesDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01700 
01701     PASN_Object * CreateObject() const;
01702     H248_PackagesItem & operator[](PINDEX i) const;
01703     PObject * Clone() const;
01704 };
01705 
01706 
01707 //
01708 // PackagesItem
01709 //
01710 
01711 class H248_PackagesItem : public PASN_Sequence
01712 {
01713 #ifndef PASN_LEANANDMEAN
01714     PCLASSINFO(H248_PackagesItem, PASN_Sequence);
01715 #endif
01716   public:
01717     H248_PackagesItem(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01718 
01719     H248_Name m_packageName;
01720     PASN_Integer m_packageVersion;
01721 
01722     PINDEX GetDataLength() const;
01723     PBoolean Decode(PASN_Stream & strm);
01724     void Encode(PASN_Stream & strm) const;
01725 #ifndef PASN_NOPRINTON
01726     void PrintOn(ostream & strm) const;
01727 #endif
01728     Comparison Compare(const PObject & obj) const;
01729     PObject * Clone() const;
01730 };
01731 
01732 
01733 //
01734 // StatisticsDescriptor
01735 //
01736 
01737 class H248_StatisticsParameter;
01738 
01739 class H248_StatisticsDescriptor : public PASN_Array
01740 {
01741 #ifndef PASN_LEANANDMEAN
01742     PCLASSINFO(H248_StatisticsDescriptor, PASN_Array);
01743 #endif
01744   public:
01745     H248_StatisticsDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01746 
01747     PASN_Object * CreateObject() const;
01748     H248_StatisticsParameter & operator[](PINDEX i) const;
01749     PObject * Clone() const;
01750 };
01751 
01752 
01753 //
01754 // NonStandardIdentifier
01755 //
01756 
01757 class H248_H221NonStandard;
01758 
01759 class H248_NonStandardIdentifier : public PASN_Choice
01760 {
01761 #ifndef PASN_LEANANDMEAN
01762     PCLASSINFO(H248_NonStandardIdentifier, PASN_Choice);
01763 #endif
01764   public:
01765     H248_NonStandardIdentifier(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01766 
01767     enum Choices {
01768       e_object,
01769       e_h221NonStandard,
01770       e_experimental
01771     };
01772 
01773 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01774     operator H248_H221NonStandard &() const;
01775 #else
01776     operator H248_H221NonStandard &();
01777     operator const H248_H221NonStandard &() const;
01778 #endif
01779 
01780     PBoolean CreateObject();
01781     PObject * Clone() const;
01782 };
01783 
01784 
01785 //
01786 // H221NonStandard
01787 //
01788 
01789 class H248_H221NonStandard : public PASN_Sequence
01790 {
01791 #ifndef PASN_LEANANDMEAN
01792     PCLASSINFO(H248_H221NonStandard, PASN_Sequence);
01793 #endif
01794   public:
01795     H248_H221NonStandard(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01796 
01797     PASN_Integer m_t35CountryCode1;
01798     PASN_Integer m_t35CountryCode2;
01799     PASN_Integer m_t35Extension;
01800     PASN_Integer m_manufacturerCode;
01801 
01802     PINDEX GetDataLength() const;
01803     PBoolean Decode(PASN_Stream & strm);
01804     void Encode(PASN_Stream & strm) const;
01805 #ifndef PASN_NOPRINTON
01806     void PrintOn(ostream & strm) const;
01807 #endif
01808     Comparison Compare(const PObject & obj) const;
01809     PObject * Clone() const;
01810 };
01811 
01812 
01813 //
01814 // TimeNotation
01815 //
01816 
01817 class H248_TimeNotation : public PASN_Sequence
01818 {
01819 #ifndef PASN_LEANANDMEAN
01820     PCLASSINFO(H248_TimeNotation, PASN_Sequence);
01821 #endif
01822   public:
01823     H248_TimeNotation(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01824 
01825     PASN_IA5String m_date;
01826     PASN_IA5String m_time;
01827 
01828     PINDEX GetDataLength() const;
01829     PBoolean Decode(PASN_Stream & strm);
01830     void Encode(PASN_Stream & strm) const;
01831 #ifndef PASN_NOPRINTON
01832     void PrintOn(ostream & strm) const;
01833 #endif
01834     Comparison Compare(const PObject & obj) const;
01835     PObject * Clone() const;
01836 };
01837 
01838 
01839 //
01840 // Value
01841 //
01842 
01843 class H248_Value : public PASN_Array
01844 {
01845 #ifndef PASN_LEANANDMEAN
01846     PCLASSINFO(H248_Value, PASN_Array);
01847 #endif
01848   public:
01849     H248_Value(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01850 
01851     PASN_Object * CreateObject() const;
01852     PASN_OctetString & operator[](PINDEX i) const;
01853     PObject * Clone() const;
01854 };
01855 
01856 
01857 //
01858 // Message_messageBody
01859 //
01860 
01861 class H248_ErrorDescriptor;
01862 class H248_ArrayOf_Transaction;
01863 
01864 class H248_Message_messageBody : public PASN_Choice
01865 {
01866 #ifndef PASN_LEANANDMEAN
01867     PCLASSINFO(H248_Message_messageBody, PASN_Choice);
01868 #endif
01869   public:
01870     H248_Message_messageBody(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01871 
01872     enum Choices {
01873       e_messageError,
01874       e_transactions
01875     };
01876 
01877 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01878     operator H248_ErrorDescriptor &() const;
01879 #else
01880     operator H248_ErrorDescriptor &();
01881     operator const H248_ErrorDescriptor &() const;
01882 #endif
01883 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01884     operator H248_ArrayOf_Transaction &() const;
01885 #else
01886     operator H248_ArrayOf_Transaction &();
01887     operator const H248_ArrayOf_Transaction &() const;
01888 #endif
01889 
01890     PBoolean CreateObject();
01891     PObject * Clone() const;
01892 };
01893 
01894 
01895 //
01896 // ArrayOf_ActionRequest
01897 //
01898 
01899 class H248_ActionRequest;
01900 
01901 class H248_ArrayOf_ActionRequest : public PASN_Array
01902 {
01903 #ifndef PASN_LEANANDMEAN
01904     PCLASSINFO(H248_ArrayOf_ActionRequest, PASN_Array);
01905 #endif
01906   public:
01907     H248_ArrayOf_ActionRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01908 
01909     PASN_Object * CreateObject() const;
01910     H248_ActionRequest & operator[](PINDEX i) const;
01911     PObject * Clone() const;
01912 };
01913 
01914 
01915 //
01916 // TransactionReply_transactionResult
01917 //
01918 
01919 class H248_ErrorDescriptor;
01920 class H248_ArrayOf_ActionReply;
01921 
01922 class H248_TransactionReply_transactionResult : public PASN_Choice
01923 {
01924 #ifndef PASN_LEANANDMEAN
01925     PCLASSINFO(H248_TransactionReply_transactionResult, PASN_Choice);
01926 #endif
01927   public:
01928     H248_TransactionReply_transactionResult(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01929 
01930     enum Choices {
01931       e_transactionError,
01932       e_actionReplies
01933     };
01934 
01935 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01936     operator H248_ErrorDescriptor &() const;
01937 #else
01938     operator H248_ErrorDescriptor &();
01939     operator const H248_ErrorDescriptor &() const;
01940 #endif
01941 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01942     operator H248_ArrayOf_ActionReply &() const;
01943 #else
01944     operator H248_ArrayOf_ActionReply &();
01945     operator const H248_ArrayOf_ActionReply &() const;
01946 #endif
01947 
01948     PBoolean CreateObject();
01949     PObject * Clone() const;
01950 };
01951 
01952 
01953 //
01954 // ArrayOf_CommandRequest
01955 //
01956 
01957 class H248_CommandRequest;
01958 
01959 class H248_ArrayOf_CommandRequest : public PASN_Array
01960 {
01961 #ifndef PASN_LEANANDMEAN
01962     PCLASSINFO(H248_ArrayOf_CommandRequest, PASN_Array);
01963 #endif
01964   public:
01965     H248_ArrayOf_CommandRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01966 
01967     PASN_Object * CreateObject() const;
01968     H248_CommandRequest & operator[](PINDEX i) const;
01969     PObject * Clone() const;
01970 };
01971 
01972 
01973 //
01974 // ArrayOf_CommandReply
01975 //
01976 
01977 class H248_CommandReply;
01978 
01979 class H248_ArrayOf_CommandReply : public PASN_Array
01980 {
01981 #ifndef PASN_LEANANDMEAN
01982     PCLASSINFO(H248_ArrayOf_CommandReply, PASN_Array);
01983 #endif
01984   public:
01985     H248_ArrayOf_CommandReply(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01986 
01987     PASN_Object * CreateObject() const;
01988     H248_CommandReply & operator[](PINDEX i) const;
01989     PObject * Clone() const;
01990 };
01991 
01992 
01993 //
01994 // ArrayOf_TopologyRequest
01995 //
01996 
01997 class H248_TopologyRequest;
01998 
01999 class H248_ArrayOf_TopologyRequest : public PASN_Array
02000 {
02001 #ifndef PASN_LEANANDMEAN
02002     PCLASSINFO(H248_ArrayOf_TopologyRequest, PASN_Array);
02003 #endif
02004   public:
02005     H248_ArrayOf_TopologyRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02006 
02007     PASN_Object * CreateObject() const;
02008     H248_TopologyRequest & operator[](PINDEX i) const;
02009     PObject * Clone() const;
02010 };
02011 
02012 
02013 //
02014 // TopologyRequest_topologyDirection
02015 //
02016 
02017 class H248_TopologyRequest_topologyDirection : public PASN_Enumeration
02018 {
02019 #ifndef PASN_LEANANDMEAN
02020     PCLASSINFO(H248_TopologyRequest_topologyDirection, PASN_Enumeration);
02021 #endif
02022   public:
02023     H248_TopologyRequest_topologyDirection(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
02024 
02025     enum Enumerations {
02026       e_bothway,
02027       e_isolate,
02028       e_oneway
02029     };
02030 
02031     H248_TopologyRequest_topologyDirection & operator=(unsigned v);
02032     PObject * Clone() const;
02033 };
02034 
02035 
02036 //
02037 // ArrayOf_AmmDescriptor
02038 //
02039 
02040 class H248_AmmDescriptor;
02041 
02042 class H248_ArrayOf_AmmDescriptor : public PASN_Array
02043 {
02044 #ifndef PASN_LEANANDMEAN
02045     PCLASSINFO(H248_ArrayOf_AmmDescriptor, PASN_Array);
02046 #endif
02047   public:
02048     H248_ArrayOf_AmmDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02049 
02050     PASN_Object * CreateObject() const;
02051     H248_AmmDescriptor & operator[](PINDEX i) const;
02052     PObject * Clone() const;
02053 };
02054 
02055 
02056 //
02057 // ArrayOf_IndAuditParameter
02058 //
02059 
02060 class H248_IndAuditParameter;
02061 
02062 class H248_ArrayOf_IndAuditParameter : public PASN_Array
02063 {
02064 #ifndef PASN_LEANANDMEAN
02065     PCLASSINFO(H248_ArrayOf_IndAuditParameter, PASN_Array);
02066 #endif
02067   public:
02068     H248_ArrayOf_IndAuditParameter(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02069 
02070     PASN_Object * CreateObject() const;
02071     H248_IndAuditParameter & operator[](PINDEX i) const;
02072     PObject * Clone() const;
02073 };
02074 
02075 
02076 //
02077 // IndAudMediaDescriptor_streams
02078 //
02079 
02080 class H248_IndAudStreamParms;
02081 class H248_ArrayOf_IndAudStreamDescriptor;
02082 
02083 class H248_IndAudMediaDescriptor_streams : public PASN_Choice
02084 {
02085 #ifndef PASN_LEANANDMEAN
02086     PCLASSINFO(H248_IndAudMediaDescriptor_streams, PASN_Choice);
02087 #endif
02088   public:
02089     H248_IndAudMediaDescriptor_streams(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02090 
02091     enum Choices {
02092       e_oneStream,
02093       e_multiStream
02094     };
02095 
02096 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02097     operator H248_IndAudStreamParms &() const;
02098 #else
02099     operator H248_IndAudStreamParms &();
02100     operator const H248_IndAudStreamParms &() const;
02101 #endif
02102 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02103     operator H248_ArrayOf_IndAudStreamDescriptor &() const;
02104 #else
02105     operator H248_ArrayOf_IndAudStreamDescriptor &();
02106     operator const H248_ArrayOf_IndAudStreamDescriptor &() const;
02107 #endif
02108 
02109     PBoolean CreateObject();
02110     PObject * Clone() const;
02111 };
02112 
02113 
02114 //
02115 // ArrayOf_IndAudPropertyParm
02116 //
02117 
02118 class H248_IndAudPropertyParm;
02119 
02120 class H248_ArrayOf_IndAudPropertyParm : public PASN_Array
02121 {
02122 #ifndef PASN_LEANANDMEAN
02123     PCLASSINFO(H248_ArrayOf_IndAudPropertyParm, PASN_Array);
02124 #endif
02125   public:
02126     H248_ArrayOf_IndAudPropertyParm(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02127 
02128     PASN_Object * CreateObject() const;
02129     H248_IndAudPropertyParm & operator[](PINDEX i) const;
02130     PObject * Clone() const;
02131 };
02132 
02133 
02134 //
02135 // ArrayOf_ObservedEvent
02136 //
02137 
02138 class H248_ObservedEvent;
02139 
02140 class H248_ArrayOf_ObservedEvent : public PASN_Array
02141 {
02142 #ifndef PASN_LEANANDMEAN
02143     PCLASSINFO(H248_ArrayOf_ObservedEvent, PASN_Array);
02144 #endif
02145   public:
02146     H248_ArrayOf_ObservedEvent(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02147 
02148     PASN_Object * CreateObject() const;
02149     H248_ObservedEvent & operator[](PINDEX i) const;
02150     PObject * Clone() const;
02151 };
02152 
02153 
02154 //
02155 // ArrayOf_EventParameter
02156 //
02157 
02158 class H248_EventParameter;
02159 
02160 class H248_ArrayOf_EventParameter : public PASN_Array
02161 {
02162 #ifndef PASN_LEANANDMEAN
02163     PCLASSINFO(H248_ArrayOf_EventParameter, PASN_Array);
02164 #endif
02165   public:
02166     H248_ArrayOf_EventParameter(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02167 
02168     PASN_Object * CreateObject() const;
02169     H248_EventParameter & operator[](PINDEX i) const;
02170     PObject * Clone() const;
02171 };
02172 
02173 
02174 //
02175 // EventParameter_extraInfo
02176 //
02177 
02178 class H248_Relation;
02179 
02180 class H248_EventParameter_extraInfo : public PASN_Choice
02181 {
02182 #ifndef PASN_LEANANDMEAN
02183     PCLASSINFO(H248_EventParameter_extraInfo, PASN_Choice);
02184 #endif
02185   public:
02186     H248_EventParameter_extraInfo(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02187 
02188     enum Choices {
02189       e_relation,
02190       e_range,
02191       e_sublist
02192     };
02193 
02194 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02195     operator H248_Relation &() const;
02196 #else
02197     operator H248_Relation &();
02198     operator const H248_Relation &() const;
02199 #endif
02200 
02201     PBoolean CreateObject();
02202     PObject * Clone() const;
02203 };
02204 
02205 
02206 //
02207 // ArrayOf_WildcardField
02208 //
02209 
02210 class H248_WildcardField;
02211 
02212 class H248_ArrayOf_WildcardField : public PASN_Array
02213 {
02214 #ifndef PASN_LEANANDMEAN
02215     PCLASSINFO(H248_ArrayOf_WildcardField, PASN_Array);
02216 #endif
02217   public:
02218     H248_ArrayOf_WildcardField(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02219 
02220     PASN_Object * CreateObject() const;
02221     H248_WildcardField & operator[](PINDEX i) const;
02222     PObject * Clone() const;
02223 };
02224 
02225 
02226 //
02227 // MediaDescriptor_streams
02228 //
02229 
02230 class H248_StreamParms;
02231 class H248_ArrayOf_StreamDescriptor;
02232 
02233 class H248_MediaDescriptor_streams : public PASN_Choice
02234 {
02235 #ifndef PASN_LEANANDMEAN
02236     PCLASSINFO(H248_MediaDescriptor_streams, PASN_Choice);
02237 #endif
02238   public:
02239     H248_MediaDescriptor_streams(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02240 
02241     enum Choices {
02242       e_oneStream,
02243       e_multiStream
02244     };
02245 
02246 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02247     operator H248_StreamParms &() const;
02248 #else
02249     operator H248_StreamParms &();
02250     operator const H248_StreamParms &() const;
02251 #endif
02252 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02253     operator H248_ArrayOf_StreamDescriptor &() const;
02254 #else
02255     operator H248_ArrayOf_StreamDescriptor &();
02256     operator const H248_ArrayOf_StreamDescriptor &() const;
02257 #endif
02258 
02259     PBoolean CreateObject();
02260     PObject * Clone() const;
02261 };
02262 
02263 
02264 //
02265 // ArrayOf_PropertyParm
02266 //
02267 
02268 class H248_PropertyParm;
02269 
02270 class H248_ArrayOf_PropertyParm : public PASN_Array
02271 {
02272 #ifndef PASN_LEANANDMEAN
02273     PCLASSINFO(H248_ArrayOf_PropertyParm, PASN_Array);
02274 #endif
02275   public:
02276     H248_ArrayOf_PropertyParm(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02277 
02278     PASN_Object * CreateObject() const;
02279     H248_PropertyParm & operator[](PINDEX i) const;
02280     PObject * Clone() const;
02281 };
02282 
02283 
02284 //
02285 // ArrayOf_PASN_OctetString
02286 //
02287 
02288 class H248_ArrayOf_PASN_OctetString : public PASN_Array
02289 {
02290 #ifndef PASN_LEANANDMEAN
02291     PCLASSINFO(H248_ArrayOf_PASN_OctetString, PASN_Array);
02292 #endif
02293   public:
02294     H248_ArrayOf_PASN_OctetString(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02295 
02296     PASN_Object * CreateObject() const;
02297     PASN_OctetString & operator[](PINDEX i) const;
02298     PObject * Clone() const;
02299 };
02300 
02301 
02302 //
02303 // PropertyParm_extraInfo
02304 //
02305 
02306 class H248_Relation;
02307 
02308 class H248_PropertyParm_extraInfo : public PASN_Choice
02309 {
02310 #ifndef PASN_LEANANDMEAN
02311     PCLASSINFO(H248_PropertyParm_extraInfo, PASN_Choice);
02312 #endif
02313   public:
02314     H248_PropertyParm_extraInfo(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02315 
02316     enum Choices {
02317       e_relation,
02318       e_range,
02319       e_sublist
02320     };
02321 
02322 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02323     operator H248_Relation &() const;
02324 #else
02325     operator H248_Relation &();
02326     operator const H248_Relation &() const;
02327 #endif
02328 
02329     PBoolean CreateObject();
02330     PObject * Clone() const;
02331 };
02332 
02333 
02334 //
02335 // ArrayOf_PropertyGroup
02336 //
02337 
02338 class H248_PropertyGroup;
02339 
02340 class H248_ArrayOf_PropertyGroup : public PASN_Array
02341 {
02342 #ifndef PASN_LEANANDMEAN
02343     PCLASSINFO(H248_ArrayOf_PropertyGroup, PASN_Array);
02344 #endif
02345   public:
02346     H248_ArrayOf_PropertyGroup(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02347 
02348     PASN_Object * CreateObject() const;
02349     H248_PropertyGroup & operator[](PINDEX i) const;
02350     PObject * Clone() const;
02351 };
02352 
02353 
02354 //
02355 // ArrayOf_TerminationID
02356 //
02357 
02358 class H248_TerminationID;
02359 
02360 class H248_ArrayOf_TerminationID : public PASN_Array
02361 {
02362 #ifndef PASN_LEANANDMEAN
02363     PCLASSINFO(H248_ArrayOf_TerminationID, PASN_Array);
02364 #endif
02365   public:
02366     H248_ArrayOf_TerminationID(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02367 
02368     PASN_Object * CreateObject() const;
02369     H248_TerminationID & operator[](PINDEX i) const;
02370     PObject * Clone() const;
02371 };
02372 
02373 
02374 //
02375 // ArrayOf_RequestedEvent
02376 //
02377 
02378 class H248_RequestedEvent;
02379 
02380 class H248_ArrayOf_RequestedEvent : public PASN_Array
02381 {
02382 #ifndef PASN_LEANANDMEAN
02383     PCLASSINFO(H248_ArrayOf_RequestedEvent, PASN_Array);
02384 #endif
02385   public:
02386     H248_ArrayOf_RequestedEvent(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02387 
02388     PASN_Object * CreateObject() const;
02389     H248_RequestedEvent & operator[](PINDEX i) const;
02390     PObject * Clone() const;
02391 };
02392 
02393 
02394 //
02395 // ArrayOf_SecondRequestedEvent
02396 //
02397 
02398 class H248_SecondRequestedEvent;
02399 
02400 class H248_ArrayOf_SecondRequestedEvent : public PASN_Array
02401 {
02402 #ifndef PASN_LEANANDMEAN
02403     PCLASSINFO(H248_ArrayOf_SecondRequestedEvent, PASN_Array);
02404 #endif
02405   public:
02406     H248_ArrayOf_SecondRequestedEvent(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02407 
02408     PASN_Object * CreateObject() const;
02409     H248_SecondRequestedEvent & operator[](PINDEX i) const;
02410     PObject * Clone() const;
02411 };
02412 
02413 
02414 //
02415 // ArrayOf_Signal
02416 //
02417 
02418 class H248_Signal;
02419 
02420 class H248_ArrayOf_Signal : public PASN_Array
02421 {
02422 #ifndef PASN_LEANANDMEAN
02423     PCLASSINFO(H248_ArrayOf_Signal, PASN_Array);
02424 #endif
02425   public:
02426     H248_ArrayOf_Signal(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02427 
02428     PASN_Object * CreateObject() const;
02429     H248_Signal & operator[](PINDEX i) const;
02430     PObject * Clone() const;
02431 };
02432 
02433 
02434 //
02435 // ArrayOf_SigParameter
02436 //
02437 
02438 class H248_SigParameter;
02439 
02440 class H248_ArrayOf_SigParameter : public PASN_Array
02441 {
02442 #ifndef PASN_LEANANDMEAN
02443     PCLASSINFO(H248_ArrayOf_SigParameter, PASN_Array);
02444 #endif
02445   public:
02446     H248_ArrayOf_SigParameter(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02447 
02448     PASN_Object * CreateObject() const;
02449     H248_SigParameter & operator[](PINDEX i) const;
02450     PObject * Clone() const;
02451 };
02452 
02453 
02454 //
02455 // SigParameter_extraInfo
02456 //
02457 
02458 class H248_Relation;
02459 
02460 class H248_SigParameter_extraInfo : public PASN_Choice
02461 {
02462 #ifndef PASN_LEANANDMEAN
02463     PCLASSINFO(H248_SigParameter_extraInfo, PASN_Choice);
02464 #endif
02465   public:
02466     H248_SigParameter_extraInfo(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02467 
02468     enum Choices {
02469       e_relation,
02470       e_range,
02471       e_sublist
02472     };
02473 
02474 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02475     operator H248_Relation &() const;
02476 #else
02477     operator H248_Relation &();
02478     operator const H248_Relation &() const;
02479 #endif
02480 
02481     PBoolean CreateObject();
02482     PObject * Clone() const;
02483 };
02484 
02485 
02486 //
02487 // ArrayOf_ModemType
02488 //
02489 
02490 class H248_ModemType;
02491 
02492 class H248_ArrayOf_ModemType : public PASN_Array
02493 {
02494 #ifndef PASN_LEANANDMEAN
02495     PCLASSINFO(H248_ArrayOf_ModemType, PASN_Array);
02496 #endif
02497   public:
02498     H248_ArrayOf_ModemType(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02499 
02500     PASN_Object * CreateObject() const;
02501     H248_ModemType & operator[](PINDEX i) const;
02502     PObject * Clone() const;
02503 };
02504 
02505 
02506 //
02507 // ArrayOf_Transaction
02508 //
02509 
02510 class H248_Transaction;
02511 
02512 class H248_ArrayOf_Transaction : public PASN_Array
02513 {
02514 #ifndef PASN_LEANANDMEAN
02515     PCLASSINFO(H248_ArrayOf_Transaction, PASN_Array);
02516 #endif
02517   public:
02518     H248_ArrayOf_Transaction(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02519 
02520     PASN_Object * CreateObject() const;
02521     H248_Transaction & operator[](PINDEX i) const;
02522     PObject * Clone() const;
02523 };
02524 
02525 
02526 //
02527 // ArrayOf_ActionReply
02528 //
02529 
02530 class H248_ActionReply;
02531 
02532 class H248_ArrayOf_ActionReply : public PASN_Array
02533 {
02534 #ifndef PASN_LEANANDMEAN
02535     PCLASSINFO(H248_ArrayOf_ActionReply, PASN_Array);
02536 #endif
02537   public:
02538     H248_ArrayOf_ActionReply(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02539 
02540     PASN_Object * CreateObject() const;
02541     H248_ActionReply & operator[](PINDEX i) const;
02542     PObject * Clone() const;
02543 };
02544 
02545 
02546 //
02547 // ArrayOf_IndAudStreamDescriptor
02548 //
02549 
02550 class H248_IndAudStreamDescriptor;
02551 
02552 class H248_ArrayOf_IndAudStreamDescriptor : public PASN_Array
02553 {
02554 #ifndef PASN_LEANANDMEAN
02555     PCLASSINFO(H248_ArrayOf_IndAudStreamDescriptor, PASN_Array);
02556 #endif
02557   public:
02558     H248_ArrayOf_IndAudStreamDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02559 
02560     PASN_Object * CreateObject() const;
02561     H248_IndAudStreamDescriptor & operator[](PINDEX i) const;
02562     PObject * Clone() const;
02563 };
02564 
02565 
02566 //
02567 // ArrayOf_StreamDescriptor
02568 //
02569 
02570 class H248_StreamDescriptor;
02571 
02572 class H248_ArrayOf_StreamDescriptor : public PASN_Array
02573 {
02574 #ifndef PASN_LEANANDMEAN
02575     PCLASSINFO(H248_ArrayOf_StreamDescriptor, PASN_Array);
02576 #endif
02577   public:
02578     H248_ArrayOf_StreamDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02579 
02580     PASN_Object * CreateObject() const;
02581     H248_StreamDescriptor & operator[](PINDEX i) const;
02582     PObject * Clone() const;
02583 };
02584 
02585 
02586 //
02587 // AuthenticationHeader
02588 //
02589 
02590 class H248_AuthenticationHeader : public PASN_Sequence
02591 {
02592 #ifndef PASN_LEANANDMEAN
02593     PCLASSINFO(H248_AuthenticationHeader, PASN_Sequence);
02594 #endif
02595   public:
02596     H248_AuthenticationHeader(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02597 
02598     H248_SecurityParmIndex m_secParmIndex;
02599     H248_SequenceNum m_seqNum;
02600     H248_AuthData m_ad;
02601 
02602     PINDEX GetDataLength() const;
02603     PBoolean Decode(PASN_Stream & strm);
02604     void Encode(PASN_Stream & strm) const;
02605 #ifndef PASN_NOPRINTON
02606     void PrintOn(ostream & strm) const;
02607 #endif
02608     Comparison Compare(const PObject & obj) const;
02609     PObject * Clone() const;
02610 };
02611 
02612 
02613 //
02614 // Message
02615 //
02616 
02617 class H248_Message : public PASN_Sequence
02618 {
02619 #ifndef PASN_LEANANDMEAN
02620     PCLASSINFO(H248_Message, PASN_Sequence);
02621 #endif
02622   public:
02623     H248_Message(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02624 
02625     PASN_Integer m_version;
02626     H248_MId m_mId;
02627     H248_Message_messageBody m_messageBody;
02628 
02629     PINDEX GetDataLength() const;
02630     PBoolean Decode(PASN_Stream & strm);
02631     void Encode(PASN_Stream & strm) const;
02632 #ifndef PASN_NOPRINTON
02633     void PrintOn(ostream & strm) const;
02634 #endif
02635     Comparison Compare(const PObject & obj) const;
02636     PObject * Clone() const;
02637 };
02638 
02639 
02640 //
02641 // TransactionRequest
02642 //
02643 
02644 class H248_TransactionRequest : public PASN_Sequence
02645 {
02646 #ifndef PASN_LEANANDMEAN
02647     PCLASSINFO(H248_TransactionRequest, PASN_Sequence);
02648 #endif
02649   public:
02650     H248_TransactionRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02651 
02652     H248_TransactionId m_transactionId;
02653     H248_ArrayOf_ActionRequest m_actions;
02654 
02655     PINDEX GetDataLength() const;
02656     PBoolean Decode(PASN_Stream & strm);
02657     void Encode(PASN_Stream & strm) const;
02658 #ifndef PASN_NOPRINTON
02659     void PrintOn(ostream & strm) const;
02660 #endif
02661     Comparison Compare(const PObject & obj) const;
02662     PObject * Clone() const;
02663 };
02664 
02665 
02666 //
02667 // TransactionReply
02668 //
02669 
02670 class H248_TransactionReply : public PASN_Sequence
02671 {
02672 #ifndef PASN_LEANANDMEAN
02673     PCLASSINFO(H248_TransactionReply, PASN_Sequence);
02674 #endif
02675   public:
02676     H248_TransactionReply(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02677 
02678     enum OptionalFields {
02679       e_immAckRequired
02680     };
02681 
02682     H248_TransactionId m_transactionId;
02683     PASN_Null m_immAckRequired;
02684     H248_TransactionReply_transactionResult m_transactionResult;
02685 
02686     PINDEX GetDataLength() const;
02687     PBoolean Decode(PASN_Stream & strm);
02688     void Encode(PASN_Stream & strm) const;
02689 #ifndef PASN_NOPRINTON
02690     void PrintOn(ostream & strm) const;
02691 #endif
02692     Comparison Compare(const PObject & obj) const;
02693     PObject * Clone() const;
02694 };
02695 
02696 
02697 //
02698 // ErrorDescriptor
02699 //
02700 
02701 class H248_ErrorDescriptor : public PASN_Sequence
02702 {
02703 #ifndef PASN_LEANANDMEAN
02704     PCLASSINFO(H248_ErrorDescriptor, PASN_Sequence);
02705 #endif
02706   public:
02707     H248_ErrorDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02708 
02709     enum OptionalFields {
02710       e_errorText
02711     };
02712 
02713     H248_ErrorCode m_errorCode;
02714     H248_ErrorText m_errorText;
02715 
02716     PINDEX GetDataLength() const;
02717     PBoolean Decode(PASN_Stream & strm);
02718     void Encode(PASN_Stream & strm) const;
02719 #ifndef PASN_NOPRINTON
02720     void PrintOn(ostream & strm) const;
02721 #endif
02722     Comparison Compare(const PObject & obj) const;
02723     PObject * Clone() const;
02724 };
02725 
02726 
02727 //
02728 // ContextRequest
02729 //
02730 
02731 class H248_ContextRequest : public PASN_Sequence
02732 {
02733 #ifndef PASN_LEANANDMEAN
02734     PCLASSINFO(H248_ContextRequest, PASN_Sequence);
02735 #endif
02736   public:
02737     H248_ContextRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02738 
02739     enum OptionalFields {
02740       e_priority,
02741       e_emergency,
02742       e_topologyReq
02743     };
02744 
02745     PASN_Integer m_priority;
02746     PASN_Boolean m_emergency;
02747     H248_ArrayOf_TopologyRequest m_topologyReq;
02748 
02749     PINDEX GetDataLength() const;
02750     PBoolean Decode(PASN_Stream & strm);
02751     void Encode(PASN_Stream & strm) const;
02752 #ifndef PASN_NOPRINTON
02753     void PrintOn(ostream & strm) const;
02754 #endif
02755     Comparison Compare(const PObject & obj) const;
02756     PObject * Clone() const;
02757 };
02758 
02759 
02760 //
02761 // CommandRequest
02762 //
02763 
02764 class H248_CommandRequest : public PASN_Sequence
02765 {
02766 #ifndef PASN_LEANANDMEAN
02767     PCLASSINFO(H248_CommandRequest, PASN_Sequence);
02768 #endif
02769   public:
02770     H248_CommandRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02771 
02772     enum OptionalFields {
02773       e_optional,
02774       e_wildcardReturn
02775     };
02776 
02777     H248_Command m_command;
02778     PASN_Null m_optional;
02779     PASN_Null m_wildcardReturn;
02780 
02781     PINDEX GetDataLength() const;
02782     PBoolean Decode(PASN_Stream & strm);
02783     void Encode(PASN_Stream & strm) const;
02784 #ifndef PASN_NOPRINTON
02785     void PrintOn(ostream & strm) const;
02786 #endif
02787     Comparison Compare(const PObject & obj) const;
02788     PObject * Clone() const;
02789 };
02790 
02791 
02792 //
02793 // AmmRequest
02794 //
02795 
02796 class H248_AmmRequest : public PASN_Sequence
02797 {
02798 #ifndef PASN_LEANANDMEAN
02799     PCLASSINFO(H248_AmmRequest, PASN_Sequence);
02800 #endif
02801   public:
02802     H248_AmmRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02803 
02804     H248_TerminationIDList m_terminationID;
02805     H248_ArrayOf_AmmDescriptor m_descriptors;
02806 
02807     PINDEX GetDataLength() const;
02808     PBoolean Decode(PASN_Stream & strm);
02809     void Encode(PASN_Stream & strm) const;
02810 #ifndef PASN_NOPRINTON
02811     void PrintOn(ostream & strm) const;
02812 #endif
02813     Comparison Compare(const PObject & obj) const;
02814     PObject * Clone() const;
02815 };
02816 
02817 
02818 //
02819 // AmmsReply
02820 //
02821 
02822 class H248_AmmsReply : public PASN_Sequence
02823 {
02824 #ifndef PASN_LEANANDMEAN
02825     PCLASSINFO(H248_AmmsReply, PASN_Sequence);
02826 #endif
02827   public:
02828     H248_AmmsReply(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02829 
02830     enum OptionalFields {
02831       e_terminationAudit
02832     };
02833 
02834     H248_TerminationIDList m_terminationID;
02835     H248_TerminationAudit m_terminationAudit;
02836 
02837     PINDEX GetDataLength() const;
02838     PBoolean Decode(PASN_Stream & strm);
02839     void Encode(PASN_Stream & strm) const;
02840 #ifndef PASN_NOPRINTON
02841     void PrintOn(ostream & strm) const;
02842 #endif
02843     Comparison Compare(const PObject & obj) const;
02844     PObject * Clone() const;
02845 };
02846 
02847 
02848 //
02849 // AuditDescriptor
02850 //
02851 
02852 class H248_AuditDescriptor : public PASN_Sequence
02853 {
02854 #ifndef PASN_LEANANDMEAN
02855     PCLASSINFO(H248_AuditDescriptor, PASN_Sequence);
02856 #endif
02857   public:
02858     H248_AuditDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02859 
02860     enum OptionalFields {
02861       e_auditToken,
02862       e_auditPropertyToken
02863     };
02864 
02865     PASN_BitString m_auditToken;
02866     H248_ArrayOf_IndAuditParameter m_auditPropertyToken;
02867 
02868     PINDEX GetDataLength() const;
02869     PBoolean Decode(PASN_Stream & strm);
02870     void Encode(PASN_Stream & strm) const;
02871 #ifndef PASN_NOPRINTON
02872     void PrintOn(ostream & strm) const;
02873 #endif
02874     Comparison Compare(const PObject & obj) const;
02875     PObject * Clone() const;
02876 };
02877 
02878 
02879 //
02880 // IndAudLocalControlDescriptor
02881 //
02882 
02883 class H248_IndAudLocalControlDescriptor : public PASN_Sequence
02884 {
02885 #ifndef PASN_LEANANDMEAN
02886     PCLASSINFO(H248_IndAudLocalControlDescriptor, PASN_Sequence);
02887 #endif
02888   public:
02889     H248_IndAudLocalControlDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02890 
02891     enum OptionalFields {
02892       e_streamMode,
02893       e_reserveValue,
02894       e_reserveGroup,
02895       e_propertyParms
02896     };
02897 
02898     PASN_Null m_streamMode;
02899     PASN_Null m_reserveValue;
02900     PASN_Null m_reserveGroup;
02901     H248_ArrayOf_IndAudPropertyParm m_propertyParms;
02902 
02903     PINDEX GetDataLength() const;
02904     PBoolean Decode(PASN_Stream & strm);
02905     void Encode(PASN_Stream & strm) const;
02906 #ifndef PASN_NOPRINTON
02907     void PrintOn(ostream & strm) const;
02908 #endif
02909     Comparison Compare(const PObject & obj) const;
02910     PObject * Clone() const;
02911 };
02912 
02913 
02914 //
02915 // IndAudPropertyParm
02916 //
02917 
02918 class H248_IndAudPropertyParm : public PASN_Sequence
02919 {
02920 #ifndef PASN_LEANANDMEAN
02921     PCLASSINFO(H248_IndAudPropertyParm, PASN_Sequence);
02922 #endif
02923   public:
02924     H248_IndAudPropertyParm(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02925 
02926     H248_PkgdName m_name;
02927 
02928     PINDEX GetDataLength() const;
02929     PBoolean Decode(PASN_Stream & strm);
02930     void Encode(PASN_Stream & strm) const;
02931 #ifndef PASN_NOPRINTON
02932     void PrintOn(ostream & strm) const;
02933 #endif
02934     Comparison Compare(const PObject & obj) const;
02935     PObject * Clone() const;
02936 };
02937 
02938 
02939 //
02940 // IndAudLocalRemoteDescriptor
02941 //
02942 
02943 class H248_IndAudLocalRemoteDescriptor : public PASN_Sequence
02944 {
02945 #ifndef PASN_LEANANDMEAN
02946     PCLASSINFO(H248_IndAudLocalRemoteDescriptor, PASN_Sequence);
02947 #endif
02948   public:
02949     H248_IndAudLocalRemoteDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02950 
02951     enum OptionalFields {
02952       e_propGroupID
02953     };
02954 
02955     PASN_Integer m_propGroupID;
02956     H248_IndAudPropertyGroup m_propGrps;
02957 
02958     PINDEX GetDataLength() const;
02959     PBoolean Decode(PASN_Stream & strm);
02960     void Encode(PASN_Stream & strm) const;
02961 #ifndef PASN_NOPRINTON
02962     void PrintOn(ostream & strm) const;
02963 #endif
02964     Comparison Compare(const PObject & obj) const;
02965     PObject * Clone() const;
02966 };
02967 
02968 
02969 //
02970 // IndAudTerminationStateDescriptor
02971 //
02972 
02973 class H248_IndAudTerminationStateDescriptor : public PASN_Sequence
02974 {
02975 #ifndef PASN_LEANANDMEAN
02976     PCLASSINFO(H248_IndAudTerminationStateDescriptor, PASN_Sequence);
02977 #endif
02978   public:
02979     H248_IndAudTerminationStateDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02980 
02981     enum OptionalFields {
02982       e_eventBufferControl,
02983       e_serviceState
02984     };
02985 
02986     H248_ArrayOf_IndAudPropertyParm m_propertyParms;
02987     PASN_Null m_eventBufferControl;
02988     PASN_Null m_serviceState;
02989 
02990     PINDEX GetDataLength() const;
02991     PBoolean Decode(PASN_Stream & strm);
02992     void Encode(PASN_Stream & strm) const;
02993 #ifndef PASN_NOPRINTON
02994     void PrintOn(ostream & strm) const;
02995 #endif
02996     Comparison Compare(const PObject & obj) const;
02997     PObject * Clone() const;
02998 };
02999 
03000 
03001 //
03002 // IndAudEventsDescriptor
03003 //
03004 
03005 class H248_IndAudEventsDescriptor : public PASN_Sequence
03006 {
03007 #ifndef PASN_LEANANDMEAN
03008     PCLASSINFO(H248_IndAudEventsDescriptor, PASN_Sequence);
03009 #endif
03010   public:
03011     H248_IndAudEventsDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03012 
03013     enum OptionalFields {
03014       e_requestID,
03015       e_streamID
03016     };
03017 
03018     H248_RequestID m_requestID;
03019     H248_PkgdName m_pkgdName;
03020     H248_StreamID m_streamID;
03021 
03022     PINDEX GetDataLength() const;
03023     PBoolean Decode(PASN_Stream & strm);
03024     void Encode(PASN_Stream & strm) const;
03025 #ifndef PASN_NOPRINTON
03026     void PrintOn(ostream & strm) const;
03027 #endif
03028     Comparison Compare(const PObject & obj) const;
03029     PObject * Clone() const;
03030 };
03031 
03032 
03033 //
03034 // IndAudEventBufferDescriptor
03035 //
03036 
03037 class H248_IndAudEventBufferDescriptor : public PASN_Sequence
03038 {
03039 #ifndef PASN_LEANANDMEAN
03040     PCLASSINFO(H248_IndAudEventBufferDescriptor, PASN_Sequence);
03041 #endif
03042   public:
03043     H248_IndAudEventBufferDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03044 
03045     enum OptionalFields {
03046       e_streamID
03047     };
03048 
03049     H248_PkgdName m_eventName;
03050     H248_StreamID m_streamID;
03051 
03052     PINDEX GetDataLength() const;
03053     PBoolean Decode(PASN_Stream & strm);
03054     void Encode(PASN_Stream & strm) const;
03055 #ifndef PASN_NOPRINTON
03056     void PrintOn(ostream & strm) const;
03057 #endif
03058     Comparison Compare(const PObject & obj) const;
03059     PObject * Clone() const;
03060 };
03061 
03062 
03063 //
03064 // IndAudSignal
03065 //
03066 
03067 class H248_IndAudSignal : public PASN_Sequence
03068 {
03069 #ifndef PASN_LEANANDMEAN
03070     PCLASSINFO(H248_IndAudSignal, PASN_Sequence);
03071 #endif
03072   public:
03073     H248_IndAudSignal(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03074 
03075     enum OptionalFields {
03076       e_streamID
03077     };
03078 
03079     H248_PkgdName m_signalName;
03080     H248_StreamID m_streamID;
03081 
03082     PINDEX GetDataLength() const;
03083     PBoolean Decode(PASN_Stream & strm);
03084     void Encode(PASN_Stream & strm) const;
03085 #ifndef PASN_NOPRINTON
03086     void PrintOn(ostream & strm) const;
03087 #endif
03088     Comparison Compare(const PObject & obj) const;
03089     PObject * Clone() const;
03090 };
03091 
03092 
03093 //
03094 // IndAudDigitMapDescriptor
03095 //
03096 
03097 class H248_IndAudDigitMapDescriptor : public PASN_Sequence
03098 {
03099 #ifndef PASN_LEANANDMEAN
03100     PCLASSINFO(H248_IndAudDigitMapDescriptor, PASN_Sequence);
03101 #endif
03102   public:
03103     H248_IndAudDigitMapDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03104 
03105     enum OptionalFields {
03106       e_digitMapName
03107     };
03108 
03109     H248_DigitMapName m_digitMapName;
03110 
03111     PINDEX GetDataLength() const;
03112     PBoolean Decode(PASN_Stream & strm);
03113     void Encode(PASN_Stream & strm) const;
03114 #ifndef PASN_NOPRINTON
03115     void PrintOn(ostream & strm) const;
03116 #endif
03117     Comparison Compare(const PObject & obj) const;
03118     PObject * Clone() const;
03119 };
03120 
03121 
03122 //
03123 // IndAudStatisticsDescriptor
03124 //
03125 
03126 class H248_IndAudStatisticsDescriptor : public PASN_Sequence
03127 {
03128 #ifndef PASN_LEANANDMEAN
03129     PCLASSINFO(H248_IndAudStatisticsDescriptor, PASN_Sequence);
03130 #endif
03131   public:
03132     H248_IndAudStatisticsDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03133 
03134     H248_PkgdName m_statName;
03135 
03136     PINDEX GetDataLength() const;
03137     PBoolean Decode(PASN_Stream & strm);
03138     void Encode(PASN_Stream & strm) const;
03139 #ifndef PASN_NOPRINTON
03140     void PrintOn(ostream & strm) const;
03141 #endif
03142     Comparison Compare(const PObject & obj) const;
03143     PObject * Clone() const;
03144 };
03145 
03146 
03147 //
03148 // IndAudPackagesDescriptor
03149 //
03150 
03151 class H248_IndAudPackagesDescriptor : public PASN_Sequence
03152 {
03153 #ifndef PASN_LEANANDMEAN
03154     PCLASSINFO(H248_IndAudPackagesDescriptor, PASN_Sequence);
03155 #endif
03156   public:
03157     H248_IndAudPackagesDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03158 
03159     H248_Name m_packageName;
03160     PASN_Integer m_packageVersion;
03161 
03162     PINDEX GetDataLength() const;
03163     PBoolean Decode(PASN_Stream & strm);
03164     void Encode(PASN_Stream & strm) const;
03165 #ifndef PASN_NOPRINTON
03166     void PrintOn(ostream & strm) const;
03167 #endif
03168     Comparison Compare(const PObject & obj) const;
03169     PObject * Clone() const;
03170 };
03171 
03172 
03173 //
03174 // NotifyReply
03175 //
03176 
03177 class H248_NotifyReply : public PASN_Sequence
03178 {
03179 #ifndef PASN_LEANANDMEAN
03180     PCLASSINFO(H248_NotifyReply, PASN_Sequence);
03181 #endif
03182   public:
03183     H248_NotifyReply(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03184 
03185     enum OptionalFields {
03186       e_errorDescriptor
03187     };
03188 
03189     H248_TerminationIDList m_terminationID;
03190     H248_ErrorDescriptor m_errorDescriptor;
03191 
03192     PINDEX GetDataLength() const;
03193     PBoolean Decode(PASN_Stream & strm);
03194     void Encode(PASN_Stream & strm) const;
03195 #ifndef PASN_NOPRINTON
03196     void PrintOn(ostream & strm) const;
03197 #endif
03198     Comparison Compare(const PObject & obj) const;
03199     PObject * Clone() const;
03200 };
03201 
03202 
03203 //
03204 // ObservedEventsDescriptor
03205 //
03206 
03207 class H248_ObservedEventsDescriptor : public PASN_Sequence
03208 {
03209 #ifndef PASN_LEANANDMEAN
03210     PCLASSINFO(H248_ObservedEventsDescriptor, PASN_Sequence);
03211 #endif
03212   public:
03213     H248_ObservedEventsDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03214 
03215     H248_RequestID m_requestId;
03216     H248_ArrayOf_ObservedEvent m_observedEventLst;
03217 
03218     PINDEX GetDataLength() const;
03219     PBoolean Decode(PASN_Stream & strm);
03220     void Encode(PASN_Stream & strm) const;
03221 #ifndef PASN_NOPRINTON
03222     void PrintOn(ostream & strm) const;
03223 #endif
03224     Comparison Compare(const PObject & obj) const;
03225     PObject * Clone() const;
03226 };
03227 
03228 
03229 //
03230 // EventName
03231 //
03232 
03233 class H248_EventName : public H248_PkgdName
03234 {
03235 #ifndef PASN_LEANANDMEAN
03236     PCLASSINFO(H248_EventName, H248_PkgdName);
03237 #endif
03238   public:
03239     H248_EventName(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
03240 
03241     H248_EventName(const char * v);
03242     H248_EventName(const PString & v);
03243     H248_EventName(const PBYTEArray & v);
03244 
03245     H248_EventName & operator=(const char * v);
03246     H248_EventName & operator=(const PString & v);
03247     H248_EventName & operator=(const PBYTEArray & v);
03248     PObject * Clone() const;
03249 };
03250 
03251 
03252 //
03253 // EventParameter
03254 //
03255 
03256 class H248_EventParameter : public PASN_Sequence
03257 {
03258 #ifndef PASN_LEANANDMEAN
03259     PCLASSINFO(H248_EventParameter, PASN_Sequence);
03260 #endif
03261   public:
03262     H248_EventParameter(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03263 
03264     enum OptionalFields {
03265       e_extraInfo
03266     };
03267 
03268     H248_Name m_eventParameterName;
03269     H248_Value m_value;
03270     H248_EventParameter_extraInfo m_extraInfo;
03271 
03272     PINDEX GetDataLength() const;
03273     PBoolean Decode(PASN_Stream & strm);
03274     void Encode(PASN_Stream & strm) const;
03275 #ifndef PASN_NOPRINTON
03276     void PrintOn(ostream & strm) const;
03277 #endif
03278     Comparison Compare(const PObject & obj) const;
03279     PObject * Clone() const;
03280 };
03281 
03282 
03283 //
03284 // ServiceChangeReply
03285 //
03286 
03287 class H248_ServiceChangeReply : public PASN_Sequence
03288 {
03289 #ifndef PASN_LEANANDMEAN
03290     PCLASSINFO(H248_ServiceChangeReply, PASN_Sequence);
03291 #endif
03292   public:
03293     H248_ServiceChangeReply(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03294 
03295     H248_TerminationIDList m_terminationID;
03296     H248_ServiceChangeResult m_serviceChangeResult;
03297 
03298     PINDEX GetDataLength() const;
03299     PBoolean Decode(PASN_Stream & strm);
03300     void Encode(PASN_Stream & strm) const;
03301 #ifndef PASN_NOPRINTON
03302     void PrintOn(ostream & strm) const;
03303 #endif
03304     Comparison Compare(const PObject & obj) const;
03305     PObject * Clone() const;
03306 };
03307 
03308 
03309 //
03310 // TerminationID
03311 //
03312 
03313 class H248_TerminationID : public PASN_Sequence
03314 {
03315 #ifndef PASN_LEANANDMEAN
03316     PCLASSINFO(H248_TerminationID, PASN_Sequence);
03317 #endif
03318   public:
03319     H248_TerminationID(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03320 
03321     H248_ArrayOf_WildcardField m_wildcard;
03322     PASN_OctetString m_id;
03323 
03324     PINDEX GetDataLength() const;
03325     PBoolean Decode(PASN_Stream & strm);
03326     void Encode(PASN_Stream & strm) const;
03327 #ifndef PASN_NOPRINTON
03328     void PrintOn(ostream & strm) const;
03329 #endif
03330     Comparison Compare(const PObject & obj) const;
03331     PObject * Clone() const;
03332 };
03333 
03334 
03335 //
03336 // LocalControlDescriptor
03337 //
03338 
03339 class H248_LocalControlDescriptor : public PASN_Sequence
03340 {
03341 #ifndef PASN_LEANANDMEAN
03342     PCLASSINFO(H248_LocalControlDescriptor, PASN_Sequence);
03343 #endif
03344   public:
03345     H248_LocalControlDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03346 
03347     enum OptionalFields {
03348       e_streamMode,
03349       e_reserveValue,
03350       e_reserveGroup
03351     };
03352 
03353     H248_StreamMode m_streamMode;
03354     PASN_Boolean m_reserveValue;
03355     PASN_Boolean m_reserveGroup;
03356     H248_ArrayOf_PropertyParm m_propertyParms;
03357 
03358     PINDEX GetDataLength() const;
03359     PBoolean Decode(PASN_Stream & strm);
03360     void Encode(PASN_Stream & strm) const;
03361 #ifndef PASN_NOPRINTON
03362     void PrintOn(ostream & strm) const;
03363 #endif
03364     Comparison Compare(const PObject & obj) const;
03365     PObject * Clone() const;
03366 };
03367 
03368 
03369 //
03370 // PropertyParm
03371 //
03372 
03373 class H248_PropertyParm : public PASN_Sequence
03374 {
03375 #ifndef PASN_LEANANDMEAN
03376     PCLASSINFO(H248_PropertyParm, PASN_Sequence);
03377 #endif
03378   public:
03379     H248_PropertyParm(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03380 
03381     enum OptionalFields {
03382       e_extraInfo
03383     };
03384 
03385     H248_PkgdName m_name;
03386     H248_ArrayOf_PASN_OctetString m_value;
03387     H248_PropertyParm_extraInfo m_extraInfo;
03388 
03389     PINDEX GetDataLength() const;
03390     PBoolean Decode(PASN_Stream & strm);
03391     void Encode(PASN_Stream & strm) const;
03392 #ifndef PASN_NOPRINTON
03393     void PrintOn(ostream & strm) const;
03394 #endif
03395     Comparison Compare(const PObject & obj) const;
03396     PObject * Clone() const;
03397 };
03398 
03399 
03400 //
03401 // LocalRemoteDescriptor
03402 //
03403 
03404 class H248_LocalRemoteDescriptor : public PASN_Sequence
03405 {
03406 #ifndef PASN_LEANANDMEAN
03407     PCLASSINFO(H248_LocalRemoteDescriptor, PASN_Sequence);
03408 #endif
03409   public:
03410     H248_LocalRemoteDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03411 
03412     H248_ArrayOf_PropertyGroup m_propGrps;
03413 
03414     PINDEX GetDataLength() const;
03415     PBoolean Decode(PASN_Stream & strm);
03416     void Encode(PASN_Stream & strm) const;
03417 #ifndef PASN_NOPRINTON
03418     void PrintOn(ostream & strm) const;
03419 #endif
03420     Comparison Compare(const PObject & obj) const;
03421     PObject * Clone() const;
03422 };
03423 
03424 
03425 //
03426 // TerminationStateDescriptor
03427 //
03428 
03429 class H248_TerminationStateDescriptor : public PASN_Sequence
03430 {
03431 #ifndef PASN_LEANANDMEAN
03432     PCLASSINFO(H248_TerminationStateDescriptor, PASN_Sequence);
03433 #endif
03434   public:
03435     H248_TerminationStateDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03436 
03437     enum OptionalFields {
03438       e_eventBufferControl,
03439       e_serviceState
03440     };
03441 
03442     H248_ArrayOf_PropertyParm m_propertyParms;
03443     H248_EventBufferControl m_eventBufferControl;
03444     H248_ServiceState m_serviceState;
03445 
03446     PINDEX GetDataLength() const;
03447     PBoolean Decode(PASN_Stream & strm);
03448     void Encode(PASN_Stream & strm) const;
03449 #ifndef PASN_NOPRINTON
03450     void PrintOn(ostream & strm) const;
03451 #endif
03452     Comparison Compare(const PObject & obj) const;
03453     PObject * Clone() const;
03454 };
03455 
03456 
03457 //
03458 // EventsDescriptor
03459 //
03460 
03461 class H248_EventsDescriptor : public PASN_Sequence
03462 {
03463 #ifndef PASN_LEANANDMEAN
03464     PCLASSINFO(H248_EventsDescriptor, PASN_Sequence);
03465 #endif
03466   public:
03467     H248_EventsDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03468 
03469     enum OptionalFields {
03470       e_requestID
03471     };
03472 
03473     H248_RequestID m_requestID;
03474     H248_ArrayOf_RequestedEvent m_eventList;
03475 
03476     PINDEX GetDataLength() const;
03477     PBoolean Decode(PASN_Stream & strm);
03478     void Encode(PASN_Stream & strm) const;
03479 #ifndef PASN_NOPRINTON
03480     void PrintOn(ostream & strm) const;
03481 #endif
03482     Comparison Compare(const PObject & obj) const;
03483     PObject * Clone() const;
03484 };
03485 
03486 
03487 //
03488 // SecondEventsDescriptor
03489 //
03490 
03491 class H248_SecondEventsDescriptor : public PASN_Sequence
03492 {
03493 #ifndef PASN_LEANANDMEAN
03494     PCLASSINFO(H248_SecondEventsDescriptor, PASN_Sequence);
03495 #endif
03496   public:
03497     H248_SecondEventsDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03498 
03499     enum OptionalFields {
03500       e_requestID
03501     };
03502 
03503     H248_RequestID m_requestID;
03504     H248_ArrayOf_SecondRequestedEvent m_eventList;
03505 
03506     PINDEX GetDataLength() const;
03507     PBoolean Decode(PASN_Stream & strm);
03508     void Encode(PASN_Stream & strm) const;
03509 #ifndef PASN_NOPRINTON
03510     void PrintOn(ostream & strm) const;
03511 #endif
03512     Comparison Compare(const PObject & obj) const;
03513     PObject * Clone() const;
03514 };
03515 
03516 
03517 //
03518 // SecondRequestedActions
03519 //
03520 
03521 class H248_SecondRequestedActions : public PASN_Sequence
03522 {
03523 #ifndef PASN_LEANANDMEAN
03524     PCLASSINFO(H248_SecondRequestedActions, PASN_Sequence);
03525 #endif
03526   public:
03527     H248_SecondRequestedActions(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03528 
03529     enum OptionalFields {
03530       e_keepActive,
03531       e_eventDM,
03532       e_signalsDescriptor
03533     };
03534 
03535     PASN_Boolean m_keepActive;
03536     H248_EventDM m_eventDM;
03537     H248_SignalsDescriptor m_signalsDescriptor;
03538 
03539     PINDEX GetDataLength() const;
03540     PBoolean Decode(PASN_Stream & strm);
03541     void Encode(PASN_Stream & strm) const;
03542 #ifndef PASN_NOPRINTON
03543     void PrintOn(ostream & strm) const;
03544 #endif
03545     Comparison Compare(const PObject & obj) const;
03546     PObject * Clone() const;
03547 };
03548 
03549 
03550 //
03551 // EventSpec
03552 //
03553 
03554 class H248_EventSpec : public PASN_Sequence
03555 {
03556 #ifndef PASN_LEANANDMEAN
03557     PCLASSINFO(H248_EventSpec, PASN_Sequence);
03558 #endif
03559   public:
03560     H248_EventSpec(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03561 
03562     enum OptionalFields {
03563       e_streamID
03564     };
03565 
03566     H248_EventName m_eventName;
03567     H248_StreamID m_streamID;
03568     H248_ArrayOf_EventParameter m_eventParList;
03569 
03570     PINDEX GetDataLength() const;
03571     PBoolean Decode(PASN_Stream & strm);
03572     void Encode(PASN_Stream & strm) const;
03573 #ifndef PASN_NOPRINTON
03574     void PrintOn(ostream & strm) const;
03575 #endif
03576     Comparison Compare(const PObject & obj) const;
03577     PObject * Clone() const;
03578 };
03579 
03580 
03581 //
03582 // SeqSigList
03583 //
03584 
03585 class H248_SeqSigList : public PASN_Sequence
03586 {
03587 #ifndef PASN_LEANANDMEAN
03588     PCLASSINFO(H248_SeqSigList, PASN_Sequence);
03589 #endif
03590   public:
03591     H248_SeqSigList(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03592 
03593     PASN_Integer m_id;
03594     H248_ArrayOf_Signal m_signalList;
03595 
03596     PINDEX GetDataLength() const;
03597     PBoolean Decode(PASN_Stream & strm);
03598     void Encode(PASN_Stream & strm) const;
03599 #ifndef PASN_NOPRINTON
03600     void PrintOn(ostream & strm) const;
03601 #endif
03602     Comparison Compare(const PObject & obj) const;
03603     PObject * Clone() const;
03604 };
03605 
03606 
03607 //
03608 // Signal
03609 //
03610 
03611 class H248_Signal : public PASN_Sequence
03612 {
03613 #ifndef PASN_LEANANDMEAN
03614     PCLASSINFO(H248_Signal, PASN_Sequence);
03615 #endif
03616   public:
03617     H248_Signal(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03618 
03619     enum OptionalFields {
03620       e_streamID,
03621       e_sigType,
03622       e_duration,
03623       e_notifyCompletion,
03624       e_keepActive
03625     };
03626 
03627     H248_SignalName m_signalName;
03628     H248_StreamID m_streamID;
03629     H248_SignalType m_sigType;
03630     PASN_Integer m_duration;
03631     H248_NotifyCompletion m_notifyCompletion;
03632     PASN_Boolean m_keepActive;
03633     H248_ArrayOf_SigParameter m_sigParList;
03634 
03635     PINDEX GetDataLength() const;
03636     PBoolean Decode(PASN_Stream & strm);
03637     void Encode(PASN_Stream & strm) const;
03638 #ifndef PASN_NOPRINTON
03639     void PrintOn(ostream & strm) const;
03640 #endif
03641     Comparison Compare(const PObject & obj) const;
03642     PObject * Clone() const;
03643 };
03644 
03645 
03646 //
03647 // SigParameter
03648 //
03649 
03650 class H248_SigParameter : public PASN_Sequence
03651 {
03652 #ifndef PASN_LEANANDMEAN
03653     PCLASSINFO(H248_SigParameter, PASN_Sequence);
03654 #endif
03655   public:
03656     H248_SigParameter(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03657 
03658     enum OptionalFields {
03659       e_extraInfo
03660     };
03661 
03662     H248_Name m_sigParameterName;
03663     H248_Value m_value;
03664     H248_SigParameter_extraInfo m_extraInfo;
03665 
03666     PINDEX GetDataLength() const;
03667     PBoolean Decode(PASN_Stream & strm);
03668     void Encode(PASN_Stream & strm) const;
03669 #ifndef PASN_NOPRINTON
03670     void PrintOn(ostream & strm) const;
03671 #endif
03672     Comparison Compare(const PObject & obj) const;
03673     PObject * Clone() const;
03674 };
03675 
03676 
03677 //
03678 // DigitMapDescriptor
03679 //
03680 
03681 class H248_DigitMapDescriptor : public PASN_Sequence
03682 {
03683 #ifndef PASN_LEANANDMEAN
03684     PCLASSINFO(H248_DigitMapDescriptor, PASN_Sequence);
03685 #endif
03686   public:
03687     H248_DigitMapDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03688 
03689     enum OptionalFields {
03690       e_digitMapName,
03691       e_digitMapValue
03692     };
03693 
03694     H248_DigitMapName m_digitMapName;
03695     H248_DigitMapValue m_digitMapValue;
03696 
03697     PINDEX GetDataLength() const;
03698     PBoolean Decode(PASN_Stream & strm);
03699     void Encode(PASN_Stream & strm) const;
03700 #ifndef PASN_NOPRINTON
03701     void PrintOn(ostream & strm) const;
03702 #endif
03703     Comparison Compare(const PObject & obj) const;
03704     PObject * Clone() const;
03705 };
03706 
03707 
03708 //
03709 // ServiceChangeResParm
03710 //
03711 
03712 class H248_ServiceChangeResParm : public PASN_Sequence
03713 {
03714 #ifndef PASN_LEANANDMEAN
03715     PCLASSINFO(H248_ServiceChangeResParm, PASN_Sequence);
03716 #endif
03717   public:
03718     H248_ServiceChangeResParm(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03719 
03720     enum OptionalFields {
03721       e_serviceChangeMgcId,
03722       e_serviceChangeAddress,
03723       e_serviceChangeVersion,
03724       e_serviceChangeProfile,
03725       e_timestamp
03726     };
03727 
03728     H248_MId m_serviceChangeMgcId;
03729     H248_ServiceChangeAddress m_serviceChangeAddress;
03730     PASN_Integer m_serviceChangeVersion;
03731     H248_ServiceChangeProfile m_serviceChangeProfile;
03732     H248_TimeNotation m_timestamp;
03733 
03734     PINDEX GetDataLength() const;
03735     PBoolean Decode(PASN_Stream & strm);
03736     void Encode(PASN_Stream & strm) const;
03737 #ifndef PASN_NOPRINTON
03738     void PrintOn(ostream & strm) const;
03739 #endif
03740     Comparison Compare(const PObject & obj) const;
03741     PObject * Clone() const;
03742 };
03743 
03744 
03745 //
03746 // StatisticsParameter
03747 //
03748 
03749 class H248_StatisticsParameter : public PASN_Sequence
03750 {
03751 #ifndef PASN_LEANANDMEAN
03752     PCLASSINFO(H248_StatisticsParameter, PASN_Sequence);
03753 #endif
03754   public:
03755     H248_StatisticsParameter(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03756 
03757     enum OptionalFields {
03758       e_statValue
03759     };
03760 
03761     H248_PkgdName m_statName;
03762     H248_Value m_statValue;
03763 
03764     PINDEX GetDataLength() const;
03765     PBoolean Decode(PASN_Stream & strm);
03766     void Encode(PASN_Stream & strm) const;
03767 #ifndef PASN_NOPRINTON
03768     void PrintOn(ostream & strm) const;
03769 #endif
03770     Comparison Compare(const PObject & obj) const;
03771     PObject * Clone() const;
03772 };
03773 
03774 
03775 //
03776 // NonStandardData
03777 //
03778 
03779 class H248_NonStandardData : public PASN_Sequence
03780 {
03781 #ifndef PASN_LEANANDMEAN
03782     PCLASSINFO(H248_NonStandardData, PASN_Sequence);
03783 #endif
03784   public:
03785     H248_NonStandardData(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03786 
03787     H248_NonStandardIdentifier m_nonStandardIdentifier;
03788     PASN_OctetString m_data;
03789 
03790     PINDEX GetDataLength() const;
03791     PBoolean Decode(PASN_Stream & strm);
03792     void Encode(PASN_Stream & strm) const;
03793 #ifndef PASN_NOPRINTON
03794     void PrintOn(ostream & strm) const;
03795 #endif
03796     Comparison Compare(const PObject & obj) const;
03797     PObject * Clone() const;
03798 };
03799 
03800 
03801 //
03802 // MegacoMessage
03803 //
03804 
03805 class H248_MegacoMessage : public PASN_Sequence
03806 {
03807 #ifndef PASN_LEANANDMEAN
03808     PCLASSINFO(H248_MegacoMessage, PASN_Sequence);
03809 #endif
03810   public:
03811     H248_MegacoMessage(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03812 
03813     enum OptionalFields {
03814       e_authHeader
03815     };
03816 
03817     H248_AuthenticationHeader m_authHeader;
03818     H248_Message m_mess;
03819 
03820     PINDEX GetDataLength() const;
03821     PBoolean Decode(PASN_Stream & strm);
03822     void Encode(PASN_Stream & strm) const;
03823 #ifndef PASN_NOPRINTON
03824     void PrintOn(ostream & strm) const;
03825 #endif
03826     Comparison Compare(const PObject & obj) const;
03827     PObject * Clone() const;
03828 };
03829 
03830 
03831 //
03832 // ActionRequest
03833 //
03834 
03835 class H248_ActionRequest : public PASN_Sequence
03836 {
03837 #ifndef PASN_LEANANDMEAN
03838     PCLASSINFO(H248_ActionRequest, PASN_Sequence);
03839 #endif
03840   public:
03841     H248_ActionRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03842 
03843     enum OptionalFields {
03844       e_contextRequest,
03845       e_contextAttrAuditReq
03846     };
03847 
03848     H248_ContextID m_contextId;
03849     H248_ContextRequest m_contextRequest;
03850     H248_ContextAttrAuditRequest m_contextAttrAuditReq;
03851     H248_ArrayOf_CommandRequest m_commandRequests;
03852 
03853     PINDEX GetDataLength() const;
03854     PBoolean Decode(PASN_Stream & strm);
03855     void Encode(PASN_Stream & strm) const;
03856 #ifndef PASN_NOPRINTON
03857     void PrintOn(ostream & strm) const;
03858 #endif
03859     Comparison Compare(const PObject & obj) const;
03860     PObject * Clone() const;
03861 };
03862 
03863 
03864 //
03865 // ActionReply
03866 //
03867 
03868 class H248_ActionReply : public PASN_Sequence
03869 {
03870 #ifndef PASN_LEANANDMEAN
03871     PCLASSINFO(H248_ActionReply, PASN_Sequence);
03872 #endif
03873   public:
03874     H248_ActionReply(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03875 
03876     enum OptionalFields {
03877       e_errorDescriptor,
03878       e_contextReply
03879     };
03880 
03881     H248_ContextID m_contextId;
03882     H248_ErrorDescriptor m_errorDescriptor;
03883     H248_ContextRequest m_contextReply;
03884     H248_ArrayOf_CommandReply m_commandReply;
03885 
03886     PINDEX GetDataLength() const;
03887     PBoolean Decode(PASN_Stream & strm);
03888     void Encode(PASN_Stream & strm) const;
03889 #ifndef PASN_NOPRINTON
03890     void PrintOn(ostream & strm) const;
03891 #endif
03892     Comparison Compare(const PObject & obj) const;
03893     PObject * Clone() const;
03894 };
03895 
03896 
03897 //
03898 // TopologyRequest
03899 //
03900 
03901 class H248_TopologyRequest : public PASN_Sequence
03902 {
03903 #ifndef PASN_LEANANDMEAN
03904     PCLASSINFO(H248_TopologyRequest, PASN_Sequence);
03905 #endif
03906   public:
03907     H248_TopologyRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03908 
03909     enum OptionalFields {
03910       e_streamID
03911     };
03912 
03913     H248_TerminationID m_terminationFrom;
03914     H248_TerminationID m_terminationTo;
03915     H248_TopologyRequest_topologyDirection m_topologyDirection;
03916     H248_StreamID m_streamID;
03917 
03918     PINDEX GetDataLength() const;
03919     PBoolean Decode(PASN_Stream & strm);
03920     void Encode(PASN_Stream & strm) const;
03921 #ifndef PASN_NOPRINTON
03922     void PrintOn(ostream & strm) const;
03923 #endif
03924     Comparison Compare(const PObject & obj) const;
03925     PObject * Clone() const;
03926 };
03927 
03928 
03929 //
03930 // SubtractRequest
03931 //
03932 
03933 class H248_SubtractRequest : public PASN_Sequence
03934 {
03935 #ifndef PASN_LEANANDMEAN
03936     PCLASSINFO(H248_SubtractRequest, PASN_Sequence);
03937 #endif
03938   public:
03939     H248_SubtractRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03940 
03941     enum OptionalFields {
03942       e_auditDescriptor
03943     };
03944 
03945     H248_TerminationIDList m_terminationID;
03946     H248_AuditDescriptor m_auditDescriptor;
03947 
03948     PINDEX GetDataLength() const;
03949     PBoolean Decode(PASN_Stream & strm);
03950     void Encode(PASN_Stream & strm) const;
03951 #ifndef PASN_NOPRINTON
03952     void PrintOn(ostream & strm) const;
03953 #endif
03954     Comparison Compare(const PObject & obj) const;
03955     PObject * Clone() const;
03956 };
03957 
03958 
03959 //
03960 // AuditRequest
03961 //
03962 
03963 class H248_AuditRequest : public PASN_Sequence
03964 {
03965 #ifndef PASN_LEANANDMEAN
03966     PCLASSINFO(H248_AuditRequest, PASN_Sequence);
03967 #endif
03968   public:
03969     H248_AuditRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03970 
03971     H248_TerminationID m_terminationID;
03972     H248_AuditDescriptor m_auditDescriptor;
03973 
03974     PINDEX GetDataLength() const;
03975     PBoolean Decode(PASN_Stream & strm);
03976     void Encode(PASN_Stream & strm) const;
03977 #ifndef PASN_NOPRINTON
03978     void PrintOn(ostream & strm) const;
03979 #endif
03980     Comparison Compare(const PObject & obj) const;
03981     PObject * Clone() const;
03982 };
03983 
03984 
03985 //
03986 // AuditResult
03987 //
03988 
03989 class H248_AuditResult : public PASN_Sequence
03990 {
03991 #ifndef PASN_LEANANDMEAN
03992     PCLASSINFO(H248_AuditResult, PASN_Sequence);
03993 #endif
03994   public:
03995     H248_AuditResult(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03996 
03997     H248_TerminationID m_terminationID;
03998     H248_TerminationAudit m_terminationAuditResult;
03999 
04000     PINDEX GetDataLength() const;
04001     PBoolean Decode(PASN_Stream & strm);
04002     void Encode(PASN_Stream & strm) const;
04003 #ifndef PASN_NOPRINTON
04004     void PrintOn(ostream & strm) const;
04005 #endif
04006     Comparison Compare(const PObject & obj) const;
04007     PObject * Clone() const;
04008 };
04009 
04010 
04011 //
04012 // IndAudMediaDescriptor
04013 //
04014 
04015 class H248_IndAudMediaDescriptor : public PASN_Sequence
04016 {
04017 #ifndef PASN_LEANANDMEAN
04018     PCLASSINFO(H248_IndAudMediaDescriptor, PASN_Sequence);
04019 #endif
04020   public:
04021     H248_IndAudMediaDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04022 
04023     enum OptionalFields {
04024       e_termStateDescr,
04025       e_streams
04026     };
04027 
04028     H248_IndAudTerminationStateDescriptor m_termStateDescr;
04029     H248_IndAudMediaDescriptor_streams m_streams;
04030 
04031     PINDEX GetDataLength() const;
04032     PBoolean Decode(PASN_Stream & strm);
04033     void Encode(PASN_Stream & strm) const;
04034 #ifndef PASN_NOPRINTON
04035     void PrintOn(ostream & strm) const;
04036 #endif
04037     Comparison Compare(const PObject & obj) const;
04038     PObject * Clone() const;
04039 };
04040 
04041 
04042 //
04043 // IndAudStreamParms
04044 //
04045 
04046 class H248_IndAudStreamParms : public PASN_Sequence
04047 {
04048 #ifndef PASN_LEANANDMEAN
04049     PCLASSINFO(H248_IndAudStreamParms, PASN_Sequence);
04050 #endif
04051   public:
04052     H248_IndAudStreamParms(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04053 
04054     enum OptionalFields {
04055       e_localControlDescriptor,
04056       e_localDescriptor,
04057       e_remoteDescriptor
04058     };
04059 
04060     H248_IndAudLocalControlDescriptor m_localControlDescriptor;
04061     H248_IndAudLocalRemoteDescriptor m_localDescriptor;
04062     H248_IndAudLocalRemoteDescriptor m_remoteDescriptor;
04063 
04064     PINDEX GetDataLength() const;
04065     PBoolean Decode(PASN_Stream & strm);
04066     void Encode(PASN_Stream & strm) const;
04067 #ifndef PASN_NOPRINTON
04068     void PrintOn(ostream & strm) const;
04069 #endif
04070     Comparison Compare(const PObject & obj) const;
04071     PObject * Clone() const;
04072 };
04073 
04074 
04075 //
04076 // IndAudSeqSigList
04077 //
04078 
04079 class H248_IndAudSeqSigList : public PASN_Sequence
04080 {
04081 #ifndef PASN_LEANANDMEAN
04082     PCLASSINFO(H248_IndAudSeqSigList, PASN_Sequence);
04083 #endif
04084   public:
04085     H248_IndAudSeqSigList(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04086 
04087     enum OptionalFields {
04088       e_signalList
04089     };
04090 
04091     PASN_Integer m_id;
04092     H248_IndAudSignal m_signalList;
04093 
04094     PINDEX GetDataLength() const;
04095     PBoolean Decode(PASN_Stream & strm);
04096     void Encode(PASN_Stream & strm) const;
04097 #ifndef PASN_NOPRINTON
04098     void PrintOn(ostream & strm) const;
04099 #endif
04100     Comparison Compare(const PObject & obj) const;
04101     PObject * Clone() const;
04102 };
04103 
04104 
04105 //
04106 // NotifyRequest
04107 //
04108 
04109 class H248_NotifyRequest : public PASN_Sequence
04110 {
04111 #ifndef PASN_LEANANDMEAN
04112     PCLASSINFO(H248_NotifyRequest, PASN_Sequence);
04113 #endif
04114   public:
04115     H248_NotifyRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04116 
04117     enum OptionalFields {
04118       e_errorDescriptor
04119     };
04120 
04121     H248_TerminationIDList m_terminationID;
04122     H248_ObservedEventsDescriptor m_observedEventsDescriptor;
04123     H248_ErrorDescriptor m_errorDescriptor;
04124 
04125     PINDEX GetDataLength() const;
04126     PBoolean Decode(PASN_Stream & strm);
04127     void Encode(PASN_Stream & strm) const;
04128 #ifndef PASN_NOPRINTON
04129     void PrintOn(ostream & strm) const;
04130 #endif
04131     Comparison Compare(const PObject & obj) const;
04132     PObject * Clone() const;
04133 };
04134 
04135 
04136 //
04137 // ObservedEvent
04138 //
04139 
04140 class H248_ObservedEvent : public PASN_Sequence
04141 {
04142 #ifndef PASN_LEANANDMEAN
04143     PCLASSINFO(H248_ObservedEvent, PASN_Sequence);
04144 #endif
04145   public:
04146     H248_ObservedEvent(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04147 
04148     enum OptionalFields {
04149       e_streamID,
04150       e_timeNotation
04151     };
04152 
04153     H248_EventName m_eventName;
04154     H248_StreamID m_streamID;
04155     H248_ArrayOf_EventParameter m_eventParList;
04156     H248_TimeNotation m_timeNotation;
04157 
04158     PINDEX GetDataLength() const;
04159     PBoolean Decode(PASN_Stream & strm);
04160     void Encode(PASN_Stream & strm) const;
04161 #ifndef PASN_NOPRINTON
04162     void PrintOn(ostream & strm) const;
04163 #endif
04164     Comparison Compare(const PObject & obj) const;
04165     PObject * Clone() const;
04166 };
04167 
04168 
04169 //
04170 // MediaDescriptor
04171 //
04172 
04173 class H248_MediaDescriptor : public PASN_Sequence
04174 {
04175 #ifndef PASN_LEANANDMEAN
04176     PCLASSINFO(H248_MediaDescriptor, PASN_Sequence);
04177 #endif
04178   public:
04179     H248_MediaDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04180 
04181     enum OptionalFields {
04182       e_termStateDescr,
04183       e_streams
04184     };
04185 
04186     H248_TerminationStateDescriptor m_termStateDescr;
04187     H248_MediaDescriptor_streams m_streams;
04188 
04189     PINDEX GetDataLength() const;
04190     PBoolean Decode(PASN_Stream & strm);
04191     void Encode(PASN_Stream & strm) const;
04192 #ifndef PASN_NOPRINTON
04193     void PrintOn(ostream & strm) const;
04194 #endif
04195     Comparison Compare(const PObject & obj) const;
04196     PObject * Clone() const;
04197 };
04198 
04199 
04200 //
04201 // StreamParms
04202 //
04203 
04204 class H248_StreamParms : public PASN_Sequence
04205 {
04206 #ifndef PASN_LEANANDMEAN
04207     PCLASSINFO(H248_StreamParms, PASN_Sequence);
04208 #endif
04209   public:
04210     H248_StreamParms(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04211 
04212     enum OptionalFields {
04213       e_localControlDescriptor,
04214       e_localDescriptor,
04215       e_remoteDescriptor
04216     };
04217 
04218     H248_LocalControlDescriptor m_localControlDescriptor;
04219     H248_LocalRemoteDescriptor m_localDescriptor;
04220     H248_LocalRemoteDescriptor m_remoteDescriptor;
04221 
04222     PINDEX GetDataLength() const;
04223     PBoolean Decode(PASN_Stream & strm);
04224     void Encode(PASN_Stream & strm) const;
04225 #ifndef PASN_NOPRINTON
04226     void PrintOn(ostream & strm) const;
04227 #endif
04228     Comparison Compare(const PObject & obj) const;
04229     PObject * Clone() const;
04230 };
04231 
04232 
04233 //
04234 // MuxDescriptor
04235 //
04236 
04237 class H248_MuxDescriptor : public PASN_Sequence
04238 {
04239 #ifndef PASN_LEANANDMEAN
04240     PCLASSINFO(H248_MuxDescriptor, PASN_Sequence);
04241 #endif
04242   public:
04243     H248_MuxDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04244 
04245     enum OptionalFields {
04246       e_nonStandardData
04247     };
04248 
04249     H248_MuxType m_muxType;
04250     H248_ArrayOf_TerminationID m_termList;
04251     H248_NonStandardData m_nonStandardData;
04252 
04253     PINDEX GetDataLength() const;
04254     PBoolean Decode(PASN_Stream & strm);
04255     void Encode(PASN_Stream & strm) const;
04256 #ifndef PASN_NOPRINTON
04257     void PrintOn(ostream & strm) const;
04258 #endif
04259     Comparison Compare(const PObject & obj) const;
04260     PObject * Clone() const;
04261 };
04262 
04263 
04264 //
04265 // RequestedActions
04266 //
04267 
04268 class H248_RequestedActions : public PASN_Sequence
04269 {
04270 #ifndef PASN_LEANANDMEAN
04271     PCLASSINFO(H248_RequestedActions, PASN_Sequence);
04272 #endif
04273   public:
04274     H248_RequestedActions(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04275 
04276     enum OptionalFields {
04277       e_keepActive,
04278       e_eventDM,
04279       e_secondEvent,
04280       e_signalsDescriptor
04281     };
04282 
04283     PASN_Boolean m_keepActive;
04284     H248_EventDM m_eventDM;
04285     H248_SecondEventsDescriptor m_secondEvent;
04286     H248_SignalsDescriptor m_signalsDescriptor;
04287 
04288     PINDEX GetDataLength() const;
04289     PBoolean Decode(PASN_Stream & strm);
04290     void Encode(PASN_Stream & strm) const;
04291 #ifndef PASN_NOPRINTON
04292     void PrintOn(ostream & strm) const;
04293 #endif
04294     Comparison Compare(const PObject & obj) const;
04295     PObject * Clone() const;
04296 };
04297 
04298 
04299 //
04300 // SecondRequestedEvent
04301 //
04302 
04303 class H248_SecondRequestedEvent : public PASN_Sequence
04304 {
04305 #ifndef PASN_LEANANDMEAN
04306     PCLASSINFO(H248_SecondRequestedEvent, PASN_Sequence);
04307 #endif
04308   public:
04309     H248_SecondRequestedEvent(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04310 
04311     enum OptionalFields {
04312       e_streamID,
04313       e_eventAction
04314     };
04315 
04316     H248_PkgdName m_pkgdName;
04317     H248_StreamID m_streamID;
04318     H248_SecondRequestedActions m_eventAction;
04319     H248_ArrayOf_EventParameter m_evParList;
04320 
04321     PINDEX GetDataLength() const;
04322     PBoolean Decode(PASN_Stream & strm);
04323     void Encode(PASN_Stream & strm) const;
04324 #ifndef PASN_NOPRINTON
04325     void PrintOn(ostream & strm) const;
04326 #endif
04327     Comparison Compare(const PObject & obj) const;
04328     PObject * Clone() const;
04329 };
04330 
04331 
04332 //
04333 // ModemDescriptor
04334 //
04335 
04336 class H248_ModemDescriptor : public PASN_Sequence
04337 {
04338 #ifndef PASN_LEANANDMEAN
04339     PCLASSINFO(H248_ModemDescriptor, PASN_Sequence);
04340 #endif
04341   public:
04342     H248_ModemDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04343 
04344     enum OptionalFields {
04345       e_nonStandardData
04346     };
04347 
04348     H248_ArrayOf_ModemType m_mtl;
04349     H248_ArrayOf_PropertyParm m_mpl;
04350     H248_NonStandardData m_nonStandardData;
04351 
04352     PINDEX GetDataLength() const;
04353     PBoolean Decode(PASN_Stream & strm);
04354     void Encode(PASN_Stream & strm) const;
04355 #ifndef PASN_NOPRINTON
04356     void PrintOn(ostream & strm) const;
04357 #endif
04358     Comparison Compare(const PObject & obj) const;
04359     PObject * Clone() const;
04360 };
04361 
04362 
04363 //
04364 // ServiceChangeParm
04365 //
04366 
04367 class H248_ServiceChangeParm : public PASN_Sequence
04368 {
04369 #ifndef PASN_LEANANDMEAN
04370     PCLASSINFO(H248_ServiceChangeParm, PASN_Sequence);
04371 #endif
04372   public:
04373     H248_ServiceChangeParm(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04374 
04375     enum OptionalFields {
04376       e_serviceChangeAddress,
04377       e_serviceChangeVersion,
04378       e_serviceChangeProfile,
04379       e_serviceChangeDelay,
04380       e_serviceChangeMgcId,
04381       e_timeStamp,
04382       e_nonStandardData,
04383       e_serviceChangeInfo
04384     };
04385 
04386     H248_ServiceChangeMethod m_serviceChangeMethod;
04387     H248_ServiceChangeAddress m_serviceChangeAddress;
04388     PASN_Integer m_serviceChangeVersion;
04389     H248_ServiceChangeProfile m_serviceChangeProfile;
04390     H248_Value m_serviceChangeReason;
04391     PASN_Integer m_serviceChangeDelay;
04392     H248_MId m_serviceChangeMgcId;
04393     H248_TimeNotation m_timeStamp;
04394     H248_NonStandardData m_nonStandardData;
04395     H248_AuditDescriptor m_serviceChangeInfo;
04396 
04397     PINDEX GetDataLength() const;
04398     PBoolean Decode(PASN_Stream & strm);
04399     void Encode(PASN_Stream & strm) const;
04400 #ifndef PASN_NOPRINTON
04401     void PrintOn(ostream & strm) const;
04402 #endif
04403     Comparison Compare(const PObject & obj) const;
04404     PObject * Clone() const;
04405 };
04406 
04407 
04408 //
04409 // IndAudStreamDescriptor
04410 //
04411 
04412 class H248_IndAudStreamDescriptor : public PASN_Sequence
04413 {
04414 #ifndef PASN_LEANANDMEAN
04415     PCLASSINFO(H248_IndAudStreamDescriptor, PASN_Sequence);
04416 #endif
04417   public:
04418     H248_IndAudStreamDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04419 
04420     H248_StreamID m_streamID;
04421     H248_IndAudStreamParms m_streamParms;
04422 
04423     PINDEX GetDataLength() const;
04424     PBoolean Decode(PASN_Stream & strm);
04425     void Encode(PASN_Stream & strm) const;
04426 #ifndef PASN_NOPRINTON
04427     void PrintOn(ostream & strm) const;
04428 #endif
04429     Comparison Compare(const PObject & obj) const;
04430     PObject * Clone() const;
04431 };
04432 
04433 
04434 //
04435 // ServiceChangeRequest
04436 //
04437 
04438 class H248_ServiceChangeRequest : public PASN_Sequence
04439 {
04440 #ifndef PASN_LEANANDMEAN
04441     PCLASSINFO(H248_ServiceChangeRequest, PASN_Sequence);
04442 #endif
04443   public:
04444     H248_ServiceChangeRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04445 
04446     H248_TerminationIDList m_terminationID;
04447     H248_ServiceChangeParm m_serviceChangeParms;
04448 
04449     PINDEX GetDataLength() const;
04450     PBoolean Decode(PASN_Stream & strm);
04451     void Encode(PASN_Stream & strm) const;
04452 #ifndef PASN_NOPRINTON
04453     void PrintOn(ostream & strm) const;
04454 #endif
04455     Comparison Compare(const PObject & obj) const;
04456     PObject * Clone() const;
04457 };
04458 
04459 
04460 //
04461 // StreamDescriptor
04462 //
04463 
04464 class H248_StreamDescriptor : public PASN_Sequence
04465 {
04466 #ifndef PASN_LEANANDMEAN
04467     PCLASSINFO(H248_StreamDescriptor, PASN_Sequence);
04468 #endif
04469   public:
04470     H248_StreamDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04471 
04472     H248_StreamID m_streamID;
04473     H248_StreamParms m_streamParms;
04474 
04475     PINDEX GetDataLength() const;
04476     PBoolean Decode(PASN_Stream & strm);
04477     void Encode(PASN_Stream & strm) const;
04478 #ifndef PASN_NOPRINTON
04479     void PrintOn(ostream & strm) const;
04480 #endif
04481     Comparison Compare(const PObject & obj) const;
04482     PObject * Clone() const;
04483 };
04484 
04485 
04486 //
04487 // RequestedEvent
04488 //
04489 
04490 class H248_RequestedEvent : public PASN_Sequence
04491 {
04492 #ifndef PASN_LEANANDMEAN
04493     PCLASSINFO(H248_RequestedEvent, PASN_Sequence);
04494 #endif
04495   public:
04496     H248_RequestedEvent(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
04497 
04498     enum OptionalFields {
04499       e_streamID,
04500       e_eventAction
04501     };
04502 
04503     H248_PkgdName m_pkgdName;
04504     H248_StreamID m_streamID;
04505     H248_RequestedActions m_eventAction;
04506     H248_ArrayOf_EventParameter m_evParList;
04507 
04508     PINDEX GetDataLength() const;
04509     PBoolean Decode(PASN_Stream & strm);
04510     void Encode(PASN_Stream & strm) const;
04511 #ifndef PASN_NOPRINTON
04512     void PrintOn(ostream & strm) const;
04513 #endif
04514     Comparison Compare(const PObject & obj) const;
04515     PObject * Clone() const;
04516 };
04517 
04518 
04519 #endif // __H248_H
04520 
04521 #endif // if ! H323_DISABLE_H248
04522 
04523 
04524 // End of h248.h

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