OpenH323 1.18.0
|
00001 // 00002 // mcspdu.h 00003 // 00004 // Code automatically generated by asnparse. 00005 // 00006 00007 #if ! H323_DISABLE_MCS 00008 00009 #ifndef __MCS_H 00010 #define __MCS_H 00011 00012 #ifdef P_USE_PRAGMA 00013 #pragma interface 00014 #endif 00015 00016 #include <ptclib/asner.h> 00017 00018 // 00019 // ChannelId 00020 // 00021 00022 class MCS_ChannelId : public PASN_Integer 00023 { 00024 #ifndef PASN_LEANANDMEAN 00025 PCLASSINFO(MCS_ChannelId, PASN_Integer); 00026 #endif 00027 public: 00028 MCS_ChannelId(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass); 00029 00030 MCS_ChannelId & operator=(int v); 00031 MCS_ChannelId & operator=(unsigned v); 00032 PObject * Clone() const; 00033 }; 00034 00035 00036 // 00037 // StaticChannelId 00038 // 00039 00040 class MCS_StaticChannelId : public PASN_Integer 00041 { 00042 #ifndef PASN_LEANANDMEAN 00043 PCLASSINFO(MCS_StaticChannelId, PASN_Integer); 00044 #endif 00045 public: 00046 MCS_StaticChannelId(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass); 00047 00048 MCS_StaticChannelId & operator=(int v); 00049 MCS_StaticChannelId & operator=(unsigned v); 00050 PObject * Clone() const; 00051 }; 00052 00053 00054 // 00055 // DynamicChannelId 00056 // 00057 00058 class MCS_DynamicChannelId : public PASN_Integer 00059 { 00060 #ifndef PASN_LEANANDMEAN 00061 PCLASSINFO(MCS_DynamicChannelId, PASN_Integer); 00062 #endif 00063 public: 00064 MCS_DynamicChannelId(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass); 00065 00066 MCS_DynamicChannelId & operator=(int v); 00067 MCS_DynamicChannelId & operator=(unsigned v); 00068 PObject * Clone() const; 00069 }; 00070 00071 00072 // 00073 // UserId 00074 // 00075 00076 class MCS_UserId : public MCS_DynamicChannelId 00077 { 00078 #ifndef PASN_LEANANDMEAN 00079 PCLASSINFO(MCS_UserId, MCS_DynamicChannelId); 00080 #endif 00081 public: 00082 MCS_UserId(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass); 00083 00084 MCS_UserId & operator=(int v); 00085 MCS_UserId & operator=(unsigned v); 00086 PObject * Clone() const; 00087 }; 00088 00089 00090 // 00091 // PrivateChannelId 00092 // 00093 00094 class MCS_PrivateChannelId : public MCS_DynamicChannelId 00095 { 00096 #ifndef PASN_LEANANDMEAN 00097 PCLASSINFO(MCS_PrivateChannelId, MCS_DynamicChannelId); 00098 #endif 00099 public: 00100 MCS_PrivateChannelId(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass); 00101 00102 MCS_PrivateChannelId & operator=(int v); 00103 MCS_PrivateChannelId & operator=(unsigned v); 00104 PObject * Clone() const; 00105 }; 00106 00107 00108 // 00109 // AssignedChannelId 00110 // 00111 00112 class MCS_AssignedChannelId : public MCS_DynamicChannelId 00113 { 00114 #ifndef PASN_LEANANDMEAN 00115 PCLASSINFO(MCS_AssignedChannelId, MCS_DynamicChannelId); 00116 #endif 00117 public: 00118 MCS_AssignedChannelId(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass); 00119 00120 MCS_AssignedChannelId & operator=(int v); 00121 MCS_AssignedChannelId & operator=(unsigned v); 00122 PObject * Clone() const; 00123 }; 00124 00125 00126 // 00127 // TokenId 00128 // 00129 00130 class MCS_TokenId : public PASN_Integer 00131 { 00132 #ifndef PASN_LEANANDMEAN 00133 PCLASSINFO(MCS_TokenId, PASN_Integer); 00134 #endif 00135 public: 00136 MCS_TokenId(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass); 00137 00138 MCS_TokenId & operator=(int v); 00139 MCS_TokenId & operator=(unsigned v); 00140 PObject * Clone() const; 00141 }; 00142 00143 00144 // 00145 // TokenStatus 00146 // 00147 00148 class MCS_TokenStatus : public PASN_Enumeration 00149 { 00150 #ifndef PASN_LEANANDMEAN 00151 PCLASSINFO(MCS_TokenStatus, PASN_Enumeration); 00152 #endif 00153 public: 00154 MCS_TokenStatus(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 00155 00156 enum Enumerations { 00157 e_notInUse, 00158 e_selfGrabbed, 00159 e_otherGrabbed, 00160 e_selfInhibited, 00161 e_otherInhibited, 00162 e_selfRecipient, 00163 e_selfGiving, 00164 e_otherGiving 00165 }; 00166 00167 MCS_TokenStatus & operator=(unsigned v); 00168 PObject * Clone() const; 00169 }; 00170 00171 00172 // 00173 // DataPriority 00174 // 00175 00176 class MCS_DataPriority : public PASN_Enumeration 00177 { 00178 #ifndef PASN_LEANANDMEAN 00179 PCLASSINFO(MCS_DataPriority, PASN_Enumeration); 00180 #endif 00181 public: 00182 MCS_DataPriority(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 00183 00184 enum Enumerations { 00185 e_top, 00186 e_high, 00187 e_medium, 00188 e_low 00189 }; 00190 00191 MCS_DataPriority & operator=(unsigned v); 00192 PObject * Clone() const; 00193 }; 00194 00195 00196 // 00197 // Segmentation 00198 // 00199 00200 class MCS_Segmentation : public PASN_BitString 00201 { 00202 #ifndef PASN_LEANANDMEAN 00203 PCLASSINFO(MCS_Segmentation, PASN_BitString); 00204 #endif 00205 public: 00206 MCS_Segmentation(unsigned tag = UniversalBitString, TagClass tagClass = UniversalTagClass); 00207 00208 PObject * Clone() const; 00209 }; 00210 00211 00212 // 00213 // DomainParameters 00214 // 00215 00216 class MCS_DomainParameters : public PASN_Sequence 00217 { 00218 #ifndef PASN_LEANANDMEAN 00219 PCLASSINFO(MCS_DomainParameters, PASN_Sequence); 00220 #endif 00221 public: 00222 MCS_DomainParameters(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); 00223 00224 PASN_Integer m_maxChannelIds; 00225 PASN_Integer m_maxUserIds; 00226 PASN_Integer m_maxTokenIds; 00227 PASN_Integer m_numPriorities; 00228 PASN_Integer m_minThroughput; 00229 PASN_Integer m_maxHeight; 00230 PASN_Integer m_maxMCSPDUsize; 00231 PASN_Integer m_protocolVersion; 00232 00233 PINDEX GetDataLength() const; 00234 BOOL Decode(PASN_Stream & strm); 00235 void Encode(PASN_Stream & strm) const; 00236 #ifndef PASN_NOPRINTON 00237 void PrintOn(ostream & strm) const; 00238 #endif 00239 Comparison Compare(const PObject & obj) const; 00240 PObject * Clone() const; 00241 }; 00242 00243 00244 // 00245 // Connect-Initial 00246 // 00247 00248 class MCS_Connect_Initial : public PASN_Sequence 00249 { 00250 #ifndef PASN_LEANANDMEAN 00251 PCLASSINFO(MCS_Connect_Initial, PASN_Sequence); 00252 #endif 00253 public: 00254 MCS_Connect_Initial(unsigned tag = 101, TagClass tagClass = ApplicationTagClass); 00255 00256 PASN_OctetString m_callingDomainSelector; 00257 PASN_OctetString m_calledDomainSelector; 00258 PASN_Boolean m_upwardFlag; 00259 MCS_DomainParameters m_targetParameters; 00260 MCS_DomainParameters m_minimumParameters; 00261 MCS_DomainParameters m_maximumParameters; 00262 PASN_OctetString m_userData; 00263 00264 PINDEX GetDataLength() const; 00265 BOOL Decode(PASN_Stream & strm); 00266 void Encode(PASN_Stream & strm) const; 00267 #ifndef PASN_NOPRINTON 00268 void PrintOn(ostream & strm) const; 00269 #endif 00270 Comparison Compare(const PObject & obj) const; 00271 PObject * Clone() const; 00272 }; 00273 00274 00275 // 00276 // Connect-Additional 00277 // 00278 00279 class MCS_Connect_Additional : public PASN_Sequence 00280 { 00281 #ifndef PASN_LEANANDMEAN 00282 PCLASSINFO(MCS_Connect_Additional, PASN_Sequence); 00283 #endif 00284 public: 00285 MCS_Connect_Additional(unsigned tag = 103, TagClass tagClass = ApplicationTagClass); 00286 00287 PASN_Integer m_calledConnectId; 00288 MCS_DataPriority m_dataPriority; 00289 00290 PINDEX GetDataLength() const; 00291 BOOL Decode(PASN_Stream & strm); 00292 void Encode(PASN_Stream & strm) const; 00293 #ifndef PASN_NOPRINTON 00294 void PrintOn(ostream & strm) const; 00295 #endif 00296 Comparison Compare(const PObject & obj) const; 00297 PObject * Clone() const; 00298 }; 00299 00300 00301 // 00302 // PDin 00303 // 00304 00305 class MCS_PDin : public PASN_Sequence 00306 { 00307 #ifndef PASN_LEANANDMEAN 00308 PCLASSINFO(MCS_PDin, PASN_Sequence); 00309 #endif 00310 public: 00311 MCS_PDin(unsigned tag = 0, TagClass tagClass = ApplicationTagClass); 00312 00313 PASN_Integer m_heightLimit; 00314 00315 PINDEX GetDataLength() const; 00316 BOOL Decode(PASN_Stream & strm); 00317 void Encode(PASN_Stream & strm) const; 00318 #ifndef PASN_NOPRINTON 00319 void PrintOn(ostream & strm) const; 00320 #endif 00321 Comparison Compare(const PObject & obj) const; 00322 PObject * Clone() const; 00323 }; 00324 00325 00326 // 00327 // EDrq 00328 // 00329 00330 class MCS_EDrq : public PASN_Sequence 00331 { 00332 #ifndef PASN_LEANANDMEAN 00333 PCLASSINFO(MCS_EDrq, PASN_Sequence); 00334 #endif 00335 public: 00336 MCS_EDrq(unsigned tag = 1, TagClass tagClass = ApplicationTagClass); 00337 00338 PASN_Integer m_subHeight; 00339 PASN_Integer m_subInterval; 00340 00341 PINDEX GetDataLength() const; 00342 BOOL Decode(PASN_Stream & strm); 00343 void Encode(PASN_Stream & strm) const; 00344 #ifndef PASN_NOPRINTON 00345 void PrintOn(ostream & strm) const; 00346 #endif 00347 Comparison Compare(const PObject & obj) const; 00348 PObject * Clone() const; 00349 }; 00350 00351 00352 // 00353 // ChannelAttributes 00354 // 00355 00356 class MCS_ChannelAttributes_static; 00357 class MCS_ChannelAttributes_userId; 00358 class MCS_ChannelAttributes_private; 00359 class MCS_ChannelAttributes_assigned; 00360 00361 class MCS_ChannelAttributes : public PASN_Choice 00362 { 00363 #ifndef PASN_LEANANDMEAN 00364 PCLASSINFO(MCS_ChannelAttributes, PASN_Choice); 00365 #endif 00366 public: 00367 MCS_ChannelAttributes(unsigned tag = 0, TagClass tagClass = UniversalTagClass); 00368 00369 enum Choices { 00370 e_static, 00371 e_userId, 00372 e_private, 00373 e_assigned 00374 }; 00375 00376 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 00377 operator MCS_ChannelAttributes_static &() const; 00378 #else 00379 operator MCS_ChannelAttributes_static &(); 00380 operator const MCS_ChannelAttributes_static &() const; 00381 #endif 00382 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 00383 operator MCS_ChannelAttributes_userId &() const; 00384 #else 00385 operator MCS_ChannelAttributes_userId &(); 00386 operator const MCS_ChannelAttributes_userId &() const; 00387 #endif 00388 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 00389 operator MCS_ChannelAttributes_private &() const; 00390 #else 00391 operator MCS_ChannelAttributes_private &(); 00392 operator const MCS_ChannelAttributes_private &() const; 00393 #endif 00394 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 00395 operator MCS_ChannelAttributes_assigned &() const; 00396 #else 00397 operator MCS_ChannelAttributes_assigned &(); 00398 operator const MCS_ChannelAttributes_assigned &() const; 00399 #endif 00400 00401 BOOL CreateObject(); 00402 PObject * Clone() const; 00403 }; 00404 00405 00406 // 00407 // TokenAttributes 00408 // 00409 00410 class MCS_TokenAttributes_grabbed; 00411 class MCS_TokenAttributes_inhibited; 00412 class MCS_TokenAttributes_giving; 00413 class MCS_TokenAttributes_ungivable; 00414 class MCS_TokenAttributes_given; 00415 00416 class MCS_TokenAttributes : public PASN_Choice 00417 { 00418 #ifndef PASN_LEANANDMEAN 00419 PCLASSINFO(MCS_TokenAttributes, PASN_Choice); 00420 #endif 00421 public: 00422 MCS_TokenAttributes(unsigned tag = 0, TagClass tagClass = UniversalTagClass); 00423 00424 enum Choices { 00425 e_grabbed, 00426 e_inhibited, 00427 e_giving, 00428 e_ungivable, 00429 e_given 00430 }; 00431 00432 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 00433 operator MCS_TokenAttributes_grabbed &() const; 00434 #else 00435 operator MCS_TokenAttributes_grabbed &(); 00436 operator const MCS_TokenAttributes_grabbed &() const; 00437 #endif 00438 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 00439 operator MCS_TokenAttributes_inhibited &() const; 00440 #else 00441 operator MCS_TokenAttributes_inhibited &(); 00442 operator const MCS_TokenAttributes_inhibited &() const; 00443 #endif 00444 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 00445 operator MCS_TokenAttributes_giving &() const; 00446 #else 00447 operator MCS_TokenAttributes_giving &(); 00448 operator const MCS_TokenAttributes_giving &() const; 00449 #endif 00450 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 00451 operator MCS_TokenAttributes_ungivable &() const; 00452 #else 00453 operator MCS_TokenAttributes_ungivable &(); 00454 operator const MCS_TokenAttributes_ungivable &() const; 00455 #endif 00456 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 00457 operator MCS_TokenAttributes_given &() const; 00458 #else 00459 operator MCS_TokenAttributes_given &(); 00460 operator const MCS_TokenAttributes_given &() const; 00461 #endif 00462 00463 BOOL CreateObject(); 00464 PObject * Clone() const; 00465 }; 00466 00467 00468 // 00469 // AUrq 00470 // 00471 00472 class MCS_AUrq : public PASN_Sequence 00473 { 00474 #ifndef PASN_LEANANDMEAN 00475 PCLASSINFO(MCS_AUrq, PASN_Sequence); 00476 #endif 00477 public: 00478 MCS_AUrq(unsigned tag = 10, TagClass tagClass = ApplicationTagClass); 00479 00480 00481 PINDEX GetDataLength() const; 00482 BOOL Decode(PASN_Stream & strm); 00483 void Encode(PASN_Stream & strm) const; 00484 #ifndef PASN_NOPRINTON 00485 void PrintOn(ostream & strm) const; 00486 #endif 00487 PObject * Clone() const; 00488 }; 00489 00490 00491 // 00492 // CJrq 00493 // 00494 00495 class MCS_CJrq : public PASN_Sequence 00496 { 00497 #ifndef PASN_LEANANDMEAN 00498 PCLASSINFO(MCS_CJrq, PASN_Sequence); 00499 #endif 00500 public: 00501 MCS_CJrq(unsigned tag = 14, TagClass tagClass = ApplicationTagClass); 00502 00503 MCS_UserId m_initiator; 00504 MCS_ChannelId m_channelId; 00505 00506 PINDEX GetDataLength() const; 00507 BOOL Decode(PASN_Stream & strm); 00508 void Encode(PASN_Stream & strm) const; 00509 #ifndef PASN_NOPRINTON 00510 void PrintOn(ostream & strm) const; 00511 #endif 00512 Comparison Compare(const PObject & obj) const; 00513 PObject * Clone() const; 00514 }; 00515 00516 00517 // 00518 // CCrq 00519 // 00520 00521 class MCS_CCrq : public PASN_Sequence 00522 { 00523 #ifndef PASN_LEANANDMEAN 00524 PCLASSINFO(MCS_CCrq, PASN_Sequence); 00525 #endif 00526 public: 00527 MCS_CCrq(unsigned tag = 17, TagClass tagClass = ApplicationTagClass); 00528 00529 MCS_UserId m_initiator; 00530 00531 PINDEX GetDataLength() const; 00532 BOOL Decode(PASN_Stream & strm); 00533 void Encode(PASN_Stream & strm) const; 00534 #ifndef PASN_NOPRINTON 00535 void PrintOn(ostream & strm) const; 00536 #endif 00537 Comparison Compare(const PObject & obj) const; 00538 PObject * Clone() const; 00539 }; 00540 00541 00542 // 00543 // CDrq 00544 // 00545 00546 class MCS_CDrq : public PASN_Sequence 00547 { 00548 #ifndef PASN_LEANANDMEAN 00549 PCLASSINFO(MCS_CDrq, PASN_Sequence); 00550 #endif 00551 public: 00552 MCS_CDrq(unsigned tag = 19, TagClass tagClass = ApplicationTagClass); 00553 00554 MCS_UserId m_initiator; 00555 MCS_PrivateChannelId m_channelId; 00556 00557 PINDEX GetDataLength() const; 00558 BOOL Decode(PASN_Stream & strm); 00559 void Encode(PASN_Stream & strm) const; 00560 #ifndef PASN_NOPRINTON 00561 void PrintOn(ostream & strm) const; 00562 #endif 00563 Comparison Compare(const PObject & obj) const; 00564 PObject * Clone() const; 00565 }; 00566 00567 00568 // 00569 // CDin 00570 // 00571 00572 class MCS_CDin : public PASN_Sequence 00573 { 00574 #ifndef PASN_LEANANDMEAN 00575 PCLASSINFO(MCS_CDin, PASN_Sequence); 00576 #endif 00577 public: 00578 MCS_CDin(unsigned tag = 20, TagClass tagClass = ApplicationTagClass); 00579 00580 MCS_PrivateChannelId m_channelId; 00581 00582 PINDEX GetDataLength() const; 00583 BOOL Decode(PASN_Stream & strm); 00584 void Encode(PASN_Stream & strm) const; 00585 #ifndef PASN_NOPRINTON 00586 void PrintOn(ostream & strm) const; 00587 #endif 00588 Comparison Compare(const PObject & obj) const; 00589 PObject * Clone() const; 00590 }; 00591 00592 00593 // 00594 // SDrq 00595 // 00596 00597 class MCS_SDrq : public PASN_Sequence 00598 { 00599 #ifndef PASN_LEANANDMEAN 00600 PCLASSINFO(MCS_SDrq, PASN_Sequence); 00601 #endif 00602 public: 00603 MCS_SDrq(unsigned tag = 25, TagClass tagClass = ApplicationTagClass); 00604 00605 MCS_UserId m_initiator; 00606 MCS_ChannelId m_channelId; 00607 MCS_DataPriority m_dataPriority; 00608 MCS_Segmentation m_segmentation; 00609 PASN_OctetString m_userData; 00610 00611 PINDEX GetDataLength() const; 00612 BOOL Decode(PASN_Stream & strm); 00613 void Encode(PASN_Stream & strm) const; 00614 #ifndef PASN_NOPRINTON 00615 void PrintOn(ostream & strm) const; 00616 #endif 00617 Comparison Compare(const PObject & obj) const; 00618 PObject * Clone() const; 00619 }; 00620 00621 00622 // 00623 // SDin 00624 // 00625 00626 class MCS_SDin : public PASN_Sequence 00627 { 00628 #ifndef PASN_LEANANDMEAN 00629 PCLASSINFO(MCS_SDin, PASN_Sequence); 00630 #endif 00631 public: 00632 MCS_SDin(unsigned tag = 26, TagClass tagClass = ApplicationTagClass); 00633 00634 MCS_UserId m_initiator; 00635 MCS_ChannelId m_channelId; 00636 MCS_DataPriority m_dataPriority; 00637 MCS_Segmentation m_segmentation; 00638 PASN_OctetString m_userData; 00639 00640 PINDEX GetDataLength() const; 00641 BOOL Decode(PASN_Stream & strm); 00642 void Encode(PASN_Stream & strm) const; 00643 #ifndef PASN_NOPRINTON 00644 void PrintOn(ostream & strm) const; 00645 #endif 00646 Comparison Compare(const PObject & obj) const; 00647 PObject * Clone() const; 00648 }; 00649 00650 00651 // 00652 // USrq 00653 // 00654 00655 class MCS_USrq : public PASN_Sequence 00656 { 00657 #ifndef PASN_LEANANDMEAN 00658 PCLASSINFO(MCS_USrq, PASN_Sequence); 00659 #endif 00660 public: 00661 MCS_USrq(unsigned tag = 27, TagClass tagClass = ApplicationTagClass); 00662 00663 MCS_UserId m_initiator; 00664 MCS_ChannelId m_channelId; 00665 MCS_DataPriority m_dataPriority; 00666 MCS_Segmentation m_segmentation; 00667 PASN_OctetString m_userData; 00668 00669 PINDEX GetDataLength() const; 00670 BOOL Decode(PASN_Stream & strm); 00671 void Encode(PASN_Stream & strm) const; 00672 #ifndef PASN_NOPRINTON 00673 void PrintOn(ostream & strm) const; 00674 #endif 00675 Comparison Compare(const PObject & obj) const; 00676 PObject * Clone() const; 00677 }; 00678 00679 00680 // 00681 // USin 00682 // 00683 00684 class MCS_USin : public PASN_Sequence 00685 { 00686 #ifndef PASN_LEANANDMEAN 00687 PCLASSINFO(MCS_USin, PASN_Sequence); 00688 #endif 00689 public: 00690 MCS_USin(unsigned tag = 28, TagClass tagClass = ApplicationTagClass); 00691 00692 MCS_UserId m_initiator; 00693 MCS_ChannelId m_channelId; 00694 MCS_DataPriority m_dataPriority; 00695 MCS_Segmentation m_segmentation; 00696 PASN_OctetString m_userData; 00697 00698 PINDEX GetDataLength() const; 00699 BOOL Decode(PASN_Stream & strm); 00700 void Encode(PASN_Stream & strm) const; 00701 #ifndef PASN_NOPRINTON 00702 void PrintOn(ostream & strm) const; 00703 #endif 00704 Comparison Compare(const PObject & obj) const; 00705 PObject * Clone() const; 00706 }; 00707 00708 00709 // 00710 // TGrq 00711 // 00712 00713 class MCS_TGrq : public PASN_Sequence 00714 { 00715 #ifndef PASN_LEANANDMEAN 00716 PCLASSINFO(MCS_TGrq, PASN_Sequence); 00717 #endif 00718 public: 00719 MCS_TGrq(unsigned tag = 29, TagClass tagClass = ApplicationTagClass); 00720 00721 MCS_UserId m_initiator; 00722 MCS_TokenId m_tokenId; 00723 00724 PINDEX GetDataLength() const; 00725 BOOL Decode(PASN_Stream & strm); 00726 void Encode(PASN_Stream & strm) const; 00727 #ifndef PASN_NOPRINTON 00728 void PrintOn(ostream & strm) const; 00729 #endif 00730 Comparison Compare(const PObject & obj) const; 00731 PObject * Clone() const; 00732 }; 00733 00734 00735 // 00736 // TIrq 00737 // 00738 00739 class MCS_TIrq : public PASN_Sequence 00740 { 00741 #ifndef PASN_LEANANDMEAN 00742 PCLASSINFO(MCS_TIrq, PASN_Sequence); 00743 #endif 00744 public: 00745 MCS_TIrq(unsigned tag = 31, TagClass tagClass = ApplicationTagClass); 00746 00747 MCS_UserId m_initiator; 00748 MCS_TokenId m_tokenId; 00749 00750 PINDEX GetDataLength() const; 00751 BOOL Decode(PASN_Stream & strm); 00752 void Encode(PASN_Stream & strm) const; 00753 #ifndef PASN_NOPRINTON 00754 void PrintOn(ostream & strm) const; 00755 #endif 00756 Comparison Compare(const PObject & obj) const; 00757 PObject * Clone() const; 00758 }; 00759 00760 00761 // 00762 // TVrq 00763 // 00764 00765 class MCS_TVrq : public PASN_Sequence 00766 { 00767 #ifndef PASN_LEANANDMEAN 00768 PCLASSINFO(MCS_TVrq, PASN_Sequence); 00769 #endif 00770 public: 00771 MCS_TVrq(unsigned tag = 33, TagClass tagClass = ApplicationTagClass); 00772 00773 MCS_UserId m_initiator; 00774 MCS_TokenId m_tokenId; 00775 MCS_UserId m_recipient; 00776 00777 PINDEX GetDataLength() const; 00778 BOOL Decode(PASN_Stream & strm); 00779 void Encode(PASN_Stream & strm) const; 00780 #ifndef PASN_NOPRINTON 00781 void PrintOn(ostream & strm) const; 00782 #endif 00783 Comparison Compare(const PObject & obj) const; 00784 PObject * Clone() const; 00785 }; 00786 00787 00788 // 00789 // TVin 00790 // 00791 00792 class MCS_TVin : public PASN_Sequence 00793 { 00794 #ifndef PASN_LEANANDMEAN 00795 PCLASSINFO(MCS_TVin, PASN_Sequence); 00796 #endif 00797 public: 00798 MCS_TVin(unsigned tag = 34, TagClass tagClass = ApplicationTagClass); 00799 00800 MCS_UserId m_initiator; 00801 MCS_TokenId m_tokenId; 00802 MCS_UserId m_recipient; 00803 00804 PINDEX GetDataLength() const; 00805 BOOL Decode(PASN_Stream & strm); 00806 void Encode(PASN_Stream & strm) const; 00807 #ifndef PASN_NOPRINTON 00808 void PrintOn(ostream & strm) const; 00809 #endif 00810 Comparison Compare(const PObject & obj) const; 00811 PObject * Clone() const; 00812 }; 00813 00814 00815 // 00816 // TPrq 00817 // 00818 00819 class MCS_TPrq : public PASN_Sequence 00820 { 00821 #ifndef PASN_LEANANDMEAN 00822 PCLASSINFO(MCS_TPrq, PASN_Sequence); 00823 #endif 00824 public: 00825 MCS_TPrq(unsigned tag = 37, TagClass tagClass = ApplicationTagClass); 00826 00827 MCS_UserId m_initiator; 00828 MCS_TokenId m_tokenId; 00829 00830 PINDEX GetDataLength() const; 00831 BOOL Decode(PASN_Stream & strm); 00832 void Encode(PASN_Stream & strm) const; 00833 #ifndef PASN_NOPRINTON 00834 void PrintOn(ostream & strm) const; 00835 #endif 00836 Comparison Compare(const PObject & obj) const; 00837 PObject * Clone() const; 00838 }; 00839 00840 00841 // 00842 // TPin 00843 // 00844 00845 class MCS_TPin : public PASN_Sequence 00846 { 00847 #ifndef PASN_LEANANDMEAN 00848 PCLASSINFO(MCS_TPin, PASN_Sequence); 00849 #endif 00850 public: 00851 MCS_TPin(unsigned tag = 38, TagClass tagClass = ApplicationTagClass); 00852 00853 MCS_UserId m_initiator; 00854 MCS_TokenId m_tokenId; 00855 00856 PINDEX GetDataLength() const; 00857 BOOL Decode(PASN_Stream & strm); 00858 void Encode(PASN_Stream & strm) const; 00859 #ifndef PASN_NOPRINTON 00860 void PrintOn(ostream & strm) const; 00861 #endif 00862 Comparison Compare(const PObject & obj) const; 00863 PObject * Clone() const; 00864 }; 00865 00866 00867 // 00868 // TRrq 00869 // 00870 00871 class MCS_TRrq : public PASN_Sequence 00872 { 00873 #ifndef PASN_LEANANDMEAN 00874 PCLASSINFO(MCS_TRrq, PASN_Sequence); 00875 #endif 00876 public: 00877 MCS_TRrq(unsigned tag = 39, TagClass tagClass = ApplicationTagClass); 00878 00879 MCS_UserId m_initiator; 00880 MCS_TokenId m_tokenId; 00881 00882 PINDEX GetDataLength() const; 00883 BOOL Decode(PASN_Stream & strm); 00884 void Encode(PASN_Stream & strm) const; 00885 #ifndef PASN_NOPRINTON 00886 void PrintOn(ostream & strm) const; 00887 #endif 00888 Comparison Compare(const PObject & obj) const; 00889 PObject * Clone() const; 00890 }; 00891 00892 00893 // 00894 // TTrq 00895 // 00896 00897 class MCS_TTrq : public PASN_Sequence 00898 { 00899 #ifndef PASN_LEANANDMEAN 00900 PCLASSINFO(MCS_TTrq, PASN_Sequence); 00901 #endif 00902 public: 00903 MCS_TTrq(unsigned tag = 41, TagClass tagClass = ApplicationTagClass); 00904 00905 MCS_UserId m_initiator; 00906 MCS_TokenId m_tokenId; 00907 00908 PINDEX GetDataLength() const; 00909 BOOL Decode(PASN_Stream & strm); 00910 void Encode(PASN_Stream & strm) const; 00911 #ifndef PASN_NOPRINTON 00912 void PrintOn(ostream & strm) const; 00913 #endif 00914 Comparison Compare(const PObject & obj) const; 00915 PObject * Clone() const; 00916 }; 00917 00918 00919 // 00920 // TTcf 00921 // 00922 00923 class MCS_TTcf : public PASN_Sequence 00924 { 00925 #ifndef PASN_LEANANDMEAN 00926 PCLASSINFO(MCS_TTcf, PASN_Sequence); 00927 #endif 00928 public: 00929 MCS_TTcf(unsigned tag = 42, TagClass tagClass = ApplicationTagClass); 00930 00931 MCS_UserId m_initiator; 00932 MCS_TokenId m_tokenId; 00933 MCS_TokenStatus m_tokenStatus; 00934 00935 PINDEX GetDataLength() const; 00936 BOOL Decode(PASN_Stream & strm); 00937 void Encode(PASN_Stream & strm) const; 00938 #ifndef PASN_NOPRINTON 00939 void PrintOn(ostream & strm) const; 00940 #endif 00941 Comparison Compare(const PObject & obj) const; 00942 PObject * Clone() const; 00943 }; 00944 00945 00946 // 00947 // Reason 00948 // 00949 00950 class MCS_Reason : public PASN_Enumeration 00951 { 00952 #ifndef PASN_LEANANDMEAN 00953 PCLASSINFO(MCS_Reason, PASN_Enumeration); 00954 #endif 00955 public: 00956 MCS_Reason(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 00957 00958 enum Enumerations { 00959 e_rn_domain_disconnected, 00960 e_rn_provider_initiated, 00961 e_rn_token_purged, 00962 e_rn_user_requested, 00963 e_rn_channel_purged 00964 }; 00965 00966 MCS_Reason & operator=(unsigned v); 00967 PObject * Clone() const; 00968 }; 00969 00970 00971 // 00972 // Result 00973 // 00974 00975 class MCS_Result : public PASN_Enumeration 00976 { 00977 #ifndef PASN_LEANANDMEAN 00978 PCLASSINFO(MCS_Result, PASN_Enumeration); 00979 #endif 00980 public: 00981 MCS_Result(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 00982 00983 enum Enumerations { 00984 e_rt_successful, 00985 e_rt_domain_merging, 00986 e_rt_domain_not_hierarchical, 00987 e_rt_no_such_channel, 00988 e_rt_no_such_domain, 00989 e_rt_no_such_user, 00990 e_rt_not_admitted, 00991 e_rt_other_user_id, 00992 e_rt_parameters_unacceptable, 00993 e_rt_token_not_available, 00994 e_rt_token_not_possessed, 00995 e_rt_too_many_channels, 00996 e_rt_too_many_tokens, 00997 e_rt_too_many_users, 00998 e_rt_unspecified_failure, 00999 e_rt_user_rejected 01000 }; 01001 01002 MCS_Result & operator=(unsigned v); 01003 PObject * Clone() const; 01004 }; 01005 01006 01007 // 01008 // Diagnostic 01009 // 01010 01011 class MCS_Diagnostic : public PASN_Enumeration 01012 { 01013 #ifndef PASN_LEANANDMEAN 01014 PCLASSINFO(MCS_Diagnostic, PASN_Enumeration); 01015 #endif 01016 public: 01017 MCS_Diagnostic(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); 01018 01019 enum Enumerations { 01020 e_dc_inconsistent_merge, 01021 e_dc_forbidden_PDU_downward, 01022 e_dc_forbidden_PDU_upward, 01023 e_dc_invalid_BER_encoding, 01024 e_dc_invalid_PER_encoding, 01025 e_dc_misrouted_user, 01026 e_dc_unrequested_confirm, 01027 e_dc_wrong_transport_priority, 01028 e_dc_channel_id_conflict, 01029 e_dc_token_id_conflict, 01030 e_dc_not_user_id_channel, 01031 e_dc_too_many_channels, 01032 e_dc_too_many_tokens, 01033 e_dc_too_many_users 01034 }; 01035 01036 MCS_Diagnostic & operator=(unsigned v); 01037 PObject * Clone() const; 01038 }; 01039 01040 01041 // 01042 // ConnectMCSPDU 01043 // 01044 01045 class MCS_Connect_Initial; 01046 class MCS_Connect_Response; 01047 class MCS_Connect_Additional; 01048 class MCS_Connect_Result; 01049 01050 class MCS_ConnectMCSPDU : public PASN_Choice 01051 { 01052 #ifndef PASN_LEANANDMEAN 01053 PCLASSINFO(MCS_ConnectMCSPDU, PASN_Choice); 01054 #endif 01055 public: 01056 MCS_ConnectMCSPDU(unsigned tag = 0, TagClass tagClass = UniversalTagClass); 01057 01058 enum Choices { 01059 e_connect_initial = 101, 01060 e_connect_response, 01061 e_connect_additional, 01062 e_connect_result 01063 }; 01064 01065 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01066 operator MCS_Connect_Initial &() const; 01067 #else 01068 operator MCS_Connect_Initial &(); 01069 operator const MCS_Connect_Initial &() const; 01070 #endif 01071 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01072 operator MCS_Connect_Response &() const; 01073 #else 01074 operator MCS_Connect_Response &(); 01075 operator const MCS_Connect_Response &() const; 01076 #endif 01077 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01078 operator MCS_Connect_Additional &() const; 01079 #else 01080 operator MCS_Connect_Additional &(); 01081 operator const MCS_Connect_Additional &() const; 01082 #endif 01083 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01084 operator MCS_Connect_Result &() const; 01085 #else 01086 operator MCS_Connect_Result &(); 01087 operator const MCS_Connect_Result &() const; 01088 #endif 01089 01090 BOOL CreateObject(); 01091 PObject * Clone() const; 01092 }; 01093 01094 01095 // 01096 // DomainMCSPDU 01097 // 01098 01099 class MCS_PDin; 01100 class MCS_EDrq; 01101 class MCS_MCrq; 01102 class MCS_MCcf; 01103 class MCS_PCin; 01104 class MCS_MTrq; 01105 class MCS_MTcf; 01106 class MCS_PTin; 01107 class MCS_DPum; 01108 class MCS_RJum; 01109 class MCS_AUrq; 01110 class MCS_AUcf; 01111 class MCS_DUrq; 01112 class MCS_DUin; 01113 class MCS_CJrq; 01114 class MCS_CJcf; 01115 class MCS_CLrq; 01116 class MCS_CCrq; 01117 class MCS_CCcf; 01118 class MCS_CDrq; 01119 class MCS_CDin; 01120 class MCS_CArq; 01121 class MCS_CAin; 01122 class MCS_CErq; 01123 class MCS_CEin; 01124 class MCS_SDrq; 01125 class MCS_SDin; 01126 class MCS_USrq; 01127 class MCS_USin; 01128 class MCS_TGrq; 01129 class MCS_TGcf; 01130 class MCS_TIrq; 01131 class MCS_TIcf; 01132 class MCS_TVrq; 01133 class MCS_TVin; 01134 class MCS_TVrs; 01135 class MCS_TVcf; 01136 class MCS_TPrq; 01137 class MCS_TPin; 01138 class MCS_TRrq; 01139 class MCS_TRcf; 01140 class MCS_TTrq; 01141 class MCS_TTcf; 01142 01143 class MCS_DomainMCSPDU : public PASN_Choice 01144 { 01145 #ifndef PASN_LEANANDMEAN 01146 PCLASSINFO(MCS_DomainMCSPDU, PASN_Choice); 01147 #endif 01148 public: 01149 MCS_DomainMCSPDU(unsigned tag = 0, TagClass tagClass = UniversalTagClass); 01150 01151 enum Choices { 01152 e_pdin, 01153 e_edrq, 01154 e_mcrq, 01155 e_mccf, 01156 e_pcin, 01157 e_mtrq, 01158 e_mtcf, 01159 e_ptin, 01160 e_dpum, 01161 e_rjum, 01162 e_aurq, 01163 e_aucf, 01164 e_durq, 01165 e_duin, 01166 e_cjrq, 01167 e_cjcf, 01168 e_clrq, 01169 e_ccrq, 01170 e_cccf, 01171 e_cdrq, 01172 e_cdin, 01173 e_carq, 01174 e_cain, 01175 e_cerq, 01176 e_cein, 01177 e_sdrq, 01178 e_sdin, 01179 e_usrq, 01180 e_usin, 01181 e_tgrq, 01182 e_tgcf, 01183 e_tirq, 01184 e_ticf, 01185 e_tvrq, 01186 e_tvin, 01187 e_tvrs, 01188 e_tvcf, 01189 e_tprq, 01190 e_tpin, 01191 e_trrq, 01192 e_trcf, 01193 e_ttrq, 01194 e_ttcf 01195 }; 01196 01197 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01198 operator MCS_PDin &() const; 01199 #else 01200 operator MCS_PDin &(); 01201 operator const MCS_PDin &() const; 01202 #endif 01203 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01204 operator MCS_EDrq &() const; 01205 #else 01206 operator MCS_EDrq &(); 01207 operator const MCS_EDrq &() const; 01208 #endif 01209 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01210 operator MCS_MCrq &() const; 01211 #else 01212 operator MCS_MCrq &(); 01213 operator const MCS_MCrq &() const; 01214 #endif 01215 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01216 operator MCS_MCcf &() const; 01217 #else 01218 operator MCS_MCcf &(); 01219 operator const MCS_MCcf &() const; 01220 #endif 01221 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01222 operator MCS_PCin &() const; 01223 #else 01224 operator MCS_PCin &(); 01225 operator const MCS_PCin &() const; 01226 #endif 01227 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01228 operator MCS_MTrq &() const; 01229 #else 01230 operator MCS_MTrq &(); 01231 operator const MCS_MTrq &() const; 01232 #endif 01233 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01234 operator MCS_MTcf &() const; 01235 #else 01236 operator MCS_MTcf &(); 01237 operator const MCS_MTcf &() const; 01238 #endif 01239 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01240 operator MCS_PTin &() const; 01241 #else 01242 operator MCS_PTin &(); 01243 operator const MCS_PTin &() const; 01244 #endif 01245 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01246 operator MCS_DPum &() const; 01247 #else 01248 operator MCS_DPum &(); 01249 operator const MCS_DPum &() const; 01250 #endif 01251 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01252 operator MCS_RJum &() const; 01253 #else 01254 operator MCS_RJum &(); 01255 operator const MCS_RJum &() const; 01256 #endif 01257 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01258 operator MCS_AUrq &() const; 01259 #else 01260 operator MCS_AUrq &(); 01261 operator const MCS_AUrq &() const; 01262 #endif 01263 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01264 operator MCS_AUcf &() const; 01265 #else 01266 operator MCS_AUcf &(); 01267 operator const MCS_AUcf &() const; 01268 #endif 01269 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01270 operator MCS_DUrq &() const; 01271 #else 01272 operator MCS_DUrq &(); 01273 operator const MCS_DUrq &() const; 01274 #endif 01275 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01276 operator MCS_DUin &() const; 01277 #else 01278 operator MCS_DUin &(); 01279 operator const MCS_DUin &() const; 01280 #endif 01281 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01282 operator MCS_CJrq &() const; 01283 #else 01284 operator MCS_CJrq &(); 01285 operator const MCS_CJrq &() const; 01286 #endif 01287 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01288 operator MCS_CJcf &() const; 01289 #else 01290 operator MCS_CJcf &(); 01291 operator const MCS_CJcf &() const; 01292 #endif 01293 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01294 operator MCS_CLrq &() const; 01295 #else 01296 operator MCS_CLrq &(); 01297 operator const MCS_CLrq &() const; 01298 #endif 01299 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01300 operator MCS_CCrq &() const; 01301 #else 01302 operator MCS_CCrq &(); 01303 operator const MCS_CCrq &() const; 01304 #endif 01305 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01306 operator MCS_CCcf &() const; 01307 #else 01308 operator MCS_CCcf &(); 01309 operator const MCS_CCcf &() const; 01310 #endif 01311 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01312 operator MCS_CDrq &() const; 01313 #else 01314 operator MCS_CDrq &(); 01315 operator const MCS_CDrq &() const; 01316 #endif 01317 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01318 operator MCS_CDin &() const; 01319 #else 01320 operator MCS_CDin &(); 01321 operator const MCS_CDin &() const; 01322 #endif 01323 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01324 operator MCS_CArq &() const; 01325 #else 01326 operator MCS_CArq &(); 01327 operator const MCS_CArq &() const; 01328 #endif 01329 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01330 operator MCS_CAin &() const; 01331 #else 01332 operator MCS_CAin &(); 01333 operator const MCS_CAin &() const; 01334 #endif 01335 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01336 operator MCS_CErq &() const; 01337 #else 01338 operator MCS_CErq &(); 01339 operator const MCS_CErq &() const; 01340 #endif 01341 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01342 operator MCS_CEin &() const; 01343 #else 01344 operator MCS_CEin &(); 01345 operator const MCS_CEin &() const; 01346 #endif 01347 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01348 operator MCS_SDrq &() const; 01349 #else 01350 operator MCS_SDrq &(); 01351 operator const MCS_SDrq &() const; 01352 #endif 01353 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01354 operator MCS_SDin &() const; 01355 #else 01356 operator MCS_SDin &(); 01357 operator const MCS_SDin &() const; 01358 #endif 01359 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01360 operator MCS_USrq &() const; 01361 #else 01362 operator MCS_USrq &(); 01363 operator const MCS_USrq &() const; 01364 #endif 01365 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01366 operator MCS_USin &() const; 01367 #else 01368 operator MCS_USin &(); 01369 operator const MCS_USin &() const; 01370 #endif 01371 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01372 operator MCS_TGrq &() const; 01373 #else 01374 operator MCS_TGrq &(); 01375 operator const MCS_TGrq &() const; 01376 #endif 01377 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01378 operator MCS_TGcf &() const; 01379 #else 01380 operator MCS_TGcf &(); 01381 operator const MCS_TGcf &() const; 01382 #endif 01383 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01384 operator MCS_TIrq &() const; 01385 #else 01386 operator MCS_TIrq &(); 01387 operator const MCS_TIrq &() const; 01388 #endif 01389 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01390 operator MCS_TIcf &() const; 01391 #else 01392 operator MCS_TIcf &(); 01393 operator const MCS_TIcf &() const; 01394 #endif 01395 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01396 operator MCS_TVrq &() const; 01397 #else 01398 operator MCS_TVrq &(); 01399 operator const MCS_TVrq &() const; 01400 #endif 01401 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01402 operator MCS_TVin &() const; 01403 #else 01404 operator MCS_TVin &(); 01405 operator const MCS_TVin &() const; 01406 #endif 01407 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01408 operator MCS_TVrs &() const; 01409 #else 01410 operator MCS_TVrs &(); 01411 operator const MCS_TVrs &() const; 01412 #endif 01413 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01414 operator MCS_TVcf &() const; 01415 #else 01416 operator MCS_TVcf &(); 01417 operator const MCS_TVcf &() const; 01418 #endif 01419 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01420 operator MCS_TPrq &() const; 01421 #else 01422 operator MCS_TPrq &(); 01423 operator const MCS_TPrq &() const; 01424 #endif 01425 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01426 operator MCS_TPin &() const; 01427 #else 01428 operator MCS_TPin &(); 01429 operator const MCS_TPin &() const; 01430 #endif 01431 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01432 operator MCS_TRrq &() const; 01433 #else 01434 operator MCS_TRrq &(); 01435 operator const MCS_TRrq &() const; 01436 #endif 01437 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01438 operator MCS_TRcf &() const; 01439 #else 01440 operator MCS_TRcf &(); 01441 operator const MCS_TRcf &() const; 01442 #endif 01443 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01444 operator MCS_TTrq &() const; 01445 #else 01446 operator MCS_TTrq &(); 01447 operator const MCS_TTrq &() const; 01448 #endif 01449 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 01450 operator MCS_TTcf &() const; 01451 #else 01452 operator MCS_TTcf &(); 01453 operator const MCS_TTcf &() const; 01454 #endif 01455 01456 BOOL CreateObject(); 01457 PObject * Clone() const; 01458 }; 01459 01460 01461 // 01462 // ChannelAttributes_static 01463 // 01464 01465 class MCS_ChannelAttributes_static : public PASN_Sequence 01466 { 01467 #ifndef PASN_LEANANDMEAN 01468 PCLASSINFO(MCS_ChannelAttributes_static, PASN_Sequence); 01469 #endif 01470 public: 01471 MCS_ChannelAttributes_static(unsigned tag = 0, TagClass tagClass = ContextSpecificTagClass); 01472 01473 MCS_StaticChannelId m_channelId; 01474 01475 PINDEX GetDataLength() const; 01476 BOOL Decode(PASN_Stream & strm); 01477 void Encode(PASN_Stream & strm) const; 01478 #ifndef PASN_NOPRINTON 01479 void PrintOn(ostream & strm) const; 01480 #endif 01481 Comparison Compare(const PObject & obj) const; 01482 PObject * Clone() const; 01483 }; 01484 01485 01486 // 01487 // ChannelAttributes_userId 01488 // 01489 01490 class MCS_ChannelAttributes_userId : public PASN_Sequence 01491 { 01492 #ifndef PASN_LEANANDMEAN 01493 PCLASSINFO(MCS_ChannelAttributes_userId, PASN_Sequence); 01494 #endif 01495 public: 01496 MCS_ChannelAttributes_userId(unsigned tag = 1, TagClass tagClass = ContextSpecificTagClass); 01497 01498 PASN_Boolean m_joined; 01499 MCS_UserId m_userId; 01500 01501 PINDEX GetDataLength() const; 01502 BOOL Decode(PASN_Stream & strm); 01503 void Encode(PASN_Stream & strm) const; 01504 #ifndef PASN_NOPRINTON 01505 void PrintOn(ostream & strm) const; 01506 #endif 01507 Comparison Compare(const PObject & obj) const; 01508 PObject * Clone() const; 01509 }; 01510 01511 01512 // 01513 // ChannelAttributes_assigned 01514 // 01515 01516 class MCS_ChannelAttributes_assigned : public PASN_Sequence 01517 { 01518 #ifndef PASN_LEANANDMEAN 01519 PCLASSINFO(MCS_ChannelAttributes_assigned, PASN_Sequence); 01520 #endif 01521 public: 01522 MCS_ChannelAttributes_assigned(unsigned tag = 3, TagClass tagClass = ContextSpecificTagClass); 01523 01524 MCS_AssignedChannelId m_channelId; 01525 01526 PINDEX GetDataLength() const; 01527 BOOL Decode(PASN_Stream & strm); 01528 void Encode(PASN_Stream & strm) const; 01529 #ifndef PASN_NOPRINTON 01530 void PrintOn(ostream & strm) const; 01531 #endif 01532 Comparison Compare(const PObject & obj) const; 01533 PObject * Clone() const; 01534 }; 01535 01536 01537 // 01538 // ArrayOf_ChannelAttributes 01539 // 01540 01541 class MCS_ChannelAttributes; 01542 01543 class MCS_ArrayOf_ChannelAttributes : public PASN_Array 01544 { 01545 #ifndef PASN_LEANANDMEAN 01546 PCLASSINFO(MCS_ArrayOf_ChannelAttributes, PASN_Array); 01547 #endif 01548 public: 01549 MCS_ArrayOf_ChannelAttributes(unsigned tag = UniversalSet, TagClass tagClass = UniversalTagClass); 01550 01551 PASN_Object * CreateObject() const; 01552 MCS_ChannelAttributes & operator[](PINDEX i) const; 01553 PObject * Clone() const; 01554 }; 01555 01556 01557 // 01558 // ArrayOf_ChannelId 01559 // 01560 01561 class MCS_ChannelId; 01562 01563 class MCS_ArrayOf_ChannelId : public PASN_Array 01564 { 01565 #ifndef PASN_LEANANDMEAN 01566 PCLASSINFO(MCS_ArrayOf_ChannelId, PASN_Array); 01567 #endif 01568 public: 01569 MCS_ArrayOf_ChannelId(unsigned tag = UniversalSet, TagClass tagClass = UniversalTagClass); 01570 01571 PASN_Object * CreateObject() const; 01572 MCS_ChannelId & operator[](PINDEX i) const; 01573 PObject * Clone() const; 01574 }; 01575 01576 01577 // 01578 // ArrayOf_UserId 01579 // 01580 01581 class MCS_UserId; 01582 01583 class MCS_ArrayOf_UserId : public PASN_Array 01584 { 01585 #ifndef PASN_LEANANDMEAN 01586 PCLASSINFO(MCS_ArrayOf_UserId, PASN_Array); 01587 #endif 01588 public: 01589 MCS_ArrayOf_UserId(unsigned tag = UniversalSet, TagClass tagClass = UniversalTagClass); 01590 01591 PASN_Object * CreateObject() const; 01592 MCS_UserId & operator[](PINDEX i) const; 01593 PObject * Clone() const; 01594 }; 01595 01596 01597 // 01598 // TokenAttributes_grabbed 01599 // 01600 01601 class MCS_TokenAttributes_grabbed : public PASN_Sequence 01602 { 01603 #ifndef PASN_LEANANDMEAN 01604 PCLASSINFO(MCS_TokenAttributes_grabbed, PASN_Sequence); 01605 #endif 01606 public: 01607 MCS_TokenAttributes_grabbed(unsigned tag = 0, TagClass tagClass = ContextSpecificTagClass); 01608 01609 MCS_TokenId m_tokenId; 01610 MCS_UserId m_grabber; 01611 01612 PINDEX GetDataLength() const; 01613 BOOL Decode(PASN_Stream & strm); 01614 void Encode(PASN_Stream & strm) const; 01615 #ifndef PASN_NOPRINTON 01616 void PrintOn(ostream & strm) const; 01617 #endif 01618 Comparison Compare(const PObject & obj) const; 01619 PObject * Clone() const; 01620 }; 01621 01622 01623 // 01624 // TokenAttributes_inhibited 01625 // 01626 01627 class MCS_TokenAttributes_inhibited : public PASN_Sequence 01628 { 01629 #ifndef PASN_LEANANDMEAN 01630 PCLASSINFO(MCS_TokenAttributes_inhibited, PASN_Sequence); 01631 #endif 01632 public: 01633 MCS_TokenAttributes_inhibited(unsigned tag = 1, TagClass tagClass = ContextSpecificTagClass); 01634 01635 MCS_TokenId m_tokenId; 01636 MCS_ArrayOf_UserId m_inhibitors; 01637 01638 PINDEX GetDataLength() const; 01639 BOOL Decode(PASN_Stream & strm); 01640 void Encode(PASN_Stream & strm) const; 01641 #ifndef PASN_NOPRINTON 01642 void PrintOn(ostream & strm) const; 01643 #endif 01644 Comparison Compare(const PObject & obj) const; 01645 PObject * Clone() const; 01646 }; 01647 01648 01649 // 01650 // TokenAttributes_giving 01651 // 01652 01653 class MCS_TokenAttributes_giving : public PASN_Sequence 01654 { 01655 #ifndef PASN_LEANANDMEAN 01656 PCLASSINFO(MCS_TokenAttributes_giving, PASN_Sequence); 01657 #endif 01658 public: 01659 MCS_TokenAttributes_giving(unsigned tag = 2, TagClass tagClass = ContextSpecificTagClass); 01660 01661 MCS_TokenId m_tokenId; 01662 MCS_UserId m_grabber; 01663 MCS_UserId m_recipient; 01664 01665 PINDEX GetDataLength() const; 01666 BOOL Decode(PASN_Stream & strm); 01667 void Encode(PASN_Stream & strm) const; 01668 #ifndef PASN_NOPRINTON 01669 void PrintOn(ostream & strm) const; 01670 #endif 01671 Comparison Compare(const PObject & obj) const; 01672 PObject * Clone() const; 01673 }; 01674 01675 01676 // 01677 // TokenAttributes_ungivable 01678 // 01679 01680 class MCS_TokenAttributes_ungivable : public PASN_Sequence 01681 { 01682 #ifndef PASN_LEANANDMEAN 01683 PCLASSINFO(MCS_TokenAttributes_ungivable, PASN_Sequence); 01684 #endif 01685 public: 01686 MCS_TokenAttributes_ungivable(unsigned tag = 3, TagClass tagClass = ContextSpecificTagClass); 01687 01688 MCS_TokenId m_tokenId; 01689 MCS_UserId m_grabber; 01690 01691 PINDEX GetDataLength() const; 01692 BOOL Decode(PASN_Stream & strm); 01693 void Encode(PASN_Stream & strm) const; 01694 #ifndef PASN_NOPRINTON 01695 void PrintOn(ostream & strm) const; 01696 #endif 01697 Comparison Compare(const PObject & obj) const; 01698 PObject * Clone() const; 01699 }; 01700 01701 01702 // 01703 // TokenAttributes_given 01704 // 01705 01706 class MCS_TokenAttributes_given : public PASN_Sequence 01707 { 01708 #ifndef PASN_LEANANDMEAN 01709 PCLASSINFO(MCS_TokenAttributes_given, PASN_Sequence); 01710 #endif 01711 public: 01712 MCS_TokenAttributes_given(unsigned tag = 4, TagClass tagClass = ContextSpecificTagClass); 01713 01714 MCS_TokenId m_tokenId; 01715 MCS_UserId m_recipient; 01716 01717 PINDEX GetDataLength() const; 01718 BOOL Decode(PASN_Stream & strm); 01719 void Encode(PASN_Stream & strm) const; 01720 #ifndef PASN_NOPRINTON 01721 void PrintOn(ostream & strm) const; 01722 #endif 01723 Comparison Compare(const PObject & obj) const; 01724 PObject * Clone() const; 01725 }; 01726 01727 01728 // 01729 // ArrayOf_TokenAttributes 01730 // 01731 01732 class MCS_TokenAttributes; 01733 01734 class MCS_ArrayOf_TokenAttributes : public PASN_Array 01735 { 01736 #ifndef PASN_LEANANDMEAN 01737 PCLASSINFO(MCS_ArrayOf_TokenAttributes, PASN_Array); 01738 #endif 01739 public: 01740 MCS_ArrayOf_TokenAttributes(unsigned tag = UniversalSet, TagClass tagClass = UniversalTagClass); 01741 01742 PASN_Object * CreateObject() const; 01743 MCS_TokenAttributes & operator[](PINDEX i) const; 01744 PObject * Clone() const; 01745 }; 01746 01747 01748 // 01749 // ArrayOf_TokenId 01750 // 01751 01752 class MCS_TokenId; 01753 01754 class MCS_ArrayOf_TokenId : public PASN_Array 01755 { 01756 #ifndef PASN_LEANANDMEAN 01757 PCLASSINFO(MCS_ArrayOf_TokenId, PASN_Array); 01758 #endif 01759 public: 01760 MCS_ArrayOf_TokenId(unsigned tag = UniversalSet, TagClass tagClass = UniversalTagClass); 01761 01762 PASN_Object * CreateObject() const; 01763 MCS_TokenId & operator[](PINDEX i) const; 01764 PObject * Clone() const; 01765 }; 01766 01767 01768 // 01769 // Connect-Response 01770 // 01771 01772 class MCS_Connect_Response : public PASN_Sequence 01773 { 01774 #ifndef PASN_LEANANDMEAN 01775 PCLASSINFO(MCS_Connect_Response, PASN_Sequence); 01776 #endif 01777 public: 01778 MCS_Connect_Response(unsigned tag = 102, TagClass tagClass = ApplicationTagClass); 01779 01780 MCS_Result m_result; 01781 PASN_Integer m_calledConnectId; 01782 MCS_DomainParameters m_domainParameters; 01783 PASN_OctetString m_userData; 01784 01785 PINDEX GetDataLength() const; 01786 BOOL Decode(PASN_Stream & strm); 01787 void Encode(PASN_Stream & strm) const; 01788 #ifndef PASN_NOPRINTON 01789 void PrintOn(ostream & strm) const; 01790 #endif 01791 Comparison Compare(const PObject & obj) const; 01792 PObject * Clone() const; 01793 }; 01794 01795 01796 // 01797 // Connect-Result 01798 // 01799 01800 class MCS_Connect_Result : public PASN_Sequence 01801 { 01802 #ifndef PASN_LEANANDMEAN 01803 PCLASSINFO(MCS_Connect_Result, PASN_Sequence); 01804 #endif 01805 public: 01806 MCS_Connect_Result(unsigned tag = 104, TagClass tagClass = ApplicationTagClass); 01807 01808 MCS_Result m_result; 01809 01810 PINDEX GetDataLength() const; 01811 BOOL Decode(PASN_Stream & strm); 01812 void Encode(PASN_Stream & strm) const; 01813 #ifndef PASN_NOPRINTON 01814 void PrintOn(ostream & strm) const; 01815 #endif 01816 Comparison Compare(const PObject & obj) const; 01817 PObject * Clone() const; 01818 }; 01819 01820 01821 // 01822 // MCrq 01823 // 01824 01825 class MCS_MCrq : public PASN_Sequence 01826 { 01827 #ifndef PASN_LEANANDMEAN 01828 PCLASSINFO(MCS_MCrq, PASN_Sequence); 01829 #endif 01830 public: 01831 MCS_MCrq(unsigned tag = 2, TagClass tagClass = ApplicationTagClass); 01832 01833 MCS_ArrayOf_ChannelAttributes m_mergeChannels; 01834 MCS_ArrayOf_ChannelId m_purgeChannelIds; 01835 01836 PINDEX GetDataLength() const; 01837 BOOL Decode(PASN_Stream & strm); 01838 void Encode(PASN_Stream & strm) const; 01839 #ifndef PASN_NOPRINTON 01840 void PrintOn(ostream & strm) const; 01841 #endif 01842 Comparison Compare(const PObject & obj) const; 01843 PObject * Clone() const; 01844 }; 01845 01846 01847 // 01848 // MCcf 01849 // 01850 01851 class MCS_MCcf : public PASN_Sequence 01852 { 01853 #ifndef PASN_LEANANDMEAN 01854 PCLASSINFO(MCS_MCcf, PASN_Sequence); 01855 #endif 01856 public: 01857 MCS_MCcf(unsigned tag = 3, TagClass tagClass = ApplicationTagClass); 01858 01859 MCS_ArrayOf_ChannelAttributes m_mergeChannels; 01860 MCS_ArrayOf_ChannelId m_purgeChannelIds; 01861 01862 PINDEX GetDataLength() const; 01863 BOOL Decode(PASN_Stream & strm); 01864 void Encode(PASN_Stream & strm) const; 01865 #ifndef PASN_NOPRINTON 01866 void PrintOn(ostream & strm) const; 01867 #endif 01868 Comparison Compare(const PObject & obj) const; 01869 PObject * Clone() const; 01870 }; 01871 01872 01873 // 01874 // PCin 01875 // 01876 01877 class MCS_PCin : public PASN_Sequence 01878 { 01879 #ifndef PASN_LEANANDMEAN 01880 PCLASSINFO(MCS_PCin, PASN_Sequence); 01881 #endif 01882 public: 01883 MCS_PCin(unsigned tag = 4, TagClass tagClass = ApplicationTagClass); 01884 01885 MCS_ArrayOf_UserId m_detachUserIds; 01886 MCS_ArrayOf_ChannelId m_purgeChannelIds; 01887 01888 PINDEX GetDataLength() const; 01889 BOOL Decode(PASN_Stream & strm); 01890 void Encode(PASN_Stream & strm) const; 01891 #ifndef PASN_NOPRINTON 01892 void PrintOn(ostream & strm) const; 01893 #endif 01894 Comparison Compare(const PObject & obj) const; 01895 PObject * Clone() const; 01896 }; 01897 01898 01899 // 01900 // MTrq 01901 // 01902 01903 class MCS_MTrq : public PASN_Sequence 01904 { 01905 #ifndef PASN_LEANANDMEAN 01906 PCLASSINFO(MCS_MTrq, PASN_Sequence); 01907 #endif 01908 public: 01909 MCS_MTrq(unsigned tag = 5, TagClass tagClass = ApplicationTagClass); 01910 01911 MCS_ArrayOf_TokenAttributes m_mergeTokens; 01912 MCS_ArrayOf_TokenId m_purgeTokenIds; 01913 01914 PINDEX GetDataLength() const; 01915 BOOL Decode(PASN_Stream & strm); 01916 void Encode(PASN_Stream & strm) const; 01917 #ifndef PASN_NOPRINTON 01918 void PrintOn(ostream & strm) const; 01919 #endif 01920 Comparison Compare(const PObject & obj) const; 01921 PObject * Clone() const; 01922 }; 01923 01924 01925 // 01926 // MTcf 01927 // 01928 01929 class MCS_MTcf : public PASN_Sequence 01930 { 01931 #ifndef PASN_LEANANDMEAN 01932 PCLASSINFO(MCS_MTcf, PASN_Sequence); 01933 #endif 01934 public: 01935 MCS_MTcf(unsigned tag = 6, TagClass tagClass = ApplicationTagClass); 01936 01937 MCS_ArrayOf_TokenAttributes m_mergeTokens; 01938 MCS_ArrayOf_TokenId m_purgeTokenIds; 01939 01940 PINDEX GetDataLength() const; 01941 BOOL Decode(PASN_Stream & strm); 01942 void Encode(PASN_Stream & strm) const; 01943 #ifndef PASN_NOPRINTON 01944 void PrintOn(ostream & strm) const; 01945 #endif 01946 Comparison Compare(const PObject & obj) const; 01947 PObject * Clone() const; 01948 }; 01949 01950 01951 // 01952 // PTin 01953 // 01954 01955 class MCS_PTin : public PASN_Sequence 01956 { 01957 #ifndef PASN_LEANANDMEAN 01958 PCLASSINFO(MCS_PTin, PASN_Sequence); 01959 #endif 01960 public: 01961 MCS_PTin(unsigned tag = 7, TagClass tagClass = ApplicationTagClass); 01962 01963 MCS_ArrayOf_TokenId m_purgeTokenIds; 01964 01965 PINDEX GetDataLength() const; 01966 BOOL Decode(PASN_Stream & strm); 01967 void Encode(PASN_Stream & strm) const; 01968 #ifndef PASN_NOPRINTON 01969 void PrintOn(ostream & strm) const; 01970 #endif 01971 Comparison Compare(const PObject & obj) const; 01972 PObject * Clone() const; 01973 }; 01974 01975 01976 // 01977 // DPum 01978 // 01979 01980 class MCS_DPum : public PASN_Sequence 01981 { 01982 #ifndef PASN_LEANANDMEAN 01983 PCLASSINFO(MCS_DPum, PASN_Sequence); 01984 #endif 01985 public: 01986 MCS_DPum(unsigned tag = 8, TagClass tagClass = ApplicationTagClass); 01987 01988 MCS_Reason m_reason; 01989 01990 PINDEX GetDataLength() const; 01991 BOOL Decode(PASN_Stream & strm); 01992 void Encode(PASN_Stream & strm) const; 01993 #ifndef PASN_NOPRINTON 01994 void PrintOn(ostream & strm) const; 01995 #endif 01996 Comparison Compare(const PObject & obj) const; 01997 PObject * Clone() const; 01998 }; 01999 02000 02001 // 02002 // RJum 02003 // 02004 02005 class MCS_RJum : public PASN_Sequence 02006 { 02007 #ifndef PASN_LEANANDMEAN 02008 PCLASSINFO(MCS_RJum, PASN_Sequence); 02009 #endif 02010 public: 02011 MCS_RJum(unsigned tag = 9, TagClass tagClass = ApplicationTagClass); 02012 02013 MCS_Diagnostic m_diagnostic; 02014 PASN_OctetString m_initialOctets; 02015 02016 PINDEX GetDataLength() const; 02017 BOOL Decode(PASN_Stream & strm); 02018 void Encode(PASN_Stream & strm) const; 02019 #ifndef PASN_NOPRINTON 02020 void PrintOn(ostream & strm) const; 02021 #endif 02022 Comparison Compare(const PObject & obj) const; 02023 PObject * Clone() const; 02024 }; 02025 02026 02027 // 02028 // AUcf 02029 // 02030 02031 class MCS_AUcf : public PASN_Sequence 02032 { 02033 #ifndef PASN_LEANANDMEAN 02034 PCLASSINFO(MCS_AUcf, PASN_Sequence); 02035 #endif 02036 public: 02037 MCS_AUcf(unsigned tag = 11, TagClass tagClass = ApplicationTagClass); 02038 02039 enum OptionalFields { 02040 e_initiator 02041 }; 02042 02043 MCS_Result m_result; 02044 MCS_UserId m_initiator; 02045 02046 PINDEX GetDataLength() const; 02047 BOOL Decode(PASN_Stream & strm); 02048 void Encode(PASN_Stream & strm) const; 02049 #ifndef PASN_NOPRINTON 02050 void PrintOn(ostream & strm) const; 02051 #endif 02052 Comparison Compare(const PObject & obj) const; 02053 PObject * Clone() const; 02054 }; 02055 02056 02057 // 02058 // DUrq 02059 // 02060 02061 class MCS_DUrq : public PASN_Sequence 02062 { 02063 #ifndef PASN_LEANANDMEAN 02064 PCLASSINFO(MCS_DUrq, PASN_Sequence); 02065 #endif 02066 public: 02067 MCS_DUrq(unsigned tag = 12, TagClass tagClass = ApplicationTagClass); 02068 02069 MCS_Reason m_reason; 02070 MCS_ArrayOf_UserId m_userIds; 02071 02072 PINDEX GetDataLength() const; 02073 BOOL Decode(PASN_Stream & strm); 02074 void Encode(PASN_Stream & strm) const; 02075 #ifndef PASN_NOPRINTON 02076 void PrintOn(ostream & strm) const; 02077 #endif 02078 Comparison Compare(const PObject & obj) const; 02079 PObject * Clone() const; 02080 }; 02081 02082 02083 // 02084 // DUin 02085 // 02086 02087 class MCS_DUin : public PASN_Sequence 02088 { 02089 #ifndef PASN_LEANANDMEAN 02090 PCLASSINFO(MCS_DUin, PASN_Sequence); 02091 #endif 02092 public: 02093 MCS_DUin(unsigned tag = 13, TagClass tagClass = ApplicationTagClass); 02094 02095 MCS_Reason m_reason; 02096 MCS_ArrayOf_UserId m_userIds; 02097 02098 PINDEX GetDataLength() const; 02099 BOOL Decode(PASN_Stream & strm); 02100 void Encode(PASN_Stream & strm) const; 02101 #ifndef PASN_NOPRINTON 02102 void PrintOn(ostream & strm) const; 02103 #endif 02104 Comparison Compare(const PObject & obj) const; 02105 PObject * Clone() const; 02106 }; 02107 02108 02109 // 02110 // CJcf 02111 // 02112 02113 class MCS_CJcf : public PASN_Sequence 02114 { 02115 #ifndef PASN_LEANANDMEAN 02116 PCLASSINFO(MCS_CJcf, PASN_Sequence); 02117 #endif 02118 public: 02119 MCS_CJcf(unsigned tag = 15, TagClass tagClass = ApplicationTagClass); 02120 02121 enum OptionalFields { 02122 e_channelId 02123 }; 02124 02125 MCS_Result m_result; 02126 MCS_UserId m_initiator; 02127 MCS_ChannelId m_requested; 02128 MCS_ChannelId m_channelId; 02129 02130 PINDEX GetDataLength() const; 02131 BOOL Decode(PASN_Stream & strm); 02132 void Encode(PASN_Stream & strm) const; 02133 #ifndef PASN_NOPRINTON 02134 void PrintOn(ostream & strm) const; 02135 #endif 02136 Comparison Compare(const PObject & obj) const; 02137 PObject * Clone() const; 02138 }; 02139 02140 02141 // 02142 // CLrq 02143 // 02144 02145 class MCS_CLrq : public PASN_Sequence 02146 { 02147 #ifndef PASN_LEANANDMEAN 02148 PCLASSINFO(MCS_CLrq, PASN_Sequence); 02149 #endif 02150 public: 02151 MCS_CLrq(unsigned tag = 16, TagClass tagClass = ApplicationTagClass); 02152 02153 MCS_ArrayOf_ChannelId m_channelIds; 02154 02155 PINDEX GetDataLength() const; 02156 BOOL Decode(PASN_Stream & strm); 02157 void Encode(PASN_Stream & strm) const; 02158 #ifndef PASN_NOPRINTON 02159 void PrintOn(ostream & strm) const; 02160 #endif 02161 Comparison Compare(const PObject & obj) const; 02162 PObject * Clone() const; 02163 }; 02164 02165 02166 // 02167 // CCcf 02168 // 02169 02170 class MCS_CCcf : public PASN_Sequence 02171 { 02172 #ifndef PASN_LEANANDMEAN 02173 PCLASSINFO(MCS_CCcf, PASN_Sequence); 02174 #endif 02175 public: 02176 MCS_CCcf(unsigned tag = 18, TagClass tagClass = ApplicationTagClass); 02177 02178 enum OptionalFields { 02179 e_channelId 02180 }; 02181 02182 MCS_Result m_result; 02183 MCS_UserId m_initiator; 02184 MCS_PrivateChannelId m_channelId; 02185 02186 PINDEX GetDataLength() const; 02187 BOOL Decode(PASN_Stream & strm); 02188 void Encode(PASN_Stream & strm) const; 02189 #ifndef PASN_NOPRINTON 02190 void PrintOn(ostream & strm) const; 02191 #endif 02192 Comparison Compare(const PObject & obj) const; 02193 PObject * Clone() const; 02194 }; 02195 02196 02197 // 02198 // CArq 02199 // 02200 02201 class MCS_CArq : public PASN_Sequence 02202 { 02203 #ifndef PASN_LEANANDMEAN 02204 PCLASSINFO(MCS_CArq, PASN_Sequence); 02205 #endif 02206 public: 02207 MCS_CArq(unsigned tag = 21, TagClass tagClass = ApplicationTagClass); 02208 02209 MCS_UserId m_initiator; 02210 MCS_PrivateChannelId m_channelId; 02211 MCS_ArrayOf_UserId m_userIds; 02212 02213 PINDEX GetDataLength() const; 02214 BOOL Decode(PASN_Stream & strm); 02215 void Encode(PASN_Stream & strm) const; 02216 #ifndef PASN_NOPRINTON 02217 void PrintOn(ostream & strm) const; 02218 #endif 02219 Comparison Compare(const PObject & obj) const; 02220 PObject * Clone() const; 02221 }; 02222 02223 02224 // 02225 // CAin 02226 // 02227 02228 class MCS_CAin : public PASN_Sequence 02229 { 02230 #ifndef PASN_LEANANDMEAN 02231 PCLASSINFO(MCS_CAin, PASN_Sequence); 02232 #endif 02233 public: 02234 MCS_CAin(unsigned tag = 22, TagClass tagClass = ApplicationTagClass); 02235 02236 MCS_UserId m_initiator; 02237 MCS_PrivateChannelId m_channelId; 02238 MCS_ArrayOf_UserId m_userIds; 02239 02240 PINDEX GetDataLength() const; 02241 BOOL Decode(PASN_Stream & strm); 02242 void Encode(PASN_Stream & strm) const; 02243 #ifndef PASN_NOPRINTON 02244 void PrintOn(ostream & strm) const; 02245 #endif 02246 Comparison Compare(const PObject & obj) const; 02247 PObject * Clone() const; 02248 }; 02249 02250 02251 // 02252 // CErq 02253 // 02254 02255 class MCS_CErq : public PASN_Sequence 02256 { 02257 #ifndef PASN_LEANANDMEAN 02258 PCLASSINFO(MCS_CErq, PASN_Sequence); 02259 #endif 02260 public: 02261 MCS_CErq(unsigned tag = 23, TagClass tagClass = ApplicationTagClass); 02262 02263 MCS_UserId m_initiator; 02264 MCS_PrivateChannelId m_channelId; 02265 MCS_ArrayOf_UserId m_userIds; 02266 02267 PINDEX GetDataLength() const; 02268 BOOL Decode(PASN_Stream & strm); 02269 void Encode(PASN_Stream & strm) const; 02270 #ifndef PASN_NOPRINTON 02271 void PrintOn(ostream & strm) const; 02272 #endif 02273 Comparison Compare(const PObject & obj) const; 02274 PObject * Clone() const; 02275 }; 02276 02277 02278 // 02279 // CEin 02280 // 02281 02282 class MCS_CEin : public PASN_Sequence 02283 { 02284 #ifndef PASN_LEANANDMEAN 02285 PCLASSINFO(MCS_CEin, PASN_Sequence); 02286 #endif 02287 public: 02288 MCS_CEin(unsigned tag = 24, TagClass tagClass = ApplicationTagClass); 02289 02290 MCS_PrivateChannelId m_channelId; 02291 MCS_ArrayOf_UserId m_userIds; 02292 02293 PINDEX GetDataLength() const; 02294 BOOL Decode(PASN_Stream & strm); 02295 void Encode(PASN_Stream & strm) const; 02296 #ifndef PASN_NOPRINTON 02297 void PrintOn(ostream & strm) const; 02298 #endif 02299 Comparison Compare(const PObject & obj) const; 02300 PObject * Clone() const; 02301 }; 02302 02303 02304 // 02305 // TGcf 02306 // 02307 02308 class MCS_TGcf : public PASN_Sequence 02309 { 02310 #ifndef PASN_LEANANDMEAN 02311 PCLASSINFO(MCS_TGcf, PASN_Sequence); 02312 #endif 02313 public: 02314 MCS_TGcf(unsigned tag = 30, TagClass tagClass = ApplicationTagClass); 02315 02316 MCS_Result m_result; 02317 MCS_UserId m_initiator; 02318 MCS_TokenId m_tokenId; 02319 MCS_TokenStatus m_tokenStatus; 02320 02321 PINDEX GetDataLength() const; 02322 BOOL Decode(PASN_Stream & strm); 02323 void Encode(PASN_Stream & strm) const; 02324 #ifndef PASN_NOPRINTON 02325 void PrintOn(ostream & strm) const; 02326 #endif 02327 Comparison Compare(const PObject & obj) const; 02328 PObject * Clone() const; 02329 }; 02330 02331 02332 // 02333 // TIcf 02334 // 02335 02336 class MCS_TIcf : public PASN_Sequence 02337 { 02338 #ifndef PASN_LEANANDMEAN 02339 PCLASSINFO(MCS_TIcf, PASN_Sequence); 02340 #endif 02341 public: 02342 MCS_TIcf(unsigned tag = 32, TagClass tagClass = ApplicationTagClass); 02343 02344 MCS_Result m_result; 02345 MCS_UserId m_initiator; 02346 MCS_TokenId m_tokenId; 02347 MCS_TokenStatus m_tokenStatus; 02348 02349 PINDEX GetDataLength() const; 02350 BOOL Decode(PASN_Stream & strm); 02351 void Encode(PASN_Stream & strm) const; 02352 #ifndef PASN_NOPRINTON 02353 void PrintOn(ostream & strm) const; 02354 #endif 02355 Comparison Compare(const PObject & obj) const; 02356 PObject * Clone() const; 02357 }; 02358 02359 02360 // 02361 // TVrs 02362 // 02363 02364 class MCS_TVrs : public PASN_Sequence 02365 { 02366 #ifndef PASN_LEANANDMEAN 02367 PCLASSINFO(MCS_TVrs, PASN_Sequence); 02368 #endif 02369 public: 02370 MCS_TVrs(unsigned tag = 35, TagClass tagClass = ApplicationTagClass); 02371 02372 MCS_Result m_result; 02373 MCS_UserId m_recipient; 02374 MCS_TokenId m_tokenId; 02375 02376 PINDEX GetDataLength() const; 02377 BOOL Decode(PASN_Stream & strm); 02378 void Encode(PASN_Stream & strm) const; 02379 #ifndef PASN_NOPRINTON 02380 void PrintOn(ostream & strm) const; 02381 #endif 02382 Comparison Compare(const PObject & obj) const; 02383 PObject * Clone() const; 02384 }; 02385 02386 02387 // 02388 // TVcf 02389 // 02390 02391 class MCS_TVcf : public PASN_Sequence 02392 { 02393 #ifndef PASN_LEANANDMEAN 02394 PCLASSINFO(MCS_TVcf, PASN_Sequence); 02395 #endif 02396 public: 02397 MCS_TVcf(unsigned tag = 36, TagClass tagClass = ApplicationTagClass); 02398 02399 MCS_Result m_result; 02400 MCS_UserId m_initiator; 02401 MCS_TokenId m_tokenId; 02402 MCS_TokenStatus m_tokenStatus; 02403 02404 PINDEX GetDataLength() const; 02405 BOOL Decode(PASN_Stream & strm); 02406 void Encode(PASN_Stream & strm) const; 02407 #ifndef PASN_NOPRINTON 02408 void PrintOn(ostream & strm) const; 02409 #endif 02410 Comparison Compare(const PObject & obj) const; 02411 PObject * Clone() const; 02412 }; 02413 02414 02415 // 02416 // TRcf 02417 // 02418 02419 class MCS_TRcf : public PASN_Sequence 02420 { 02421 #ifndef PASN_LEANANDMEAN 02422 PCLASSINFO(MCS_TRcf, PASN_Sequence); 02423 #endif 02424 public: 02425 MCS_TRcf(unsigned tag = 40, TagClass tagClass = ApplicationTagClass); 02426 02427 MCS_Result m_result; 02428 MCS_UserId m_initiator; 02429 MCS_TokenId m_tokenId; 02430 MCS_TokenStatus m_tokenStatus; 02431 02432 PINDEX GetDataLength() const; 02433 BOOL Decode(PASN_Stream & strm); 02434 void Encode(PASN_Stream & strm) const; 02435 #ifndef PASN_NOPRINTON 02436 void PrintOn(ostream & strm) const; 02437 #endif 02438 Comparison Compare(const PObject & obj) const; 02439 PObject * Clone() const; 02440 }; 02441 02442 02443 // 02444 // ChannelAttributes_private 02445 // 02446 02447 class MCS_ChannelAttributes_private : public PASN_Sequence 02448 { 02449 #ifndef PASN_LEANANDMEAN 02450 PCLASSINFO(MCS_ChannelAttributes_private, PASN_Sequence); 02451 #endif 02452 public: 02453 MCS_ChannelAttributes_private(unsigned tag = 2, TagClass tagClass = ContextSpecificTagClass); 02454 02455 PASN_Boolean m_joined; 02456 MCS_PrivateChannelId m_channelId; 02457 MCS_UserId m_manager; 02458 MCS_ArrayOf_UserId m_admitted; 02459 02460 PINDEX GetDataLength() const; 02461 BOOL Decode(PASN_Stream & strm); 02462 void Encode(PASN_Stream & strm) const; 02463 #ifndef PASN_NOPRINTON 02464 void PrintOn(ostream & strm) const; 02465 #endif 02466 Comparison Compare(const PObject & obj) const; 02467 PObject * Clone() const; 02468 }; 02469 02470 02471 #endif // __MCS_H 02472 02473 #endif // if ! H323_DISABLE_MCS 02474 02475 02476 // End of mcspdu.h