blob: 7f21fe137a3c44d9d60e257694154e044427ca3c [file] [log] [blame]
vlmc754e532005-08-16 16:56:59 +00001
2/*** <<< INCLUDES [Everything] >>> ***/
3
4#include <Choice1.h>
5#include <Choice2.h>
6#include <Set.h>
7#include <constr_SEQUENCE.h>
8
9/*** <<< TYPE-DECLS [Everything] >>> ***/
10
11typedef struct Everything {
12 Choice1_t ch1;
13 Choice2_t ch2;
14 Set_t set;
15
16 /* Context for parsing across buffer boundaries */
17 asn_struct_ctx_t _asn_ctx;
18} Everything_t;
19
20/*** <<< FUNC-DECLS [Everything] >>> ***/
21
22extern asn_TYPE_descriptor_t asn_DEF_Everything;
23
24/*** <<< STAT-DEFS [Everything] >>> ***/
25
26static asn_TYPE_member_t asn_MBR_Everything_1[] = {
27 { ATF_NOFLAGS, 0, offsetof(struct Everything, ch1),
28 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
29 .tag_mode = +1, /* EXPLICIT tag at current level */
30 .type = (void *)&asn_DEF_Choice1,
31 .memb_constraints = 0, /* Defer constraints checking to the member type */
32 .name = "ch1"
33 },
34 { ATF_NOFLAGS, 0, offsetof(struct Everything, ch2),
35 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
36 .tag_mode = +1, /* EXPLICIT tag at current level */
37 .type = (void *)&asn_DEF_Choice2,
38 .memb_constraints = 0, /* Defer constraints checking to the member type */
39 .name = "ch2"
40 },
41 { ATF_NOFLAGS, 0, offsetof(struct Everything, set),
42 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
43 .tag_mode = -1, /* IMPLICIT tag at current level */
44 .type = (void *)&asn_DEF_Set,
45 .memb_constraints = 0, /* Defer constraints checking to the member type */
46 .name = "set"
47 },
48};
49static ber_tlv_tag_t asn_DEF_Everything_1_tags[] = {
50 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
51};
52static asn_TYPE_tag2member_t asn_MAP_Everything_1_tag2el[] = {
53 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ch1 at 15 */
54 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ch2 at 16 */
55 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* set at 18 */
56};
57static asn_SEQUENCE_specifics_t asn_SPC_Everything_1_specs = {
58 sizeof(struct Everything),
59 offsetof(struct Everything, _asn_ctx),
60 asn_MAP_Everything_1_tag2el,
61 3, /* Count of tags in the map */
62 -1, /* Start extensions */
63 -1 /* Stop extensions */
64};
65asn_TYPE_descriptor_t asn_DEF_Everything = {
66 "Everything",
67 "Everything",
68 SEQUENCE_free,
69 SEQUENCE_print,
70 SEQUENCE_constraint,
71 SEQUENCE_decode_ber,
72 SEQUENCE_encode_der,
73 SEQUENCE_decode_xer,
74 SEQUENCE_encode_xer,
75 0, /* Use generic outmost tag fetcher */
76 asn_DEF_Everything_1_tags,
77 sizeof(asn_DEF_Everything_1_tags)
78 /sizeof(asn_DEF_Everything_1_tags[0]), /* 1 */
79 asn_DEF_Everything_1_tags, /* Same as above */
80 sizeof(asn_DEF_Everything_1_tags)
81 /sizeof(asn_DEF_Everything_1_tags[0]), /* 1 */
82 asn_MBR_Everything_1,
83 3, /* Elements count */
84 &asn_SPC_Everything_1_specs /* Additional specs */
85};
86
87
88/*** <<< INCLUDES [Choice1] >>> ***/
89
90#include <constr_CHOICE.h>
91
92/*** <<< DEPS [Choice1] >>> ***/
93
94typedef enum Choice1_PR {
95 Choice1_PR_NOTHING, /* No components present */
96 Choice1_PR_something,
97 /* Extensions may appear below */
98 Choice1_PR_some2,
99} Choice1_PR;
100
101/*** <<< FWD-DECLS [Choice1] >>> ***/
102
103struct Everything;
104
105/*** <<< TYPE-DECLS [Choice1] >>> ***/
106
107typedef struct Choice1 {
108 Choice1_PR present;
109 union Choice1_u {
110 struct Everything *something;
111 /*
112 * This type is extensible,
113 * possible extensions are below.
114 */
115 struct Everything *some2;
116 } choice;
117
118 /* Context for parsing across buffer boundaries */
119 asn_struct_ctx_t _asn_ctx;
120} Choice1_t;
121
122/*** <<< FUNC-DECLS [Choice1] >>> ***/
123
124extern asn_TYPE_descriptor_t asn_DEF_Choice1;
125
126/*** <<< POST-INCLUDE [Choice1] >>> ***/
127
128#include <Everything.h>
129
130/*** <<< STAT-DEFS [Choice1] >>> ***/
131
132static asn_TYPE_member_t asn_MBR_Choice1_1[] = {
133 { ATF_POINTER, 0, offsetof(struct Choice1, choice.something),
134 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
135 .tag_mode = -1, /* IMPLICIT tag at current level */
136 .type = (void *)&asn_DEF_Everything,
137 .memb_constraints = 0, /* Defer constraints checking to the member type */
138 .name = "something"
139 },
140 { ATF_POINTER, 0, offsetof(struct Choice1, choice.some2),
141 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
142 .tag_mode = -1, /* IMPLICIT tag at current level */
143 .type = (void *)&asn_DEF_Everything,
144 .memb_constraints = 0, /* Defer constraints checking to the member type */
145 .name = "some2"
146 },
147};
148static asn_TYPE_tag2member_t asn_MAP_Choice1_1_tag2el[] = {
149 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* something at 22 */
150 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* some2 at 25 */
151};
152static asn_CHOICE_specifics_t asn_SPC_Choice1_1_specs = {
153 sizeof(struct Choice1),
154 offsetof(struct Choice1, _asn_ctx),
155 offsetof(struct Choice1, present),
156 sizeof(((struct Choice1 *)0)->present),
157 asn_MAP_Choice1_1_tag2el,
158 2, /* Count of tags in the map */
159 1 /* Whether extensible */
160};
161asn_TYPE_descriptor_t asn_DEF_Choice1 = {
162 "Choice1",
163 "Choice1",
164 CHOICE_free,
165 CHOICE_print,
166 CHOICE_constraint,
167 CHOICE_decode_ber,
168 CHOICE_encode_der,
169 CHOICE_decode_xer,
170 CHOICE_encode_xer,
171 CHOICE_outmost_tag,
172 0, /* No effective tags (pointer) */
173 0, /* No effective tags (count) */
174 0, /* No tags (pointer) */
175 0, /* No tags (count) */
176 asn_MBR_Choice1_1,
177 2, /* Elements count */
178 &asn_SPC_Choice1_1_specs /* Additional specs */
179};
180
181
182/*** <<< INCLUDES [Choice2] >>> ***/
183
184#include <constr_CHOICE.h>
185
186/*** <<< DEPS [Choice2] >>> ***/
187
188typedef enum Choice2_PR {
189 Choice2_PR_NOTHING, /* No components present */
190 /* Extensions may appear below */
191 Choice2_PR_some3,
192} Choice2_PR;
193
194/*** <<< FWD-DECLS [Choice2] >>> ***/
195
196struct Everything;
197
198/*** <<< TYPE-DECLS [Choice2] >>> ***/
199
200typedef struct Choice2 {
201 Choice2_PR present;
202 union Choice2_u {
203 /*
204 * This type is extensible,
205 * possible extensions are below.
206 */
207 struct Everything *some3;
208 } choice;
209
210 /* Context for parsing across buffer boundaries */
211 asn_struct_ctx_t _asn_ctx;
212} Choice2_t;
213
214/*** <<< FUNC-DECLS [Choice2] >>> ***/
215
216extern asn_TYPE_descriptor_t asn_DEF_Choice2;
217
218/*** <<< POST-INCLUDE [Choice2] >>> ***/
219
220#include <Everything.h>
221
222/*** <<< STAT-DEFS [Choice2] >>> ***/
223
224static asn_TYPE_member_t asn_MBR_Choice2_1[] = {
225 { ATF_POINTER, 0, offsetof(struct Choice2, choice.some3),
226 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
227 .tag_mode = -1, /* IMPLICIT tag at current level */
228 .type = (void *)&asn_DEF_Everything,
229 .memb_constraints = 0, /* Defer constraints checking to the member type */
230 .name = "some3"
231 },
232};
233static asn_TYPE_tag2member_t asn_MAP_Choice2_1_tag2el[] = {
234 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* some3 at 30 */
235};
236static asn_CHOICE_specifics_t asn_SPC_Choice2_1_specs = {
237 sizeof(struct Choice2),
238 offsetof(struct Choice2, _asn_ctx),
239 offsetof(struct Choice2, present),
240 sizeof(((struct Choice2 *)0)->present),
241 asn_MAP_Choice2_1_tag2el,
242 1, /* Count of tags in the map */
243 1 /* Whether extensible */
244};
245asn_TYPE_descriptor_t asn_DEF_Choice2 = {
246 "Choice2",
247 "Choice2",
248 CHOICE_free,
249 CHOICE_print,
250 CHOICE_constraint,
251 CHOICE_decode_ber,
252 CHOICE_encode_der,
253 CHOICE_decode_xer,
254 CHOICE_encode_xer,
255 CHOICE_outmost_tag,
256 0, /* No effective tags (pointer) */
257 0, /* No effective tags (count) */
258 0, /* No tags (pointer) */
259 0, /* No tags (count) */
260 asn_MBR_Choice2_1,
261 1, /* Elements count */
262 &asn_SPC_Choice2_1_specs /* Additional specs */
263};
264
265
266/*** <<< INCLUDES [Set] >>> ***/
267
268#include <asn_SET_OF.h>
269#include <INTEGER.h>
270#include <Sequence.h>
271#include <constr_SEQUENCE.h>
272#include <constr_SET_OF.h>
273
274/*** <<< FWD-DECLS [Set] >>> ***/
275
276struct Set;
277
278/*** <<< TYPE-DECLS [Set] >>> ***/
279
280typedef struct Set {
281 A_SET_OF(struct Member {
282 INTEGER_t Int;
283 struct Set *set;
284 Sequence_t seq;
285 struct Set *set2 /* OPTIONAL */;
286 /*
287 * This type is extensible,
288 * possible extensions are below.
289 */
290 struct Set *set3;
291
292 /* Context for parsing across buffer boundaries */
293 asn_struct_ctx_t _asn_ctx;
294 } ) list;
295
296 /* Context for parsing across buffer boundaries */
297 asn_struct_ctx_t _asn_ctx;
298} Set_t;
299
300/*** <<< FUNC-DECLS [Set] >>> ***/
301
302extern asn_TYPE_descriptor_t asn_DEF_Set;
303
304/*** <<< POST-INCLUDE [Set] >>> ***/
305
306#include <Set.h>
307
308/*** <<< STAT-DEFS [Set] >>> ***/
309
310static asn_TYPE_member_t asn_MBR_Member_2[] = {
311 { ATF_NOFLAGS, 0, offsetof(struct Member, Int),
312 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
313 .tag_mode = -1, /* IMPLICIT tag at current level */
314 .type = (void *)&asn_DEF_INTEGER,
315 .memb_constraints = 0, /* Defer constraints checking to the member type */
316 .name = "int"
317 },
318 { ATF_POINTER, 0, offsetof(struct Member, set),
319 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
320 .tag_mode = -1, /* IMPLICIT tag at current level */
321 .type = (void *)&asn_DEF_Set,
322 .memb_constraints = 0, /* Defer constraints checking to the member type */
323 .name = "set"
324 },
325 { ATF_NOFLAGS, 0, offsetof(struct Member, seq),
326 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
327 .tag_mode = -1, /* IMPLICIT tag at current level */
328 .type = (void *)&asn_DEF_Sequence,
329 .memb_constraints = 0, /* Defer constraints checking to the member type */
330 .name = "seq"
331 },
332 { ATF_POINTER, 2, offsetof(struct Member, set2),
333 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
334 .tag_mode = -1, /* IMPLICIT tag at current level */
335 .type = (void *)&asn_DEF_Set,
336 .memb_constraints = 0, /* Defer constraints checking to the member type */
337 .name = "set2"
338 },
339 { ATF_POINTER, 0, offsetof(struct Member, set3),
340 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
341 .tag_mode = -1, /* IMPLICIT tag at current level */
342 .type = (void *)&asn_DEF_Set,
343 .memb_constraints = 0, /* Defer constraints checking to the member type */
344 .name = "set3"
345 },
346};
347static ber_tlv_tag_t asn_DEF_Member_2_tags[] = {
348 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
349};
350static asn_TYPE_tag2member_t asn_MAP_Member_2_tag2el[] = {
351 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* int at 33 */
352 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* set at 34 */
353 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* seq at 35 */
354 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* set2 at 36 */
355 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* set3 at 39 */
356};
357static asn_SEQUENCE_specifics_t asn_SPC_Member_2_specs = {
358 sizeof(struct Member),
359 offsetof(struct Member, _asn_ctx),
360 asn_MAP_Member_2_tag2el,
361 5, /* Count of tags in the map */
362 3, /* Start extensions */
363 6 /* Stop extensions */
364};
365static /* Use -fall-defs-global to expose */
366asn_TYPE_descriptor_t asn_DEF_Member_2 = {
367 "",
368 "",
369 SEQUENCE_free,
370 SEQUENCE_print,
371 SEQUENCE_constraint,
372 SEQUENCE_decode_ber,
373 SEQUENCE_encode_der,
374 SEQUENCE_decode_xer,
375 SEQUENCE_encode_xer,
376 0, /* Use generic outmost tag fetcher */
377 asn_DEF_Member_2_tags,
378 sizeof(asn_DEF_Member_2_tags)
379 /sizeof(asn_DEF_Member_2_tags[0]), /* 1 */
380 asn_DEF_Member_2_tags, /* Same as above */
381 sizeof(asn_DEF_Member_2_tags)
382 /sizeof(asn_DEF_Member_2_tags[0]), /* 1 */
383 asn_MBR_Member_2,
384 5, /* Elements count */
385 &asn_SPC_Member_2_specs /* Additional specs */
386};
387
388static asn_TYPE_member_t asn_MBR_Set_1[] = {
389 { ATF_POINTER, 0, 0,
390 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
391 .tag_mode = 0,
392 .type = (void *)&asn_DEF_Member_2,
393 .memb_constraints = 0, /* Defer constraints checking to the member type */
394 .name = ""
395 },
396};
397static ber_tlv_tag_t asn_DEF_Set_1_tags[] = {
398 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
399};
400static asn_SET_OF_specifics_t asn_SPC_Set_1_specs = {
401 sizeof(struct Set),
402 offsetof(struct Set, _asn_ctx),
403 0, /* XER encoding is XMLDelimitedItemList */
404};
405asn_TYPE_descriptor_t asn_DEF_Set = {
406 "Set",
407 "Set",
408 SET_OF_free,
409 SET_OF_print,
410 SET_OF_constraint,
411 SET_OF_decode_ber,
412 SET_OF_encode_der,
413 SET_OF_decode_xer,
414 SET_OF_encode_xer,
415 0, /* Use generic outmost tag fetcher */
416 asn_DEF_Set_1_tags,
417 sizeof(asn_DEF_Set_1_tags)
418 /sizeof(asn_DEF_Set_1_tags[0]), /* 1 */
419 asn_DEF_Set_1_tags, /* Same as above */
420 sizeof(asn_DEF_Set_1_tags)
421 /sizeof(asn_DEF_Set_1_tags[0]), /* 1 */
422 asn_MBR_Set_1,
423 1, /* Single element */
424 &asn_SPC_Set_1_specs /* Additional specs */
425};
426
427
428/*** <<< INCLUDES [Sequence] >>> ***/
429
430#include <INTEGER.h>
431#include <constr_SEQUENCE.h>
432
433/*** <<< FWD-DECLS [Sequence] >>> ***/
434
435struct Sequence;
436struct Set;
437
438/*** <<< TYPE-DECLS [Sequence] >>> ***/
439
440typedef struct Sequence {
441 INTEGER_t a;
442 struct Sequence *seq /* OPTIONAL */;
443 /*
444 * This type is extensible,
445 * possible extensions are below.
446 */
447 INTEGER_t *b;
448 struct Set *set /* OPTIONAL */;
449
450 /* Context for parsing across buffer boundaries */
451 asn_struct_ctx_t _asn_ctx;
452} Sequence_t;
453
454/*** <<< FUNC-DECLS [Sequence] >>> ***/
455
456extern asn_TYPE_descriptor_t asn_DEF_Sequence;
457
458/*** <<< POST-INCLUDE [Sequence] >>> ***/
459
460#include <Sequence.h>
461#include <Set.h>
462
463/*** <<< STAT-DEFS [Sequence] >>> ***/
464
465static asn_TYPE_member_t asn_MBR_Sequence_1[] = {
466 { ATF_NOFLAGS, 0, offsetof(struct Sequence, a),
467 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
468 .tag_mode = -1, /* IMPLICIT tag at current level */
469 .type = (void *)&asn_DEF_INTEGER,
470 .memb_constraints = 0, /* Defer constraints checking to the member type */
471 .name = "a"
472 },
473 { ATF_POINTER, 3, offsetof(struct Sequence, seq),
474 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
475 .tag_mode = -1, /* IMPLICIT tag at current level */
476 .type = (void *)&asn_DEF_Sequence,
477 .memb_constraints = 0, /* Defer constraints checking to the member type */
478 .name = "seq"
479 },
480 { ATF_POINTER, 0, offsetof(struct Sequence, b),
481 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
482 .tag_mode = -1, /* IMPLICIT tag at current level */
483 .type = (void *)&asn_DEF_INTEGER,
484 .memb_constraints = 0, /* Defer constraints checking to the member type */
485 .name = "b"
486 },
487 { ATF_POINTER, 1, offsetof(struct Sequence, set),
488 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
489 .tag_mode = -1, /* IMPLICIT tag at current level */
490 .type = (void *)&asn_DEF_Set,
491 .memb_constraints = 0, /* Defer constraints checking to the member type */
492 .name = "set"
493 },
494};
495static ber_tlv_tag_t asn_DEF_Sequence_1_tags[] = {
496 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
497};
498static asn_TYPE_tag2member_t asn_MAP_Sequence_1_tag2el[] = {
499 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a at 42 */
500 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* seq at 43 */
501 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* b at 45 */
502 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* set at 46 */
503};
504static asn_SEQUENCE_specifics_t asn_SPC_Sequence_1_specs = {
505 sizeof(struct Sequence),
506 offsetof(struct Sequence, _asn_ctx),
507 asn_MAP_Sequence_1_tag2el,
508 4, /* Count of tags in the map */
509 1, /* Start extensions */
510 5 /* Stop extensions */
511};
512asn_TYPE_descriptor_t asn_DEF_Sequence = {
513 "Sequence",
514 "Sequence",
515 SEQUENCE_free,
516 SEQUENCE_print,
517 SEQUENCE_constraint,
518 SEQUENCE_decode_ber,
519 SEQUENCE_encode_der,
520 SEQUENCE_decode_xer,
521 SEQUENCE_encode_xer,
522 0, /* Use generic outmost tag fetcher */
523 asn_DEF_Sequence_1_tags,
524 sizeof(asn_DEF_Sequence_1_tags)
525 /sizeof(asn_DEF_Sequence_1_tags[0]), /* 1 */
526 asn_DEF_Sequence_1_tags, /* Same as above */
527 sizeof(asn_DEF_Sequence_1_tags)
528 /sizeof(asn_DEF_Sequence_1_tags[0]), /* 1 */
529 asn_MBR_Sequence_1,
530 4, /* Elements count */
531 &asn_SPC_Sequence_1_specs /* Additional specs */
532};
533