1 //
2 // h45011.h
3 //
4 // Code automatically generated by asnparse.
5 //
6 
7 #if ! H323_DISABLE_H45011
8 
9 #ifndef __H45011_H
10 #define __H45011_H
11 
12 #ifdef P_USE_PRAGMA
13 #pragma interface
14 #endif
15 
16 #include <ptclib/asner.h>
17 
18 #include "h225.h"
19 #include "h4504.h"
20 #include "h4501.h"
21 #include "h4506.h"
22 #include "h45010.h"
23 
24 
25 //
26 // H323CallIntrusionOperations
27 //
28 
29 class H45011_H323CallIntrusionOperations : public PASN_Enumeration
30 {
31 #ifndef PASN_LEANANDMEAN
32     PCLASSINFO(H45011_H323CallIntrusionOperations, PASN_Enumeration);
33 #endif
34   public:
35     H45011_H323CallIntrusionOperations(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
36 
37     enum Enumerations {
38       e_callIntrusionRequest = 43,
39       e_callIntrusionGetCIPL,
40       e_callIntrusionIsolate,
41       e_callIntrusionForcedRelease,
42       e_callIntrusionWOBRequest,
43       e_callIntrusionSilentMonitor = 116,
44       e_callIntrusionNotification
45     };
46 
47     H45011_H323CallIntrusionOperations & operator=(unsigned v);
48     PObject * Clone() const;
49 };
50 
51 
52 //
53 // CICapabilityLevel
54 //
55 
56 class H45011_CICapabilityLevel : public PASN_Integer
57 {
58 #ifndef PASN_LEANANDMEAN
59     PCLASSINFO(H45011_CICapabilityLevel, PASN_Integer);
60 #endif
61   public:
62     H45011_CICapabilityLevel(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
63 
64     H45011_CICapabilityLevel & operator=(int v);
65     H45011_CICapabilityLevel & operator=(unsigned v);
66     PObject * Clone() const;
67 };
68 
69 
70 //
71 // CIProtectionLevel
72 //
73 
74 class H45011_CIProtectionLevel : public PASN_Integer
75 {
76 #ifndef PASN_LEANANDMEAN
77     PCLASSINFO(H45011_CIProtectionLevel, PASN_Integer);
78 #endif
79   public:
80     H45011_CIProtectionLevel(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
81 
82     H45011_CIProtectionLevel & operator=(int v);
83     H45011_CIProtectionLevel & operator=(unsigned v);
84     PObject * Clone() const;
85 };
86 
87 
88 //
89 // CIStatusInformation
90 //
91 
92 class H45011_CIStatusInformation : public PASN_Choice
93 {
94 #ifndef PASN_LEANANDMEAN
95     PCLASSINFO(H45011_CIStatusInformation, PASN_Choice);
96 #endif
97   public:
98     H45011_CIStatusInformation(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
99 
100     enum Choices {
101       e_callIntrusionImpending,
102       e_callIntruded,
103       e_callIsolated,
104       e_callForceReleased,
105       e_callIntrusionComplete,
106       e_callIntrusionEnd
107     };
108 
109     PBoolean CreateObject();
110     PObject * Clone() const;
111 };
112 
113 
114 //
115 // CallIntrusionErrors
116 //
117 
118 class H45011_CallIntrusionErrors : public PASN_Enumeration
119 {
120 #ifndef PASN_LEANANDMEAN
121     PCLASSINFO(H45011_CallIntrusionErrors, PASN_Enumeration);
122 #endif
123   public:
124     H45011_CallIntrusionErrors(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass);
125 
126     enum Enumerations {
127       e_notBusy = 1009,
128       e_temporarilyUnavailable = 1000,
129       e_notAuthorized = 1007
130     };
131 
132     H45011_CallIntrusionErrors & operator=(unsigned v);
133     PObject * Clone() const;
134 };
135 
136 
137 //
138 // ArrayOf_MixedExtension
139 //
140 
141 class H4504_MixedExtension;
142 
143 class H45011_ArrayOf_MixedExtension : public PASN_Array
144 {
145 #ifndef PASN_LEANANDMEAN
146     PCLASSINFO(H45011_ArrayOf_MixedExtension, PASN_Array);
147 #endif
148   public:
149     H45011_ArrayOf_MixedExtension(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
150 
151     PASN_Object * CreateObject() const;
152     H4504_MixedExtension & operator[](PINDEX i) const;
153     PObject * Clone() const;
154 };
155 
156 
157 //
158 // CIRequestArg
159 //
160 
161 class H45011_CIRequestArg : public PASN_Sequence
162 {
163 #ifndef PASN_LEANANDMEAN
164     PCLASSINFO(H45011_CIRequestArg, PASN_Sequence);
165 #endif
166   public:
167     H45011_CIRequestArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
168 
169     enum OptionalFields {
170       e_argumentExtension
171     };
172 
173     H45011_CICapabilityLevel m_ciCapabilityLevel;
174     H45011_ArrayOf_MixedExtension m_argumentExtension;
175 
176     PINDEX GetDataLength() const;
177     PBoolean Decode(PASN_Stream & strm);
178     void Encode(PASN_Stream & strm) const;
179 #ifndef PASN_NOPRINTON
180     void PrintOn(ostream & strm) const;
181 #endif
182     Comparison Compare(const PObject & obj) const;
183     PObject * Clone() const;
184 };
185 
186 
187 //
188 // CIRequestRes
189 //
190 
191 class H45011_CIRequestRes : public PASN_Sequence
192 {
193 #ifndef PASN_LEANANDMEAN
194     PCLASSINFO(H45011_CIRequestRes, PASN_Sequence);
195 #endif
196   public:
197     H45011_CIRequestRes(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
198 
199     enum OptionalFields {
200       e_resultExtension
201     };
202 
203     H45011_CIStatusInformation m_ciStatusInformation;
204     H45011_ArrayOf_MixedExtension m_resultExtension;
205 
206     PINDEX GetDataLength() const;
207     PBoolean Decode(PASN_Stream & strm);
208     void Encode(PASN_Stream & strm) const;
209 #ifndef PASN_NOPRINTON
210     void PrintOn(ostream & strm) const;
211 #endif
212     Comparison Compare(const PObject & obj) const;
213     PObject * Clone() const;
214 };
215 
216 
217 //
218 // CIGetCIPLOptArg
219 //
220 
221 class H45011_CIGetCIPLOptArg : public PASN_Sequence
222 {
223 #ifndef PASN_LEANANDMEAN
224     PCLASSINFO(H45011_CIGetCIPLOptArg, PASN_Sequence);
225 #endif
226   public:
227     H45011_CIGetCIPLOptArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
228 
229     enum OptionalFields {
230       e_argumentExtension
231     };
232 
233     H45011_ArrayOf_MixedExtension m_argumentExtension;
234 
235     PINDEX GetDataLength() const;
236     PBoolean Decode(PASN_Stream & strm);
237     void Encode(PASN_Stream & strm) const;
238 #ifndef PASN_NOPRINTON
239     void PrintOn(ostream & strm) const;
240 #endif
241     Comparison Compare(const PObject & obj) const;
242     PObject * Clone() const;
243 };
244 
245 
246 //
247 // CIGetCIPLRes
248 //
249 
250 class H45011_CIGetCIPLRes : public PASN_Sequence
251 {
252 #ifndef PASN_LEANANDMEAN
253     PCLASSINFO(H45011_CIGetCIPLRes, PASN_Sequence);
254 #endif
255   public:
256     H45011_CIGetCIPLRes(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
257 
258     enum OptionalFields {
259       e_silentMonitoringPermitted,
260       e_resultExtension
261     };
262 
263     H45011_CIProtectionLevel m_ciProtectionLevel;
264     PASN_Null m_silentMonitoringPermitted;
265     H45011_ArrayOf_MixedExtension m_resultExtension;
266 
267     PINDEX GetDataLength() const;
268     PBoolean Decode(PASN_Stream & strm);
269     void Encode(PASN_Stream & strm) const;
270 #ifndef PASN_NOPRINTON
271     void PrintOn(ostream & strm) const;
272 #endif
273     Comparison Compare(const PObject & obj) const;
274     PObject * Clone() const;
275 };
276 
277 
278 //
279 // CIIsOptArg
280 //
281 
282 class H45011_CIIsOptArg : public PASN_Sequence
283 {
284 #ifndef PASN_LEANANDMEAN
285     PCLASSINFO(H45011_CIIsOptArg, PASN_Sequence);
286 #endif
287   public:
288     H45011_CIIsOptArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
289 
290     enum OptionalFields {
291       e_argumentExtension
292     };
293 
294     H45011_ArrayOf_MixedExtension m_argumentExtension;
295 
296     PINDEX GetDataLength() const;
297     PBoolean Decode(PASN_Stream & strm);
298     void Encode(PASN_Stream & strm) const;
299 #ifndef PASN_NOPRINTON
300     void PrintOn(ostream & strm) const;
301 #endif
302     Comparison Compare(const PObject & obj) const;
303     PObject * Clone() const;
304 };
305 
306 
307 //
308 // CIIsOptRes
309 //
310 
311 class H45011_CIIsOptRes : public PASN_Sequence
312 {
313 #ifndef PASN_LEANANDMEAN
314     PCLASSINFO(H45011_CIIsOptRes, PASN_Sequence);
315 #endif
316   public:
317     H45011_CIIsOptRes(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
318 
319     enum OptionalFields {
320       e_resultExtension
321     };
322 
323     H45011_ArrayOf_MixedExtension m_resultExtension;
324 
325     PINDEX GetDataLength() const;
326     PBoolean Decode(PASN_Stream & strm);
327     void Encode(PASN_Stream & strm) const;
328 #ifndef PASN_NOPRINTON
329     void PrintOn(ostream & strm) const;
330 #endif
331     Comparison Compare(const PObject & obj) const;
332     PObject * Clone() const;
333 };
334 
335 
336 //
337 // CIFrcRelArg
338 //
339 
340 class H45011_CIFrcRelArg : public PASN_Sequence
341 {
342 #ifndef PASN_LEANANDMEAN
343     PCLASSINFO(H45011_CIFrcRelArg, PASN_Sequence);
344 #endif
345   public:
346     H45011_CIFrcRelArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
347 
348     enum OptionalFields {
349       e_argumentExtension
350     };
351 
352     H45011_CICapabilityLevel m_ciCapabilityLevel;
353     H45011_ArrayOf_MixedExtension m_argumentExtension;
354 
355     PINDEX GetDataLength() const;
356     PBoolean Decode(PASN_Stream & strm);
357     void Encode(PASN_Stream & strm) const;
358 #ifndef PASN_NOPRINTON
359     void PrintOn(ostream & strm) const;
360 #endif
361     Comparison Compare(const PObject & obj) const;
362     PObject * Clone() const;
363 };
364 
365 
366 //
367 // CIFrcRelOptRes
368 //
369 
370 class H45011_CIFrcRelOptRes : public PASN_Sequence
371 {
372 #ifndef PASN_LEANANDMEAN
373     PCLASSINFO(H45011_CIFrcRelOptRes, PASN_Sequence);
374 #endif
375   public:
376     H45011_CIFrcRelOptRes(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
377 
378     enum OptionalFields {
379       e_resultExtension
380     };
381 
382     H45011_ArrayOf_MixedExtension m_resultExtension;
383 
384     PINDEX GetDataLength() const;
385     PBoolean Decode(PASN_Stream & strm);
386     void Encode(PASN_Stream & strm) const;
387 #ifndef PASN_NOPRINTON
388     void PrintOn(ostream & strm) const;
389 #endif
390     Comparison Compare(const PObject & obj) const;
391     PObject * Clone() const;
392 };
393 
394 
395 //
396 // CIWobOptArg
397 //
398 
399 class H45011_CIWobOptArg : public PASN_Sequence
400 {
401 #ifndef PASN_LEANANDMEAN
402     PCLASSINFO(H45011_CIWobOptArg, PASN_Sequence);
403 #endif
404   public:
405     H45011_CIWobOptArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
406 
407     enum OptionalFields {
408       e_argumentExtension
409     };
410 
411     H45011_ArrayOf_MixedExtension m_argumentExtension;
412 
413     PINDEX GetDataLength() const;
414     PBoolean Decode(PASN_Stream & strm);
415     void Encode(PASN_Stream & strm) const;
416 #ifndef PASN_NOPRINTON
417     void PrintOn(ostream & strm) const;
418 #endif
419     Comparison Compare(const PObject & obj) const;
420     PObject * Clone() const;
421 };
422 
423 
424 //
425 // CIWobOptRes
426 //
427 
428 class H45011_CIWobOptRes : public PASN_Sequence
429 {
430 #ifndef PASN_LEANANDMEAN
431     PCLASSINFO(H45011_CIWobOptRes, PASN_Sequence);
432 #endif
433   public:
434     H45011_CIWobOptRes(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
435 
436     enum OptionalFields {
437       e_resultExtension
438     };
439 
440     H45011_ArrayOf_MixedExtension m_resultExtension;
441 
442     PINDEX GetDataLength() const;
443     PBoolean Decode(PASN_Stream & strm);
444     void Encode(PASN_Stream & strm) const;
445 #ifndef PASN_NOPRINTON
446     void PrintOn(ostream & strm) const;
447 #endif
448     Comparison Compare(const PObject & obj) const;
449     PObject * Clone() const;
450 };
451 
452 
453 //
454 // CISilentArg
455 //
456 
457 class H45011_CISilentArg : public PASN_Sequence
458 {
459 #ifndef PASN_LEANANDMEAN
460     PCLASSINFO(H45011_CISilentArg, PASN_Sequence);
461 #endif
462   public:
463     H45011_CISilentArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
464 
465     enum OptionalFields {
466       e_specificCall,
467       e_argumentExtension
468     };
469 
470     H45011_CICapabilityLevel m_ciCapabilityLevel;
471     H225_CallIdentifier m_specificCall;
472     H45011_ArrayOf_MixedExtension m_argumentExtension;
473 
474     PINDEX GetDataLength() const;
475     PBoolean Decode(PASN_Stream & strm);
476     void Encode(PASN_Stream & strm) const;
477 #ifndef PASN_NOPRINTON
478     void PrintOn(ostream & strm) const;
479 #endif
480     Comparison Compare(const PObject & obj) const;
481     PObject * Clone() const;
482 };
483 
484 
485 //
486 // CISilentOptRes
487 //
488 
489 class H45011_CISilentOptRes : public PASN_Sequence
490 {
491 #ifndef PASN_LEANANDMEAN
492     PCLASSINFO(H45011_CISilentOptRes, PASN_Sequence);
493 #endif
494   public:
495     H45011_CISilentOptRes(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
496 
497     enum OptionalFields {
498       e_resultExtension
499     };
500 
501     H45011_ArrayOf_MixedExtension m_resultExtension;
502 
503     PINDEX GetDataLength() const;
504     PBoolean Decode(PASN_Stream & strm);
505     void Encode(PASN_Stream & strm) const;
506 #ifndef PASN_NOPRINTON
507     void PrintOn(ostream & strm) const;
508 #endif
509     Comparison Compare(const PObject & obj) const;
510     PObject * Clone() const;
511 };
512 
513 
514 //
515 // CINotificationArg
516 //
517 
518 class H45011_CINotificationArg : public PASN_Sequence
519 {
520 #ifndef PASN_LEANANDMEAN
521     PCLASSINFO(H45011_CINotificationArg, PASN_Sequence);
522 #endif
523   public:
524     H45011_CINotificationArg(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
525 
526     enum OptionalFields {
527       e_argumentExtension
528     };
529 
530     H45011_CIStatusInformation m_ciStatusInformation;
531     H45011_ArrayOf_MixedExtension m_argumentExtension;
532 
533     PINDEX GetDataLength() const;
534     PBoolean Decode(PASN_Stream & strm);
535     void Encode(PASN_Stream & strm) const;
536 #ifndef PASN_NOPRINTON
537     void PrintOn(ostream & strm) const;
538 #endif
539     Comparison Compare(const PObject & obj) const;
540     PObject * Clone() const;
541 };
542 
543 
544 #endif // __H45011_H
545 
546 #endif // if ! H323_DISABLE_H45011
547 
548 
549 // End of h45011.h
550