4 // Code automatically generated by asnparse.
7 #if ! H323_DISABLE_H4503
16 #include <ptclib/asner.h>
26 // H323CallDiversionOperations
29 class H4503_H323CallDiversionOperations
: public PASN_Enumeration
31 #ifndef PASN_LEANANDMEAN
32 PCLASSINFO(H4503_H323CallDiversionOperations
, PASN_Enumeration
);
35 H4503_H323CallDiversionOperations(unsigned tag
= UniversalEnumeration
, TagClass tagClass
= UniversalTagClass
);
38 e_activateDiversionQ
= 15,
39 e_deactivateDiversionQ
,
40 e_interrogateDiversionQ
,
43 e_divertingLegInformation1
,
44 e_divertingLegInformation2
,
45 e_divertingLegInformation3
,
46 e_divertingLegInformation4
= 100,
47 e_cfnrDivertedLegFailed
= 23
50 H4503_H323CallDiversionOperations
& operator=(unsigned v
);
51 PObject
* Clone() const;
59 class H4503_DiversionReason
: public PASN_Enumeration
61 #ifndef PASN_LEANANDMEAN
62 PCLASSINFO(H4503_DiversionReason
, PASN_Enumeration
);
65 H4503_DiversionReason(unsigned tag
= UniversalEnumeration
, TagClass tagClass
= UniversalTagClass
);
74 H4503_DiversionReason
& operator=(unsigned v
);
75 PObject
* Clone() const;
83 class H4503_IntResult
;
85 class H4503_IntResultList
: public PASN_Array
87 #ifndef PASN_LEANANDMEAN
88 PCLASSINFO(H4503_IntResultList
, PASN_Array
);
91 H4503_IntResultList(unsigned tag
= UniversalSet
, TagClass tagClass
= UniversalTagClass
);
93 PASN_Object
* CreateObject() const;
94 H4503_IntResult
& operator[](PINDEX i
) const;
95 PObject
* Clone() const;
103 class H4503_Procedure
: public PASN_Enumeration
105 #ifndef PASN_LEANANDMEAN
106 PCLASSINFO(H4503_Procedure
, PASN_Enumeration
);
109 H4503_Procedure(unsigned tag
= UniversalEnumeration
, TagClass tagClass
= UniversalTagClass
);
117 H4503_Procedure
& operator=(unsigned v
);
118 PObject
* Clone() const;
123 // SubscriptionOption
126 class H4503_SubscriptionOption
: public PASN_Enumeration
128 #ifndef PASN_LEANANDMEAN
129 PCLASSINFO(H4503_SubscriptionOption
, PASN_Enumeration
);
132 H4503_SubscriptionOption(unsigned tag
= UniversalEnumeration
, TagClass tagClass
= UniversalTagClass
);
136 e_notificationWithoutDivertedToNr
,
137 e_notificationWithDivertedToNr
140 H4503_SubscriptionOption
& operator=(unsigned v
);
141 PObject
* Clone() const;
146 // CallDiversionErrors
149 class H4503_CallDiversionErrors
: public PASN_Enumeration
151 #ifndef PASN_LEANANDMEAN
152 PCLASSINFO(H4503_CallDiversionErrors
, PASN_Enumeration
);
155 H4503_CallDiversionErrors(unsigned tag
= UniversalEnumeration
, TagClass tagClass
= UniversalTagClass
);
158 e_invalidDivertedNumber
= 12,
159 e_specialServiceNumber
= 14,
160 e_diversionToServedUserNumber
,
161 e_numberOfDiversionsExceeded
= 24,
162 e_temporarilyUnavailable
= 1000,
163 e_notAuthorized
= 1007,
167 H4503_CallDiversionErrors
& operator=(unsigned v
);
168 PObject
* Clone() const;
176 class H4503_BasicService
: public PASN_Enumeration
178 #ifndef PASN_LEANANDMEAN
179 PCLASSINFO(H4503_BasicService
, PASN_Enumeration
);
182 H4503_BasicService(unsigned tag
= UniversalEnumeration
, TagClass tagClass
= UniversalTagClass
);
188 H4503_BasicService
& operator=(unsigned v
);
189 PObject
* Clone() const;
197 class H4501_Extension
;
199 class H4503_ExtensionSeq
: public PASN_Array
201 #ifndef PASN_LEANANDMEAN
202 PCLASSINFO(H4503_ExtensionSeq
, PASN_Array
);
205 H4503_ExtensionSeq(unsigned tag
= UniversalSequence
, TagClass tagClass
= UniversalTagClass
);
207 PASN_Object
* CreateObject() const;
208 H4501_Extension
& operator[](PINDEX i
) const;
209 PObject
* Clone() const;
214 // IntResult_extension
217 class H4503_ExtensionSeq
;
218 class H225_NonStandardParameter
;
220 class H4503_IntResult_extension
: public PASN_Choice
222 #ifndef PASN_LEANANDMEAN
223 PCLASSINFO(H4503_IntResult_extension
, PASN_Choice
);
226 H4503_IntResult_extension(unsigned tag
= 0, TagClass tagClass
= UniversalTagClass
);
233 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
234 operator H4503_ExtensionSeq
&() const;
236 operator H4503_ExtensionSeq
&();
237 operator const H4503_ExtensionSeq
&() const;
239 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
240 operator H225_NonStandardParameter
&() const;
242 operator H225_NonStandardParameter
&();
243 operator const H225_NonStandardParameter
&() const;
247 PObject
* Clone() const;
252 // DivertingLegInfo2Arg_extension
255 class H4503_ExtensionSeq
;
256 class H225_NonStandardParameter
;
258 class H4503_DivertingLegInfo2Arg_extension
: public PASN_Choice
260 #ifndef PASN_LEANANDMEAN
261 PCLASSINFO(H4503_DivertingLegInfo2Arg_extension
, PASN_Choice
);
264 H4503_DivertingLegInfo2Arg_extension(unsigned tag
= 0, TagClass tagClass
= UniversalTagClass
);
271 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
272 operator H4503_ExtensionSeq
&() const;
274 operator H4503_ExtensionSeq
&();
275 operator const H4503_ExtensionSeq
&() const;
277 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
278 operator H225_NonStandardParameter
&() const;
280 operator H225_NonStandardParameter
&();
281 operator const H225_NonStandardParameter
&() const;
285 PObject
* Clone() const;
293 class H4503_IntResult
: public PASN_Sequence
295 #ifndef PASN_LEANANDMEAN
296 PCLASSINFO(H4503_IntResult
, PASN_Sequence
);
299 H4503_IntResult(unsigned tag
= UniversalSequence
, TagClass tagClass
= UniversalTagClass
);
301 enum OptionalFields
{
305 H4501_EndpointAddress m_servedUserNr
;
306 H4503_BasicService m_basicService
;
307 H4503_Procedure m_procedure
;
308 H4501_EndpointAddress m_divertedToAddress
;
309 PASN_Boolean m_remoteEnabled
;
310 H4503_IntResult_extension m_extension
;
312 PINDEX
GetDataLength() const;
313 BOOL
Decode(PASN_Stream
& strm
);
314 void Encode(PASN_Stream
& strm
) const;
315 #ifndef PASN_NOPRINTON
316 void PrintOn(ostream
& strm
) const;
318 Comparison
Compare(const PObject
& obj
) const;
319 PObject
* Clone() const;
324 // DivertingLegInfo2Arg
327 class H4503_DivertingLegInfo2Arg
: public PASN_Sequence
329 #ifndef PASN_LEANANDMEAN
330 PCLASSINFO(H4503_DivertingLegInfo2Arg
, PASN_Sequence
);
333 H4503_DivertingLegInfo2Arg(unsigned tag
= UniversalSequence
, TagClass tagClass
= UniversalTagClass
);
335 enum OptionalFields
{
336 e_originalDiversionReason
,
340 e_originalCalledInfo
,
344 PASN_Integer m_diversionCounter
;
345 H4503_DiversionReason m_diversionReason
;
346 H4503_DiversionReason m_originalDiversionReason
;
347 H4501_EndpointAddress m_divertingNr
;
348 H4501_EndpointAddress m_originalCalledNr
;
349 PASN_BMPString m_redirectingInfo
;
350 PASN_BMPString m_originalCalledInfo
;
351 H4503_DivertingLegInfo2Arg_extension m_extension
;
353 PINDEX
GetDataLength() const;
354 BOOL
Decode(PASN_Stream
& strm
);
355 void Encode(PASN_Stream
& strm
) const;
356 #ifndef PASN_NOPRINTON
357 void PrintOn(ostream
& strm
) const;
359 Comparison
Compare(const PObject
& obj
) const;
360 PObject
* Clone() const;
366 #endif // if ! H323_DISABLE_H4503