00001
00002
00003
00004
00005
00006
00007
#if ! H323_DISABLE_H501
00008
00009
#ifndef __H501_H
00010
#define __H501_H
00011
00012
#ifdef P_USE_PRAGMA
00013
#pragma interface
00014
#endif
00015
00016
#include <ptclib/asner.h>
00017
00018
#include "h235.h"
00019
#include "h225.h"
00020
00021
00022
00023
00024
00025
00026
class H501_ServiceRequest;
00027
class H501_ServiceConfirmation;
00028
class H501_ServiceRejection;
00029
class H501_ServiceRelease;
00030
class H501_DescriptorRequest;
00031
class H501_DescriptorConfirmation;
00032
class H501_DescriptorRejection;
00033
class H501_DescriptorIDRequest;
00034
class H501_DescriptorIDConfirmation;
00035
class H501_DescriptorIDRejection;
00036
class H501_DescriptorUpdate;
00037
class H501_DescriptorUpdateAck;
00038
class H501_AccessRequest;
00039
class H501_AccessConfirmation;
00040
class H501_AccessRejection;
00041
class H501_RequestInProgress;
00042
class H501_NonStandardRequest;
00043
class H501_NonStandardConfirmation;
00044
class H501_NonStandardRejection;
00045
class H501_UnknownMessageResponse;
00046
class H501_UsageRequest;
00047
class H501_UsageConfirmation;
00048
class H501_UsageIndication;
00049
class H501_UsageIndicationConfirmation;
00050
class H501_UsageIndicationRejection;
00051
class H501_UsageRejection;
00052
class H501_ValidationRequest;
00053
class H501_ValidationConfirmation;
00054
class H501_ValidationRejection;
00055
class H501_AuthenticationRequest;
00056
class H501_AuthenticationConfirmation;
00057
class H501_AuthenticationRejection;
00058
00059 class H501_MessageBody :
public PASN_Choice
00060 {
00061
#ifndef PASN_LEANANDMEAN
00062
PCLASSINFO(
H501_MessageBody, PASN_Choice);
00063
#endif
00064
public:
00065
H501_MessageBody(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00066
00067 enum Choices {
00068
e_serviceRequest,
00069
e_serviceConfirmation,
00070
e_serviceRejection,
00071
e_serviceRelease,
00072
e_descriptorRequest,
00073
e_descriptorConfirmation,
00074
e_descriptorRejection,
00075
e_descriptorIDRequest,
00076
e_descriptorIDConfirmation,
00077
e_descriptorIDRejection,
00078
e_descriptorUpdate,
00079
e_descriptorUpdateAck,
00080
e_accessRequest,
00081
e_accessConfirmation,
00082
e_accessRejection,
00083
e_requestInProgress,
00084
e_nonStandardRequest,
00085
e_nonStandardConfirmation,
00086
e_nonStandardRejection,
00087
e_unknownMessageResponse,
00088
e_usageRequest,
00089
e_usageConfirmation,
00090
e_usageIndication,
00091
e_usageIndicationConfirmation,
00092
e_usageIndicationRejection,
00093
e_usageRejection,
00094
e_validationRequest,
00095
e_validationConfirmation,
00096
e_validationRejection,
00097
e_authenticationRequest,
00098
e_authenticationConfirmation,
00099
e_authenticationRejection
00100 };
00101
00102
#if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00103
operator H501_ServiceRequest &() const;
00104 #else
00105 operator
H501_ServiceRequest &();
00106 operator const H501_ServiceRequest &() const;
00107 #endif
00108 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00109 operator
H501_ServiceConfirmation &() const;
00110 #else
00111 operator
H501_ServiceConfirmation &();
00112 operator const H501_ServiceConfirmation &() const;
00113 #endif
00114 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00115 operator
H501_ServiceRejection &() const;
00116 #else
00117 operator
H501_ServiceRejection &();
00118 operator const H501_ServiceRejection &() const;
00119 #endif
00120 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00121 operator
H501_ServiceRelease &() const;
00122 #else
00123 operator
H501_ServiceRelease &();
00124 operator const H501_ServiceRelease &() const;
00125 #endif
00126 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00127 operator
H501_DescriptorRequest &() const;
00128 #else
00129 operator
H501_DescriptorRequest &();
00130 operator const H501_DescriptorRequest &() const;
00131 #endif
00132 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00133 operator
H501_DescriptorConfirmation &() const;
00134 #else
00135 operator
H501_DescriptorConfirmation &();
00136 operator const H501_DescriptorConfirmation &() const;
00137 #endif
00138 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00139 operator
H501_DescriptorRejection &() const;
00140 #else
00141 operator
H501_DescriptorRejection &();
00142 operator const H501_DescriptorRejection &() const;
00143 #endif
00144 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00145 operator
H501_DescriptorIDRequest &() const;
00146 #else
00147 operator
H501_DescriptorIDRequest &();
00148 operator const H501_DescriptorIDRequest &() const;
00149 #endif
00150 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00151 operator
H501_DescriptorIDConfirmation &() const;
00152 #else
00153 operator
H501_DescriptorIDConfirmation &();
00154 operator const H501_DescriptorIDConfirmation &() const;
00155 #endif
00156 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00157 operator
H501_DescriptorIDRejection &() const;
00158 #else
00159 operator
H501_DescriptorIDRejection &();
00160 operator const H501_DescriptorIDRejection &() const;
00161 #endif
00162 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00163 operator
H501_DescriptorUpdate &() const;
00164 #else
00165 operator
H501_DescriptorUpdate &();
00166 operator const H501_DescriptorUpdate &() const;
00167 #endif
00168 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00169 operator
H501_DescriptorUpdateAck &() const;
00170 #else
00171 operator
H501_DescriptorUpdateAck &();
00172 operator const H501_DescriptorUpdateAck &() const;
00173 #endif
00174 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00175 operator
H501_AccessRequest &() const;
00176 #else
00177 operator
H501_AccessRequest &();
00178 operator const H501_AccessRequest &() const;
00179 #endif
00180 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00181 operator
H501_AccessConfirmation &() const;
00182 #else
00183 operator
H501_AccessConfirmation &();
00184 operator const H501_AccessConfirmation &() const;
00185 #endif
00186 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00187 operator
H501_AccessRejection &() const;
00188 #else
00189 operator
H501_AccessRejection &();
00190 operator const H501_AccessRejection &() const;
00191 #endif
00192 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00193 operator
H501_RequestInProgress &() const;
00194 #else
00195 operator
H501_RequestInProgress &();
00196 operator const H501_RequestInProgress &() const;
00197 #endif
00198 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00199 operator
H501_NonStandardRequest &() const;
00200 #else
00201 operator
H501_NonStandardRequest &();
00202 operator const H501_NonStandardRequest &() const;
00203 #endif
00204 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00205 operator
H501_NonStandardConfirmation &() const;
00206 #else
00207 operator
H501_NonStandardConfirmation &();
00208 operator const H501_NonStandardConfirmation &() const;
00209 #endif
00210 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00211 operator
H501_NonStandardRejection &() const;
00212 #else
00213 operator
H501_NonStandardRejection &();
00214 operator const H501_NonStandardRejection &() const;
00215 #endif
00216 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00217 operator
H501_UnknownMessageResponse &() const;
00218 #else
00219 operator
H501_UnknownMessageResponse &();
00220 operator const H501_UnknownMessageResponse &() const;
00221 #endif
00222 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00223 operator
H501_UsageRequest &() const;
00224 #else
00225 operator
H501_UsageRequest &();
00226 operator const H501_UsageRequest &() const;
00227 #endif
00228 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00229 operator
H501_UsageConfirmation &() const;
00230 #else
00231 operator
H501_UsageConfirmation &();
00232 operator const H501_UsageConfirmation &() const;
00233 #endif
00234 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00235 operator
H501_UsageIndication &() const;
00236 #else
00237 operator
H501_UsageIndication &();
00238 operator const H501_UsageIndication &() const;
00239 #endif
00240 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00241 operator
H501_UsageIndicationConfirmation &() const;
00242 #else
00243 operator
H501_UsageIndicationConfirmation &();
00244 operator const H501_UsageIndicationConfirmation &() const;
00245 #endif
00246 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00247 operator
H501_UsageIndicationRejection &() const;
00248 #else
00249 operator
H501_UsageIndicationRejection &();
00250 operator const H501_UsageIndicationRejection &() const;
00251 #endif
00252 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00253 operator
H501_UsageRejection &() const;
00254 #else
00255 operator
H501_UsageRejection &();
00256 operator const H501_UsageRejection &() const;
00257 #endif
00258 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00259 operator
H501_ValidationRequest &() const;
00260 #else
00261 operator
H501_ValidationRequest &();
00262 operator const H501_ValidationRequest &() const;
00263 #endif
00264 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00265 operator
H501_ValidationConfirmation &() const;
00266 #else
00267 operator
H501_ValidationConfirmation &();
00268 operator const H501_ValidationConfirmation &() const;
00269 #endif
00270 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00271 operator
H501_ValidationRejection &() const;
00272 #else
00273 operator
H501_ValidationRejection &();
00274 operator const H501_ValidationRejection &() const;
00275 #endif
00276 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00277 operator
H501_AuthenticationRequest &() const;
00278 #else
00279 operator
H501_AuthenticationRequest &();
00280 operator const H501_AuthenticationRequest &() const;
00281 #endif
00282 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00283 operator
H501_AuthenticationConfirmation &() const;
00284 #else
00285 operator
H501_AuthenticationConfirmation &();
00286 operator const H501_AuthenticationConfirmation &() const;
00287 #endif
00288 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00289 operator
H501_AuthenticationRejection &() const;
00290 #else
00291 operator
H501_AuthenticationRejection &();
00292 operator const H501_AuthenticationRejection &() const;
00293 #endif
00294
00295 BOOL CreateObject();
00296 PObject * Clone() const;
00297 };
00298
00299
00300
00301
00302
00303
00304 class
H501_ServiceRejectionReason : public PASN_Choice
00305 {
00306
#ifndef PASN_LEANANDMEAN
00307
PCLASSINFO(
H501_ServiceRejectionReason, PASN_Choice);
00308
#endif
00309
public:
00310
H501_ServiceRejectionReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00311
00312 enum Choices {
00313 e_serviceUnavailable,
00314 e_serviceRedirected,
00315 e_security,
00316 e_continue,
00317 e_undefined,
00318 e_unknownServiceID,
00319 e_cannotSupportUsageSpec,
00320 e_neededFeature,
00321 e_genericDataReason,
00322 e_usageUnavailable,
00323 e_unknownUsageSendTo
00324 };
00325
00326 BOOL
CreateObject();
00327 PObject *
Clone() const;
00328 };
00329
00330
00331
00332
00333
00334
00335 class
H501_ServiceReleaseReason : public PASN_Choice
00336 {
00337
#ifndef PASN_LEANANDMEAN
00338
PCLASSINFO(
H501_ServiceReleaseReason, PASN_Choice);
00339
#endif
00340
public:
00341
H501_ServiceReleaseReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00342
00343 enum Choices {
00344 e_outOfService,
00345 e_maintenance,
00346 e_terminated,
00347 e_expired
00348 };
00349
00350 BOOL
CreateObject();
00351 PObject *
Clone() const;
00352 };
00353
00354
00355
00356
00357
00358
00359 class
H501_DescriptorRejectionReason : public PASN_Choice
00360 {
00361
#ifndef PASN_LEANANDMEAN
00362
PCLASSINFO(
H501_DescriptorRejectionReason, PASN_Choice);
00363
#endif
00364
public:
00365
H501_DescriptorRejectionReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00366
00367 enum Choices {
00368 e_packetSizeExceeded,
00369 e_illegalID,
00370 e_security,
00371 e_hopCountExceeded,
00372 e_noServiceRelationship,
00373 e_undefined,
00374 e_neededFeature,
00375 e_genericDataReason,
00376 e_unknownServiceID
00377 };
00378
00379 BOOL
CreateObject();
00380 PObject *
Clone() const;
00381 };
00382
00383
00384
00385
00386
00387
00388 class H501_DescriptorIDRequest : public
PASN_Sequence
00389 {
00390
#ifndef PASN_LEANANDMEAN
00391
PCLASSINFO(H501_DescriptorIDRequest, PASN_Sequence);
00392
#endif
00393
public:
00394 H501_DescriptorIDRequest(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00395
00396
00397 PINDEX GetDataLength()
const;
00398 BOOL Decode(PASN_Stream & strm);
00399
void Encode(PASN_Stream & strm)
const;
00400
#ifndef PASN_NOPRINTON
00401
void PrintOn(ostream & strm)
const;
00402
#endif
00403
PObject *
Clone()
const;
00404 };
00405
00406
00407
00408
00409
00410
00411 class H501_DescriptorIDRejectionReason :
public PASN_Choice
00412 {
00413
#ifndef PASN_LEANANDMEAN
00414
PCLASSINFO(
H501_DescriptorIDRejectionReason, PASN_Choice);
00415
#endif
00416
public:
00417
H501_DescriptorIDRejectionReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00418
00419 enum Choices {
00420 e_noDescriptors,
00421 e_security,
00422 e_hopCountExceeded,
00423 e_noServiceRelationship,
00424 e_undefined,
00425 e_neededFeature,
00426 e_genericDataReason,
00427 e_unknownServiceID
00428 };
00429
00430 BOOL
CreateObject();
00431 PObject *
Clone() const;
00432 };
00433
00434
00435
00436
00437
00438
00439 class H501_DescriptorUpdateAck : public
PASN_Sequence
00440 {
00441
#ifndef PASN_LEANANDMEAN
00442
PCLASSINFO(H501_DescriptorUpdateAck, PASN_Sequence);
00443
#endif
00444
public:
00445 H501_DescriptorUpdateAck(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00446
00447
00448 PINDEX GetDataLength()
const;
00449 BOOL Decode(PASN_Stream & strm);
00450
void Encode(PASN_Stream & strm)
const;
00451
#ifndef PASN_NOPRINTON
00452
void PrintOn(ostream & strm)
const;
00453
#endif
00454
PObject *
Clone()
const;
00455 };
00456
00457
00458
00459
00460
00461
00462 class H501_AccessRejectionReason :
public PASN_Choice
00463 {
00464
#ifndef PASN_LEANANDMEAN
00465
PCLASSINFO(
H501_AccessRejectionReason, PASN_Choice);
00466
#endif
00467
public:
00468
H501_AccessRejectionReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00469
00470 enum Choices {
00471 e_noMatch,
00472 e_packetSizeExceeded,
00473 e_security,
00474 e_hopCountExceeded,
00475 e_needCallInformation,
00476 e_noServiceRelationship,
00477 e_undefined,
00478 e_neededFeature,
00479 e_genericDataReason,
00480 e_destinationUnavailable,
00481 e_aliasesInconsistent,
00482 e_resourceUnavailable,
00483 e_incompleteAddress,
00484 e_unknownServiceID,
00485 e_usageUnavailable,
00486 e_cannotSupportUsageSpec,
00487 e_unknownUsageSendTo
00488 };
00489
00490 BOOL
CreateObject();
00491 PObject *
Clone() const;
00492 };
00493
00494
00495
00496
00497
00498
00499 class H501_UsageConfirmation : public
PASN_Sequence
00500 {
00501
#ifndef PASN_LEANANDMEAN
00502
PCLASSINFO(H501_UsageConfirmation, PASN_Sequence);
00503
#endif
00504
public:
00505 H501_UsageConfirmation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00506
00507
00508 PINDEX GetDataLength()
const;
00509 BOOL Decode(PASN_Stream & strm);
00510
void Encode(PASN_Stream & strm)
const;
00511
#ifndef PASN_NOPRINTON
00512
void PrintOn(ostream & strm)
const;
00513
#endif
00514
PObject *
Clone()
const;
00515 };
00516
00517
00518
00519
00520
00521
00522 class H501_UsageField :
public PASN_Sequence
00523 {
00524
#ifndef PASN_LEANANDMEAN
00525
PCLASSINFO(
H501_UsageField,
PASN_Sequence);
00526
#endif
00527
public:
00528
H501_UsageField(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00529
00530 PASN_ObjectId m_id;
00531 PASN_OctetString m_value;
00532
00533 PINDEX GetDataLength() const;
00534 BOOL Decode(PASN_Stream & strm);
00535
void Encode(PASN_Stream & strm) const;
00536 #ifndef PASN_NOPRINTON
00537
void PrintOn(ostream & strm) const;
00538 #endif
00539 Comparison Compare(const PObject & obj) const;
00540 PObject * Clone() const;
00541 };
00542
00543
00544
00545
00546
00547
00548 class
H501_UsageRejectReason : public PASN_Choice
00549 {
00550
#ifndef PASN_LEANANDMEAN
00551
PCLASSINFO(
H501_UsageRejectReason, PASN_Choice);
00552
#endif
00553
public:
00554
H501_UsageRejectReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00555
00556 enum Choices {
00557 e_invalidCall,
00558 e_unavailable,
00559 e_security,
00560 e_noServiceRelationship,
00561 e_undefined,
00562 e_neededFeature,
00563 e_genericDataReason,
00564 e_unknownServiceID
00565 };
00566
00567 BOOL
CreateObject();
00568 PObject *
Clone() const;
00569 };
00570
00571
00572
00573
00574
00575
00576 class H501_UsageIndicationConfirmation : public
PASN_Sequence
00577 {
00578
#ifndef PASN_LEANANDMEAN
00579
PCLASSINFO(H501_UsageIndicationConfirmation, PASN_Sequence);
00580
#endif
00581
public:
00582 H501_UsageIndicationConfirmation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00583
00584
00585 PINDEX GetDataLength()
const;
00586 BOOL Decode(PASN_Stream & strm);
00587
void Encode(PASN_Stream & strm)
const;
00588
#ifndef PASN_NOPRINTON
00589
void PrintOn(ostream & strm)
const;
00590
#endif
00591
PObject *
Clone()
const;
00592 };
00593
00594
00595
00596
00597
00598
00599 class H501_UsageIndicationRejectionReason :
public PASN_Choice
00600 {
00601
#ifndef PASN_LEANANDMEAN
00602
PCLASSINFO(
H501_UsageIndicationRejectionReason, PASN_Choice);
00603
#endif
00604
public:
00605
H501_UsageIndicationRejectionReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00606
00607 enum Choices {
00608 e_unknownCall,
00609 e_incomplete,
00610 e_security,
00611 e_noServiceRelationship,
00612 e_undefined,
00613 e_neededFeature,
00614 e_genericDataReason,
00615 e_unknownServiceID
00616 };
00617
00618 BOOL
CreateObject();
00619 PObject *
Clone() const;
00620 };
00621
00622
00623
00624
00625
00626
00627 class
H501_ValidationRejectionReason : public PASN_Choice
00628 {
00629
#ifndef PASN_LEANANDMEAN
00630
PCLASSINFO(
H501_ValidationRejectionReason, PASN_Choice);
00631
#endif
00632
public:
00633
H501_ValidationRejectionReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00634
00635 enum Choices {
00636 e_tokenNotValid,
00637 e_security,
00638 e_hopCountExceeded,
00639 e_missingSourceInfo,
00640 e_missingDestInfo,
00641 e_noServiceRelationship,
00642 e_undefined,
00643 e_neededFeature,
00644 e_genericDataReason,
00645 e_unknownServiceID
00646 };
00647
00648 BOOL
CreateObject();
00649 PObject *
Clone() const;
00650 };
00651
00652
00653
00654
00655
00656
00657 class H501_NonStandardRequest : public
PASN_Sequence
00658 {
00659
#ifndef PASN_LEANANDMEAN
00660
PCLASSINFO(H501_NonStandardRequest, PASN_Sequence);
00661
#endif
00662
public:
00663 H501_NonStandardRequest(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00664
00665
00666 PINDEX GetDataLength()
const;
00667 BOOL Decode(PASN_Stream & strm);
00668
void Encode(PASN_Stream & strm)
const;
00669
#ifndef PASN_NOPRINTON
00670
void PrintOn(ostream & strm)
const;
00671
#endif
00672
PObject *
Clone()
const;
00673 };
00674
00675
00676
00677
00678
00679
00680 class H501_NonStandardConfirmation :
public PASN_Sequence
00681 {
00682
#ifndef PASN_LEANANDMEAN
00683
PCLASSINFO(H501_NonStandardConfirmation,
PASN_Sequence);
00684
#endif
00685
public:
00686 H501_NonStandardConfirmation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00687
00688
00689 PINDEX GetDataLength()
const;
00690 BOOL Decode(PASN_Stream & strm);
00691
void Encode(PASN_Stream & strm)
const;
00692
#ifndef PASN_NOPRINTON
00693
void PrintOn(ostream & strm)
const;
00694
#endif
00695
PObject *
Clone()
const;
00696 };
00697
00698
00699
00700
00701
00702
00703 class H501_NonStandardRejectionReason :
public PASN_Choice
00704 {
00705
#ifndef PASN_LEANANDMEAN
00706
PCLASSINFO(
H501_NonStandardRejectionReason, PASN_Choice);
00707
#endif
00708
public:
00709
H501_NonStandardRejectionReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00710
00711 enum Choices {
00712 e_notSupported,
00713 e_noServiceRelationship,
00714 e_undefined,
00715 e_neededFeature,
00716 e_genericDataReason,
00717 e_unknownServiceID
00718 };
00719
00720 BOOL
CreateObject();
00721 PObject *
Clone() const;
00722 };
00723
00724
00725
00726
00727
00728
00729 class
H501_UnknownMessageReason : public PASN_Choice
00730 {
00731
#ifndef PASN_LEANANDMEAN
00732
PCLASSINFO(
H501_UnknownMessageReason, PASN_Choice);
00733
#endif
00734
public:
00735
H501_UnknownMessageReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00736
00737 enum Choices {
00738 e_notUnderstood,
00739 e_undefined
00740 };
00741
00742 BOOL
CreateObject();
00743 PObject *
Clone() const;
00744 };
00745
00746
00747
00748
00749
00750
00751 class
H501_ApplicationMessage : public PASN_OctetString
00752 {
00753
#ifndef PASN_LEANANDMEAN
00754
PCLASSINFO(
H501_ApplicationMessage, PASN_OctetString);
00755
#endif
00756
public:
00757
H501_ApplicationMessage(
unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
00758
00759
H501_ApplicationMessage(
const char * v);
00760
H501_ApplicationMessage(
const PString & v);
00761
H501_ApplicationMessage(
const PBYTEArray & v);
00762
00763
H501_ApplicationMessage & operator=(
const char * v);
00764
H501_ApplicationMessage & operator=(
const PString & v);
00765
H501_ApplicationMessage & operator=(
const PBYTEArray & v);
00766 PObject *
Clone()
const;
00767 };
00768
00769
00770
00771
00772
00773
00774 class H501_AuthenticationConfirmation :
public PASN_Sequence
00775 {
00776
#ifndef PASN_LEANANDMEAN
00777
PCLASSINFO(H501_AuthenticationConfirmation,
PASN_Sequence);
00778
#endif
00779
public:
00780 H501_AuthenticationConfirmation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00781
00782
00783 PINDEX GetDataLength()
const;
00784 BOOL Decode(PASN_Stream & strm);
00785
void Encode(PASN_Stream & strm)
const;
00786
#ifndef PASN_NOPRINTON
00787
void PrintOn(ostream & strm)
const;
00788
#endif
00789
PObject *
Clone()
const;
00790 };
00791
00792
00793
00794
00795
00796
00797 class H501_AuthenticationRejectionReason :
public PASN_Choice
00798 {
00799
#ifndef PASN_LEANANDMEAN
00800
PCLASSINFO(
H501_AuthenticationRejectionReason, PASN_Choice);
00801
#endif
00802
public:
00803
H501_AuthenticationRejectionReason(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00804
00805 enum Choices {
00806 e_security,
00807 e_hopCountExceeded,
00808 e_noServiceRelationship,
00809 e_undefined,
00810 e_neededFeature,
00811 e_genericDataReason,
00812 e_unknownServiceID,
00813 e_securityWrongSyncTime,
00814 e_securityReplay,
00815 e_securityWrongGeneralID,
00816 e_securityWrongSendersID,
00817 e_securityIntegrityFailed,
00818 e_securityWrongOID
00819 };
00820
00821 BOOL
CreateObject();
00822 PObject *
Clone() const;
00823 };
00824
00825
00826
00827
00828
00829
00830 class
H225_AliasAddress;
00831 class
H501_Pattern_range;
00832
00833 class
H501_Pattern : public PASN_Choice
00834 {
00835
#ifndef PASN_LEANANDMEAN
00836
PCLASSINFO(
H501_Pattern, PASN_Choice);
00837
#endif
00838
public:
00839
H501_Pattern(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00840
00841 enum Choices {
00842 e_specific,
00843 e_wildcard,
00844 e_range
00845 };
00846
00847
#if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00848
operator H225_AliasAddress &() const;
00849 #else
00850 operator H225_AliasAddress &();
00851 operator const H225_AliasAddress &() const;
00852 #endif
00853 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00854 operator H501_Pattern_range &() const;
00855 #else
00856 operator H501_Pattern_range &();
00857 operator const H501_Pattern_range &() const;
00858 #endif
00859
00860 BOOL CreateObject();
00861 PObject * Clone() const;
00862 };
00863
00864
00865
00866
00867
00868
00869 class
H235_ClearToken;
00870 class
H225_CryptoH323Token;
00871 class
H225_GenericData;
00872
00873 class
H501_AccessToken : public PASN_Choice
00874 {
00875
#ifndef PASN_LEANANDMEAN
00876
PCLASSINFO(
H501_AccessToken, PASN_Choice);
00877
#endif
00878
public:
00879
H501_AccessToken(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00880
00881 enum Choices {
00882 e_token,
00883 e_cryptoToken,
00884 e_genericData
00885 };
00886
00887
#if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00888
operator H235_ClearToken &() const;
00889 #else
00890 operator H235_ClearToken &();
00891 operator const H235_ClearToken &() const;
00892 #endif
00893 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00894 operator H225_CryptoH323Token &() const;
00895 #else
00896 operator H225_CryptoH323Token &();
00897 operator const H225_CryptoH323Token &() const;
00898 #endif
00899 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00900 operator H225_GenericData &() const;
00901 #else
00902 operator H225_GenericData &();
00903 operator const H225_GenericData &() const;
00904 #endif
00905
00906 BOOL CreateObject();
00907 PObject * Clone() const;
00908 };
00909
00910
00911
00912
00913
00914
00915 class
H501_CallInformation : public
PASN_Sequence
00916 {
00917
#ifndef PASN_LEANANDMEAN
00918
PCLASSINFO(
H501_CallInformation, PASN_Sequence);
00919
#endif
00920
public:
00921
H501_CallInformation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00922
00923 enum OptionalFields {
00924 e_circuitID
00925 };
00926
00927 H225_CallIdentifier m_callIdentifier;
00928 H225_ConferenceIdentifier m_conferenceID;
00929 H225_CircuitInfo m_circuitID;
00930
00931 PINDEX GetDataLength() const;
00932 BOOL Decode(PASN_Stream & strm);
00933
void Encode(PASN_Stream & strm) const;
00934 #ifndef PASN_NOPRINTON
00935
void PrintOn(ostream & strm) const;
00936 #endif
00937 Comparison Compare(const PObject & obj) const;
00938 PObject * Clone() const;
00939 };
00940
00941
00942
00943
00944
00945
00946 class
H501_UsageCallStatus : public PASN_Choice
00947 {
00948
#ifndef PASN_LEANANDMEAN
00949
PCLASSINFO(
H501_UsageCallStatus, PASN_Choice);
00950
#endif
00951
public:
00952
H501_UsageCallStatus(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00953
00954 enum Choices {
00955 e_preConnect,
00956 e_callInProgress,
00957 e_callEnded,
00958 e_registrationLost
00959 };
00960
00961 BOOL
CreateObject();
00962 PObject *
Clone() const;
00963 };
00964
00965
00966
00967
00968
00969
00970 class
H225_NonStandardParameter;
00971
00972 class
H501_Role : public PASN_Choice
00973 {
00974
#ifndef PASN_LEANANDMEAN
00975
PCLASSINFO(
H501_Role, PASN_Choice);
00976
#endif
00977
public:
00978
H501_Role(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00979
00980 enum Choices {
00981 e_originator,
00982 e_destination,
00983 e_nonStandardData
00984 };
00985
00986
#if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00987
operator H225_NonStandardParameter &() const;
00988 #else
00989 operator H225_NonStandardParameter &();
00990 operator const H225_NonStandardParameter &() const;
00991 #endif
00992
00993 BOOL CreateObject();
00994 PObject * Clone() const;
00995 };
00996
00997
00998
00999
01000
01001
01002 class
H501_TimeZone : public PASN_Integer
01003 {
01004
#ifndef PASN_LEANANDMEAN
01005
PCLASSINFO(
H501_TimeZone, PASN_Integer);
01006
#endif
01007
public:
01008
H501_TimeZone(
unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
01009
01010
H501_TimeZone & operator=(
int v);
01011
H501_TimeZone & operator=(
unsigned v);
01012 PObject *
Clone()
const;
01013 };
01014
01015
01016
01017
01018
01019
01020 class H501_TerminationCause :
public PASN_Sequence
01021 {
01022
#ifndef PASN_LEANANDMEAN
01023
PCLASSINFO(
H501_TerminationCause, PASN_Sequence);
01024
#endif
01025
public:
01026
H501_TerminationCause(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01027
01028 enum OptionalFields {
01029 e_causeIE,
01030 e_nonStandardData
01031 };
01032
01033 H225_ReleaseCompleteReason m_releaseCompleteReason;
01034 PASN_Integer m_causeIE;
01035 H225_NonStandardParameter m_nonStandardData;
01036
01037 PINDEX GetDataLength() const;
01038 BOOL Decode(PASN_Stream & strm);
01039
void Encode(PASN_Stream & strm) const;
01040 #ifndef PASN_NOPRINTON
01041
void PrintOn(ostream & strm) const;
01042 #endif
01043 Comparison Compare(const PObject & obj) const;
01044 PObject * Clone() const;
01045 };
01046
01047
01048
01049
01050
01051
01052 class
H501_ProtocolVersion : public PASN_ObjectId
01053 {
01054
#ifndef PASN_LEANANDMEAN
01055
PCLASSINFO(
H501_ProtocolVersion, PASN_ObjectId);
01056
#endif
01057
public:
01058
H501_ProtocolVersion(
unsigned tag = UniversalObjectId, TagClass tagClass = UniversalTagClass);
01059
01060 PObject *
Clone()
const;
01061 };
01062
01063
01064
01065
01066
01067
01068 class H501_ElementIdentifier :
public PASN_BMPString
01069 {
01070
#ifndef PASN_LEANANDMEAN
01071
PCLASSINFO(
H501_ElementIdentifier, PASN_BMPString);
01072
#endif
01073
public:
01074
H501_ElementIdentifier(
unsigned tag = UniversalBMPString, TagClass tagClass = UniversalTagClass);
01075
01076
H501_ElementIdentifier & operator=(
const char * v);
01077
H501_ElementIdentifier & operator=(
const PString & v);
01078
H501_ElementIdentifier & operator=(
const PWORDArray & v);
01079
H501_ElementIdentifier & operator=(
const PASN_BMPString & v);
01080 PObject *
Clone()
const;
01081 };
01082
01083
01084
01085
01086
01087
01088 class H501_GlobalTimeStamp :
public PASN_IA5String
01089 {
01090
#ifndef PASN_LEANANDMEAN
01091
PCLASSINFO(
H501_GlobalTimeStamp, PASN_IA5String);
01092
#endif
01093
public:
01094
H501_GlobalTimeStamp(
unsigned tag = UniversalIA5String, TagClass tagClass = UniversalTagClass);
01095
01096
H501_GlobalTimeStamp & operator=(
const char * v);
01097
H501_GlobalTimeStamp & operator=(
const PString & v);
01098 PObject *
Clone()
const;
01099 };
01100
01101
01102
01103
01104
01105
01106
class H225_TransportAddress;
01107
01108 class H501_ArrayOf_TransportAddress :
public PASN_Array
01109 {
01110
#ifndef PASN_LEANANDMEAN
01111
PCLASSINFO(
H501_ArrayOf_TransportAddress, PASN_Array);
01112
#endif
01113
public:
01114
H501_ArrayOf_TransportAddress(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01115
01116 PASN_Object *
CreateObject()
const;
01117
H225_TransportAddress & operator[](PINDEX i)
const;
01118 PObject *
Clone()
const;
01119 };
01120
01121
01122
01123
01124
01125
01126
class H235_ClearToken;
01127
01128 class H501_ArrayOf_ClearToken :
public PASN_Array
01129 {
01130
#ifndef PASN_LEANANDMEAN
01131
PCLASSINFO(
H501_ArrayOf_ClearToken, PASN_Array);
01132
#endif
01133
public:
01134
H501_ArrayOf_ClearToken(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01135
01136 PASN_Object *
CreateObject()
const;
01137 H235_ClearToken & operator[](PINDEX i)
const;
01138 PObject *
Clone()
const;
01139 };
01140
01141
01142
01143
01144
01145
01146
class H225_CryptoH323Token;
01147
01148 class H501_ArrayOf_CryptoH323Token :
public PASN_Array
01149 {
01150
#ifndef PASN_LEANANDMEAN
01151
PCLASSINFO(
H501_ArrayOf_CryptoH323Token, PASN_Array);
01152
#endif
01153
public:
01154
H501_ArrayOf_CryptoH323Token(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01155
01156 PASN_Object *
CreateObject()
const;
01157 H225_CryptoH323Token & operator[](PINDEX i)
const;
01158 PObject *
Clone()
const;
01159 };
01160
01161
01162
01163
01164
01165
01166
class H225_NonStandardParameter;
01167
01168 class H501_ArrayOf_NonStandardParameter :
public PASN_Array
01169 {
01170
#ifndef PASN_LEANANDMEAN
01171
PCLASSINFO(
H501_ArrayOf_NonStandardParameter, PASN_Array);
01172
#endif
01173
public:
01174
H501_ArrayOf_NonStandardParameter(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01175
01176 PASN_Object *
CreateObject()
const;
01177 H225_NonStandardParameter & operator[](PINDEX i)
const;
01178 PObject *
Clone()
const;
01179 };
01180
01181
01182
01183
01184
01185
01186
class H225_GenericData;
01187
01188 class H501_ArrayOf_GenericData :
public PASN_Array
01189 {
01190
#ifndef PASN_LEANANDMEAN
01191
PCLASSINFO(
H501_ArrayOf_GenericData, PASN_Array);
01192
#endif
01193
public:
01194
H501_ArrayOf_GenericData(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01195
01196 PASN_Object *
CreateObject()
const;
01197 H225_GenericData & operator[](PINDEX i)
const;
01198 PObject *
Clone()
const;
01199 };
01200
01201
01202
01203
01204
01205
01206
class H501_SecurityMode;
01207
01208 class H501_ArrayOf_SecurityMode :
public PASN_Array
01209 {
01210
#ifndef PASN_LEANANDMEAN
01211
PCLASSINFO(
H501_ArrayOf_SecurityMode, PASN_Array);
01212
#endif
01213
public:
01214
H501_ArrayOf_SecurityMode(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01215
01216 PASN_Object *
CreateObject()
const;
01217
H501_SecurityMode & operator[](PINDEX i)
const;
01218 PObject *
Clone()
const;
01219 };
01220
01221
01222
01223
01224
01225
01226 class H501_ArrayOf_PASN_ObjectId :
public PASN_Array
01227 {
01228
#ifndef PASN_LEANANDMEAN
01229
PCLASSINFO(
H501_ArrayOf_PASN_ObjectId, PASN_Array);
01230
#endif
01231
public:
01232
H501_ArrayOf_PASN_ObjectId(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01233
01234 PASN_Object *
CreateObject()
const;
01235 PASN_ObjectId & operator[](PINDEX i)
const;
01236 PObject *
Clone()
const;
01237 };
01238
01239
01240
01241
01242
01243
01244
class H225_GloballyUniqueID;
01245
01246 class H501_ArrayOf_GloballyUniqueID :
public PASN_Array
01247 {
01248
#ifndef PASN_LEANANDMEAN
01249
PCLASSINFO(
H501_ArrayOf_GloballyUniqueID, PASN_Array);
01250
#endif
01251
public:
01252
H501_ArrayOf_GloballyUniqueID(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01253
01254 PASN_Object *
CreateObject()
const;
01255
H225_GloballyUniqueID & operator[](PINDEX i)
const;
01256 PObject *
Clone()
const;
01257 };
01258
01259
01260
01261
01262
01263
01264
class H501_Descriptor;
01265
01266 class H501_ArrayOf_Descriptor :
public PASN_Array
01267 {
01268
#ifndef PASN_LEANANDMEAN
01269
PCLASSINFO(
H501_ArrayOf_Descriptor, PASN_Array);
01270
#endif
01271
public:
01272
H501_ArrayOf_Descriptor(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01273
01274 PASN_Object *
CreateObject()
const;
01275
H501_Descriptor & operator[](PINDEX i)
const;
01276 PObject *
Clone()
const;
01277 };
01278
01279
01280
01281
01282
01283
01284
class H501_DescriptorInfo;
01285
01286 class H501_ArrayOf_DescriptorInfo :
public PASN_Array
01287 {
01288
#ifndef PASN_LEANANDMEAN
01289
PCLASSINFO(
H501_ArrayOf_DescriptorInfo, PASN_Array);
01290
#endif
01291
public:
01292
H501_ArrayOf_DescriptorInfo(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01293
01294 PASN_Object *
CreateObject()
const;
01295
H501_DescriptorInfo & operator[](PINDEX i)
const;
01296 PObject *
Clone()
const;
01297 };
01298
01299
01300
01301
01302
01303
01304
class H501_UpdateInformation;
01305
01306 class H501_ArrayOf_UpdateInformation :
public PASN_Array
01307 {
01308
#ifndef PASN_LEANANDMEAN
01309
PCLASSINFO(
H501_ArrayOf_UpdateInformation, PASN_Array);
01310
#endif
01311
public:
01312
H501_ArrayOf_UpdateInformation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01313
01314 PASN_Object *
CreateObject()
const;
01315
H501_UpdateInformation & operator[](PINDEX i)
const;
01316 PObject *
Clone()
const;
01317 };
01318
01319
01320
01321
01322
01323
01324
class H225_GloballyUniqueID;
01325
class H501_Descriptor;
01326
01327 class H501_UpdateInformation_descriptorInfo :
public PASN_Choice
01328 {
01329
#ifndef PASN_LEANANDMEAN
01330
PCLASSINFO(
H501_UpdateInformation_descriptorInfo, PASN_Choice);
01331
#endif
01332
public:
01333
H501_UpdateInformation_descriptorInfo(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01334
01335 enum Choices {
01336 e_descriptorID,
01337 e_descriptor
01338 };
01339
01340
#if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01341
operator H225_GloballyUniqueID &() const;
01342 #else
01343 operator
H225_GloballyUniqueID &();
01344 operator const H225_GloballyUniqueID &() const;
01345 #endif
01346 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01347 operator
H501_Descriptor &() const;
01348 #else
01349 operator
H501_Descriptor &();
01350 operator const H501_Descriptor &() const;
01351 #endif
01352
01353 BOOL CreateObject();
01354 PObject * Clone() const;
01355 };
01356
01357
01358
01359
01360
01361
01362 class
H501_UpdateInformation_updateType : public PASN_Choice
01363 {
01364
#ifndef PASN_LEANANDMEAN
01365
PCLASSINFO(
H501_UpdateInformation_updateType, PASN_Choice);
01366
#endif
01367
public:
01368
H501_UpdateInformation_updateType(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01369
01370 enum Choices {
01371 e_added,
01372 e_deleted,
01373 e_changed
01374 };
01375
01376 BOOL
CreateObject();
01377 PObject *
Clone() const;
01378 };
01379
01380
01381
01382
01383
01384
01385 class
H225_SupportedProtocols;
01386
01387 class
H501_ArrayOf_SupportedProtocols : public PASN_Array
01388 {
01389
#ifndef PASN_LEANANDMEAN
01390
PCLASSINFO(
H501_ArrayOf_SupportedProtocols, PASN_Array);
01391
#endif
01392
public:
01393
H501_ArrayOf_SupportedProtocols(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01394
01395 PASN_Object *
CreateObject()
const;
01396 H225_SupportedProtocols & operator[](PINDEX i)
const;
01397 PObject *
Clone()
const;
01398 };
01399
01400
01401
01402
01403
01404
01405
class H501_AddressTemplate;
01406
01407 class H501_ArrayOf_AddressTemplate :
public PASN_Array
01408 {
01409
#ifndef PASN_LEANANDMEAN
01410
PCLASSINFO(
H501_ArrayOf_AddressTemplate, PASN_Array);
01411
#endif
01412
public:
01413
H501_ArrayOf_AddressTemplate(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01414
01415 PASN_Object *
CreateObject()
const;
01416
H501_AddressTemplate & operator[](PINDEX i)
const;
01417 PObject *
Clone()
const;
01418 };
01419
01420
01421
01422
01423
01424
01425
class H225_ServiceControlSession;
01426
01427 class H501_ArrayOf_ServiceControlSession :
public PASN_Array
01428 {
01429
#ifndef PASN_LEANANDMEAN
01430
PCLASSINFO(
H501_ArrayOf_ServiceControlSession, PASN_Array);
01431
#endif
01432
public:
01433
H501_ArrayOf_ServiceControlSession(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01434
01435 PASN_Object *
CreateObject()
const;
01436
H225_ServiceControlSession & operator[](PINDEX i)
const;
01437 PObject *
Clone()
const;
01438 };
01439
01440
01441
01442
01443
01444
01445
class H501_AccessToken;
01446
01447 class H501_ArrayOf_AccessToken :
public PASN_Array
01448 {
01449
#ifndef PASN_LEANANDMEAN
01450
PCLASSINFO(
H501_ArrayOf_AccessToken, PASN_Array);
01451
#endif
01452
public:
01453
H501_ArrayOf_AccessToken(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01454
01455 PASN_Object *
CreateObject()
const;
01456
H501_AccessToken & operator[](PINDEX i)
const;
01457 PObject *
Clone()
const;
01458 };
01459
01460
01461
01462
01463
01464
01465
class H501_UsageField;
01466
01467 class H501_ArrayOf_UsageField :
public PASN_Array
01468 {
01469
#ifndef PASN_LEANANDMEAN
01470
PCLASSINFO(
H501_ArrayOf_UsageField, PASN_Array);
01471
#endif
01472
public:
01473
H501_ArrayOf_UsageField(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01474
01475 PASN_Object *
CreateObject()
const;
01476
H501_UsageField & operator[](PINDEX i)
const;
01477 PObject *
Clone()
const;
01478 };
01479
01480
01481
01482
01483
01484
01485
class H501_Pattern;
01486
01487 class H501_ArrayOf_Pattern :
public PASN_Array
01488 {
01489
#ifndef PASN_LEANANDMEAN
01490
PCLASSINFO(
H501_ArrayOf_Pattern, PASN_Array);
01491
#endif
01492
public:
01493
H501_ArrayOf_Pattern(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01494
01495 PASN_Object *
CreateObject()
const;
01496
H501_Pattern & operator[](PINDEX i)
const;
01497 PObject *
Clone()
const;
01498 };
01499
01500
01501
01502
01503
01504
01505
class H501_RouteInformation;
01506
01507 class H501_ArrayOf_RouteInformation :
public PASN_Array
01508 {
01509
#ifndef PASN_LEANANDMEAN
01510
PCLASSINFO(
H501_ArrayOf_RouteInformation, PASN_Array);
01511
#endif
01512
public:
01513
H501_ArrayOf_RouteInformation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01514
01515 PASN_Object *
CreateObject()
const;
01516
H501_RouteInformation & operator[](PINDEX i)
const;
01517 PObject *
Clone()
const;
01518 };
01519
01520
01521
01522
01523
01524
01525 class H501_Pattern_range :
public PASN_Sequence
01526 {
01527
#ifndef PASN_LEANANDMEAN
01528
PCLASSINFO(H501_Pattern_range, PASN_Sequence);
01529
#endif
01530
public:
01531 H501_Pattern_range(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01532
01533 H225_PartyNumber m_startOfRange;
01534 H225_PartyNumber m_endOfRange;
01535
01536 PINDEX GetDataLength() const;
01537 BOOL Decode(PASN_Stream & strm);
01538
void Encode(PASN_Stream & strm) const;
01539 #ifndef PASN_NOPRINTON
01540
void PrintOn(ostream & strm) const;
01541 #endif
01542 Comparison Compare(const PObject & obj) const;
01543 PObject * Clone() const;
01544 };
01545
01546
01547
01548
01549
01550
01551 class
H501_RouteInformation_messageType : public PASN_Choice
01552 {
01553
#ifndef PASN_LEANANDMEAN
01554
PCLASSINFO(
H501_RouteInformation_messageType, PASN_Choice);
01555
#endif
01556
public:
01557
H501_RouteInformation_messageType(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01558
01559 enum Choices {
01560 e_sendAccessRequest,
01561 e_sendSetup,
01562 e_nonExistent
01563 };
01564
01565 BOOL
CreateObject();
01566 PObject *
Clone() const;
01567 };
01568
01569
01570
01571
01572
01573
01574 class
H501_PriceInfoSpec;
01575
01576 class
H501_ArrayOf_PriceInfoSpec : public PASN_Array
01577 {
01578
#ifndef PASN_LEANANDMEAN
01579
PCLASSINFO(
H501_ArrayOf_PriceInfoSpec, PASN_Array);
01580
#endif
01581
public:
01582
H501_ArrayOf_PriceInfoSpec(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01583
01584 PASN_Object *
CreateObject()
const;
01585 H501_PriceInfoSpec & operator[](PINDEX i)
const;
01586 PObject *
Clone()
const;
01587 };
01588
01589
01590
01591
01592
01593
01594
class H501_ContactInformation;
01595
01596 class H501_ArrayOf_ContactInformation :
public PASN_Array
01597 {
01598
#ifndef PASN_LEANANDMEAN
01599
PCLASSINFO(
H501_ArrayOf_ContactInformation, PASN_Array);
01600
#endif
01601
public:
01602
H501_ArrayOf_ContactInformation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01603
01604 PASN_Object *
CreateObject()
const;
01605
H501_ContactInformation & operator[](PINDEX i)
const;
01606 PObject *
Clone()
const;
01607 };
01608
01609
01610
01611
01612
01613
01614
class H225_CircuitIdentifier;
01615
01616 class H501_ArrayOf_CircuitIdentifier :
public PASN_Array
01617 {
01618
#ifndef PASN_LEANANDMEAN
01619
PCLASSINFO(
H501_ArrayOf_CircuitIdentifier, PASN_Array);
01620
#endif
01621
public:
01622
H501_ArrayOf_CircuitIdentifier(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01623
01624 PASN_Object *
CreateObject()
const;
01625
H225_CircuitIdentifier & operator[](PINDEX i)
const;
01626 PObject *
Clone()
const;
01627 };
01628
01629
01630
01631
01632
01633
01634
class H501_PriceElement;
01635
01636 class H501_ArrayOf_PriceElement :
public PASN_Array
01637 {
01638
#ifndef PASN_LEANANDMEAN
01639
PCLASSINFO(
H501_ArrayOf_PriceElement, PASN_Array);
01640
#endif
01641
public:
01642
H501_ArrayOf_PriceElement(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01643
01644 PASN_Object *
CreateObject()
const;
01645
H501_PriceElement & operator[](PINDEX i)
const;
01646 PObject *
Clone()
const;
01647 };
01648
01649
01650
01651
01652
01653
01654 class H501_PriceElement_units :
public PASN_Choice
01655 {
01656
#ifndef PASN_LEANANDMEAN
01657
PCLASSINFO(
H501_PriceElement_units, PASN_Choice);
01658
#endif
01659
public:
01660
H501_PriceElement_units(
unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01661
01662 enum Choices {
01663 e_seconds,
01664 e_packets,
01665 e_bytes,
01666 e_initial,
01667 e_minimum,
01668 e_maximum
01669 };
01670
01671 BOOL
CreateObject();
01672 PObject *
Clone() const;
01673 };
01674
01675
01676
01677
01678
01679
01680 class
H501_AlternatePE;
01681
01682 class
H501_ArrayOf_AlternatePE : public PASN_Array
01683 {
01684
#ifndef PASN_LEANANDMEAN
01685
PCLASSINFO(
H501_ArrayOf_AlternatePE, PASN_Array);
01686
#endif
01687
public:
01688
H501_ArrayOf_AlternatePE(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01689
01690 PASN_Object *
CreateObject()
const;
01691 H501_AlternatePE & operator[](PINDEX i)
const;
01692 PObject *
Clone()
const;
01693 };
01694
01695
01696
01697
01698
01699
01700 class H501_UsageSpecification_when :
public PASN_Sequence
01701 {
01702
#ifndef PASN_LEANANDMEAN
01703
PCLASSINFO(
H501_UsageSpecification_when, PASN_Sequence);
01704
#endif
01705
public:
01706
H501_UsageSpecification_when(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01707
01708 enum OptionalFields {
01709 e_never,
01710 e_start,
01711 e_end,
01712 e_period,
01713 e_failures
01714 };
01715
01716 PASN_Null m_never;
01717 PASN_Null m_start;
01718 PASN_Null m_end;
01719 PASN_Integer m_period;
01720 PASN_Null m_failures;
01721
01722 PINDEX GetDataLength() const;
01723 BOOL Decode(PASN_Stream & strm);
01724
void Encode(PASN_Stream & strm) const;
01725 #ifndef PASN_NOPRINTON
01726
void PrintOn(ostream & strm) const;
01727 #endif
01728 Comparison Compare(const PObject & obj) const;
01729 PObject * Clone() const;
01730 };
01731
01732
01733
01734
01735
01736
01737 class H225_AliasAddress;
01738
01739 class
H501_ArrayOf_AliasAddress : public PASN_Array
01740 {
01741
#ifndef PASN_LEANANDMEAN
01742
PCLASSINFO(
H501_ArrayOf_AliasAddress, PASN_Array);
01743
#endif
01744
public:
01745
H501_ArrayOf_AliasAddress(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01746
01747 PASN_Object *
CreateObject()
const;
01748 H225_AliasAddress & operator[](PINDEX i)
const;
01749 PObject *
Clone()
const;
01750 };
01751
01752
01753
01754
01755
01756
01757 class H501_MessageCommonInfo :
public PASN_Sequence
01758 {
01759
#ifndef PASN_LEANANDMEAN
01760
PCLASSINFO(
H501_MessageCommonInfo, PASN_Sequence);
01761
#endif
01762
public:
01763
H501_MessageCommonInfo(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01764
01765 enum OptionalFields {
01766 e_replyAddress,
01767 e_integrityCheckValue,
01768 e_tokens,
01769 e_cryptoTokens,
01770 e_nonStandard,
01771 e_serviceID,
01772 e_genericData,
01773 e_featureSet,
01774 e_version
01775 };
01776
01777 PASN_Integer m_sequenceNumber;
01778 H501_ProtocolVersion m_annexGversion;
01779 PASN_Integer m_hopCount;
01780 H501_ArrayOf_TransportAddress m_replyAddress;
01781 H225_ICV m_integrityCheckValue;
01782 H501_ArrayOf_ClearToken m_tokens;
01783 H501_ArrayOf_CryptoH323Token m_cryptoTokens;
01784 H501_ArrayOf_NonStandardParameter m_nonStandard;
01785 H225_GloballyUniqueID m_serviceID;
01786 H501_ArrayOf_GenericData m_genericData;
01787 H225_FeatureSet m_featureSet;
01788 H501_ProtocolVersion m_version;
01789
01790 PINDEX GetDataLength() const;
01791 BOOL Decode(PASN_Stream & strm);
01792
void Encode(PASN_Stream & strm) const;
01793 #ifndef PASN_NOPRINTON
01794
void PrintOn(ostream & strm) const;
01795 #endif
01796 Comparison Compare(const PObject & obj) const;
01797 PObject * Clone() const;
01798 };
01799
01800
01801
01802
01803
01804
01805 class
H501_SecurityMode : public PASN_Sequence
01806 {
01807
#ifndef PASN_LEANANDMEAN
01808
PCLASSINFO(
H501_SecurityMode, PASN_Sequence);
01809
#endif
01810
public:
01811
H501_SecurityMode(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01812
01813 enum OptionalFields {
01814 e_authentication,
01815 e_integrity,
01816 e_algorithmOIDs
01817 };
01818
01819 H235_AuthenticationMechanism m_authentication;
01820 H225_IntegrityMechanism m_integrity;
01821 H501_ArrayOf_PASN_ObjectId m_algorithmOIDs;
01822
01823 PINDEX GetDataLength() const;
01824 BOOL Decode(PASN_Stream & strm);
01825
void Encode(PASN_Stream & strm) const;
01826 #ifndef PASN_NOPRINTON
01827
void PrintOn(ostream & strm) const;
01828 #endif
01829 Comparison Compare(const PObject & obj) const;
01830 PObject * Clone() const;
01831 };
01832
01833
01834
01835
01836
01837
01838 class H501_DescriptorRequest : public PASN_Sequence
01839 {
01840
#ifndef PASN_LEANANDMEAN
01841
PCLASSINFO(H501_DescriptorRequest, PASN_Sequence);
01842
#endif
01843
public:
01844 H501_DescriptorRequest(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01845
01846 H501_ArrayOf_GloballyUniqueID m_descriptorID;
01847
01848 PINDEX GetDataLength() const;
01849 BOOL Decode(PASN_Stream & strm);
01850
void Encode(PASN_Stream & strm) const;
01851 #ifndef PASN_NOPRINTON
01852
void PrintOn(ostream & strm) const;
01853 #endif
01854 Comparison Compare(const PObject & obj) const;
01855 PObject * Clone() const;
01856 };
01857
01858
01859
01860
01861
01862
01863 class H501_DescriptorConfirmation : public PASN_Sequence
01864 {
01865
#ifndef PASN_LEANANDMEAN
01866
PCLASSINFO(H501_DescriptorConfirmation, PASN_Sequence);
01867
#endif
01868
public:
01869 H501_DescriptorConfirmation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01870
01871 H501_ArrayOf_Descriptor m_descriptor;
01872
01873 PINDEX GetDataLength() const;
01874 BOOL Decode(PASN_Stream & strm);
01875
void Encode(PASN_Stream & strm) const;
01876 #ifndef PASN_NOPRINTON
01877
void PrintOn(ostream & strm) const;
01878 #endif
01879 Comparison Compare(const PObject & obj) const;
01880 PObject * Clone() const;
01881 };
01882
01883
01884
01885
01886
01887
01888 class H501_DescriptorRejection : public PASN_Sequence
01889 {
01890
#ifndef PASN_LEANANDMEAN
01891
PCLASSINFO(H501_DescriptorRejection, PASN_Sequence);
01892
#endif
01893
public:
01894 H501_DescriptorRejection(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01895
01896 enum OptionalFields {
01897 e_descriptorID
01898 };
01899
01900 H501_DescriptorRejectionReason m_reason;
01901 H225_GloballyUniqueID m_descriptorID;
01902
01903 PINDEX GetDataLength() const;
01904 BOOL Decode(PASN_Stream & strm);
01905
void Encode(PASN_Stream & strm) const;
01906 #ifndef PASN_NOPRINTON
01907
void PrintOn(ostream & strm) const;
01908 #endif
01909 Comparison Compare(const PObject & obj) const;
01910 PObject * Clone() const;
01911 };
01912
01913
01914
01915
01916
01917
01918 class H501_DescriptorIDConfirmation : public PASN_Sequence
01919 {
01920
#ifndef PASN_LEANANDMEAN
01921
PCLASSINFO(H501_DescriptorIDConfirmation, PASN_Sequence);
01922
#endif
01923
public:
01924 H501_DescriptorIDConfirmation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01925
01926 H501_ArrayOf_DescriptorInfo m_descriptorInfo;
01927
01928 PINDEX GetDataLength() const;
01929 BOOL Decode(PASN_Stream & strm);
01930
void Encode(PASN_Stream & strm) const;
01931 #ifndef PASN_NOPRINTON
01932
void PrintOn(ostream & strm) const;
01933 #endif
01934 Comparison Compare(const PObject & obj) const;
01935 PObject * Clone() const;
01936 };
01937
01938
01939
01940
01941
01942
01943 class H501_DescriptorIDRejection : public PASN_Sequence
01944 {
01945
#ifndef PASN_LEANANDMEAN
01946
PCLASSINFO(H501_DescriptorIDRejection, PASN_Sequence);
01947
#endif
01948
public:
01949 H501_DescriptorIDRejection(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01950
01951 H501_DescriptorIDRejectionReason m_reason;
01952
01953 PINDEX GetDataLength() const;
01954 BOOL Decode(PASN_Stream & strm);
01955
void Encode(PASN_Stream & strm) const;
01956 #ifndef PASN_NOPRINTON
01957
void PrintOn(ostream & strm) const;
01958 #endif
01959 Comparison Compare(const PObject & obj) const;
01960 PObject * Clone() const;
01961 };
01962
01963
01964
01965
01966
01967
01968 class H501_DescriptorUpdate : public PASN_Sequence
01969 {
01970
#ifndef PASN_LEANANDMEAN
01971
PCLASSINFO(H501_DescriptorUpdate, PASN_Sequence);
01972
#endif
01973
public:
01974 H501_DescriptorUpdate(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01975
01976 H225_AliasAddress m_sender;
01977 H501_ArrayOf_UpdateInformation m_updateInfo;
01978
01979 PINDEX GetDataLength() const;
01980 BOOL Decode(PASN_Stream & strm);
01981
void Encode(PASN_Stream & strm) const;
01982 #ifndef PASN_NOPRINTON
01983
void PrintOn(ostream & strm) const;
01984 #endif
01985 Comparison Compare(const PObject & obj) const;
01986 PObject * Clone() const;
01987 };
01988
01989
01990
01991
01992
01993
01994 class
H501_UpdateInformation : public PASN_Sequence
01995 {
01996
#ifndef PASN_LEANANDMEAN
01997
PCLASSINFO(
H501_UpdateInformation, PASN_Sequence);
01998
#endif
01999
public:
02000
H501_UpdateInformation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02001
02002 H501_UpdateInformation_descriptorInfo m_descriptorInfo;
02003 H501_UpdateInformation_updateType m_updateType;
02004
02005 PINDEX GetDataLength() const;
02006 BOOL Decode(PASN_Stream & strm);
02007
void Encode(PASN_Stream & strm) const;
02008 #ifndef PASN_NOPRINTON
02009
void PrintOn(ostream & strm) const;
02010 #endif
02011 Comparison Compare(const PObject & obj) const;
02012 PObject * Clone() const;
02013 };
02014
02015
02016
02017
02018
02019
02020 class H501_AccessConfirmation : public PASN_Sequence
02021 {
02022
#ifndef PASN_LEANANDMEAN
02023
PCLASSINFO(H501_AccessConfirmation, PASN_Sequence);
02024
#endif
02025
public:
02026 H501_AccessConfirmation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02027
02028 enum OptionalFields {
02029 e_supportedProtocols,
02030 e_serviceControl
02031 };
02032
02033 H501_ArrayOf_AddressTemplate m_templates;
02034 PASN_Boolean m_partialResponse;
02035 H501_ArrayOf_SupportedProtocols m_supportedProtocols;
02036 H501_ArrayOf_ServiceControlSession m_serviceControl;
02037
02038 PINDEX GetDataLength() const;
02039 BOOL Decode(PASN_Stream & strm);
02040
void Encode(PASN_Stream & strm) const;
02041 #ifndef PASN_NOPRINTON
02042
void PrintOn(ostream & strm) const;
02043 #endif
02044 Comparison Compare(const PObject & obj) const;
02045 PObject * Clone() const;
02046 };
02047
02048
02049
02050
02051
02052
02053 class H501_AccessRejection : public PASN_Sequence
02054 {
02055
#ifndef PASN_LEANANDMEAN
02056
PCLASSINFO(H501_AccessRejection, PASN_Sequence);
02057
#endif
02058
public:
02059 H501_AccessRejection(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02060
02061 enum OptionalFields {
02062 e_serviceControl
02063 };
02064
02065 H501_AccessRejectionReason m_reason;
02066 H501_ArrayOf_ServiceControlSession m_serviceControl;
02067
02068 PINDEX GetDataLength() const;
02069 BOOL Decode(PASN_Stream & strm);
02070
void Encode(PASN_Stream & strm) const;
02071 #ifndef PASN_NOPRINTON
02072
void PrintOn(ostream & strm) const;
02073 #endif
02074 Comparison Compare(const PObject & obj) const;
02075 PObject * Clone() const;
02076 };
02077
02078
02079
02080
02081
02082
02083 class H501_UsageRejection : public PASN_Sequence
02084 {
02085
#ifndef PASN_LEANANDMEAN
02086
PCLASSINFO(H501_UsageRejection, PASN_Sequence);
02087
#endif
02088
public:
02089 H501_UsageRejection(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02090
02091 H501_UsageRejectReason m_reason;
02092
02093 PINDEX GetDataLength() const;
02094 BOOL Decode(PASN_Stream & strm);
02095
void Encode(PASN_Stream & strm) const;
02096 #ifndef PASN_NOPRINTON
02097
void PrintOn(ostream & strm) const;
02098 #endif
02099 Comparison Compare(const PObject & obj) const;
02100 PObject * Clone() const;
02101 };
02102
02103
02104
02105
02106
02107
02108 class H501_UsageIndicationRejection : public PASN_Sequence
02109 {
02110
#ifndef PASN_LEANANDMEAN
02111
PCLASSINFO(H501_UsageIndicationRejection, PASN_Sequence);
02112
#endif
02113
public:
02114 H501_UsageIndicationRejection(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02115
02116 H501_UsageIndicationRejectionReason m_reason;
02117
02118 PINDEX GetDataLength() const;
02119 BOOL Decode(PASN_Stream & strm);
02120
void Encode(PASN_Stream & strm) const;
02121 #ifndef PASN_NOPRINTON
02122
void PrintOn(ostream & strm) const;
02123 #endif
02124 Comparison Compare(const PObject & obj) const;
02125 PObject * Clone() const;
02126 };
02127
02128
02129
02130
02131
02132
02133 class H501_ValidationRejection : public PASN_Sequence
02134 {
02135
#ifndef PASN_LEANANDMEAN
02136
PCLASSINFO(H501_ValidationRejection, PASN_Sequence);
02137
#endif
02138
public:
02139 H501_ValidationRejection(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02140
02141 H501_ValidationRejectionReason m_reason;
02142
02143 PINDEX GetDataLength() const;
02144 BOOL Decode(PASN_Stream & strm);
02145
void Encode(PASN_Stream & strm) const;
02146 #ifndef PASN_NOPRINTON
02147
void PrintOn(ostream & strm) const;
02148 #endif
02149 Comparison Compare(const PObject & obj) const;
02150 PObject * Clone() const;
02151 };
02152
02153
02154
02155
02156
02157
02158 class H501_RequestInProgress : public PASN_Sequence
02159 {
02160
#ifndef PASN_LEANANDMEAN
02161
PCLASSINFO(H501_RequestInProgress, PASN_Sequence);
02162
#endif
02163
public:
02164 H501_RequestInProgress(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02165
02166 enum OptionalFields {
02167 e_serviceControl
02168 };
02169
02170 PASN_Integer m_delay;
02171 H501_ArrayOf_ServiceControlSession m_serviceControl;
02172
02173 PINDEX GetDataLength() const;
02174 BOOL Decode(PASN_Stream & strm);
02175
void Encode(PASN_Stream & strm) const;
02176 #ifndef PASN_NOPRINTON
02177
void PrintOn(ostream & strm) const;
02178 #endif
02179 Comparison Compare(const PObject & obj) const;
02180 PObject * Clone() const;
02181 };
02182
02183
02184
02185
02186
02187
02188 class H501_NonStandardRejection : public PASN_Sequence
02189 {
02190
#ifndef PASN_LEANANDMEAN
02191
PCLASSINFO(H501_NonStandardRejection, PASN_Sequence);
02192
#endif
02193
public:
02194 H501_NonStandardRejection(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02195
02196 H501_NonStandardRejectionReason m_reason;
02197
02198 PINDEX GetDataLength() const;
02199 BOOL Decode(PASN_Stream & strm);
02200
void Encode(PASN_Stream & strm) const;
02201 #ifndef PASN_NOPRINTON
02202
void PrintOn(ostream & strm) const;
02203 #endif
02204 Comparison Compare(const PObject & obj) const;
02205 PObject * Clone() const;
02206 };
02207
02208
02209
02210
02211
02212
02213 class H501_UnknownMessageResponse : public PASN_Sequence
02214 {
02215
#ifndef PASN_LEANANDMEAN
02216
PCLASSINFO(H501_UnknownMessageResponse, PASN_Sequence);
02217
#endif
02218
public:
02219 H501_UnknownMessageResponse(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02220
02221 PASN_OctetString m_unknownMessage;
02222 H501_UnknownMessageReason m_reason;
02223
02224 PINDEX GetDataLength() const;
02225 BOOL Decode(PASN_Stream & strm);
02226
void Encode(PASN_Stream & strm) const;
02227 #ifndef PASN_NOPRINTON
02228
void PrintOn(ostream & strm) const;
02229 #endif
02230 Comparison Compare(const PObject & obj) const;
02231 PObject * Clone() const;
02232 };
02233
02234
02235
02236
02237
02238
02239 class H501_AuthenticationRequest : public PASN_Sequence
02240 {
02241
#ifndef PASN_LEANANDMEAN
02242
PCLASSINFO(H501_AuthenticationRequest, PASN_Sequence);
02243
#endif
02244
public:
02245 H501_AuthenticationRequest(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02246
02247 H501_ApplicationMessage m_applicationMessage;
02248
02249 PINDEX GetDataLength() const;
02250 BOOL Decode(PASN_Stream & strm);
02251
void Encode(PASN_Stream & strm) const;
02252 #ifndef PASN_NOPRINTON
02253
void PrintOn(ostream & strm) const;
02254 #endif
02255 Comparison Compare(const PObject & obj) const;
02256 PObject * Clone() const;
02257 };
02258
02259
02260
02261
02262
02263
02264 class H501_AuthenticationRejection : public PASN_Sequence
02265 {
02266
#ifndef PASN_LEANANDMEAN
02267
PCLASSINFO(H501_AuthenticationRejection, PASN_Sequence);
02268
#endif
02269
public:
02270 H501_AuthenticationRejection(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02271
02272 H501_AuthenticationRejectionReason m_reason;
02273
02274 PINDEX GetDataLength() const;
02275 BOOL Decode(PASN_Stream & strm);
02276
void Encode(PASN_Stream & strm) const;
02277 #ifndef PASN_NOPRINTON
02278
void PrintOn(ostream & strm) const;
02279 #endif
02280 Comparison Compare(const PObject & obj) const;
02281 PObject * Clone() const;
02282 };
02283
02284
02285
02286
02287
02288
02289 class
H501_AddressTemplate : public PASN_Sequence
02290 {
02291
#ifndef PASN_LEANANDMEAN
02292
PCLASSINFO(
H501_AddressTemplate, PASN_Sequence);
02293
#endif
02294
public:
02295
H501_AddressTemplate(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02296
02297 enum OptionalFields {
02298 e_supportedProtocols,
02299 e_featureSet
02300 };
02301
02302 H501_ArrayOf_Pattern m_pattern;
02303 H501_ArrayOf_RouteInformation m_routeInfo;
02304 PASN_Integer m_timeToLive;
02305 H501_ArrayOf_SupportedProtocols m_supportedProtocols;
02306 H225_FeatureSet m_featureSet;
02307
02308 PINDEX GetDataLength() const;
02309 BOOL Decode(PASN_Stream & strm);
02310
void Encode(PASN_Stream & strm) const;
02311 #ifndef PASN_NOPRINTON
02312
void PrintOn(ostream & strm) const;
02313 #endif
02314 Comparison Compare(const PObject & obj) const;
02315 PObject * Clone() const;
02316 };
02317
02318
02319
02320
02321
02322
02323 class
H501_ContactInformation : public PASN_Sequence
02324 {
02325
#ifndef PASN_LEANANDMEAN
02326
PCLASSINFO(
H501_ContactInformation, PASN_Sequence);
02327
#endif
02328
public:
02329
H501_ContactInformation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02330
02331 enum OptionalFields {
02332 e_transportQoS,
02333 e_security,
02334 e_accessTokens,
02335 e_multipleCalls,
02336 e_featureSet,
02337 e_circuitID,
02338 e_supportedCircuits
02339 };
02340
02341 H225_AliasAddress m_transportAddress;
02342 PASN_Integer m_priority;
02343 H225_TransportQOS m_transportQoS;
02344 H501_ArrayOf_SecurityMode m_security;
02345 H501_ArrayOf_AccessToken m_accessTokens;
02346 PASN_Boolean m_multipleCalls;
02347 H225_FeatureSet m_featureSet;
02348 H225_CircuitInfo m_circuitID;
02349 H501_ArrayOf_CircuitIdentifier m_supportedCircuits;
02350
02351 PINDEX GetDataLength() const;
02352 BOOL Decode(PASN_Stream & strm);
02353
void Encode(PASN_Stream & strm) const;
02354 #ifndef PASN_NOPRINTON
02355
void PrintOn(ostream & strm) const;
02356 #endif
02357 Comparison Compare(const PObject & obj) const;
02358 PObject * Clone() const;
02359 };
02360
02361
02362
02363
02364
02365
02366 class
H501_PriceInfoSpec : public PASN_Sequence
02367 {
02368
#ifndef PASN_LEANANDMEAN
02369
PCLASSINFO(
H501_PriceInfoSpec, PASN_Sequence);
02370
#endif
02371
public:
02372
H501_PriceInfoSpec(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02373
02374 enum OptionalFields {
02375 e_validFrom,
02376 e_validUntil,
02377 e_hoursFrom,
02378 e_hoursUntil,
02379 e_priceElement,
02380 e_priceFormula
02381 };
02382
02383 PASN_IA5String m_currency;
02384 PASN_Integer m_currencyScale;
02385 H501_GlobalTimeStamp m_validFrom;
02386 H501_GlobalTimeStamp m_validUntil;
02387 PASN_IA5String m_hoursFrom;
02388 PASN_IA5String m_hoursUntil;
02389 H501_ArrayOf_PriceElement m_priceElement;
02390 PASN_IA5String m_priceFormula;
02391
02392 PINDEX GetDataLength() const;
02393 BOOL Decode(PASN_Stream & strm);
02394
void Encode(PASN_Stream & strm) const;
02395 #ifndef PASN_NOPRINTON
02396
void PrintOn(ostream & strm) const;
02397 #endif
02398 Comparison Compare(const PObject & obj) const;
02399 PObject * Clone() const;
02400 };
02401
02402
02403
02404
02405
02406
02407 class
H501_PriceElement : public PASN_Sequence
02408 {
02409
#ifndef PASN_LEANANDMEAN
02410
PCLASSINFO(
H501_PriceElement, PASN_Sequence);
02411
#endif
02412
public:
02413
H501_PriceElement(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02414
02415 PASN_Integer m_amount;
02416 PASN_Integer m_quantum;
02417 H501_PriceElement_units m_units;
02418
02419 PINDEX GetDataLength() const;
02420 BOOL Decode(PASN_Stream & strm);
02421
void Encode(PASN_Stream & strm) const;
02422 #ifndef PASN_NOPRINTON
02423
void PrintOn(ostream & strm) const;
02424 #endif
02425 Comparison Compare(const PObject & obj) const;
02426 PObject * Clone() const;
02427 };
02428
02429
02430
02431
02432
02433
02434 class
H501_DescriptorInfo : public PASN_Sequence
02435 {
02436
#ifndef PASN_LEANANDMEAN
02437
PCLASSINFO(
H501_DescriptorInfo, PASN_Sequence);
02438
#endif
02439
public:
02440
H501_DescriptorInfo(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02441
02442 H225_GloballyUniqueID m_descriptorID;
02443 H501_GlobalTimeStamp m_lastChanged;
02444
02445 PINDEX GetDataLength() const;
02446 BOOL Decode(PASN_Stream & strm);
02447
void Encode(PASN_Stream & strm) const;
02448 #ifndef PASN_NOPRINTON
02449
void PrintOn(ostream & strm) const;
02450 #endif
02451 Comparison Compare(const PObject & obj) const;
02452 PObject * Clone() const;
02453 };
02454
02455
02456
02457
02458
02459
02460 class
H501_AlternatePEInfo : public PASN_Sequence
02461 {
02462
#ifndef PASN_LEANANDMEAN
02463
PCLASSINFO(
H501_AlternatePEInfo, PASN_Sequence);
02464
#endif
02465
public:
02466
H501_AlternatePEInfo(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02467
02468 H501_ArrayOf_AlternatePE m_alternatePE;
02469 PASN_Boolean m_alternateIsPermanent;
02470
02471 PINDEX GetDataLength() const;
02472 BOOL Decode(PASN_Stream & strm);
02473
void Encode(PASN_Stream & strm) const;
02474 #ifndef PASN_NOPRINTON
02475
void PrintOn(ostream & strm) const;
02476 #endif
02477 Comparison Compare(const PObject & obj) const;
02478 PObject * Clone() const;
02479 };
02480
02481
02482
02483
02484
02485
02486 class
H501_AlternatePE : public PASN_Sequence
02487 {
02488
#ifndef PASN_LEANANDMEAN
02489
PCLASSINFO(
H501_AlternatePE, PASN_Sequence);
02490
#endif
02491
public:
02492
H501_AlternatePE(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02493
02494 enum OptionalFields {
02495 e_elementIdentifier
02496 };
02497
02498 H225_AliasAddress m_contactAddress;
02499 PASN_Integer m_priority;
02500 H501_ElementIdentifier m_elementIdentifier;
02501
02502 PINDEX GetDataLength() const;
02503 BOOL Decode(PASN_Stream & strm);
02504
void Encode(PASN_Stream & strm) const;
02505 #ifndef PASN_NOPRINTON
02506
void PrintOn(ostream & strm) const;
02507 #endif
02508 Comparison Compare(const PObject & obj) const;
02509 PObject * Clone() const;
02510 };
02511
02512
02513
02514
02515
02516
02517 class
H501_UserInformation : public PASN_Sequence
02518 {
02519
#ifndef PASN_LEANANDMEAN
02520
PCLASSINFO(
H501_UserInformation, PASN_Sequence);
02521
#endif
02522
public:
02523
H501_UserInformation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02524
02525 enum OptionalFields {
02526 e_userAuthenticator
02527 };
02528
02529 H225_AliasAddress m_userIdentifier;
02530 H501_ArrayOf_CryptoH323Token m_userAuthenticator;
02531
02532 PINDEX GetDataLength() const;
02533 BOOL Decode(PASN_Stream & strm);
02534
void Encode(PASN_Stream & strm) const;
02535 #ifndef PASN_NOPRINTON
02536
void PrintOn(ostream & strm) const;
02537 #endif
02538 Comparison Compare(const PObject & obj) const;
02539 PObject * Clone() const;
02540 };
02541
02542
02543
02544
02545
02546
02547 class
H501_UsageSpecification : public PASN_Sequence
02548 {
02549
#ifndef PASN_LEANANDMEAN
02550
PCLASSINFO(
H501_UsageSpecification, PASN_Sequence);
02551
#endif
02552
public:
02553
H501_UsageSpecification(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02554
02555 enum OptionalFields {
02556 e_sendToPEAddress
02557 };
02558
02559 H501_ElementIdentifier m_sendTo;
02560 H501_UsageSpecification_when m_when;
02561 H501_ArrayOf_PASN_ObjectId m_required;
02562 H501_ArrayOf_PASN_ObjectId m_preferred;
02563 H225_AliasAddress m_sendToPEAddress;
02564
02565 PINDEX GetDataLength() const;
02566 BOOL Decode(PASN_Stream & strm);
02567
void Encode(PASN_Stream & strm) const;
02568 #ifndef PASN_NOPRINTON
02569
void PrintOn(ostream & strm) const;
02570 #endif
02571 Comparison Compare(const PObject & obj) const;
02572 PObject * Clone() const;
02573 };
02574
02575
02576
02577
02578
02579
02580 class
H501_PartyInformation : public PASN_Sequence
02581 {
02582
#ifndef PASN_LEANANDMEAN
02583
PCLASSINFO(
H501_PartyInformation, PASN_Sequence);
02584
#endif
02585
public:
02586
H501_PartyInformation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02587
02588 enum OptionalFields {
02589 e_domainIdentifier,
02590 e_transportAddress,
02591 e_endpointType,
02592 e_userInfo,
02593 e_timeZone
02594 };
02595
02596 H501_ArrayOf_AliasAddress m_logicalAddresses;
02597 H225_AliasAddress m_domainIdentifier;
02598 H225_AliasAddress m_transportAddress;
02599 H225_EndpointType m_endpointType;
02600 H501_UserInformation m_userInfo;
02601 H501_TimeZone m_timeZone;
02602
02603 PINDEX GetDataLength() const;
02604 BOOL Decode(PASN_Stream & strm);
02605
void Encode(PASN_Stream & strm) const;
02606 #ifndef PASN_NOPRINTON
02607
void PrintOn(ostream & strm) const;
02608 #endif
02609 Comparison Compare(const PObject & obj) const;
02610 PObject * Clone() const;
02611 };
02612
02613
02614
02615
02616
02617
02618 class
H501_Message : public PASN_Sequence
02619 {
02620
#ifndef PASN_LEANANDMEAN
02621
PCLASSINFO(
H501_Message, PASN_Sequence);
02622
#endif
02623
public:
02624
H501_Message(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02625
02626 H501_MessageBody m_body;
02627 H501_MessageCommonInfo m_common;
02628
02629 PINDEX GetDataLength() const;
02630 BOOL Decode(PASN_Stream & strm);
02631
void Encode(PASN_Stream & strm) const;
02632 #ifndef PASN_NOPRINTON
02633
void PrintOn(ostream & strm) const;
02634 #endif
02635 Comparison Compare(const PObject & obj) const;
02636 PObject * Clone() const;
02637 };
02638
02639
02640
02641
02642
02643
02644 class H501_ServiceRequest : public PASN_Sequence
02645 {
02646
#ifndef PASN_LEANANDMEAN
02647
PCLASSINFO(H501_ServiceRequest, PASN_Sequence);
02648
#endif
02649
public:
02650 H501_ServiceRequest(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02651
02652 enum OptionalFields {
02653 e_elementIdentifier,
02654 e_domainIdentifier,
02655 e_securityMode,
02656 e_timeToLive,
02657 e_usageSpec
02658 };
02659
02660 H501_ElementIdentifier m_elementIdentifier;
02661 H225_AliasAddress m_domainIdentifier;
02662 H501_ArrayOf_SecurityMode m_securityMode;
02663 PASN_Integer m_timeToLive;
02664 H501_UsageSpecification m_usageSpec;
02665
02666 PINDEX GetDataLength() const;
02667 BOOL Decode(PASN_Stream & strm);
02668
void Encode(PASN_Stream & strm) const;
02669 #ifndef PASN_NOPRINTON
02670
void PrintOn(ostream & strm) const;
02671 #endif
02672 Comparison Compare(const PObject & obj) const;
02673 PObject * Clone() const;
02674 };
02675
02676
02677
02678
02679
02680
02681 class H501_ServiceConfirmation : public PASN_Sequence
02682 {
02683
#ifndef PASN_LEANANDMEAN
02684
PCLASSINFO(H501_ServiceConfirmation, PASN_Sequence);
02685
#endif
02686
public:
02687 H501_ServiceConfirmation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02688
02689 enum OptionalFields {
02690 e_alternates,
02691 e_securityMode,
02692 e_timeToLive,
02693 e_usageSpec
02694 };
02695
02696 H501_ElementIdentifier m_elementIdentifier;
02697 H225_AliasAddress m_domainIdentifier;
02698 H501_AlternatePEInfo m_alternates;
02699 H501_SecurityMode m_securityMode;
02700 PASN_Integer m_timeToLive;
02701 H501_UsageSpecification m_usageSpec;
02702
02703 PINDEX GetDataLength() const;
02704 BOOL Decode(PASN_Stream & strm);
02705
void Encode(PASN_Stream & strm) const;
02706 #ifndef PASN_NOPRINTON
02707
void PrintOn(ostream & strm) const;
02708 #endif
02709 Comparison Compare(const PObject & obj) const;
02710 PObject * Clone() const;
02711 };
02712
02713
02714
02715
02716
02717
02718 class H501_ServiceRejection : public PASN_Sequence
02719 {
02720
#ifndef PASN_LEANANDMEAN
02721
PCLASSINFO(H501_ServiceRejection, PASN_Sequence);
02722
#endif
02723
public:
02724 H501_ServiceRejection(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02725
02726 enum OptionalFields {
02727 e_alternates
02728 };
02729
02730 H501_ServiceRejectionReason m_reason;
02731 H501_AlternatePEInfo m_alternates;
02732
02733 PINDEX GetDataLength() const;
02734 BOOL Decode(PASN_Stream & strm);
02735
void Encode(PASN_Stream & strm) const;
02736 #ifndef PASN_NOPRINTON
02737
void PrintOn(ostream & strm) const;
02738 #endif
02739 Comparison Compare(const PObject & obj) const;
02740 PObject * Clone() const;
02741 };
02742
02743
02744
02745
02746
02747
02748 class H501_ServiceRelease : public PASN_Sequence
02749 {
02750
#ifndef PASN_LEANANDMEAN
02751
PCLASSINFO(H501_ServiceRelease, PASN_Sequence);
02752
#endif
02753
public:
02754 H501_ServiceRelease(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02755
02756 enum OptionalFields {
02757 e_alternates
02758 };
02759
02760 H501_ServiceReleaseReason m_reason;
02761 H501_AlternatePEInfo m_alternates;
02762
02763 PINDEX GetDataLength() const;
02764 BOOL Decode(PASN_Stream & strm);
02765
void Encode(PASN_Stream & strm) const;
02766 #ifndef PASN_NOPRINTON
02767
void PrintOn(ostream & strm) const;
02768 #endif
02769 Comparison Compare(const PObject & obj) const;
02770 PObject * Clone() const;
02771 };
02772
02773
02774
02775
02776
02777
02778 class H501_AccessRequest : public PASN_Sequence
02779 {
02780
#ifndef PASN_LEANANDMEAN
02781
PCLASSINFO(H501_AccessRequest, PASN_Sequence);
02782
#endif
02783
public:
02784 H501_AccessRequest(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02785
02786 enum OptionalFields {
02787 e_sourceInfo,
02788 e_callInfo,
02789 e_usageSpec,
02790 e_desiredProtocols
02791 };
02792
02793 H501_PartyInformation m_destinationInfo;
02794 H501_PartyInformation m_sourceInfo;
02795 H501_CallInformation m_callInfo;
02796 H501_UsageSpecification m_usageSpec;
02797 H501_ArrayOf_SupportedProtocols m_desiredProtocols;
02798
02799 PINDEX GetDataLength() const;
02800 BOOL Decode(PASN_Stream & strm);
02801
void Encode(PASN_Stream & strm) const;
02802 #ifndef PASN_NOPRINTON
02803
void PrintOn(ostream & strm) const;
02804 #endif
02805 Comparison Compare(const PObject & obj) const;
02806 PObject * Clone() const;
02807 };
02808
02809
02810
02811
02812
02813
02814 class H501_UsageRequest : public PASN_Sequence
02815 {
02816
#ifndef PASN_LEANANDMEAN
02817
PCLASSINFO(H501_UsageRequest, PASN_Sequence);
02818
#endif
02819
public:
02820 H501_UsageRequest(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02821
02822 H501_CallInformation m_callInfo;
02823 H501_UsageSpecification m_usageSpec;
02824
02825 PINDEX GetDataLength() const;
02826 BOOL Decode(PASN_Stream & strm);
02827
void Encode(PASN_Stream & strm) const;
02828 #ifndef PASN_NOPRINTON
02829
void PrintOn(ostream & strm) const;
02830 #endif
02831 Comparison Compare(const PObject & obj) const;
02832 PObject * Clone() const;
02833 };
02834
02835
02836
02837
02838
02839
02840 class H501_UsageIndication : public PASN_Sequence
02841 {
02842
#ifndef PASN_LEANANDMEAN
02843
PCLASSINFO(H501_UsageIndication, PASN_Sequence);
02844
#endif
02845
public:
02846 H501_UsageIndication(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02847
02848 enum OptionalFields {
02849 e_accessTokens,
02850 e_srcInfo,
02851 e_startTime,
02852 e_endTime,
02853 e_terminationCause
02854 };
02855
02856 H501_CallInformation m_callInfo;
02857 H501_ArrayOf_AccessToken m_accessTokens;
02858 H501_Role m_senderRole;
02859 H501_UsageCallStatus m_usageCallStatus;
02860 H501_PartyInformation m_srcInfo;
02861 H501_PartyInformation m_destAddress;
02862 H235_TimeStamp m_startTime;
02863 H235_TimeStamp m_endTime;
02864 H501_TerminationCause m_terminationCause;
02865 H501_ArrayOf_UsageField m_usageFields;
02866
02867 PINDEX GetDataLength() const;
02868 BOOL Decode(PASN_Stream & strm);
02869
void Encode(PASN_Stream & strm) const;
02870 #ifndef PASN_NOPRINTON
02871
void PrintOn(ostream & strm) const;
02872 #endif
02873 Comparison Compare(const PObject & obj) const;
02874 PObject * Clone() const;
02875 };
02876
02877
02878
02879
02880
02881
02882 class H501_ValidationRequest : public PASN_Sequence
02883 {
02884
#ifndef PASN_LEANANDMEAN
02885
PCLASSINFO(H501_ValidationRequest, PASN_Sequence);
02886
#endif
02887
public:
02888 H501_ValidationRequest(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02889
02890 enum OptionalFields {
02891 e_accessToken,
02892 e_destinationInfo,
02893 e_sourceInfo,
02894 e_usageSpec
02895 };
02896
02897 H501_ArrayOf_AccessToken m_accessToken;
02898 H501_PartyInformation m_destinationInfo;
02899 H501_PartyInformation m_sourceInfo;
02900 H501_CallInformation m_callInfo;
02901 H501_UsageSpecification m_usageSpec;
02902
02903 PINDEX GetDataLength() const;
02904 BOOL Decode(PASN_Stream & strm);
02905
void Encode(PASN_Stream & strm) const;
02906 #ifndef PASN_NOPRINTON
02907
void PrintOn(ostream & strm) const;
02908 #endif
02909 Comparison Compare(const PObject & obj) const;
02910 PObject * Clone() const;
02911 };
02912
02913
02914
02915
02916
02917
02918 class H501_ValidationConfirmation : public PASN_Sequence
02919 {
02920
#ifndef PASN_LEANANDMEAN
02921
PCLASSINFO(H501_ValidationConfirmation, PASN_Sequence);
02922
#endif
02923
public:
02924 H501_ValidationConfirmation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02925
02926 enum OptionalFields {
02927 e_destinationInfo,
02928 e_usageSpec
02929 };
02930
02931 H501_PartyInformation m_destinationInfo;
02932 H501_UsageSpecification m_usageSpec;
02933
02934 PINDEX GetDataLength() const;
02935 BOOL Decode(PASN_Stream & strm);
02936
void Encode(PASN_Stream & strm) const;
02937 #ifndef PASN_NOPRINTON
02938
void PrintOn(ostream & strm) const;
02939 #endif
02940 Comparison Compare(const PObject & obj) const;
02941 PObject * Clone() const;
02942 };
02943
02944
02945
02946
02947
02948
02949 class
H501_RouteInformation : public PASN_Sequence
02950 {
02951
#ifndef PASN_LEANANDMEAN
02952
PCLASSINFO(
H501_RouteInformation, PASN_Sequence);
02953
#endif
02954
public:
02955
H501_RouteInformation(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02956
02957 enum OptionalFields {
02958 e_usageSpec,
02959 e_priceInfo,
02960 e_type,
02961 e_featureSet,
02962 e_circuitID,
02963 e_supportedCircuits
02964 };
02965
02966 H501_RouteInformation_messageType m_messageType;
02967 PASN_Boolean m_callSpecific;
02968 H501_UsageSpecification m_usageSpec;
02969 H501_ArrayOf_PriceInfoSpec m_priceInfo;
02970 H501_ArrayOf_ContactInformation m_contacts;
02971 H225_EndpointType m_type;
02972 H225_FeatureSet m_featureSet;
02973 H225_CircuitInfo m_circuitID;
02974 H501_ArrayOf_CircuitIdentifier m_supportedCircuits;
02975
02976 PINDEX GetDataLength() const;
02977 BOOL Decode(PASN_Stream & strm);
02978
void Encode(PASN_Stream & strm) const;
02979 #ifndef PASN_NOPRINTON
02980
void PrintOn(ostream & strm) const;
02981 #endif
02982 Comparison Compare(const PObject & obj) const;
02983 PObject * Clone() const;
02984 };
02985
02986
02987
02988
02989
02990
02991 class H501_Descriptor : public PASN_Sequence
02992 {
02993
#ifndef PASN_LEANANDMEAN
02994
PCLASSINFO(H501_Descriptor, PASN_Sequence);
02995
#endif
02996
public:
02997 H501_Descriptor(
unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02998
02999 enum OptionalFields {
03000 e_gatekeeperID
03001 };
03002
03003 H501_DescriptorInfo m_descriptorInfo;
03004 H501_ArrayOf_AddressTemplate m_templates;
03005 H225_GatekeeperIdentifier m_gatekeeperID;
03006
03007 PINDEX GetDataLength() const;
03008 BOOL Decode(PASN_Stream & strm);
03009
void Encode(PASN_Stream & strm) const;
03010 #ifndef PASN_NOPRINTON
03011
void PrintOn(ostream & strm) const;
03012 #endif
03013 Comparison Compare(const PObject & obj) const;
03014 PObject * Clone() const;
03015 };
03016
03017
03018 #endif
03019
03020 #endif
03021
03022
03023