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