00001
00002
00003
00004
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
02472
02473 #endif
02474
02475
02476