OpenH323 1.18.0
|
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 BOOL 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 BOOL Decode(PASN_Stream & strm); 00163 void Encode(PASN_Stream & strm) const; 00164 #ifndef PASN_NOPRINTON 00165 void PrintOn(ostream & strm) const; 00166 #endif 00167 Comparison Compare(const PObject & obj) const; 00168 PObject * Clone() const; 00169 }; 00170 00171 00172 // 00173 // 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 BOOL Decode(PASN_Stream & strm); 00193 void Encode(PASN_Stream & strm) const; 00194 #ifndef PASN_NOPRINTON 00195 void PrintOn(ostream & strm) const; 00196 #endif 00197 Comparison Compare(const PObject & obj) const; 00198 PObject * Clone() const; 00199 }; 00200 00201 00202 // 00203 // 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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 BOOL 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