OPAL Version 3.10.4

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- File List
- Globals

h460pres.h
Go to the documentation of this file.
1 //
2 // H460pres.h
3 //
4 // Code automatically generated by asnparse.
5 //
6
7 #ifndef OPAL_H460_H460PRES_H
8 #define OPAL_H460_H460PRES_H
9
10 #ifdef P_USE_PRAGMA
11 #pragma interface
12 #endif
13
14 #include <opal/buildopts.h>
15
16 #if OPAL_H460
17
18 #include <ptclib/asner.h>
19
20 #include <asn/h225.h>
21 #include <asn/h235.h>
22
23
24 //
25 // PresenceMessage
26 //
27
28 class H460P_PresenceStatus;
29 class H460P_PresenceInstruct;
30 class H460P_PresenceAuthorize;
31 class H460P_PresenceNotify;
32 class H460P_PresenceRequest;
33 class H460P_PresenceResponse;
34 class H460P_PresenceAlive;
35 class H460P_PresenceRemove;
36 class H460P_PresenceAlert;
37
38 class H460P_PresenceMessage : public PASN_Choice
39 {
40 #ifndef PASN_LEANANDMEAN
41 PCLASSINFO(H460P_PresenceMessage, PASN_Choice);
42 #endif
43 public:
44 H460P_PresenceMessage(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
45
46 enum Choices {
47 e_presenceStatus,
48 e_presenceInstruct,
49 e_presenceAuthorize,
50 e_presenceNotify,
51 e_presenceRequest,
52 e_presenceResponse,
53 e_presenceAlive,
54 e_presenceRemove,
55 e_presenceAlert
56 };
57
58 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
59 operator H460P_PresenceStatus &() const;
60 #else
61 operator H460P_PresenceStatus &();
62 operator const H460P_PresenceStatus &() const;
63 #endif
64 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
65 operator H460P_PresenceInstruct &() const;
66 #else
67 operator H460P_PresenceInstruct &();
68 operator const H460P_PresenceInstruct &() const;
69 #endif
70 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
71 operator H460P_PresenceAuthorize &() const;
72 #else
73 operator H460P_PresenceAuthorize &();
74 operator const H460P_PresenceAuthorize &() const;
75 #endif
76 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
77 operator H460P_PresenceNotify &() const;
78 #else
79 operator H460P_PresenceNotify &();
80 operator const H460P_PresenceNotify &() const;
81 #endif
82 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
83 operator H460P_PresenceRequest &() const;
84 #else
85 operator H460P_PresenceRequest &();
86 operator const H460P_PresenceRequest &() const;
87 #endif
88 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
89 operator H460P_PresenceResponse &() const;
90 #else
91 operator H460P_PresenceResponse &();
92 operator const H460P_PresenceResponse &() const;
93 #endif
94 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
95 operator H460P_PresenceAlive &() const;
96 #else
97 operator H460P_PresenceAlive &();
98 operator const H460P_PresenceAlive &() const;
99 #endif
100 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
101 operator H460P_PresenceRemove &() const;
102 #else
103 operator H460P_PresenceRemove &();
104 operator const H460P_PresenceRemove &() const;
105 #endif
106 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
107 operator H460P_PresenceAlert &() const;
108 #else
109 operator H460P_PresenceAlert &();
110 operator const H460P_PresenceAlert &() const;
111 #endif
112
113 PBoolean CreateObject();
114 PObject * Clone() const;
115 };
116
117
118 //
119 // PresenceInstruction
120 //
121
122 class H225_AliasAddress;
123
124 class H460P_PresenceInstruction : public PASN_Choice
125 {
126 #ifndef PASN_LEANANDMEAN
127 PCLASSINFO(H460P_PresenceInstruction, PASN_Choice);
128 #endif
129 public:
130 H460P_PresenceInstruction(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
131
132 enum Choices {
133 e_subscribe,
134 e_unsubscribe,
135 e_block,
136 e_unblock
137 };
138
139 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
140 operator H225_AliasAddress &() const;
141 #else
142 operator H225_AliasAddress &();
143 operator const H225_AliasAddress &() const;
144 #endif
145
146 PBoolean CreateObject();
147 PObject * Clone() const;
148 };
149
150
151 //
152 // PresenceIdentifier
153 //
154
155 class H460P_PresenceIdentifier : public PASN_Sequence
156 {
157 #ifndef PASN_LEANANDMEAN
158 PCLASSINFO(H460P_PresenceIdentifier, PASN_Sequence);
159 #endif
160 public:
161 H460P_PresenceIdentifier(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
162
163 PASN_OctetString m_guid;
164
165 PINDEX GetDataLength() const;
166 PBoolean Decode(PASN_Stream & strm);
167 void Encode(PASN_Stream & strm) const;
168 #ifndef PASN_NOPRINTON
169 void PrintOn(ostream & strm) const;
170 #endif
171 Comparison Compare(const PObject & obj) const;
172 PObject * Clone() const;
173 };
174
175
176 //
177 // PresenceState
178 //
179
180 class H460P_PresenceState : public PASN_Choice
181 {
182 #ifndef PASN_LEANANDMEAN
183 PCLASSINFO(H460P_PresenceState, PASN_Choice);
184 #endif
185 public:
186 H460P_PresenceState(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
187
188 enum Choices {
189 e_hidden,
190 e_available,
191 e_online,
192 e_offline,
193 e_onCall,
194 e_voiceMail,
195 e_notAvailable,
196 e_generic
197 };
198
199 PBoolean CreateObject();
200 PObject * Clone() const;
201 };
202
203
204 //
205 // ArrayOf_PresenceNotification
206 //
207
208 class H460P_PresenceNotification;
209
210 class H460P_ArrayOf_PresenceNotification : public PASN_Array
211 {
212 #ifndef PASN_LEANANDMEAN
213 PCLASSINFO(H460P_ArrayOf_PresenceNotification, PASN_Array);
214 #endif
215 public:
216 H460P_ArrayOf_PresenceNotification(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
217
218 PASN_Object * CreateObject() const;
219 H460P_PresenceNotification & operator[](PINDEX i) const;
220 PObject * Clone() const;
221 };
222
223
224 //
225 // ArrayOf_PresenceInstruction
226 //
227
228 class H460P_PresenceInstruction;
229
230 class H460P_ArrayOf_PresenceInstruction : public PASN_Array
231 {
232 #ifndef PASN_LEANANDMEAN
233 PCLASSINFO(H460P_ArrayOf_PresenceInstruction, PASN_Array);
234 #endif
235 public:
236 H460P_ArrayOf_PresenceInstruction(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
237
238 PASN_Object * CreateObject() const;
239 H460P_PresenceInstruction & operator[](PINDEX i) const;
240 PObject * Clone() const;
241 };
242
243
244 //
245 // ArrayOf_PresenceSubscription
246 //
247
248 class H460P_PresenceSubscription;
249
250 class H460P_ArrayOf_PresenceSubscription : public PASN_Array
251 {
252 #ifndef PASN_LEANANDMEAN
253 PCLASSINFO(H460P_ArrayOf_PresenceSubscription, PASN_Array);
254 #endif
255 public:
256 H460P_ArrayOf_PresenceSubscription(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
257
258 PASN_Object * CreateObject() const;
259 H460P_PresenceSubscription & operator[](PINDEX i) const;
260 PObject * Clone() const;
261 };
262
263
264 //
265 // ArrayOf_ClearToken
266 //
267
268 class H235_ClearToken;
269
270 class H460P_ArrayOf_ClearToken : public PASN_Array
271 {
272 #ifndef PASN_LEANANDMEAN
273 PCLASSINFO(H460P_ArrayOf_ClearToken, PASN_Array);
274 #endif
275 public:
276 H460P_ArrayOf_ClearToken(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
277
278 PASN_Object * CreateObject() const;
279 H235_ClearToken & operator[](PINDEX i) const;
280 PObject * Clone() const;
281 };
282
283
284 //
285 // ArrayOf_CryptoH323Token
286 //
287
288 class H225_CryptoH323Token;
289
290 class H460P_ArrayOf_CryptoH323Token : public PASN_Array
291 {
292 #ifndef PASN_LEANANDMEAN
293 PCLASSINFO(H460P_ArrayOf_CryptoH323Token, PASN_Array);
294 #endif
295 public:
296 H460P_ArrayOf_CryptoH323Token(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
297
298 PASN_Object * CreateObject() const;
299 H225_CryptoH323Token & operator[](PINDEX i) const;
300 PObject * Clone() const;
301 };
302
303
304 //
305 // ArrayOf_PresenceIdentifier
306 //
307
308 class H460P_PresenceIdentifier;
309
310 class H460P_ArrayOf_PresenceIdentifier : public PASN_Array
311 {
312 #ifndef PASN_LEANANDMEAN
313 PCLASSINFO(H460P_ArrayOf_PresenceIdentifier, PASN_Array);
314 #endif
315 public:
316 H460P_ArrayOf_PresenceIdentifier(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
317
318 PASN_Object * CreateObject() const;
319 H460P_PresenceIdentifier & operator[](PINDEX i) const;
320 PObject * Clone() const;
321 };
322
323
324 //
325 // ArrayOf_AliasAddress
326 //
327
328 class H225_AliasAddress;
329
330 class H460P_ArrayOf_AliasAddress : public PASN_Array
331 {
332 #ifndef PASN_LEANANDMEAN
333 PCLASSINFO(H460P_ArrayOf_AliasAddress, PASN_Array);
334 #endif
335 public:
336 H460P_ArrayOf_AliasAddress(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
337
338 PASN_Object * CreateObject() const;
339 H225_AliasAddress & operator[](PINDEX i) const;
340 PObject * Clone() const;
341 };
342
343
344 //
345 // ArrayOf_GenericData
346 //
347
348 class H225_GenericData;
349
350 class H460P_ArrayOf_GenericData : public PASN_Array
351 {
352 #ifndef PASN_LEANANDMEAN
353 PCLASSINFO(H460P_ArrayOf_GenericData, PASN_Array);
354 #endif
355 public:
356 H460P_ArrayOf_GenericData(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
357
358 PASN_Object * CreateObject() const;
359 H225_GenericData & operator[](PINDEX i) const;
360 PObject * Clone() const;
361 };
362
363
364 //
365 // PresenceStatus
366 //
367
368 class H460P_PresenceStatus : public PASN_Sequence
369 {
370 #ifndef PASN_LEANANDMEAN
371 PCLASSINFO(H460P_PresenceStatus, PASN_Sequence);
372 #endif
373 public:
374 H460P_PresenceStatus(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
375
376 enum OptionalFields {
377 e_instruction
378 };
379
380 H460P_ArrayOf_PresenceNotification m_notification;
381 H460P_ArrayOf_PresenceInstruction m_instruction;
382
383 PINDEX GetDataLength() const;
384 PBoolean Decode(PASN_Stream & strm);
385 void Encode(PASN_Stream & strm) const;
386 #ifndef PASN_NOPRINTON
387 void PrintOn(ostream & strm) const;
388 #endif
389 Comparison Compare(const PObject & obj) const;
390 PObject * Clone() const;
391 };
392
393
394 //
395 // PresenceInstruct
396 //
397
398 class H460P_PresenceInstruct : public PASN_Sequence
399 {
400 #ifndef PASN_LEANANDMEAN
401 PCLASSINFO(H460P_PresenceInstruct, PASN_Sequence);
402 #endif
403 public:
404 H460P_PresenceInstruct(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
405
406 H460P_ArrayOf_PresenceInstruction m_instruction;
407
408 PINDEX GetDataLength() const;
409 PBoolean Decode(PASN_Stream & strm);
410 void Encode(PASN_Stream & strm) const;
411 #ifndef PASN_NOPRINTON
412 void PrintOn(ostream & strm) const;
413 #endif
414 Comparison Compare(const PObject & obj) const;
415 PObject * Clone() const;
416 };
417
418
419 //
420 // PresenceAuthorize
421 //
422
423 class H460P_PresenceAuthorize : public PASN_Sequence
424 {
425 #ifndef PASN_LEANANDMEAN
426 PCLASSINFO(H460P_PresenceAuthorize, PASN_Sequence);
427 #endif
428 public:
429 H460P_PresenceAuthorize(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
430
431 H460P_ArrayOf_PresenceSubscription m_subscription;
432
433 PINDEX GetDataLength() const;
434 PBoolean Decode(PASN_Stream & strm);
435 void Encode(PASN_Stream & strm) const;
436 #ifndef PASN_NOPRINTON
437 void PrintOn(ostream & strm) const;
438 #endif
439 Comparison Compare(const PObject & obj) const;
440 PObject * Clone() const;
441 };
442
443
444 //
445 // PresenceNotify
446 //
447
448 class H460P_PresenceNotify : public PASN_Sequence
449 {
450 #ifndef PASN_LEANANDMEAN
451 PCLASSINFO(H460P_PresenceNotify, PASN_Sequence);
452 #endif
453 public:
454 H460P_PresenceNotify(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
455
456 H460P_ArrayOf_PresenceNotification m_notification;
457
458 PINDEX GetDataLength() const;
459 PBoolean Decode(PASN_Stream & strm);
460 void Encode(PASN_Stream & strm) const;
461 #ifndef PASN_NOPRINTON
462 void PrintOn(ostream & strm) const;
463 #endif
464 Comparison Compare(const PObject & obj) const;
465 PObject * Clone() const;
466 };
467
468
469 //
470 // PresenceRequest
471 //
472
473 class H460P_PresenceRequest : public PASN_Sequence
474 {
475 #ifndef PASN_LEANANDMEAN
476 PCLASSINFO(H460P_PresenceRequest, PASN_Sequence);
477 #endif
478 public:
479 H460P_PresenceRequest(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
480
481 enum OptionalFields {
482 e_tokens,
483 e_cryptoTokens
484 };
485
486 H460P_ArrayOf_PresenceSubscription m_subscription;
487 H460P_ArrayOf_ClearToken m_tokens;
488 H460P_ArrayOf_CryptoH323Token m_cryptoTokens;
489
490 PINDEX GetDataLength() const;
491 PBoolean Decode(PASN_Stream & strm);
492 void Encode(PASN_Stream & strm) const;
493 #ifndef PASN_NOPRINTON
494 void PrintOn(ostream & strm) const;
495 #endif
496 Comparison Compare(const PObject & obj) const;
497 PObject * Clone() const;
498 };
499
500
501 //
502 // PresenceResponse
503 //
504
505 class H460P_PresenceResponse : public PASN_Sequence
506 {
507 #ifndef PASN_LEANANDMEAN
508 PCLASSINFO(H460P_PresenceResponse, PASN_Sequence);
509 #endif
510 public:
511 H460P_PresenceResponse(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
512
513 enum OptionalFields {
514 e_tokens,
515 e_cryptoTokens
516 };
517
518 H460P_ArrayOf_PresenceSubscription m_subscription;
519 H460P_ArrayOf_ClearToken m_tokens;
520 H460P_ArrayOf_CryptoH323Token m_cryptoTokens;
521
522 PINDEX GetDataLength() const;
523 PBoolean Decode(PASN_Stream & strm);
524 void Encode(PASN_Stream & strm) const;
525 #ifndef PASN_NOPRINTON
526 void PrintOn(ostream & strm) const;
527 #endif
528 Comparison Compare(const PObject & obj) const;
529 PObject * Clone() const;
530 };
531
532
533 //
534 // PresenceAlive
535 //
536
537 class H460P_PresenceAlive : public PASN_Sequence
538 {
539 #ifndef PASN_LEANANDMEAN
540 PCLASSINFO(H460P_PresenceAlive, PASN_Sequence);
541 #endif
542 public:
543 H460P_PresenceAlive(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
544
545 H460P_ArrayOf_PresenceIdentifier m_identifier;
546
547 PINDEX GetDataLength() const;
548 PBoolean Decode(PASN_Stream & strm);
549 void Encode(PASN_Stream & strm) const;
550 #ifndef PASN_NOPRINTON
551 void PrintOn(ostream & strm) const;
552 #endif
553 Comparison Compare(const PObject & obj) const;
554 PObject * Clone() const;
555 };
556
557
558 //
559 // PresenceRemove
560 //
561
562 class H460P_PresenceRemove : public PASN_Sequence
563 {
564 #ifndef PASN_LEANANDMEAN
565 PCLASSINFO(H460P_PresenceRemove, PASN_Sequence);
566 #endif
567 public:
568 H460P_PresenceRemove(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
569
570 H460P_ArrayOf_PresenceIdentifier m_identifier;
571
572 PINDEX GetDataLength() const;
573 PBoolean Decode(PASN_Stream & strm);
574 void Encode(PASN_Stream & strm) const;
575 #ifndef PASN_NOPRINTON
576 void PrintOn(ostream & strm) const;
577 #endif
578 Comparison Compare(const PObject & obj) const;
579 PObject * Clone() const;
580 };
581
582
583 //
584 // PresenceAlert
585 //
586
587 class H460P_PresenceAlert : public PASN_Sequence
588 {
589 #ifndef PASN_LEANANDMEAN
590 PCLASSINFO(H460P_PresenceAlert, PASN_Sequence);
591 #endif
592 public:
593 H460P_PresenceAlert(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
594
595 H460P_ArrayOf_PresenceNotification m_notification;
596
597 PINDEX GetDataLength() const;
598 PBoolean Decode(PASN_Stream & strm);
599 void Encode(PASN_Stream & strm) const;
600 #ifndef PASN_NOPRINTON
601 void PrintOn(ostream & strm) const;
602 #endif
603 Comparison Compare(const PObject & obj) const;
604 PObject * Clone() const;
605 };
606
607
608 //
609 // PresenceSubscription
610 //
611
612 class H460P_PresenceSubscription : public PASN_Sequence
613 {
614 #ifndef PASN_LEANANDMEAN
615 PCLASSINFO(H460P_PresenceSubscription, PASN_Sequence);
616 #endif
617 public:
618 H460P_PresenceSubscription(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
619
620 enum OptionalFields {
621 e_approved,
622 e_rasAddress,
623 e_timeToLive,
624 e_identifier,
625 e_genericData
626 };
627
628 H225_AliasAddress m_subscribe;
629 H460P_ArrayOf_AliasAddress m_aliases;
630 PASN_Boolean m_approved;
631 H225_TransportAddress m_rasAddress;
632 H225_TimeToLive m_timeToLive;
633 H460P_PresenceIdentifier m_identifier;
634 H460P_ArrayOf_GenericData m_genericData;
635
636 PINDEX GetDataLength() const;
637 PBoolean Decode(PASN_Stream & strm);
638 void Encode(PASN_Stream & strm) const;
639 #ifndef PASN_NOPRINTON
640 void PrintOn(ostream & strm) const;
641 #endif
642 Comparison Compare(const PObject & obj) const;
643 PObject * Clone() const;
644 };
645
646
647 //
648 // Presentity
649 //
650
651 class H460P_Presentity : public PASN_Sequence
652 {
653 #ifndef PASN_LEANANDMEAN
654 PCLASSINFO(H460P_Presentity, PASN_Sequence);
655 #endif
656 public:
657 H460P_Presentity(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
658
659 enum OptionalFields {
660 e_display,
661 e_geolocation,
662 e_genericData
663 };
664
665 H460P_PresenceState m_state;
666 PASN_BMPString m_display;
667 PASN_OctetString m_geolocation;
668 H460P_ArrayOf_GenericData m_genericData;
669
670 PINDEX GetDataLength() const;
671 PBoolean Decode(PASN_Stream & strm);
672 void Encode(PASN_Stream & strm) const;
673 #ifndef PASN_NOPRINTON
674 void PrintOn(ostream & strm) const;
675 #endif
676 Comparison Compare(const PObject & obj) const;
677 PObject * Clone() const;
678 };
679
680
681 //
682 // PresenceNotification
683 //
684
685 class H460P_PresenceNotification : public PASN_Sequence
686 {
687 #ifndef PASN_LEANANDMEAN
688 PCLASSINFO(H460P_PresenceNotification, PASN_Sequence);
689 #endif
690 public:
691 H460P_PresenceNotification(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
692
693 enum OptionalFields {
694 e_aliasAddress,
695 e_subscribers
696 };
697
698 H460P_Presentity m_presentity;
699 H225_AliasAddress m_aliasAddress;
700 H460P_ArrayOf_PresenceIdentifier m_subscribers;
701
702 PINDEX GetDataLength() const;
703 PBoolean Decode(PASN_Stream & strm);
704 void Encode(PASN_Stream & strm) const;
705 #ifndef PASN_NOPRINTON
706 void PrintOn(ostream & strm) const;
707 #endif
708 Comparison Compare(const PObject & obj) const;
709 PObject * Clone() const;
710 };
711
712
713 #endif // OPAL_H460
714
715 #endif // OPAL_H460_H460PRES_H
716
717
718 // End of H460pres.h