00001
00002
00003
00004
00005
00006
00007 #if ! H323_DISABLE_H225
00008
00009 #ifndef __H225_H
00010 #define __H225_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 "h245.h"
00020
00021
00022
00023
00024
00025
00026 class H225_NonStandardParameter;
00027 class H225_ConferenceIdentifier;
00028 class H225_SecurityErrors;
00029
00030 class H225_ReleaseCompleteReason : public PASN_Choice
00031 {
00032 #ifndef PASN_LEANANDMEAN
00033 PCLASSINFO(H225_ReleaseCompleteReason, PASN_Choice);
00034 #endif
00035 public:
00036 H225_ReleaseCompleteReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00037
00038 enum Choices {
00039 e_noBandwidth,
00040 e_gatekeeperResources,
00041 e_unreachableDestination,
00042 e_destinationRejection,
00043 e_invalidRevision,
00044 e_noPermission,
00045 e_unreachableGatekeeper,
00046 e_gatewayResources,
00047 e_badFormatAddress,
00048 e_adaptiveBusy,
00049 e_inConf,
00050 e_undefinedReason,
00051 e_facilityCallDeflection,
00052 e_securityDenied,
00053 e_calledPartyNotRegistered,
00054 e_callerNotRegistered,
00055 e_newConnectionNeeded,
00056 e_nonStandardReason,
00057 e_replaceWithConferenceInvite,
00058 e_genericDataReason,
00059 e_neededFeatureNotSupported,
00060 e_tunnelledSignallingRejected,
00061 e_invalidCID,
00062 e_securityError,
00063 e_hopCountExceeded
00064 };
00065
00066 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00067 operator H225_NonStandardParameter &() const;
00068 #else
00069 operator H225_NonStandardParameter &();
00070 operator const H225_NonStandardParameter &() const;
00071 #endif
00072 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00073 operator H225_ConferenceIdentifier &() const;
00074 #else
00075 operator H225_ConferenceIdentifier &();
00076 operator const H225_ConferenceIdentifier &() const;
00077 #endif
00078 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00079 operator H225_SecurityErrors &() const;
00080 #else
00081 operator H225_SecurityErrors &();
00082 operator const H225_SecurityErrors &() const;
00083 #endif
00084
00085 BOOL CreateObject();
00086 PObject * Clone() const;
00087 };
00088
00089
00090
00091
00092
00093
00094 class H225_ScnConnectionType : public PASN_Choice
00095 {
00096 #ifndef PASN_LEANANDMEAN
00097 PCLASSINFO(H225_ScnConnectionType, PASN_Choice);
00098 #endif
00099 public:
00100 H225_ScnConnectionType(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00101
00102 enum Choices {
00103 e_unknown,
00104 e_bChannel,
00105 e_hybrid2x64,
00106 e_hybrid384,
00107 e_hybrid1536,
00108 e_hybrid1920,
00109 e_multirate
00110 };
00111
00112 BOOL CreateObject();
00113 PObject * Clone() const;
00114 };
00115
00116
00117
00118
00119
00120
00121 class H225_ScnConnectionAggregation : public PASN_Choice
00122 {
00123 #ifndef PASN_LEANANDMEAN
00124 PCLASSINFO(H225_ScnConnectionAggregation, PASN_Choice);
00125 #endif
00126 public:
00127 H225_ScnConnectionAggregation(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00128
00129 enum Choices {
00130 e_auto,
00131 e_none,
00132 e_h221,
00133 e_bonded_mode1,
00134 e_bonded_mode2,
00135 e_bonded_mode3
00136 };
00137
00138 BOOL CreateObject();
00139 PObject * Clone() const;
00140 };
00141
00142
00143
00144
00145
00146
00147 class H225_PresentationIndicator : public PASN_Choice
00148 {
00149 #ifndef PASN_LEANANDMEAN
00150 PCLASSINFO(H225_PresentationIndicator, PASN_Choice);
00151 #endif
00152 public:
00153 H225_PresentationIndicator(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00154
00155 enum Choices {
00156 e_presentationAllowed,
00157 e_presentationRestricted,
00158 e_addressNotAvailable
00159 };
00160
00161 BOOL CreateObject();
00162 PObject * Clone() const;
00163 };
00164
00165
00166
00167
00168
00169
00170 class H225_ScreeningIndicator : public PASN_Enumeration
00171 {
00172 #ifndef PASN_LEANANDMEAN
00173 PCLASSINFO(H225_ScreeningIndicator, PASN_Enumeration);
00174 #endif
00175 public:
00176 H225_ScreeningIndicator(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
00177
00178 enum Enumerations {
00179 e_userProvidedNotScreened,
00180 e_userProvidedVerifiedAndPassed,
00181 e_userProvidedVerifiedAndFailed,
00182 e_networkProvided
00183 };
00184
00185 H225_ScreeningIndicator & operator=(unsigned v);
00186 PObject * Clone() const;
00187 };
00188
00189
00190
00191
00192
00193
00194 class H225_FacilityReason : public PASN_Choice
00195 {
00196 #ifndef PASN_LEANANDMEAN
00197 PCLASSINFO(H225_FacilityReason, PASN_Choice);
00198 #endif
00199 public:
00200 H225_FacilityReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00201
00202 enum Choices {
00203 e_routeCallToGatekeeper,
00204 e_callForwarded,
00205 e_routeCallToMC,
00206 e_undefinedReason,
00207 e_conferenceListChoice,
00208 e_startH245,
00209 e_noH245,
00210 e_newTokens,
00211 e_featureSetUpdate,
00212 e_forwardedElements,
00213 e_transportedInformation
00214 };
00215
00216 BOOL CreateObject();
00217 PObject * Clone() const;
00218 };
00219
00220
00221
00222
00223
00224
00225 class H225_TransportAddress_ipAddress;
00226 class H225_TransportAddress_ipSourceRoute;
00227 class H225_TransportAddress_ipxAddress;
00228 class H225_TransportAddress_ip6Address;
00229 class H225_NonStandardParameter;
00230
00231 class H225_TransportAddress : public PASN_Choice
00232 {
00233 #ifndef PASN_LEANANDMEAN
00234 PCLASSINFO(H225_TransportAddress, PASN_Choice);
00235 #endif
00236 public:
00237 H225_TransportAddress(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00238
00239 enum Choices {
00240 e_ipAddress,
00241 e_ipSourceRoute,
00242 e_ipxAddress,
00243 e_ip6Address,
00244 e_netBios,
00245 e_nsap,
00246 e_nonStandardAddress
00247 };
00248
00249 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00250 operator H225_TransportAddress_ipAddress &() const;
00251 #else
00252 operator H225_TransportAddress_ipAddress &();
00253 operator const H225_TransportAddress_ipAddress &() const;
00254 #endif
00255 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00256 operator H225_TransportAddress_ipSourceRoute &() const;
00257 #else
00258 operator H225_TransportAddress_ipSourceRoute &();
00259 operator const H225_TransportAddress_ipSourceRoute &() const;
00260 #endif
00261 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00262 operator H225_TransportAddress_ipxAddress &() const;
00263 #else
00264 operator H225_TransportAddress_ipxAddress &();
00265 operator const H225_TransportAddress_ipxAddress &() const;
00266 #endif
00267 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00268 operator H225_TransportAddress_ip6Address &() const;
00269 #else
00270 operator H225_TransportAddress_ip6Address &();
00271 operator const H225_TransportAddress_ip6Address &() const;
00272 #endif
00273 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00274 operator H225_NonStandardParameter &() const;
00275 #else
00276 operator H225_NonStandardParameter &();
00277 operator const H225_NonStandardParameter &() const;
00278 #endif
00279
00280 BOOL CreateObject();
00281 PObject * Clone() const;
00282 };
00283
00284
00285
00286
00287
00288
00289 class H225_NonStandardParameter;
00290 class H225_H310Caps;
00291 class H225_H320Caps;
00292 class H225_H321Caps;
00293 class H225_H322Caps;
00294 class H225_H323Caps;
00295 class H225_H324Caps;
00296 class H225_VoiceCaps;
00297 class H225_T120OnlyCaps;
00298 class H225_NonStandardProtocol;
00299 class H225_T38FaxAnnexbOnlyCaps;
00300 class H225_SIPCaps;
00301
00302 class H225_SupportedProtocols : public PASN_Choice
00303 {
00304 #ifndef PASN_LEANANDMEAN
00305 PCLASSINFO(H225_SupportedProtocols, PASN_Choice);
00306 #endif
00307 public:
00308 H225_SupportedProtocols(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00309
00310 enum Choices {
00311 e_nonStandardData,
00312 e_h310,
00313 e_h320,
00314 e_h321,
00315 e_h322,
00316 e_h323,
00317 e_h324,
00318 e_voice,
00319 e_t120_only,
00320 e_nonStandardProtocol,
00321 e_t38FaxAnnexbOnly,
00322 e_sip
00323 };
00324
00325 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00326 operator H225_NonStandardParameter &() const;
00327 #else
00328 operator H225_NonStandardParameter &();
00329 operator const H225_NonStandardParameter &() const;
00330 #endif
00331 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00332 operator H225_H310Caps &() const;
00333 #else
00334 operator H225_H310Caps &();
00335 operator const H225_H310Caps &() const;
00336 #endif
00337 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00338 operator H225_H320Caps &() const;
00339 #else
00340 operator H225_H320Caps &();
00341 operator const H225_H320Caps &() const;
00342 #endif
00343 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00344 operator H225_H321Caps &() const;
00345 #else
00346 operator H225_H321Caps &();
00347 operator const H225_H321Caps &() const;
00348 #endif
00349 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00350 operator H225_H322Caps &() const;
00351 #else
00352 operator H225_H322Caps &();
00353 operator const H225_H322Caps &() const;
00354 #endif
00355 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00356 operator H225_H323Caps &() const;
00357 #else
00358 operator H225_H323Caps &();
00359 operator const H225_H323Caps &() const;
00360 #endif
00361 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00362 operator H225_H324Caps &() const;
00363 #else
00364 operator H225_H324Caps &();
00365 operator const H225_H324Caps &() const;
00366 #endif
00367 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00368 operator H225_VoiceCaps &() const;
00369 #else
00370 operator H225_VoiceCaps &();
00371 operator const H225_VoiceCaps &() const;
00372 #endif
00373 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00374 operator H225_T120OnlyCaps &() const;
00375 #else
00376 operator H225_T120OnlyCaps &();
00377 operator const H225_T120OnlyCaps &() const;
00378 #endif
00379 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00380 operator H225_NonStandardProtocol &() const;
00381 #else
00382 operator H225_NonStandardProtocol &();
00383 operator const H225_NonStandardProtocol &() const;
00384 #endif
00385 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00386 operator H225_T38FaxAnnexbOnlyCaps &() const;
00387 #else
00388 operator H225_T38FaxAnnexbOnlyCaps &();
00389 operator const H225_T38FaxAnnexbOnlyCaps &() const;
00390 #endif
00391 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00392 operator H225_SIPCaps &() const;
00393 #else
00394 operator H225_SIPCaps &();
00395 operator const H225_SIPCaps &() const;
00396 #endif
00397
00398 BOOL CreateObject();
00399 PObject * Clone() const;
00400 };
00401
00402
00403
00404
00405
00406
00407 class H225_H221NonStandard : public PASN_Sequence
00408 {
00409 #ifndef PASN_LEANANDMEAN
00410 PCLASSINFO(H225_H221NonStandard, PASN_Sequence);
00411 #endif
00412 public:
00413 H225_H221NonStandard(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00414
00415 PASN_Integer m_t35CountryCode;
00416 PASN_Integer m_t35Extension;
00417 PASN_Integer m_manufacturerCode;
00418
00419 PINDEX GetDataLength() const;
00420 BOOL Decode(PASN_Stream & strm);
00421 void Encode(PASN_Stream & strm) const;
00422 #ifndef PASN_NOPRINTON
00423 void PrintOn(ostream & strm) const;
00424 #endif
00425 Comparison Compare(const PObject & obj) const;
00426 PObject * Clone() const;
00427 };
00428
00429
00430
00431
00432
00433
00434 class H225_TunnelledProtocolAlternateIdentifier : public PASN_Sequence
00435 {
00436 #ifndef PASN_LEANANDMEAN
00437 PCLASSINFO(H225_TunnelledProtocolAlternateIdentifier, PASN_Sequence);
00438 #endif
00439 public:
00440 H225_TunnelledProtocolAlternateIdentifier(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00441
00442 enum OptionalFields {
00443 e_protocolVariant
00444 };
00445
00446 PASN_IA5String m_protocolType;
00447 PASN_IA5String m_protocolVariant;
00448
00449 PINDEX GetDataLength() const;
00450 BOOL Decode(PASN_Stream & strm);
00451 void Encode(PASN_Stream & strm) const;
00452 #ifndef PASN_NOPRINTON
00453 void PrintOn(ostream & strm) const;
00454 #endif
00455 Comparison Compare(const PObject & obj) const;
00456 PObject * Clone() const;
00457 };
00458
00459
00460
00461
00462
00463
00464 class H225_H221NonStandard;
00465
00466 class H225_NonStandardIdentifier : public PASN_Choice
00467 {
00468 #ifndef PASN_LEANANDMEAN
00469 PCLASSINFO(H225_NonStandardIdentifier, PASN_Choice);
00470 #endif
00471 public:
00472 H225_NonStandardIdentifier(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00473
00474 enum Choices {
00475 e_object,
00476 e_h221NonStandard
00477 };
00478
00479 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00480 operator H225_H221NonStandard &() const;
00481 #else
00482 operator H225_H221NonStandard &();
00483 operator const H225_H221NonStandard &() const;
00484 #endif
00485
00486 BOOL CreateObject();
00487 PObject * Clone() const;
00488 };
00489
00490
00491
00492
00493
00494
00495 class H225_TransportAddress;
00496 class H225_PartyNumber;
00497 class H225_MobileUIM;
00498 class H225_IsupNumber;
00499
00500 class H225_AliasAddress : public PASN_Choice
00501 {
00502 #ifndef PASN_LEANANDMEAN
00503 PCLASSINFO(H225_AliasAddress, PASN_Choice);
00504 #endif
00505 public:
00506 H225_AliasAddress(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00507
00508 enum Choices {
00509 e_dialedDigits,
00510 e_h323_ID,
00511 e_url_ID,
00512 e_transportID,
00513 e_email_ID,
00514 e_partyNumber,
00515 e_mobileUIM,
00516 e_isupNumber
00517 };
00518
00519 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00520 operator H225_TransportAddress &() const;
00521 #else
00522 operator H225_TransportAddress &();
00523 operator const H225_TransportAddress &() const;
00524 #endif
00525 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00526 operator H225_PartyNumber &() const;
00527 #else
00528 operator H225_PartyNumber &();
00529 operator const H225_PartyNumber &() const;
00530 #endif
00531 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00532 operator H225_MobileUIM &() const;
00533 #else
00534 operator H225_MobileUIM &();
00535 operator const H225_MobileUIM &() const;
00536 #endif
00537 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00538 operator H225_IsupNumber &() const;
00539 #else
00540 operator H225_IsupNumber &();
00541 operator const H225_IsupNumber &() const;
00542 #endif
00543
00544 BOOL CreateObject();
00545 PObject * Clone() const;
00546 };
00547
00548
00549
00550
00551
00552
00553 class H225_AliasAddress;
00554 class H225_AddressPattern_range;
00555
00556 class H225_AddressPattern : public PASN_Choice
00557 {
00558 #ifndef PASN_LEANANDMEAN
00559 PCLASSINFO(H225_AddressPattern, PASN_Choice);
00560 #endif
00561 public:
00562 H225_AddressPattern(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00563
00564 enum Choices {
00565 e_wildcard,
00566 e_range
00567 };
00568
00569 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00570 operator H225_AliasAddress &() const;
00571 #else
00572 operator H225_AliasAddress &();
00573 operator const H225_AliasAddress &() const;
00574 #endif
00575 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00576 operator H225_AddressPattern_range &() const;
00577 #else
00578 operator H225_AddressPattern_range &();
00579 operator const H225_AddressPattern_range &() const;
00580 #endif
00581
00582 BOOL CreateObject();
00583 PObject * Clone() const;
00584 };
00585
00586
00587
00588
00589
00590
00591 class H225_PublicPartyNumber;
00592 class H225_NumberDigits;
00593 class H225_PrivatePartyNumber;
00594
00595 class H225_PartyNumber : public PASN_Choice
00596 {
00597 #ifndef PASN_LEANANDMEAN
00598 PCLASSINFO(H225_PartyNumber, PASN_Choice);
00599 #endif
00600 public:
00601 H225_PartyNumber(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00602
00603 enum Choices {
00604 e_e164Number,
00605 e_dataPartyNumber,
00606 e_telexPartyNumber,
00607 e_privateNumber,
00608 e_nationalStandardPartyNumber
00609 };
00610
00611 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00612 operator H225_PublicPartyNumber &() const;
00613 #else
00614 operator H225_PublicPartyNumber &();
00615 operator const H225_PublicPartyNumber &() const;
00616 #endif
00617 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00618 operator H225_NumberDigits &() const;
00619 #else
00620 operator H225_NumberDigits &();
00621 operator const H225_NumberDigits &() const;
00622 #endif
00623 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00624 operator H225_PrivatePartyNumber &() const;
00625 #else
00626 operator H225_PrivatePartyNumber &();
00627 operator const H225_PrivatePartyNumber &() const;
00628 #endif
00629
00630 BOOL CreateObject();
00631 PObject * Clone() const;
00632 };
00633
00634
00635
00636
00637
00638
00639 class H225_NumberDigits : public PASN_IA5String
00640 {
00641 #ifndef PASN_LEANANDMEAN
00642 PCLASSINFO(H225_NumberDigits, PASN_IA5String);
00643 #endif
00644 public:
00645 H225_NumberDigits(unsigned tag = UniversalIA5String, TagClass tagClass = UniversalTagClass);
00646
00647 H225_NumberDigits & operator=(const char * v);
00648 H225_NumberDigits & operator=(const PString & v);
00649 PObject * Clone() const;
00650 };
00651
00652
00653
00654
00655
00656
00657 class H225_PublicTypeOfNumber : public PASN_Choice
00658 {
00659 #ifndef PASN_LEANANDMEAN
00660 PCLASSINFO(H225_PublicTypeOfNumber, PASN_Choice);
00661 #endif
00662 public:
00663 H225_PublicTypeOfNumber(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00664
00665 enum Choices {
00666 e_unknown,
00667 e_internationalNumber,
00668 e_nationalNumber,
00669 e_networkSpecificNumber,
00670 e_subscriberNumber,
00671 e_abbreviatedNumber
00672 };
00673
00674 BOOL CreateObject();
00675 PObject * Clone() const;
00676 };
00677
00678
00679
00680
00681
00682
00683 class H225_PrivateTypeOfNumber : public PASN_Choice
00684 {
00685 #ifndef PASN_LEANANDMEAN
00686 PCLASSINFO(H225_PrivateTypeOfNumber, PASN_Choice);
00687 #endif
00688 public:
00689 H225_PrivateTypeOfNumber(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00690
00691 enum Choices {
00692 e_unknown,
00693 e_level2RegionalNumber,
00694 e_level1RegionalNumber,
00695 e_pISNSpecificNumber,
00696 e_localNumber,
00697 e_abbreviatedNumber
00698 };
00699
00700 BOOL CreateObject();
00701 PObject * Clone() const;
00702 };
00703
00704
00705
00706
00707
00708
00709 class H225_ANSI_41_UIM;
00710 class H225_GSM_UIM;
00711
00712 class H225_MobileUIM : public PASN_Choice
00713 {
00714 #ifndef PASN_LEANANDMEAN
00715 PCLASSINFO(H225_MobileUIM, PASN_Choice);
00716 #endif
00717 public:
00718 H225_MobileUIM(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00719
00720 enum Choices {
00721 e_ansi_41_uim,
00722 e_gsm_uim
00723 };
00724
00725 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00726 operator H225_ANSI_41_UIM &() const;
00727 #else
00728 operator H225_ANSI_41_UIM &();
00729 operator const H225_ANSI_41_UIM &() const;
00730 #endif
00731 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00732 operator H225_GSM_UIM &() const;
00733 #else
00734 operator H225_GSM_UIM &();
00735 operator const H225_GSM_UIM &() const;
00736 #endif
00737
00738 BOOL CreateObject();
00739 PObject * Clone() const;
00740 };
00741
00742
00743
00744
00745
00746
00747 class H225_TBCD_STRING : public PASN_IA5String
00748 {
00749 #ifndef PASN_LEANANDMEAN
00750 PCLASSINFO(H225_TBCD_STRING, PASN_IA5String);
00751 #endif
00752 public:
00753 H225_TBCD_STRING(unsigned tag = UniversalIA5String, TagClass tagClass = UniversalTagClass);
00754
00755 H225_TBCD_STRING & operator=(const char * v);
00756 H225_TBCD_STRING & operator=(const PString & v);
00757 PObject * Clone() const;
00758 };
00759
00760
00761
00762
00763
00764
00765 class H225_GSM_UIM : public PASN_Sequence
00766 {
00767 #ifndef PASN_LEANANDMEAN
00768 PCLASSINFO(H225_GSM_UIM, PASN_Sequence);
00769 #endif
00770 public:
00771 H225_GSM_UIM(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00772
00773 enum OptionalFields {
00774 e_imsi,
00775 e_tmsi,
00776 e_msisdn,
00777 e_imei,
00778 e_hplmn,
00779 e_vplmn
00780 };
00781
00782 PASN_IA5String m_imsi;
00783 PASN_OctetString m_tmsi;
00784 PASN_IA5String m_msisdn;
00785 PASN_IA5String m_imei;
00786 PASN_IA5String m_hplmn;
00787 PASN_IA5String m_vplmn;
00788
00789 PINDEX GetDataLength() const;
00790 BOOL Decode(PASN_Stream & strm);
00791 void Encode(PASN_Stream & strm) const;
00792 #ifndef PASN_NOPRINTON
00793 void PrintOn(ostream & strm) const;
00794 #endif
00795 Comparison Compare(const PObject & obj) const;
00796 PObject * Clone() const;
00797 };
00798
00799
00800
00801
00802
00803
00804 class H225_IsupPublicPartyNumber;
00805 class H225_IsupDigits;
00806 class H225_IsupPrivatePartyNumber;
00807
00808 class H225_IsupNumber : public PASN_Choice
00809 {
00810 #ifndef PASN_LEANANDMEAN
00811 PCLASSINFO(H225_IsupNumber, PASN_Choice);
00812 #endif
00813 public:
00814 H225_IsupNumber(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00815
00816 enum Choices {
00817 e_e164Number,
00818 e_dataPartyNumber,
00819 e_telexPartyNumber,
00820 e_privateNumber,
00821 e_nationalStandardPartyNumber
00822 };
00823
00824 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00825 operator H225_IsupPublicPartyNumber &() const;
00826 #else
00827 operator H225_IsupPublicPartyNumber &();
00828 operator const H225_IsupPublicPartyNumber &() const;
00829 #endif
00830 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00831 operator H225_IsupDigits &() const;
00832 #else
00833 operator H225_IsupDigits &();
00834 operator const H225_IsupDigits &() const;
00835 #endif
00836 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00837 operator H225_IsupPrivatePartyNumber &() const;
00838 #else
00839 operator H225_IsupPrivatePartyNumber &();
00840 operator const H225_IsupPrivatePartyNumber &() const;
00841 #endif
00842
00843 BOOL CreateObject();
00844 PObject * Clone() const;
00845 };
00846
00847
00848
00849
00850
00851
00852 class H225_NatureOfAddress : public PASN_Choice
00853 {
00854 #ifndef PASN_LEANANDMEAN
00855 PCLASSINFO(H225_NatureOfAddress, PASN_Choice);
00856 #endif
00857 public:
00858 H225_NatureOfAddress(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00859
00860 enum Choices {
00861 e_unknown,
00862 e_subscriberNumber,
00863 e_nationalNumber,
00864 e_internationalNumber,
00865 e_networkSpecificNumber,
00866 e_routingNumberNationalFormat,
00867 e_routingNumberNetworkSpecificFormat,
00868 e_routingNumberWithCalledDirectoryNumber
00869 };
00870
00871 BOOL CreateObject();
00872 PObject * Clone() const;
00873 };
00874
00875
00876
00877
00878
00879
00880 class H225_IsupDigits : public PASN_IA5String
00881 {
00882 #ifndef PASN_LEANANDMEAN
00883 PCLASSINFO(H225_IsupDigits, PASN_IA5String);
00884 #endif
00885 public:
00886 H225_IsupDigits(unsigned tag = UniversalIA5String, TagClass tagClass = UniversalTagClass);
00887
00888 H225_IsupDigits & operator=(const char * v);
00889 H225_IsupDigits & operator=(const PString & v);
00890 PObject * Clone() const;
00891 };
00892
00893
00894
00895
00896
00897
00898 class H225_ExtendedAliasAddress : public PASN_Sequence
00899 {
00900 #ifndef PASN_LEANANDMEAN
00901 PCLASSINFO(H225_ExtendedAliasAddress, PASN_Sequence);
00902 #endif
00903 public:
00904 H225_ExtendedAliasAddress(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
00905
00906 enum OptionalFields {
00907 e_presentationIndicator,
00908 e_screeningIndicator
00909 };
00910
00911 H225_AliasAddress m_address;
00912 H225_PresentationIndicator m_presentationIndicator;
00913 H225_ScreeningIndicator m_screeningIndicator;
00914
00915 PINDEX GetDataLength() const;
00916 BOOL Decode(PASN_Stream & strm);
00917 void Encode(PASN_Stream & strm) const;
00918 #ifndef PASN_NOPRINTON
00919 void PrintOn(ostream & strm) const;
00920 #endif
00921 Comparison Compare(const PObject & obj) const;
00922 PObject * Clone() const;
00923 };
00924
00925
00926
00927
00928
00929
00930 class H225_UseSpecifiedTransport : public PASN_Choice
00931 {
00932 #ifndef PASN_LEANANDMEAN
00933 PCLASSINFO(H225_UseSpecifiedTransport, PASN_Choice);
00934 #endif
00935 public:
00936 H225_UseSpecifiedTransport(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00937
00938 enum Choices {
00939 e_tcp,
00940 e_annexE,
00941 e_sctp
00942 };
00943
00944 BOOL CreateObject();
00945 PObject * Clone() const;
00946 };
00947
00948
00949
00950
00951
00952
00953 class H225_NonStandardParameter;
00954
00955 class H225_SecurityServiceMode : public PASN_Choice
00956 {
00957 #ifndef PASN_LEANANDMEAN
00958 PCLASSINFO(H225_SecurityServiceMode, PASN_Choice);
00959 #endif
00960 public:
00961 H225_SecurityServiceMode(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00962
00963 enum Choices {
00964 e_nonStandard,
00965 e_none,
00966 e_default
00967 };
00968
00969 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
00970 operator H225_NonStandardParameter &() const;
00971 #else
00972 operator H225_NonStandardParameter &();
00973 operator const H225_NonStandardParameter &() const;
00974 #endif
00975
00976 BOOL CreateObject();
00977 PObject * Clone() const;
00978 };
00979
00980
00981
00982
00983
00984
00985 class H225_SecurityErrors : public PASN_Choice
00986 {
00987 #ifndef PASN_LEANANDMEAN
00988 PCLASSINFO(H225_SecurityErrors, PASN_Choice);
00989 #endif
00990 public:
00991 H225_SecurityErrors(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
00992
00993 enum Choices {
00994 e_securityWrongSyncTime,
00995 e_securityReplay,
00996 e_securityWrongGeneralID,
00997 e_securityWrongSendersID,
00998 e_securityIntegrityFailed,
00999 e_securityWrongOID,
01000 e_securityDHmismatch,
01001 e_securityCertificateExpired,
01002 e_securityCertificateDateInvalid,
01003 e_securityCertificateRevoked,
01004 e_securityCertificateNotReadable,
01005 e_securityCertificateSignatureInvalid,
01006 e_securityCertificateMissing,
01007 e_securityCertificateIncomplete,
01008 e_securityUnsupportedCertificateAlgOID,
01009 e_securityUnknownCA
01010 };
01011
01012 BOOL CreateObject();
01013 PObject * Clone() const;
01014 };
01015
01016
01017
01018
01019
01020
01021 class H225_SecurityErrors2 : public PASN_Choice
01022 {
01023 #ifndef PASN_LEANANDMEAN
01024 PCLASSINFO(H225_SecurityErrors2, PASN_Choice);
01025 #endif
01026 public:
01027 H225_SecurityErrors2(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01028
01029 enum Choices {
01030 e_securityWrongSyncTime,
01031 e_securityReplay,
01032 e_securityWrongGeneralID,
01033 e_securityWrongSendersID,
01034 e_securityIntegrityFailed,
01035 e_securityWrongOID
01036 };
01037
01038 BOOL CreateObject();
01039 PObject * Clone() const;
01040 };
01041
01042
01043
01044
01045
01046
01047 class H225_NonStandardParameter;
01048 class H225_SecurityCapabilities;
01049
01050 class H225_H245Security : public PASN_Choice
01051 {
01052 #ifndef PASN_LEANANDMEAN
01053 PCLASSINFO(H225_H245Security, PASN_Choice);
01054 #endif
01055 public:
01056 H225_H245Security(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01057
01058 enum Choices {
01059 e_nonStandard,
01060 e_noSecurity,
01061 e_tls,
01062 e_ipsec
01063 };
01064
01065 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01066 operator H225_NonStandardParameter &() const;
01067 #else
01068 operator H225_NonStandardParameter &();
01069 operator const H225_NonStandardParameter &() const;
01070 #endif
01071 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01072 operator H225_SecurityCapabilities &() const;
01073 #else
01074 operator H225_SecurityCapabilities &();
01075 operator const H225_SecurityCapabilities &() const;
01076 #endif
01077
01078 BOOL CreateObject();
01079 PObject * Clone() const;
01080 };
01081
01082
01083
01084
01085
01086
01087 class H225_Q954Details : public PASN_Sequence
01088 {
01089 #ifndef PASN_LEANANDMEAN
01090 PCLASSINFO(H225_Q954Details, PASN_Sequence);
01091 #endif
01092 public:
01093 H225_Q954Details(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01094
01095 PASN_Boolean m_conferenceCalling;
01096 PASN_Boolean m_threePartyService;
01097
01098 PINDEX GetDataLength() const;
01099 BOOL Decode(PASN_Stream & strm);
01100 void Encode(PASN_Stream & strm) const;
01101 #ifndef PASN_NOPRINTON
01102 void PrintOn(ostream & strm) const;
01103 #endif
01104 Comparison Compare(const PObject & obj) const;
01105 PObject * Clone() const;
01106 };
01107
01108
01109
01110
01111
01112
01113 class H225_GloballyUniqueID : public PASN_OctetString
01114 {
01115 #ifndef PASN_LEANANDMEAN
01116 PCLASSINFO(H225_GloballyUniqueID, PASN_OctetString);
01117 #endif
01118 public:
01119 H225_GloballyUniqueID(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
01120
01121 H225_GloballyUniqueID(const char * v);
01122 H225_GloballyUniqueID(const PString & v);
01123 H225_GloballyUniqueID(const PBYTEArray & v);
01124
01125 H225_GloballyUniqueID & operator=(const char * v);
01126 H225_GloballyUniqueID & operator=(const PString & v);
01127 H225_GloballyUniqueID & operator=(const PBYTEArray & v);
01128 PObject * Clone() const;
01129 };
01130
01131
01132
01133
01134
01135
01136 class H225_ConferenceIdentifier : public H225_GloballyUniqueID
01137 {
01138 #ifndef PASN_LEANANDMEAN
01139 PCLASSINFO(H225_ConferenceIdentifier, H225_GloballyUniqueID);
01140 #endif
01141 public:
01142 H225_ConferenceIdentifier(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
01143
01144 H225_ConferenceIdentifier(const char * v);
01145 H225_ConferenceIdentifier(const PString & v);
01146 H225_ConferenceIdentifier(const PBYTEArray & v);
01147
01148 H225_ConferenceIdentifier & operator=(const char * v);
01149 H225_ConferenceIdentifier & operator=(const PString & v);
01150 H225_ConferenceIdentifier & operator=(const PBYTEArray & v);
01151 PObject * Clone() const;
01152 };
01153
01154
01155
01156
01157
01158
01159 class H225_RequestSeqNum : public PASN_Integer
01160 {
01161 #ifndef PASN_LEANANDMEAN
01162 PCLASSINFO(H225_RequestSeqNum, PASN_Integer);
01163 #endif
01164 public:
01165 H225_RequestSeqNum(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
01166
01167 H225_RequestSeqNum & operator=(int v);
01168 H225_RequestSeqNum & operator=(unsigned v);
01169 PObject * Clone() const;
01170 };
01171
01172
01173
01174
01175
01176
01177 class H225_GatekeeperIdentifier : public PASN_BMPString
01178 {
01179 #ifndef PASN_LEANANDMEAN
01180 PCLASSINFO(H225_GatekeeperIdentifier, PASN_BMPString);
01181 #endif
01182 public:
01183 H225_GatekeeperIdentifier(unsigned tag = UniversalBMPString, TagClass tagClass = UniversalTagClass);
01184
01185 H225_GatekeeperIdentifier & operator=(const char * v);
01186 H225_GatekeeperIdentifier & operator=(const PString & v);
01187 H225_GatekeeperIdentifier & operator=(const PWORDArray & v);
01188 H225_GatekeeperIdentifier & operator=(const PASN_BMPString & v);
01189 PObject * Clone() const;
01190 };
01191
01192
01193
01194
01195
01196
01197 class H225_BandWidth : public PASN_Integer
01198 {
01199 #ifndef PASN_LEANANDMEAN
01200 PCLASSINFO(H225_BandWidth, PASN_Integer);
01201 #endif
01202 public:
01203 H225_BandWidth(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
01204
01205 H225_BandWidth & operator=(int v);
01206 H225_BandWidth & operator=(unsigned v);
01207 PObject * Clone() const;
01208 };
01209
01210
01211
01212
01213
01214
01215 class H225_CallReferenceValue : public PASN_Integer
01216 {
01217 #ifndef PASN_LEANANDMEAN
01218 PCLASSINFO(H225_CallReferenceValue, PASN_Integer);
01219 #endif
01220 public:
01221 H225_CallReferenceValue(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
01222
01223 H225_CallReferenceValue & operator=(int v);
01224 H225_CallReferenceValue & operator=(unsigned v);
01225 PObject * Clone() const;
01226 };
01227
01228
01229
01230
01231
01232
01233 class H225_EndpointIdentifier : public PASN_BMPString
01234 {
01235 #ifndef PASN_LEANANDMEAN
01236 PCLASSINFO(H225_EndpointIdentifier, PASN_BMPString);
01237 #endif
01238 public:
01239 H225_EndpointIdentifier(unsigned tag = UniversalBMPString, TagClass tagClass = UniversalTagClass);
01240
01241 H225_EndpointIdentifier & operator=(const char * v);
01242 H225_EndpointIdentifier & operator=(const PString & v);
01243 H225_EndpointIdentifier & operator=(const PWORDArray & v);
01244 H225_EndpointIdentifier & operator=(const PASN_BMPString & v);
01245 PObject * Clone() const;
01246 };
01247
01248
01249
01250
01251
01252
01253 class H225_ProtocolIdentifier : public PASN_ObjectId
01254 {
01255 #ifndef PASN_LEANANDMEAN
01256 PCLASSINFO(H225_ProtocolIdentifier, PASN_ObjectId);
01257 #endif
01258 public:
01259 H225_ProtocolIdentifier(unsigned tag = UniversalObjectId, TagClass tagClass = UniversalTagClass);
01260
01261 PObject * Clone() const;
01262 };
01263
01264
01265
01266
01267
01268
01269 class H225_TimeToLive : public PASN_Integer
01270 {
01271 #ifndef PASN_LEANANDMEAN
01272 PCLASSINFO(H225_TimeToLive, PASN_Integer);
01273 #endif
01274 public:
01275 H225_TimeToLive(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
01276
01277 H225_TimeToLive & operator=(int v);
01278 H225_TimeToLive & operator=(unsigned v);
01279 PObject * Clone() const;
01280 };
01281
01282
01283
01284
01285
01286
01287 class H225_H248PackagesDescriptor : public PASN_OctetString
01288 {
01289 #ifndef PASN_LEANANDMEAN
01290 PCLASSINFO(H225_H248PackagesDescriptor, PASN_OctetString);
01291 #endif
01292 public:
01293 H225_H248PackagesDescriptor(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
01294
01295 H225_H248PackagesDescriptor(const char * v);
01296 H225_H248PackagesDescriptor(const PString & v);
01297 H225_H248PackagesDescriptor(const PBYTEArray & v);
01298
01299 H225_H248PackagesDescriptor & operator=(const char * v);
01300 H225_H248PackagesDescriptor & operator=(const PString & v);
01301 H225_H248PackagesDescriptor & operator=(const PBYTEArray & v);
01302 PObject * Clone() const;
01303 };
01304
01305
01306
01307
01308
01309
01310 class H225_H248SignalsDescriptor : public PASN_OctetString
01311 {
01312 #ifndef PASN_LEANANDMEAN
01313 PCLASSINFO(H225_H248SignalsDescriptor, PASN_OctetString);
01314 #endif
01315 public:
01316 H225_H248SignalsDescriptor(unsigned tag = UniversalOctetString, TagClass tagClass = UniversalTagClass);
01317
01318 H225_H248SignalsDescriptor(const char * v);
01319 H225_H248SignalsDescriptor(const PString & v);
01320 H225_H248SignalsDescriptor(const PBYTEArray & v);
01321
01322 H225_H248SignalsDescriptor & operator=(const char * v);
01323 H225_H248SignalsDescriptor & operator=(const PString & v);
01324 H225_H248SignalsDescriptor & operator=(const PBYTEArray & v);
01325 PObject * Clone() const;
01326 };
01327
01328
01329
01330
01331
01332
01333 class H225_CallIdentifier : public PASN_Sequence
01334 {
01335 #ifndef PASN_LEANANDMEAN
01336 PCLASSINFO(H225_CallIdentifier, PASN_Sequence);
01337 #endif
01338 public:
01339 H225_CallIdentifier(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01340
01341 H225_GloballyUniqueID m_guid;
01342
01343 PINDEX GetDataLength() const;
01344 BOOL Decode(PASN_Stream & strm);
01345 void Encode(PASN_Stream & strm) const;
01346 #ifndef PASN_NOPRINTON
01347 void PrintOn(ostream & strm) const;
01348 #endif
01349 Comparison Compare(const PObject & obj) const;
01350 PObject * Clone() const;
01351 };
01352
01353
01354
01355
01356
01357
01358 class H225_NonStandardParameter;
01359
01360 class H225_EncryptIntAlg : public PASN_Choice
01361 {
01362 #ifndef PASN_LEANANDMEAN
01363 PCLASSINFO(H225_EncryptIntAlg, PASN_Choice);
01364 #endif
01365 public:
01366 H225_EncryptIntAlg(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01367
01368 enum Choices {
01369 e_nonStandard,
01370 e_isoAlgorithm
01371 };
01372
01373 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01374 operator H225_NonStandardParameter &() const;
01375 #else
01376 operator H225_NonStandardParameter &();
01377 operator const H225_NonStandardParameter &() const;
01378 #endif
01379
01380 BOOL CreateObject();
01381 PObject * Clone() const;
01382 };
01383
01384
01385
01386
01387
01388
01389 class H225_EncryptIntAlg;
01390
01391 class H225_NonIsoIntegrityMechanism : public PASN_Choice
01392 {
01393 #ifndef PASN_LEANANDMEAN
01394 PCLASSINFO(H225_NonIsoIntegrityMechanism, PASN_Choice);
01395 #endif
01396 public:
01397 H225_NonIsoIntegrityMechanism(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01398
01399 enum Choices {
01400 e_hMAC_MD5,
01401 e_hMAC_iso10118_2_s,
01402 e_hMAC_iso10118_2_l,
01403 e_hMAC_iso10118_3
01404 };
01405
01406 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01407 operator H225_EncryptIntAlg &() const;
01408 #else
01409 operator H225_EncryptIntAlg &();
01410 operator const H225_EncryptIntAlg &() const;
01411 #endif
01412
01413 BOOL CreateObject();
01414 PObject * Clone() const;
01415 };
01416
01417
01418
01419
01420
01421
01422 class H225_NonStandardParameter;
01423 class H225_NonIsoIntegrityMechanism;
01424
01425 class H225_IntegrityMechanism : public PASN_Choice
01426 {
01427 #ifndef PASN_LEANANDMEAN
01428 PCLASSINFO(H225_IntegrityMechanism, PASN_Choice);
01429 #endif
01430 public:
01431 H225_IntegrityMechanism(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01432
01433 enum Choices {
01434 e_nonStandard,
01435 e_digSig,
01436 e_iso9797,
01437 e_nonIsoIM
01438 };
01439
01440 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01441 operator H225_NonStandardParameter &() const;
01442 #else
01443 operator H225_NonStandardParameter &();
01444 operator const H225_NonStandardParameter &() const;
01445 #endif
01446 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01447 operator H225_NonIsoIntegrityMechanism &() const;
01448 #else
01449 operator H225_NonIsoIntegrityMechanism &();
01450 operator const H225_NonIsoIntegrityMechanism &() const;
01451 #endif
01452
01453 BOOL CreateObject();
01454 PObject * Clone() const;
01455 };
01456
01457
01458
01459
01460
01461
01462 class H225_ICV : public PASN_Sequence
01463 {
01464 #ifndef PASN_LEANANDMEAN
01465 PCLASSINFO(H225_ICV, PASN_Sequence);
01466 #endif
01467 public:
01468 H225_ICV(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01469
01470 PASN_ObjectId m_algorithmOID;
01471 PASN_BitString m_icv;
01472
01473 PINDEX GetDataLength() const;
01474 BOOL Decode(PASN_Stream & strm);
01475 void Encode(PASN_Stream & strm) const;
01476 #ifndef PASN_NOPRINTON
01477 void PrintOn(ostream & strm) const;
01478 #endif
01479 Comparison Compare(const PObject & obj) const;
01480 PObject * Clone() const;
01481 };
01482
01483
01484
01485
01486
01487
01488 class H225_FastStartToken : public H235_ClearToken
01489 {
01490 #ifndef PASN_LEANANDMEAN
01491 PCLASSINFO(H225_FastStartToken, H235_ClearToken);
01492 #endif
01493 public:
01494 H225_FastStartToken(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01495
01496 PObject * Clone() const;
01497 };
01498
01499
01500
01501
01502
01503
01504 class H225_EncodedFastStartToken : public PASN_OctetString
01505 {
01506 #ifndef PASN_LEANANDMEAN
01507 PCLASSINFO(H225_EncodedFastStartToken, PASN_OctetString);
01508 #endif
01509 public:
01510 H225_EncodedFastStartToken(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01511
01512 BOOL DecodeSubType(H225_FastStartToken & obj) { return PASN_OctetString::DecodeSubType(obj); }
01513 void EncodeSubType(const H225_FastStartToken & obj) { PASN_OctetString::EncodeSubType(obj); }
01514
01515 PObject * Clone() const;
01516 };
01517
01518
01519
01520
01521
01522
01523 class H225_CryptoH323Token_cryptoEPPwdHash;
01524 class H225_CryptoH323Token_cryptoGKPwdHash;
01525 class H235_CryptoToken;
01526
01527 class H225_CryptoH323Token : public PASN_Choice
01528 {
01529 #ifndef PASN_LEANANDMEAN
01530 PCLASSINFO(H225_CryptoH323Token, PASN_Choice);
01531 #endif
01532 public:
01533 H225_CryptoH323Token(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01534
01535 enum Choices {
01536 e_cryptoEPPwdHash,
01537 e_cryptoGKPwdHash,
01538 e_cryptoEPPwdEncr,
01539 e_cryptoGKPwdEncr,
01540 e_cryptoEPCert,
01541 e_cryptoGKCert,
01542 e_cryptoFastStart,
01543 e_nestedcryptoToken
01544 };
01545
01546 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01547 operator H225_CryptoH323Token_cryptoEPPwdHash &() const;
01548 #else
01549 operator H225_CryptoH323Token_cryptoEPPwdHash &();
01550 operator const H225_CryptoH323Token_cryptoEPPwdHash &() const;
01551 #endif
01552 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01553 operator H225_CryptoH323Token_cryptoGKPwdHash &() const;
01554 #else
01555 operator H225_CryptoH323Token_cryptoGKPwdHash &();
01556 operator const H225_CryptoH323Token_cryptoGKPwdHash &() const;
01557 #endif
01558 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01559 operator H235_ENCRYPTED<H235_EncodedPwdCertToken> &() const;
01560 #else
01561 operator H235_ENCRYPTED<H235_EncodedPwdCertToken> &();
01562 operator const H235_ENCRYPTED<H235_EncodedPwdCertToken> &() const;
01563 #endif
01564 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01565 operator H235_SIGNED<H235_EncodedPwdCertToken> &() const;
01566 #else
01567 operator H235_SIGNED<H235_EncodedPwdCertToken> &();
01568 operator const H235_SIGNED<H235_EncodedPwdCertToken> &() const;
01569 #endif
01570 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01571 operator H235_SIGNED<H225_EncodedFastStartToken> &() const;
01572 #else
01573 operator H235_SIGNED<H225_EncodedFastStartToken> &();
01574 operator const H235_SIGNED<H225_EncodedFastStartToken> &() const;
01575 #endif
01576 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01577 operator H235_CryptoToken &() const;
01578 #else
01579 operator H235_CryptoToken &();
01580 operator const H235_CryptoToken &() const;
01581 #endif
01582
01583 BOOL CreateObject();
01584 PObject * Clone() const;
01585 };
01586
01587
01588
01589
01590
01591
01592 class H225_CallLinkage : public PASN_Sequence
01593 {
01594 #ifndef PASN_LEANANDMEAN
01595 PCLASSINFO(H225_CallLinkage, PASN_Sequence);
01596 #endif
01597 public:
01598 H225_CallLinkage(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01599
01600 enum OptionalFields {
01601 e_globalCallId,
01602 e_threadId
01603 };
01604
01605 H225_GloballyUniqueID m_globalCallId;
01606 H225_GloballyUniqueID m_threadId;
01607
01608 PINDEX GetDataLength() const;
01609 BOOL Decode(PASN_Stream & strm);
01610 void Encode(PASN_Stream & strm) const;
01611 #ifndef PASN_NOPRINTON
01612 void PrintOn(ostream & strm) const;
01613 #endif
01614 Comparison Compare(const PObject & obj) const;
01615 PObject * Clone() const;
01616 };
01617
01618
01619
01620
01621
01622
01623 class H225_CapacityReportingCapability : public PASN_Sequence
01624 {
01625 #ifndef PASN_LEANANDMEAN
01626 PCLASSINFO(H225_CapacityReportingCapability, PASN_Sequence);
01627 #endif
01628 public:
01629 H225_CapacityReportingCapability(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01630
01631 PASN_Boolean m_canReportCallCapacity;
01632
01633 PINDEX GetDataLength() const;
01634 BOOL Decode(PASN_Stream & strm);
01635 void Encode(PASN_Stream & strm) const;
01636 #ifndef PASN_NOPRINTON
01637 void PrintOn(ostream & strm) const;
01638 #endif
01639 Comparison Compare(const PObject & obj) const;
01640 PObject * Clone() const;
01641 };
01642
01643
01644
01645
01646
01647
01648 class H225_CarrierInfo : public PASN_Sequence
01649 {
01650 #ifndef PASN_LEANANDMEAN
01651 PCLASSINFO(H225_CarrierInfo, PASN_Sequence);
01652 #endif
01653 public:
01654 H225_CarrierInfo(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01655
01656 enum OptionalFields {
01657 e_carrierIdentificationCode,
01658 e_carrierName
01659 };
01660
01661 PASN_OctetString m_carrierIdentificationCode;
01662 PASN_IA5String m_carrierName;
01663
01664 PINDEX GetDataLength() const;
01665 BOOL Decode(PASN_Stream & strm);
01666 void Encode(PASN_Stream & strm) const;
01667 #ifndef PASN_NOPRINTON
01668 void PrintOn(ostream & strm) const;
01669 #endif
01670 Comparison Compare(const PObject & obj) const;
01671 PObject * Clone() const;
01672 };
01673
01674
01675
01676
01677
01678
01679 class H225_H248SignalsDescriptor;
01680 class H225_NonStandardParameter;
01681 class H225_CallCreditServiceControl;
01682
01683 class H225_ServiceControlDescriptor : public PASN_Choice
01684 {
01685 #ifndef PASN_LEANANDMEAN
01686 PCLASSINFO(H225_ServiceControlDescriptor, PASN_Choice);
01687 #endif
01688 public:
01689 H225_ServiceControlDescriptor(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01690
01691 enum Choices {
01692 e_url,
01693 e_signal,
01694 e_nonStandard,
01695 e_callCreditServiceControl
01696 };
01697
01698 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01699 operator H225_H248SignalsDescriptor &() const;
01700 #else
01701 operator H225_H248SignalsDescriptor &();
01702 operator const H225_H248SignalsDescriptor &() const;
01703 #endif
01704 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01705 operator H225_NonStandardParameter &() const;
01706 #else
01707 operator H225_NonStandardParameter &();
01708 operator const H225_NonStandardParameter &() const;
01709 #endif
01710 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01711 operator H225_CallCreditServiceControl &() const;
01712 #else
01713 operator H225_CallCreditServiceControl &();
01714 operator const H225_CallCreditServiceControl &() const;
01715 #endif
01716
01717 BOOL CreateObject();
01718 PObject * Clone() const;
01719 };
01720
01721
01722
01723
01724
01725
01726 class H225_ReleaseCompleteReason;
01727
01728 class H225_CallTerminationCause : public PASN_Choice
01729 {
01730 #ifndef PASN_LEANANDMEAN
01731 PCLASSINFO(H225_CallTerminationCause, PASN_Choice);
01732 #endif
01733 public:
01734 H225_CallTerminationCause(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01735
01736 enum Choices {
01737 e_releaseCompleteReason,
01738 e_releaseCompleteCauseIE
01739 };
01740
01741 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01742 operator H225_ReleaseCompleteReason &() const;
01743 #else
01744 operator H225_ReleaseCompleteReason &();
01745 operator const H225_ReleaseCompleteReason &() const;
01746 #endif
01747
01748 BOOL CreateObject();
01749 PObject * Clone() const;
01750 };
01751
01752
01753
01754
01755
01756
01757 class H225_CallCreditCapability : public PASN_Sequence
01758 {
01759 #ifndef PASN_LEANANDMEAN
01760 PCLASSINFO(H225_CallCreditCapability, PASN_Sequence);
01761 #endif
01762 public:
01763 H225_CallCreditCapability(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01764
01765 enum OptionalFields {
01766 e_canDisplayAmountString,
01767 e_canEnforceDurationLimit
01768 };
01769
01770 PASN_Boolean m_canDisplayAmountString;
01771 PASN_Boolean m_canEnforceDurationLimit;
01772
01773 PINDEX GetDataLength() const;
01774 BOOL Decode(PASN_Stream & strm);
01775 void Encode(PASN_Stream & strm) const;
01776 #ifndef PASN_NOPRINTON
01777 void PrintOn(ostream & strm) const;
01778 #endif
01779 Comparison Compare(const PObject & obj) const;
01780 PObject * Clone() const;
01781 };
01782
01783
01784
01785
01786
01787
01788 class H225_GloballyUniqueID;
01789
01790 class H225_GenericIdentifier : public PASN_Choice
01791 {
01792 #ifndef PASN_LEANANDMEAN
01793 PCLASSINFO(H225_GenericIdentifier, PASN_Choice);
01794 #endif
01795 public:
01796 H225_GenericIdentifier(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01797
01798 enum Choices {
01799 e_standard,
01800 e_oid,
01801 e_nonStandard
01802 };
01803
01804 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01805 operator H225_GloballyUniqueID &() const;
01806 #else
01807 operator H225_GloballyUniqueID &();
01808 operator const H225_GloballyUniqueID &() const;
01809 #endif
01810
01811 BOOL CreateObject();
01812 PObject * Clone() const;
01813 };
01814
01815
01816
01817
01818
01819
01820 class H225_GenericIdentifier;
01821 class H225_AliasAddress;
01822 class H225_TransportAddress;
01823 class H225_ArrayOf_EnumeratedParameter;
01824 class H225_ArrayOf_GenericData;
01825
01826 class H225_Content : public PASN_Choice
01827 {
01828 #ifndef PASN_LEANANDMEAN
01829 PCLASSINFO(H225_Content, PASN_Choice);
01830 #endif
01831 public:
01832 H225_Content(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01833
01834 enum Choices {
01835 e_raw,
01836 e_text,
01837 e_unicode,
01838 e_bool,
01839 e_number8,
01840 e_number16,
01841 e_number32,
01842 e_id,
01843 e_alias,
01844 e_transport,
01845 e_compound,
01846 e_nested
01847 };
01848
01849 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01850 operator H225_GenericIdentifier &() const;
01851 #else
01852 operator H225_GenericIdentifier &();
01853 operator const H225_GenericIdentifier &() const;
01854 #endif
01855 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01856 operator H225_AliasAddress &() const;
01857 #else
01858 operator H225_AliasAddress &();
01859 operator const H225_AliasAddress &() const;
01860 #endif
01861 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01862 operator H225_TransportAddress &() const;
01863 #else
01864 operator H225_TransportAddress &();
01865 operator const H225_TransportAddress &() const;
01866 #endif
01867 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01868 operator H225_ArrayOf_EnumeratedParameter &() const;
01869 #else
01870 operator H225_ArrayOf_EnumeratedParameter &();
01871 operator const H225_ArrayOf_EnumeratedParameter &() const;
01872 #endif
01873 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
01874 operator H225_ArrayOf_GenericData &() const;
01875 #else
01876 operator H225_ArrayOf_GenericData &();
01877 operator const H225_ArrayOf_GenericData &() const;
01878 #endif
01879
01880 BOOL CreateObject();
01881 PObject * Clone() const;
01882 };
01883
01884
01885
01886
01887
01888
01889 class H225_TransportChannelInfo : public PASN_Sequence
01890 {
01891 #ifndef PASN_LEANANDMEAN
01892 PCLASSINFO(H225_TransportChannelInfo, PASN_Sequence);
01893 #endif
01894 public:
01895 H225_TransportChannelInfo(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
01896
01897 enum OptionalFields {
01898 e_sendAddress,
01899 e_recvAddress
01900 };
01901
01902 H225_TransportAddress m_sendAddress;
01903 H225_TransportAddress m_recvAddress;
01904
01905 PINDEX GetDataLength() const;
01906 BOOL Decode(PASN_Stream & strm);
01907 void Encode(PASN_Stream & strm) const;
01908 #ifndef PASN_NOPRINTON
01909 void PrintOn(ostream & strm) const;
01910 #endif
01911 Comparison Compare(const PObject & obj) const;
01912 PObject * Clone() const;
01913 };
01914
01915
01916
01917
01918
01919
01920 class H225_RehomingModel : public PASN_Choice
01921 {
01922 #ifndef PASN_LEANANDMEAN
01923 PCLASSINFO(H225_RehomingModel, PASN_Choice);
01924 #endif
01925 public:
01926 H225_RehomingModel(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01927
01928 enum Choices {
01929 e_gatekeeperBased,
01930 e_endpointBased
01931 };
01932
01933 BOOL CreateObject();
01934 PObject * Clone() const;
01935 };
01936
01937
01938
01939
01940
01941
01942 class H225_GatekeeperRequest;
01943 class H225_GatekeeperConfirm;
01944 class H225_GatekeeperReject;
01945 class H225_RegistrationRequest;
01946 class H225_RegistrationConfirm;
01947 class H225_RegistrationReject;
01948 class H225_UnregistrationRequest;
01949 class H225_UnregistrationConfirm;
01950 class H225_UnregistrationReject;
01951 class H225_AdmissionRequest;
01952 class H225_AdmissionConfirm;
01953 class H225_AdmissionReject;
01954 class H225_BandwidthRequest;
01955 class H225_BandwidthConfirm;
01956 class H225_BandwidthReject;
01957 class H225_DisengageRequest;
01958 class H225_DisengageConfirm;
01959 class H225_DisengageReject;
01960 class H225_LocationRequest;
01961 class H225_LocationConfirm;
01962 class H225_LocationReject;
01963 class H225_InfoRequest;
01964 class H225_InfoRequestResponse;
01965 class H225_NonStandardMessage;
01966 class H225_UnknownMessageResponse;
01967 class H225_RequestInProgress;
01968 class H225_ResourcesAvailableIndicate;
01969 class H225_ResourcesAvailableConfirm;
01970 class H225_InfoRequestAck;
01971 class H225_InfoRequestNak;
01972 class H225_ServiceControlIndication;
01973 class H225_ServiceControlResponse;
01974 class H225_ArrayOf_AdmissionConfirm;
01975
01976 class H225_RasMessage : public PASN_Choice
01977 {
01978 #ifndef PASN_LEANANDMEAN
01979 PCLASSINFO(H225_RasMessage, PASN_Choice);
01980 #endif
01981 public:
01982 H225_RasMessage(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
01983
01984 enum Choices {
01985 e_gatekeeperRequest,
01986 e_gatekeeperConfirm,
01987 e_gatekeeperReject,
01988 e_registrationRequest,
01989 e_registrationConfirm,
01990 e_registrationReject,
01991 e_unregistrationRequest,
01992 e_unregistrationConfirm,
01993 e_unregistrationReject,
01994 e_admissionRequest,
01995 e_admissionConfirm,
01996 e_admissionReject,
01997 e_bandwidthRequest,
01998 e_bandwidthConfirm,
01999 e_bandwidthReject,
02000 e_disengageRequest,
02001 e_disengageConfirm,
02002 e_disengageReject,
02003 e_locationRequest,
02004 e_locationConfirm,
02005 e_locationReject,
02006 e_infoRequest,
02007 e_infoRequestResponse,
02008 e_nonStandardMessage,
02009 e_unknownMessageResponse,
02010 e_requestInProgress,
02011 e_resourcesAvailableIndicate,
02012 e_resourcesAvailableConfirm,
02013 e_infoRequestAck,
02014 e_infoRequestNak,
02015 e_serviceControlIndication,
02016 e_serviceControlResponse,
02017 e_admissionConfirmSequence
02018 };
02019
02020 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02021 operator H225_GatekeeperRequest &() const;
02022 #else
02023 operator H225_GatekeeperRequest &();
02024 operator const H225_GatekeeperRequest &() const;
02025 #endif
02026 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02027 operator H225_GatekeeperConfirm &() const;
02028 #else
02029 operator H225_GatekeeperConfirm &();
02030 operator const H225_GatekeeperConfirm &() const;
02031 #endif
02032 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02033 operator H225_GatekeeperReject &() const;
02034 #else
02035 operator H225_GatekeeperReject &();
02036 operator const H225_GatekeeperReject &() const;
02037 #endif
02038 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02039 operator H225_RegistrationRequest &() const;
02040 #else
02041 operator H225_RegistrationRequest &();
02042 operator const H225_RegistrationRequest &() const;
02043 #endif
02044 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02045 operator H225_RegistrationConfirm &() const;
02046 #else
02047 operator H225_RegistrationConfirm &();
02048 operator const H225_RegistrationConfirm &() const;
02049 #endif
02050 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02051 operator H225_RegistrationReject &() const;
02052 #else
02053 operator H225_RegistrationReject &();
02054 operator const H225_RegistrationReject &() const;
02055 #endif
02056 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02057 operator H225_UnregistrationRequest &() const;
02058 #else
02059 operator H225_UnregistrationRequest &();
02060 operator const H225_UnregistrationRequest &() const;
02061 #endif
02062 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02063 operator H225_UnregistrationConfirm &() const;
02064 #else
02065 operator H225_UnregistrationConfirm &();
02066 operator const H225_UnregistrationConfirm &() const;
02067 #endif
02068 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02069 operator H225_UnregistrationReject &() const;
02070 #else
02071 operator H225_UnregistrationReject &();
02072 operator const H225_UnregistrationReject &() const;
02073 #endif
02074 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02075 operator H225_AdmissionRequest &() const;
02076 #else
02077 operator H225_AdmissionRequest &();
02078 operator const H225_AdmissionRequest &() const;
02079 #endif
02080 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02081 operator H225_AdmissionConfirm &() const;
02082 #else
02083 operator H225_AdmissionConfirm &();
02084 operator const H225_AdmissionConfirm &() const;
02085 #endif
02086 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02087 operator H225_AdmissionReject &() const;
02088 #else
02089 operator H225_AdmissionReject &();
02090 operator const H225_AdmissionReject &() const;
02091 #endif
02092 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02093 operator H225_BandwidthRequest &() const;
02094 #else
02095 operator H225_BandwidthRequest &();
02096 operator const H225_BandwidthRequest &() const;
02097 #endif
02098 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02099 operator H225_BandwidthConfirm &() const;
02100 #else
02101 operator H225_BandwidthConfirm &();
02102 operator const H225_BandwidthConfirm &() const;
02103 #endif
02104 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02105 operator H225_BandwidthReject &() const;
02106 #else
02107 operator H225_BandwidthReject &();
02108 operator const H225_BandwidthReject &() const;
02109 #endif
02110 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02111 operator H225_DisengageRequest &() const;
02112 #else
02113 operator H225_DisengageRequest &();
02114 operator const H225_DisengageRequest &() const;
02115 #endif
02116 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02117 operator H225_DisengageConfirm &() const;
02118 #else
02119 operator H225_DisengageConfirm &();
02120 operator const H225_DisengageConfirm &() const;
02121 #endif
02122 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02123 operator H225_DisengageReject &() const;
02124 #else
02125 operator H225_DisengageReject &();
02126 operator const H225_DisengageReject &() const;
02127 #endif
02128 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02129 operator H225_LocationRequest &() const;
02130 #else
02131 operator H225_LocationRequest &();
02132 operator const H225_LocationRequest &() const;
02133 #endif
02134 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02135 operator H225_LocationConfirm &() const;
02136 #else
02137 operator H225_LocationConfirm &();
02138 operator const H225_LocationConfirm &() const;
02139 #endif
02140 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02141 operator H225_LocationReject &() const;
02142 #else
02143 operator H225_LocationReject &();
02144 operator const H225_LocationReject &() const;
02145 #endif
02146 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02147 operator H225_InfoRequest &() const;
02148 #else
02149 operator H225_InfoRequest &();
02150 operator const H225_InfoRequest &() const;
02151 #endif
02152 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02153 operator H225_InfoRequestResponse &() const;
02154 #else
02155 operator H225_InfoRequestResponse &();
02156 operator const H225_InfoRequestResponse &() const;
02157 #endif
02158 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02159 operator H225_NonStandardMessage &() const;
02160 #else
02161 operator H225_NonStandardMessage &();
02162 operator const H225_NonStandardMessage &() const;
02163 #endif
02164 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02165 operator H225_UnknownMessageResponse &() const;
02166 #else
02167 operator H225_UnknownMessageResponse &();
02168 operator const H225_UnknownMessageResponse &() const;
02169 #endif
02170 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02171 operator H225_RequestInProgress &() const;
02172 #else
02173 operator H225_RequestInProgress &();
02174 operator const H225_RequestInProgress &() const;
02175 #endif
02176 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02177 operator H225_ResourcesAvailableIndicate &() const;
02178 #else
02179 operator H225_ResourcesAvailableIndicate &();
02180 operator const H225_ResourcesAvailableIndicate &() const;
02181 #endif
02182 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02183 operator H225_ResourcesAvailableConfirm &() const;
02184 #else
02185 operator H225_ResourcesAvailableConfirm &();
02186 operator const H225_ResourcesAvailableConfirm &() const;
02187 #endif
02188 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02189 operator H225_InfoRequestAck &() const;
02190 #else
02191 operator H225_InfoRequestAck &();
02192 operator const H225_InfoRequestAck &() const;
02193 #endif
02194 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02195 operator H225_InfoRequestNak &() const;
02196 #else
02197 operator H225_InfoRequestNak &();
02198 operator const H225_InfoRequestNak &() const;
02199 #endif
02200 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02201 operator H225_ServiceControlIndication &() const;
02202 #else
02203 operator H225_ServiceControlIndication &();
02204 operator const H225_ServiceControlIndication &() const;
02205 #endif
02206 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02207 operator H225_ServiceControlResponse &() const;
02208 #else
02209 operator H225_ServiceControlResponse &();
02210 operator const H225_ServiceControlResponse &() const;
02211 #endif
02212 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02213 operator H225_ArrayOf_AdmissionConfirm &() const;
02214 #else
02215 operator H225_ArrayOf_AdmissionConfirm &();
02216 operator const H225_ArrayOf_AdmissionConfirm &() const;
02217 #endif
02218
02219 BOOL CreateObject();
02220 PObject * Clone() const;
02221 };
02222
02223
02224
02225
02226
02227
02228 class H225_SecurityErrors;
02229
02230 class H225_GatekeeperRejectReason : public PASN_Choice
02231 {
02232 #ifndef PASN_LEANANDMEAN
02233 PCLASSINFO(H225_GatekeeperRejectReason, PASN_Choice);
02234 #endif
02235 public:
02236 H225_GatekeeperRejectReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02237
02238 enum Choices {
02239 e_resourceUnavailable,
02240 e_terminalExcluded,
02241 e_invalidRevision,
02242 e_undefinedReason,
02243 e_securityDenial,
02244 e_genericDataReason,
02245 e_neededFeatureNotSupported,
02246 e_securityError
02247 };
02248
02249 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02250 operator H225_SecurityErrors &() const;
02251 #else
02252 operator H225_SecurityErrors &();
02253 operator const H225_SecurityErrors &() const;
02254 #endif
02255
02256 BOOL CreateObject();
02257 PObject * Clone() const;
02258 };
02259
02260
02261
02262
02263
02264
02265 class H225_ArrayOf_AliasAddress;
02266 class H225_RegistrationRejectReason_invalidTerminalAliases;
02267 class H225_SecurityErrors;
02268
02269 class H225_RegistrationRejectReason : public PASN_Choice
02270 {
02271 #ifndef PASN_LEANANDMEAN
02272 PCLASSINFO(H225_RegistrationRejectReason, PASN_Choice);
02273 #endif
02274 public:
02275 H225_RegistrationRejectReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02276
02277 enum Choices {
02278 e_discoveryRequired,
02279 e_invalidRevision,
02280 e_invalidCallSignalAddress,
02281 e_invalidRASAddress,
02282 e_duplicateAlias,
02283 e_invalidTerminalType,
02284 e_undefinedReason,
02285 e_transportNotSupported,
02286 e_transportQOSNotSupported,
02287 e_resourceUnavailable,
02288 e_invalidAlias,
02289 e_securityDenial,
02290 e_fullRegistrationRequired,
02291 e_additiveRegistrationNotSupported,
02292 e_invalidTerminalAliases,
02293 e_genericDataReason,
02294 e_neededFeatureNotSupported,
02295 e_securityError,
02296 e_registerWithAssignedGK
02297 };
02298
02299 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02300 operator H225_ArrayOf_AliasAddress &() const;
02301 #else
02302 operator H225_ArrayOf_AliasAddress &();
02303 operator const H225_ArrayOf_AliasAddress &() const;
02304 #endif
02305 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02306 operator H225_RegistrationRejectReason_invalidTerminalAliases &() const;
02307 #else
02308 operator H225_RegistrationRejectReason_invalidTerminalAliases &();
02309 operator const H225_RegistrationRejectReason_invalidTerminalAliases &() const;
02310 #endif
02311 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02312 operator H225_SecurityErrors &() const;
02313 #else
02314 operator H225_SecurityErrors &();
02315 operator const H225_SecurityErrors &() const;
02316 #endif
02317
02318 BOOL CreateObject();
02319 PObject * Clone() const;
02320 };
02321
02322
02323
02324
02325
02326
02327 class H225_SecurityErrors2;
02328
02329 class H225_UnregRequestReason : public PASN_Choice
02330 {
02331 #ifndef PASN_LEANANDMEAN
02332 PCLASSINFO(H225_UnregRequestReason, PASN_Choice);
02333 #endif
02334 public:
02335 H225_UnregRequestReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02336
02337 enum Choices {
02338 e_reregistrationRequired,
02339 e_ttlExpired,
02340 e_securityDenial,
02341 e_undefinedReason,
02342 e_maintenance,
02343 e_securityError,
02344 e_registerWithAssignedGK
02345 };
02346
02347 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02348 operator H225_SecurityErrors2 &() const;
02349 #else
02350 operator H225_SecurityErrors2 &();
02351 operator const H225_SecurityErrors2 &() const;
02352 #endif
02353
02354 BOOL CreateObject();
02355 PObject * Clone() const;
02356 };
02357
02358
02359
02360
02361
02362
02363 class H225_SecurityErrors2;
02364
02365 class H225_UnregRejectReason : public PASN_Choice
02366 {
02367 #ifndef PASN_LEANANDMEAN
02368 PCLASSINFO(H225_UnregRejectReason, PASN_Choice);
02369 #endif
02370 public:
02371 H225_UnregRejectReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02372
02373 enum Choices {
02374 e_notCurrentlyRegistered,
02375 e_callInProgress,
02376 e_undefinedReason,
02377 e_permissionDenied,
02378 e_securityDenial,
02379 e_securityError
02380 };
02381
02382 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02383 operator H225_SecurityErrors2 &() const;
02384 #else
02385 operator H225_SecurityErrors2 &();
02386 operator const H225_SecurityErrors2 &() const;
02387 #endif
02388
02389 BOOL CreateObject();
02390 PObject * Clone() const;
02391 };
02392
02393
02394
02395
02396
02397
02398 class H225_CallType : public PASN_Choice
02399 {
02400 #ifndef PASN_LEANANDMEAN
02401 PCLASSINFO(H225_CallType, PASN_Choice);
02402 #endif
02403 public:
02404 H225_CallType(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02405
02406 enum Choices {
02407 e_pointToPoint,
02408 e_oneToN,
02409 e_nToOne,
02410 e_nToN
02411 };
02412
02413 BOOL CreateObject();
02414 PObject * Clone() const;
02415 };
02416
02417
02418
02419
02420
02421
02422 class H225_CallModel : public PASN_Choice
02423 {
02424 #ifndef PASN_LEANANDMEAN
02425 PCLASSINFO(H225_CallModel, PASN_Choice);
02426 #endif
02427 public:
02428 H225_CallModel(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02429
02430 enum Choices {
02431 e_direct,
02432 e_gatekeeperRouted
02433 };
02434
02435 BOOL CreateObject();
02436 PObject * Clone() const;
02437 };
02438
02439
02440
02441
02442
02443
02444 class H225_ArrayOf_QOSCapability;
02445
02446 class H225_TransportQOS : public PASN_Choice
02447 {
02448 #ifndef PASN_LEANANDMEAN
02449 PCLASSINFO(H225_TransportQOS, PASN_Choice);
02450 #endif
02451 public:
02452 H225_TransportQOS(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02453
02454 enum Choices {
02455 e_endpointControlled,
02456 e_gatekeeperControlled,
02457 e_noControl,
02458 e_qOSCapabilities
02459 };
02460
02461 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02462 operator H225_ArrayOf_QOSCapability &() const;
02463 #else
02464 operator H225_ArrayOf_QOSCapability &();
02465 operator const H225_ArrayOf_QOSCapability &() const;
02466 #endif
02467
02468 BOOL CreateObject();
02469 PObject * Clone() const;
02470 };
02471
02472
02473
02474
02475
02476
02477 class H225_UUIEsRequested : public PASN_Sequence
02478 {
02479 #ifndef PASN_LEANANDMEAN
02480 PCLASSINFO(H225_UUIEsRequested, PASN_Sequence);
02481 #endif
02482 public:
02483 H225_UUIEsRequested(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02484
02485 enum OptionalFields {
02486 e_status,
02487 e_statusInquiry,
02488 e_setupAcknowledge,
02489 e_notify
02490 };
02491
02492 PASN_Boolean m_setup;
02493 PASN_Boolean m_callProceeding;
02494 PASN_Boolean m_connect;
02495 PASN_Boolean m_alerting;
02496 PASN_Boolean m_information;
02497 PASN_Boolean m_releaseComplete;
02498 PASN_Boolean m_facility;
02499 PASN_Boolean m_progress;
02500 PASN_Boolean m_empty;
02501 PASN_Boolean m_status;
02502 PASN_Boolean m_statusInquiry;
02503 PASN_Boolean m_setupAcknowledge;
02504 PASN_Boolean m_notify;
02505
02506 PINDEX GetDataLength() const;
02507 BOOL Decode(PASN_Stream & strm);
02508 void Encode(PASN_Stream & strm) const;
02509 #ifndef PASN_NOPRINTON
02510 void PrintOn(ostream & strm) const;
02511 #endif
02512 Comparison Compare(const PObject & obj) const;
02513 PObject * Clone() const;
02514 };
02515
02516
02517
02518
02519
02520
02521 class H225_ArrayOf_PartyNumber;
02522 class H225_SecurityErrors2;
02523
02524 class H225_AdmissionRejectReason : public PASN_Choice
02525 {
02526 #ifndef PASN_LEANANDMEAN
02527 PCLASSINFO(H225_AdmissionRejectReason, PASN_Choice);
02528 #endif
02529 public:
02530 H225_AdmissionRejectReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02531
02532 enum Choices {
02533 e_calledPartyNotRegistered,
02534 e_invalidPermission,
02535 e_requestDenied,
02536 e_undefinedReason,
02537 e_callerNotRegistered,
02538 e_routeCallToGatekeeper,
02539 e_invalidEndpointIdentifier,
02540 e_resourceUnavailable,
02541 e_securityDenial,
02542 e_qosControlNotSupported,
02543 e_incompleteAddress,
02544 e_aliasesInconsistent,
02545 e_routeCallToSCN,
02546 e_exceedsCallCapacity,
02547 e_collectDestination,
02548 e_collectPIN,
02549 e_genericDataReason,
02550 e_neededFeatureNotSupported,
02551 e_securityErrors,
02552 e_securityDHmismatch,
02553 e_noRouteToDestination,
02554 e_unallocatedNumber,
02555 e_registerWithAssignedGK
02556 };
02557
02558 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02559 operator H225_ArrayOf_PartyNumber &() const;
02560 #else
02561 operator H225_ArrayOf_PartyNumber &();
02562 operator const H225_ArrayOf_PartyNumber &() const;
02563 #endif
02564 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02565 operator H225_SecurityErrors2 &() const;
02566 #else
02567 operator H225_SecurityErrors2 &();
02568 operator const H225_SecurityErrors2 &() const;
02569 #endif
02570
02571 BOOL CreateObject();
02572 PObject * Clone() const;
02573 };
02574
02575
02576
02577
02578
02579
02580 class H225_SecurityErrors2;
02581
02582 class H225_BandRejectReason : public PASN_Choice
02583 {
02584 #ifndef PASN_LEANANDMEAN
02585 PCLASSINFO(H225_BandRejectReason, PASN_Choice);
02586 #endif
02587 public:
02588 H225_BandRejectReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02589
02590 enum Choices {
02591 e_notBound,
02592 e_invalidConferenceID,
02593 e_invalidPermission,
02594 e_insufficientResources,
02595 e_invalidRevision,
02596 e_undefinedReason,
02597 e_securityDenial,
02598 e_securityError
02599 };
02600
02601 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02602 operator H225_SecurityErrors2 &() const;
02603 #else
02604 operator H225_SecurityErrors2 &();
02605 operator const H225_SecurityErrors2 &() const;
02606 #endif
02607
02608 BOOL CreateObject();
02609 PObject * Clone() const;
02610 };
02611
02612
02613
02614
02615
02616
02617 class H225_ArrayOf_PartyNumber;
02618 class H225_SecurityErrors2;
02619
02620 class H225_LocationRejectReason : public PASN_Choice
02621 {
02622 #ifndef PASN_LEANANDMEAN
02623 PCLASSINFO(H225_LocationRejectReason, PASN_Choice);
02624 #endif
02625 public:
02626 H225_LocationRejectReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02627
02628 enum Choices {
02629 e_notRegistered,
02630 e_invalidPermission,
02631 e_requestDenied,
02632 e_undefinedReason,
02633 e_securityDenial,
02634 e_aliasesInconsistent,
02635 e_routeCalltoSCN,
02636 e_resourceUnavailable,
02637 e_genericDataReason,
02638 e_neededFeatureNotSupported,
02639 e_hopCountExceeded,
02640 e_incompleteAddress,
02641 e_securityError,
02642 e_securityDHmismatch,
02643 e_noRouteToDestination,
02644 e_unallocatedNumber
02645 };
02646
02647 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02648 operator H225_ArrayOf_PartyNumber &() const;
02649 #else
02650 operator H225_ArrayOf_PartyNumber &();
02651 operator const H225_ArrayOf_PartyNumber &() const;
02652 #endif
02653 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02654 operator H225_SecurityErrors2 &() const;
02655 #else
02656 operator H225_SecurityErrors2 &();
02657 operator const H225_SecurityErrors2 &() const;
02658 #endif
02659
02660 BOOL CreateObject();
02661 PObject * Clone() const;
02662 };
02663
02664
02665
02666
02667
02668
02669 class H225_DisengageReason : public PASN_Choice
02670 {
02671 #ifndef PASN_LEANANDMEAN
02672 PCLASSINFO(H225_DisengageReason, PASN_Choice);
02673 #endif
02674 public:
02675 H225_DisengageReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02676
02677 enum Choices {
02678 e_forcedDrop,
02679 e_normalDrop,
02680 e_undefinedReason
02681 };
02682
02683 BOOL CreateObject();
02684 PObject * Clone() const;
02685 };
02686
02687
02688
02689
02690
02691
02692 class H225_SecurityErrors2;
02693
02694 class H225_DisengageRejectReason : public PASN_Choice
02695 {
02696 #ifndef PASN_LEANANDMEAN
02697 PCLASSINFO(H225_DisengageRejectReason, PASN_Choice);
02698 #endif
02699 public:
02700 H225_DisengageRejectReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02701
02702 enum Choices {
02703 e_notRegistered,
02704 e_requestToDropOther,
02705 e_securityDenial,
02706 e_securityError
02707 };
02708
02709 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02710 operator H225_SecurityErrors2 &() const;
02711 #else
02712 operator H225_SecurityErrors2 &();
02713 operator const H225_SecurityErrors2 &() const;
02714 #endif
02715
02716 BOOL CreateObject();
02717 PObject * Clone() const;
02718 };
02719
02720
02721
02722
02723
02724
02725 class H225_InfoRequestResponseStatus : public PASN_Choice
02726 {
02727 #ifndef PASN_LEANANDMEAN
02728 PCLASSINFO(H225_InfoRequestResponseStatus, PASN_Choice);
02729 #endif
02730 public:
02731 H225_InfoRequestResponseStatus(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02732
02733 enum Choices {
02734 e_complete,
02735 e_incomplete,
02736 e_segment,
02737 e_invalidCall
02738 };
02739
02740 BOOL CreateObject();
02741 PObject * Clone() const;
02742 };
02743
02744
02745
02746
02747
02748
02749 class H225_SecurityErrors2;
02750
02751 class H225_InfoRequestNakReason : public PASN_Choice
02752 {
02753 #ifndef PASN_LEANANDMEAN
02754 PCLASSINFO(H225_InfoRequestNakReason, PASN_Choice);
02755 #endif
02756 public:
02757 H225_InfoRequestNakReason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02758
02759 enum Choices {
02760 e_notRegistered,
02761 e_securityDenial,
02762 e_undefinedReason,
02763 e_securityError
02764 };
02765
02766 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02767 operator H225_SecurityErrors2 &() const;
02768 #else
02769 operator H225_SecurityErrors2 &();
02770 operator const H225_SecurityErrors2 &() const;
02771 #endif
02772
02773 BOOL CreateObject();
02774 PObject * Clone() const;
02775 };
02776
02777
02778
02779
02780
02781
02782 class H225_H323_UserInformation_user_data : public PASN_Sequence
02783 {
02784 #ifndef PASN_LEANANDMEAN
02785 PCLASSINFO(H225_H323_UserInformation_user_data, PASN_Sequence);
02786 #endif
02787 public:
02788 H225_H323_UserInformation_user_data(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02789
02790 PASN_Integer m_protocol_discriminator;
02791 PASN_OctetString m_user_information;
02792
02793 PINDEX GetDataLength() const;
02794 BOOL Decode(PASN_Stream & strm);
02795 void Encode(PASN_Stream & strm) const;
02796 #ifndef PASN_NOPRINTON
02797 void PrintOn(ostream & strm) const;
02798 #endif
02799 Comparison Compare(const PObject & obj) const;
02800 PObject * Clone() const;
02801 };
02802
02803
02804
02805
02806
02807
02808 class H225_Setup_UUIE;
02809 class H225_CallProceeding_UUIE;
02810 class H225_Connect_UUIE;
02811 class H225_Alerting_UUIE;
02812 class H225_Information_UUIE;
02813 class H225_ReleaseComplete_UUIE;
02814 class H225_Facility_UUIE;
02815 class H225_Progress_UUIE;
02816 class H225_Status_UUIE;
02817 class H225_StatusInquiry_UUIE;
02818 class H225_SetupAcknowledge_UUIE;
02819 class H225_Notify_UUIE;
02820
02821 class H225_H323_UU_PDU_h323_message_body : public PASN_Choice
02822 {
02823 #ifndef PASN_LEANANDMEAN
02824 PCLASSINFO(H225_H323_UU_PDU_h323_message_body, PASN_Choice);
02825 #endif
02826 public:
02827 H225_H323_UU_PDU_h323_message_body(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
02828
02829 enum Choices {
02830 e_setup,
02831 e_callProceeding,
02832 e_connect,
02833 e_alerting,
02834 e_information,
02835 e_releaseComplete,
02836 e_facility,
02837 e_progress,
02838 e_empty,
02839 e_status,
02840 e_statusInquiry,
02841 e_setupAcknowledge,
02842 e_notify
02843 };
02844
02845 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02846 operator H225_Setup_UUIE &() const;
02847 #else
02848 operator H225_Setup_UUIE &();
02849 operator const H225_Setup_UUIE &() const;
02850 #endif
02851 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02852 operator H225_CallProceeding_UUIE &() const;
02853 #else
02854 operator H225_CallProceeding_UUIE &();
02855 operator const H225_CallProceeding_UUIE &() const;
02856 #endif
02857 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02858 operator H225_Connect_UUIE &() const;
02859 #else
02860 operator H225_Connect_UUIE &();
02861 operator const H225_Connect_UUIE &() const;
02862 #endif
02863 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02864 operator H225_Alerting_UUIE &() const;
02865 #else
02866 operator H225_Alerting_UUIE &();
02867 operator const H225_Alerting_UUIE &() const;
02868 #endif
02869 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02870 operator H225_Information_UUIE &() const;
02871 #else
02872 operator H225_Information_UUIE &();
02873 operator const H225_Information_UUIE &() const;
02874 #endif
02875 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02876 operator H225_ReleaseComplete_UUIE &() const;
02877 #else
02878 operator H225_ReleaseComplete_UUIE &();
02879 operator const H225_ReleaseComplete_UUIE &() const;
02880 #endif
02881 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02882 operator H225_Facility_UUIE &() const;
02883 #else
02884 operator H225_Facility_UUIE &();
02885 operator const H225_Facility_UUIE &() const;
02886 #endif
02887 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02888 operator H225_Progress_UUIE &() const;
02889 #else
02890 operator H225_Progress_UUIE &();
02891 operator const H225_Progress_UUIE &() const;
02892 #endif
02893 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02894 operator H225_Status_UUIE &() const;
02895 #else
02896 operator H225_Status_UUIE &();
02897 operator const H225_Status_UUIE &() const;
02898 #endif
02899 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02900 operator H225_StatusInquiry_UUIE &() const;
02901 #else
02902 operator H225_StatusInquiry_UUIE &();
02903 operator const H225_StatusInquiry_UUIE &() const;
02904 #endif
02905 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02906 operator H225_SetupAcknowledge_UUIE &() const;
02907 #else
02908 operator H225_SetupAcknowledge_UUIE &();
02909 operator const H225_SetupAcknowledge_UUIE &() const;
02910 #endif
02911 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
02912 operator H225_Notify_UUIE &() const;
02913 #else
02914 operator H225_Notify_UUIE &();
02915 operator const H225_Notify_UUIE &() const;
02916 #endif
02917
02918 BOOL CreateObject();
02919 PObject * Clone() const;
02920 };
02921
02922
02923
02924
02925
02926
02927 class H225_ArrayOf_PASN_OctetString : public PASN_Array
02928 {
02929 #ifndef PASN_LEANANDMEAN
02930 PCLASSINFO(H225_ArrayOf_PASN_OctetString, PASN_Array);
02931 #endif
02932 public:
02933 H225_ArrayOf_PASN_OctetString(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02934
02935 PASN_Object * CreateObject() const;
02936 PASN_OctetString & operator[](PINDEX i) const;
02937 PObject * Clone() const;
02938 };
02939
02940
02941
02942
02943
02944
02945 class H225_NonStandardParameter;
02946
02947 class H225_ArrayOf_NonStandardParameter : public PASN_Array
02948 {
02949 #ifndef PASN_LEANANDMEAN
02950 PCLASSINFO(H225_ArrayOf_NonStandardParameter, PASN_Array);
02951 #endif
02952 public:
02953 H225_ArrayOf_NonStandardParameter(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02954
02955 PASN_Object * CreateObject() const;
02956 H225_NonStandardParameter & operator[](PINDEX i) const;
02957 PObject * Clone() const;
02958 };
02959
02960
02961
02962
02963
02964
02965 class H225_GenericData;
02966
02967 class H225_ArrayOf_GenericData : public PASN_Array
02968 {
02969 #ifndef PASN_LEANANDMEAN
02970 PCLASSINFO(H225_ArrayOf_GenericData, PASN_Array);
02971 #endif
02972 public:
02973 H225_ArrayOf_GenericData(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02974
02975 PASN_Object * CreateObject() const;
02976 H225_GenericData & operator[](PINDEX i) const;
02977 PObject * Clone() const;
02978 };
02979
02980
02981
02982
02983
02984
02985 class H235_ClearToken;
02986
02987 class H225_ArrayOf_ClearToken : public PASN_Array
02988 {
02989 #ifndef PASN_LEANANDMEAN
02990 PCLASSINFO(H225_ArrayOf_ClearToken, PASN_Array);
02991 #endif
02992 public:
02993 H225_ArrayOf_ClearToken(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
02994
02995 PASN_Object * CreateObject() const;
02996 H235_ClearToken & operator[](PINDEX i) const;
02997 PObject * Clone() const;
02998 };
02999
03000
03001
03002
03003
03004
03005 class H225_CryptoH323Token;
03006
03007 class H225_ArrayOf_CryptoH323Token : public PASN_Array
03008 {
03009 #ifndef PASN_LEANANDMEAN
03010 PCLASSINFO(H225_ArrayOf_CryptoH323Token, PASN_Array);
03011 #endif
03012 public:
03013 H225_ArrayOf_CryptoH323Token(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03014
03015 PASN_Object * CreateObject() const;
03016 H225_CryptoH323Token & operator[](PINDEX i) const;
03017 PObject * Clone() const;
03018 };
03019
03020
03021
03022
03023
03024
03025 class H225_AliasAddress;
03026
03027 class H225_ArrayOf_AliasAddress : public PASN_Array
03028 {
03029 #ifndef PASN_LEANANDMEAN
03030 PCLASSINFO(H225_ArrayOf_AliasAddress, PASN_Array);
03031 #endif
03032 public:
03033 H225_ArrayOf_AliasAddress(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03034
03035 PASN_Object * CreateObject() const;
03036 H225_AliasAddress & operator[](PINDEX i) const;
03037 PObject * Clone() const;
03038 };
03039
03040
03041
03042
03043
03044
03045 class H225_ServiceControlSession;
03046
03047 class H225_ArrayOf_ServiceControlSession : public PASN_Array
03048 {
03049 #ifndef PASN_LEANANDMEAN
03050 PCLASSINFO(H225_ArrayOf_ServiceControlSession, PASN_Array);
03051 #endif
03052 public:
03053 H225_ArrayOf_ServiceControlSession(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03054
03055 PASN_Object * CreateObject() const;
03056 H225_ServiceControlSession & operator[](PINDEX i) const;
03057 PObject * Clone() const;
03058 };
03059
03060
03061
03062
03063
03064
03065 class H225_Connect_UUIE_language : public PASN_Array
03066 {
03067 #ifndef PASN_LEANANDMEAN
03068 PCLASSINFO(H225_Connect_UUIE_language, PASN_Array);
03069 #endif
03070 public:
03071 H225_Connect_UUIE_language(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03072
03073 PASN_Object * CreateObject() const;
03074 PASN_IA5String & operator[](PINDEX i) const;
03075 PObject * Clone() const;
03076 };
03077
03078
03079
03080
03081
03082
03083 class H225_CallReferenceValue;
03084
03085 class H225_ArrayOf_CallReferenceValue : public PASN_Array
03086 {
03087 #ifndef PASN_LEANANDMEAN
03088 PCLASSINFO(H225_ArrayOf_CallReferenceValue, PASN_Array);
03089 #endif
03090 public:
03091 H225_ArrayOf_CallReferenceValue(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03092
03093 PASN_Object * CreateObject() const;
03094 H225_CallReferenceValue & operator[](PINDEX i) const;
03095 PObject * Clone() const;
03096 };
03097
03098
03099
03100
03101
03102
03103 class H225_Setup_UUIE_conferenceGoal : public PASN_Choice
03104 {
03105 #ifndef PASN_LEANANDMEAN
03106 PCLASSINFO(H225_Setup_UUIE_conferenceGoal, PASN_Choice);
03107 #endif
03108 public:
03109 H225_Setup_UUIE_conferenceGoal(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
03110
03111 enum Choices {
03112 e_create,
03113 e_join,
03114 e_invite,
03115 e_capability_negotiation,
03116 e_callIndependentSupplementaryService
03117 };
03118
03119 BOOL CreateObject();
03120 PObject * Clone() const;
03121 };
03122
03123
03124
03125
03126
03127
03128 class H225_H245Security;
03129
03130 class H225_ArrayOf_H245Security : public PASN_Array
03131 {
03132 #ifndef PASN_LEANANDMEAN
03133 PCLASSINFO(H225_ArrayOf_H245Security, PASN_Array);
03134 #endif
03135 public:
03136 H225_ArrayOf_H245Security(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03137
03138 PASN_Object * CreateObject() const;
03139 H225_H245Security & operator[](PINDEX i) const;
03140 PObject * Clone() const;
03141 };
03142
03143
03144
03145
03146
03147
03148 class H225_Setup_UUIE_connectionParameters : public PASN_Sequence
03149 {
03150 #ifndef PASN_LEANANDMEAN
03151 PCLASSINFO(H225_Setup_UUIE_connectionParameters, PASN_Sequence);
03152 #endif
03153 public:
03154 H225_Setup_UUIE_connectionParameters(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03155
03156 H225_ScnConnectionType m_connectionType;
03157 PASN_Integer m_numberOfScnConnections;
03158 H225_ScnConnectionAggregation m_connectionAggregation;
03159
03160 PINDEX GetDataLength() const;
03161 BOOL Decode(PASN_Stream & strm);
03162 void Encode(PASN_Stream & strm) const;
03163 #ifndef PASN_NOPRINTON
03164 void PrintOn(ostream & strm) const;
03165 #endif
03166 Comparison Compare(const PObject & obj) const;
03167 PObject * Clone() const;
03168 };
03169
03170
03171
03172
03173
03174
03175 class H225_Setup_UUIE_language : public PASN_Array
03176 {
03177 #ifndef PASN_LEANANDMEAN
03178 PCLASSINFO(H225_Setup_UUIE_language, PASN_Array);
03179 #endif
03180 public:
03181 H225_Setup_UUIE_language(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03182
03183 PASN_Object * CreateObject() const;
03184 PASN_IA5String & operator[](PINDEX i) const;
03185 PObject * Clone() const;
03186 };
03187
03188
03189
03190
03191
03192
03193 class H225_SupportedProtocols;
03194
03195 class H225_ArrayOf_SupportedProtocols : public PASN_Array
03196 {
03197 #ifndef PASN_LEANANDMEAN
03198 PCLASSINFO(H225_ArrayOf_SupportedProtocols, PASN_Array);
03199 #endif
03200 public:
03201 H225_ArrayOf_SupportedProtocols(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03202
03203 PASN_Object * CreateObject() const;
03204 H225_SupportedProtocols & operator[](PINDEX i) const;
03205 PObject * Clone() const;
03206 };
03207
03208
03209
03210
03211
03212
03213 class H225_FeatureDescriptor;
03214
03215 class H225_ArrayOf_FeatureDescriptor : public PASN_Array
03216 {
03217 #ifndef PASN_LEANANDMEAN
03218 PCLASSINFO(H225_ArrayOf_FeatureDescriptor, PASN_Array);
03219 #endif
03220 public:
03221 H225_ArrayOf_FeatureDescriptor(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03222
03223 PASN_Object * CreateObject() const;
03224 H225_FeatureDescriptor & operator[](PINDEX i) const;
03225 PObject * Clone() const;
03226 };
03227
03228
03229
03230
03231
03232
03233 class H225_ExtendedAliasAddress;
03234
03235 class H225_ArrayOf_ExtendedAliasAddress : public PASN_Array
03236 {
03237 #ifndef PASN_LEANANDMEAN
03238 PCLASSINFO(H225_ArrayOf_ExtendedAliasAddress, PASN_Array);
03239 #endif
03240 public:
03241 H225_ArrayOf_ExtendedAliasAddress(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03242
03243 PASN_Object * CreateObject() const;
03244 H225_ExtendedAliasAddress & operator[](PINDEX i) const;
03245 PObject * Clone() const;
03246 };
03247
03248
03249
03250
03251
03252
03253 class H225_ConferenceList;
03254
03255 class H225_ArrayOf_ConferenceList : public PASN_Array
03256 {
03257 #ifndef PASN_LEANANDMEAN
03258 PCLASSINFO(H225_ArrayOf_ConferenceList, PASN_Array);
03259 #endif
03260 public:
03261 H225_ArrayOf_ConferenceList(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03262
03263 PASN_Object * CreateObject() const;
03264 H225_ConferenceList & operator[](PINDEX i) const;
03265 PObject * Clone() const;
03266 };
03267
03268
03269
03270
03271
03272
03273 class H225_TransportAddress_ipAddress : public PASN_Sequence
03274 {
03275 #ifndef PASN_LEANANDMEAN
03276 PCLASSINFO(H225_TransportAddress_ipAddress, PASN_Sequence);
03277 #endif
03278 public:
03279 H225_TransportAddress_ipAddress(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03280
03281 PASN_OctetString m_ip;
03282 PASN_Integer m_port;
03283
03284 PINDEX GetDataLength() const;
03285 BOOL Decode(PASN_Stream & strm);
03286 void Encode(PASN_Stream & strm) const;
03287 #ifndef PASN_NOPRINTON
03288 void PrintOn(ostream & strm) const;
03289 #endif
03290 Comparison Compare(const PObject & obj) const;
03291 PObject * Clone() const;
03292 };
03293
03294
03295
03296
03297
03298
03299 class H225_TransportAddress_ipxAddress : public PASN_Sequence
03300 {
03301 #ifndef PASN_LEANANDMEAN
03302 PCLASSINFO(H225_TransportAddress_ipxAddress, PASN_Sequence);
03303 #endif
03304 public:
03305 H225_TransportAddress_ipxAddress(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03306
03307 PASN_OctetString m_node;
03308 PASN_OctetString m_netnum;
03309 PASN_OctetString m_port;
03310
03311 PINDEX GetDataLength() const;
03312 BOOL Decode(PASN_Stream & strm);
03313 void Encode(PASN_Stream & strm) const;
03314 #ifndef PASN_NOPRINTON
03315 void PrintOn(ostream & strm) const;
03316 #endif
03317 Comparison Compare(const PObject & obj) const;
03318 PObject * Clone() const;
03319 };
03320
03321
03322
03323
03324
03325
03326 class H225_TransportAddress_ip6Address : public PASN_Sequence
03327 {
03328 #ifndef PASN_LEANANDMEAN
03329 PCLASSINFO(H225_TransportAddress_ip6Address, PASN_Sequence);
03330 #endif
03331 public:
03332 H225_TransportAddress_ip6Address(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03333
03334 PASN_OctetString m_ip;
03335 PASN_Integer m_port;
03336
03337 PINDEX GetDataLength() const;
03338 BOOL Decode(PASN_Stream & strm);
03339 void Encode(PASN_Stream & strm) const;
03340 #ifndef PASN_NOPRINTON
03341 void PrintOn(ostream & strm) const;
03342 #endif
03343 Comparison Compare(const PObject & obj) const;
03344 PObject * Clone() const;
03345 };
03346
03347
03348
03349
03350
03351
03352 class H225_TunnelledProtocol;
03353
03354 class H225_ArrayOf_TunnelledProtocol : public PASN_Array
03355 {
03356 #ifndef PASN_LEANANDMEAN
03357 PCLASSINFO(H225_ArrayOf_TunnelledProtocol, PASN_Array);
03358 #endif
03359 public:
03360 H225_ArrayOf_TunnelledProtocol(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03361
03362 PASN_Object * CreateObject() const;
03363 H225_TunnelledProtocol & operator[](PINDEX i) const;
03364 PObject * Clone() const;
03365 };
03366
03367
03368
03369
03370
03371
03372 class H225_DataRate;
03373
03374 class H225_ArrayOf_DataRate : public PASN_Array
03375 {
03376 #ifndef PASN_LEANANDMEAN
03377 PCLASSINFO(H225_ArrayOf_DataRate, PASN_Array);
03378 #endif
03379 public:
03380 H225_ArrayOf_DataRate(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03381
03382 PASN_Object * CreateObject() const;
03383 H225_DataRate & operator[](PINDEX i) const;
03384 PObject * Clone() const;
03385 };
03386
03387
03388
03389
03390
03391
03392 class H225_SupportedPrefix;
03393
03394 class H225_ArrayOf_SupportedPrefix : public PASN_Array
03395 {
03396 #ifndef PASN_LEANANDMEAN
03397 PCLASSINFO(H225_ArrayOf_SupportedPrefix, PASN_Array);
03398 #endif
03399 public:
03400 H225_ArrayOf_SupportedPrefix(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03401
03402 PASN_Object * CreateObject() const;
03403 H225_SupportedPrefix & operator[](PINDEX i) const;
03404 PObject * Clone() const;
03405 };
03406
03407
03408
03409
03410
03411
03412 class H225_TunnelledProtocolAlternateIdentifier;
03413
03414 class H225_TunnelledProtocol_id : public PASN_Choice
03415 {
03416 #ifndef PASN_LEANANDMEAN
03417 PCLASSINFO(H225_TunnelledProtocol_id, PASN_Choice);
03418 #endif
03419 public:
03420 H225_TunnelledProtocol_id(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
03421
03422 enum Choices {
03423 e_tunnelledProtocolObjectID,
03424 e_tunnelledProtocolAlternateID
03425 };
03426
03427 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
03428 operator H225_TunnelledProtocolAlternateIdentifier &() const;
03429 #else
03430 operator H225_TunnelledProtocolAlternateIdentifier &();
03431 operator const H225_TunnelledProtocolAlternateIdentifier &() const;
03432 #endif
03433
03434 BOOL CreateObject();
03435 PObject * Clone() const;
03436 };
03437
03438
03439
03440
03441
03442
03443 class H225_AddressPattern_range : public PASN_Sequence
03444 {
03445 #ifndef PASN_LEANANDMEAN
03446 PCLASSINFO(H225_AddressPattern_range, PASN_Sequence);
03447 #endif
03448 public:
03449 H225_AddressPattern_range(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03450
03451 H225_PartyNumber m_startOfRange;
03452 H225_PartyNumber m_endOfRange;
03453
03454 PINDEX GetDataLength() const;
03455 BOOL Decode(PASN_Stream & strm);
03456 void Encode(PASN_Stream & strm) const;
03457 #ifndef PASN_NOPRINTON
03458 void PrintOn(ostream & strm) const;
03459 #endif
03460 Comparison Compare(const PObject & obj) const;
03461 PObject * Clone() const;
03462 };
03463
03464
03465
03466
03467
03468
03469 class H225_ANSI_41_UIM_system_id : public PASN_Choice
03470 {
03471 #ifndef PASN_LEANANDMEAN
03472 PCLASSINFO(H225_ANSI_41_UIM_system_id, PASN_Choice);
03473 #endif
03474 public:
03475 H225_ANSI_41_UIM_system_id(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
03476
03477 enum Choices {
03478 e_sid,
03479 e_mid
03480 };
03481
03482 BOOL CreateObject();
03483 PObject * Clone() const;
03484 };
03485
03486
03487
03488
03489
03490
03491 class H225_TransportAddress;
03492
03493 class H225_ArrayOf_TransportAddress : public PASN_Array
03494 {
03495 #ifndef PASN_LEANANDMEAN
03496 PCLASSINFO(H225_ArrayOf_TransportAddress, PASN_Array);
03497 #endif
03498 public:
03499 H225_ArrayOf_TransportAddress(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03500
03501 PASN_Object * CreateObject() const;
03502 H225_TransportAddress & operator[](PINDEX i) const;
03503 PObject * Clone() const;
03504 };
03505
03506
03507
03508
03509
03510
03511 class H225_AlternateGK;
03512
03513 class H225_ArrayOf_AlternateGK : public PASN_Array
03514 {
03515 #ifndef PASN_LEANANDMEAN
03516 PCLASSINFO(H225_ArrayOf_AlternateGK, PASN_Array);
03517 #endif
03518 public:
03519 H225_ArrayOf_AlternateGK(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03520
03521 PASN_Object * CreateObject() const;
03522 H225_AlternateGK & operator[](PINDEX i) const;
03523 PObject * Clone() const;
03524 };
03525
03526
03527
03528
03529
03530
03531 class H225_CryptoH323Token_cryptoEPPwdHash : public PASN_Sequence
03532 {
03533 #ifndef PASN_LEANANDMEAN
03534 PCLASSINFO(H225_CryptoH323Token_cryptoEPPwdHash, PASN_Sequence);
03535 #endif
03536 public:
03537 H225_CryptoH323Token_cryptoEPPwdHash(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03538
03539 H225_AliasAddress m_alias;
03540 H235_TimeStamp m_timeStamp;
03541 H235_HASHED<H235_EncodedPwdCertToken> m_token;
03542
03543 PINDEX GetDataLength() const;
03544 BOOL Decode(PASN_Stream & strm);
03545 void Encode(PASN_Stream & strm) const;
03546 #ifndef PASN_NOPRINTON
03547 void PrintOn(ostream & strm) const;
03548 #endif
03549 Comparison Compare(const PObject & obj) const;
03550 PObject * Clone() const;
03551 };
03552
03553
03554
03555
03556
03557
03558 class H225_CryptoH323Token_cryptoGKPwdHash : public PASN_Sequence
03559 {
03560 #ifndef PASN_LEANANDMEAN
03561 PCLASSINFO(H225_CryptoH323Token_cryptoGKPwdHash, PASN_Sequence);
03562 #endif
03563 public:
03564 H225_CryptoH323Token_cryptoGKPwdHash(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03565
03566 H225_GatekeeperIdentifier m_gatekeeperId;
03567 H235_TimeStamp m_timeStamp;
03568 H235_HASHED<H235_EncodedPwdCertToken> m_token;
03569
03570 PINDEX GetDataLength() const;
03571 BOOL Decode(PASN_Stream & strm);
03572 void Encode(PASN_Stream & strm) const;
03573 #ifndef PASN_NOPRINTON
03574 void PrintOn(ostream & strm) const;
03575 #endif
03576 Comparison Compare(const PObject & obj) const;
03577 PObject * Clone() const;
03578 };
03579
03580
03581
03582
03583
03584
03585 class H225_CapacityReportingSpecification_when : public PASN_Sequence
03586 {
03587 #ifndef PASN_LEANANDMEAN
03588 PCLASSINFO(H225_CapacityReportingSpecification_when, PASN_Sequence);
03589 #endif
03590 public:
03591 H225_CapacityReportingSpecification_when(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03592
03593 enum OptionalFields {
03594 e_callStart,
03595 e_callEnd
03596 };
03597
03598 PASN_Null m_callStart;
03599 PASN_Null m_callEnd;
03600
03601 PINDEX GetDataLength() const;
03602 BOOL Decode(PASN_Stream & strm);
03603 void Encode(PASN_Stream & strm) const;
03604 #ifndef PASN_NOPRINTON
03605 void PrintOn(ostream & strm) const;
03606 #endif
03607 Comparison Compare(const PObject & obj) const;
03608 PObject * Clone() const;
03609 };
03610
03611
03612
03613
03614
03615
03616 class H225_CallsAvailable;
03617
03618 class H225_ArrayOf_CallsAvailable : public PASN_Array
03619 {
03620 #ifndef PASN_LEANANDMEAN
03621 PCLASSINFO(H225_ArrayOf_CallsAvailable, PASN_Array);
03622 #endif
03623 public:
03624 H225_ArrayOf_CallsAvailable(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03625
03626 PASN_Object * CreateObject() const;
03627 H225_CallsAvailable & operator[](PINDEX i) const;
03628 PObject * Clone() const;
03629 };
03630
03631
03632
03633
03634
03635
03636 class H225_CicInfo_cic : public PASN_Array
03637 {
03638 #ifndef PASN_LEANANDMEAN
03639 PCLASSINFO(H225_CicInfo_cic, PASN_Array);
03640 #endif
03641 public:
03642 H225_CicInfo_cic(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03643
03644 PASN_Object * CreateObject() const;
03645 PASN_OctetString & operator[](PINDEX i) const;
03646 PObject * Clone() const;
03647 };
03648
03649
03650
03651
03652
03653
03654 class H225_GroupID_member : public PASN_Array
03655 {
03656 #ifndef PASN_LEANANDMEAN
03657 PCLASSINFO(H225_GroupID_member, PASN_Array);
03658 #endif
03659 public:
03660 H225_GroupID_member(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
03661
03662 PASN_Object * CreateObject() const;
03663 PASN_Integer & operator[](PINDEX i) const;
03664 PObject * Clone() const;
03665 };
03666
03667
03668
03669
03670
03671
03672 class H225_ServiceControlSession_reason : public PASN_Choice
03673 {
03674 #ifndef PASN_LEANANDMEAN
03675 PCLASSINFO(H225_ServiceControlSession_reason, PASN_Choice);
03676 #endif
03677 public:
03678 H225_ServiceControlSession_reason(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
03679
03680 enum Choices {
03681 e_open,
03682 e_refresh,
03683