blob: bd9f57d6aa6c5691dd800916fb80d27022d7abcc [file] [log] [blame]
Lev Walkincee931e2005-08-16 16:56:59 +00001
2/*** <<< INCLUDES [Everything] >>> ***/
3
Lev Walkin22b5ed42006-09-13 02:51:20 +00004#include "Set.h"
5#include "Alpha.h"
6#include "Beta.h"
7#include "Gamma.h"
8#include "OneTwo.h"
9#include "TwoThree.h"
10#include "ThreeOne.h"
Lev Walkincee931e2005-08-16 16:56:59 +000011#include <constr_SEQUENCE.h>
12
Lev Walkinb85a8132005-08-18 13:38:19 +000013/*** <<< FWD-DECLS [Everything] >>> ***/
14
15struct Choice1;
16struct Choice2;
17struct Choice3;
18
Lev Walkincee931e2005-08-16 16:56:59 +000019/*** <<< TYPE-DECLS [Everything] >>> ***/
20
21typedef struct Everything {
Lev Walkinb85a8132005-08-18 13:38:19 +000022 struct Choice1 *ch1;
23 struct Choice2 *ch2;
24 struct Choice3 *ch3;
Lev Walkincee931e2005-08-16 16:56:59 +000025 Set_t set;
Lev Walkinb85a8132005-08-18 13:38:19 +000026 Alpha_t a;
27 Beta_t b;
28 Gamma_t g;
29 OneTwo_t ot;
30 TwoThree_t tt;
31 ThreeOne_t to;
Lev Walkincee931e2005-08-16 16:56:59 +000032
33 /* Context for parsing across buffer boundaries */
34 asn_struct_ctx_t _asn_ctx;
35} Everything_t;
36
37/*** <<< FUNC-DECLS [Everything] >>> ***/
38
39extern asn_TYPE_descriptor_t asn_DEF_Everything;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080040extern asn_SEQUENCE_specifics_t asn_SPC_Everything_specs_1;
41extern asn_TYPE_member_t asn_MBR_Everything_1[10];
Lev Walkincee931e2005-08-16 16:56:59 +000042
Lev Walkinb85a8132005-08-18 13:38:19 +000043/*** <<< POST-INCLUDE [Everything] >>> ***/
44
Lev Walkin22b5ed42006-09-13 02:51:20 +000045#include "Choice1.h"
46#include "Choice2.h"
47#include "Choice3.h"
Lev Walkinb85a8132005-08-18 13:38:19 +000048
Lev Walkincee931e2005-08-16 16:56:59 +000049/*** <<< STAT-DEFS [Everything] >>> ***/
50
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080051asn_TYPE_member_t asn_MBR_Everything_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +000052 { ATF_POINTER, 0, offsetof(struct Everything, ch1),
Lev Walkincee931e2005-08-16 16:56:59 +000053 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
54 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000055 .type = &asn_DEF_Choice1,
Lev Walkin67a30122017-08-10 05:48:54 -070056 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -070057 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +000058 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000059 .name = "ch1"
60 },
Lev Walkinb85a8132005-08-18 13:38:19 +000061 { ATF_POINTER, 0, offsetof(struct Everything, ch2),
Lev Walkincee931e2005-08-16 16:56:59 +000062 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
63 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000064 .type = &asn_DEF_Choice2,
Lev Walkin67a30122017-08-10 05:48:54 -070065 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -070066 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +000067 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000068 .name = "ch2"
69 },
Lev Walkinb85a8132005-08-18 13:38:19 +000070 { ATF_POINTER, 0, offsetof(struct Everything, ch3),
Lev Walkincee931e2005-08-16 16:56:59 +000071 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
Lev Walkinb85a8132005-08-18 13:38:19 +000072 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000073 .type = &asn_DEF_Choice3,
Lev Walkin67a30122017-08-10 05:48:54 -070074 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -070075 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +000076 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +000077 .name = "ch3"
78 },
79 { ATF_NOFLAGS, 0, offsetof(struct Everything, set),
80 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
Lev Walkincee931e2005-08-16 16:56:59 +000081 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000082 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -070083 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -070084 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +000085 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000086 .name = "set"
87 },
Lev Walkinb85a8132005-08-18 13:38:19 +000088 { ATF_NOFLAGS, 0, offsetof(struct Everything, a),
89 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
90 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000091 .type = &asn_DEF_Alpha,
Lev Walkin67a30122017-08-10 05:48:54 -070092 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -070093 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +000094 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +000095 .name = "a"
96 },
97 { ATF_NOFLAGS, 0, offsetof(struct Everything, b),
98 .tag = (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
99 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000100 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -0700101 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700102 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000103 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000104 .name = "b"
105 },
106 { ATF_NOFLAGS, 0, offsetof(struct Everything, g),
107 .tag = (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
108 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000109 .type = &asn_DEF_Gamma,
Lev Walkin67a30122017-08-10 05:48:54 -0700110 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700111 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000112 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000113 .name = "g"
114 },
115 { ATF_NOFLAGS, 0, offsetof(struct Everything, ot),
116 .tag = (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
117 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000118 .type = &asn_DEF_OneTwo,
Lev Walkin67a30122017-08-10 05:48:54 -0700119 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700120 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000121 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000122 .name = "ot"
123 },
124 { ATF_NOFLAGS, 0, offsetof(struct Everything, tt),
125 .tag = (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
126 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000127 .type = &asn_DEF_TwoThree,
Lev Walkin67a30122017-08-10 05:48:54 -0700128 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700129 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000130 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000131 .name = "tt"
132 },
133 { ATF_NOFLAGS, 0, offsetof(struct Everything, to),
134 .tag = (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
135 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000136 .type = &asn_DEF_ThreeOne,
Lev Walkin67a30122017-08-10 05:48:54 -0700137 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700138 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000139 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000140 .name = "to"
141 },
Lev Walkincee931e2005-08-16 16:56:59 +0000142};
Lev Walkina7591b52014-10-12 18:37:35 -0700143static const ber_tlv_tag_t asn_DEF_Everything_tags_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000144 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
145};
Lev Walkina7591b52014-10-12 18:37:35 -0700146static const asn_TYPE_tag2member_t asn_MAP_Everything_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700147 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ch1 */
148 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ch2 */
149 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ch3 */
150 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* set */
151 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* a */
152 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* b */
153 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* g */
154 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* ot */
155 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* tt */
156 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* to */
Lev Walkincee931e2005-08-16 16:56:59 +0000157};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800158asn_SEQUENCE_specifics_t asn_SPC_Everything_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000159 sizeof(struct Everything),
160 offsetof(struct Everything, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700161 .tag2el = asn_MAP_Everything_tag2el_1,
162 .tag2el_count = 10, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000163 0, 0, 0, /* Optional elements (not needed) */
Lev Walkincee931e2005-08-16 16:56:59 +0000164 -1, /* Start extensions */
165 -1 /* Stop extensions */
166};
167asn_TYPE_descriptor_t asn_DEF_Everything = {
168 "Everything",
169 "Everything",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800170 &asn_OP_SEQUENCE,
Lev Walkin59b176e2005-11-26 11:25:14 +0000171 asn_DEF_Everything_tags_1,
172 sizeof(asn_DEF_Everything_tags_1)
173 /sizeof(asn_DEF_Everything_tags_1[0]), /* 1 */
174 asn_DEF_Everything_tags_1, /* Same as above */
175 sizeof(asn_DEF_Everything_tags_1)
176 /sizeof(asn_DEF_Everything_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -0700177 { 0, 0, SEQUENCE_constraint },
Lev Walkincee931e2005-08-16 16:56:59 +0000178 asn_MBR_Everything_1,
Lev Walkinb85a8132005-08-18 13:38:19 +0000179 10, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000180 &asn_SPC_Everything_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000181};
182
183
184/*** <<< INCLUDES [Choice1] >>> ***/
185
Lev Walkincee931e2005-08-16 16:56:59 +0000186#include <constr_CHOICE.h>
187
188/*** <<< DEPS [Choice1] >>> ***/
189
190typedef enum Choice1_PR {
191 Choice1_PR_NOTHING, /* No components present */
192 Choice1_PR_something,
193 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000194 Choice1_PR_some2
Lev Walkincee931e2005-08-16 16:56:59 +0000195} Choice1_PR;
196
Lev Walkinb85a8132005-08-18 13:38:19 +0000197/*** <<< FWD-DECLS [Choice1] >>> ***/
198
199struct Everything;
200
Lev Walkincee931e2005-08-16 16:56:59 +0000201/*** <<< TYPE-DECLS [Choice1] >>> ***/
202
203typedef struct Choice1 {
204 Choice1_PR present;
205 union Choice1_u {
Lev Walkinb85a8132005-08-18 13:38:19 +0000206 struct Everything *something;
Lev Walkincee931e2005-08-16 16:56:59 +0000207 /*
208 * This type is extensible,
209 * possible extensions are below.
210 */
Lev Walkinb85a8132005-08-18 13:38:19 +0000211 struct Everything *some2;
Lev Walkincee931e2005-08-16 16:56:59 +0000212 } choice;
213
214 /* Context for parsing across buffer boundaries */
215 asn_struct_ctx_t _asn_ctx;
216} Choice1_t;
217
218/*** <<< FUNC-DECLS [Choice1] >>> ***/
219
220extern asn_TYPE_descriptor_t asn_DEF_Choice1;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800221extern asn_CHOICE_specifics_t asn_SPC_Choice1_specs_1;
222extern asn_TYPE_member_t asn_MBR_Choice1_1[2];
Lev Walkincee931e2005-08-16 16:56:59 +0000223
Lev Walkinb85a8132005-08-18 13:38:19 +0000224/*** <<< POST-INCLUDE [Choice1] >>> ***/
225
Lev Walkin22b5ed42006-09-13 02:51:20 +0000226#include "Everything.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000227
Lev Walkincee931e2005-08-16 16:56:59 +0000228/*** <<< STAT-DEFS [Choice1] >>> ***/
229
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800230asn_TYPE_member_t asn_MBR_Choice1_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000231 { ATF_POINTER, 0, offsetof(struct Choice1, choice.something),
Lev Walkincee931e2005-08-16 16:56:59 +0000232 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
233 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000234 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700235 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700236 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000237 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000238 .name = "something"
239 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000240 { ATF_POINTER, 0, offsetof(struct Choice1, choice.some2),
Lev Walkincee931e2005-08-16 16:56:59 +0000241 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
242 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000243 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700244 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700245 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000246 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000247 .name = "some2"
248 },
249};
Lev Walkina7591b52014-10-12 18:37:35 -0700250static const asn_TYPE_tag2member_t asn_MAP_Choice1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700251 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* something */
252 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* some2 */
Lev Walkincee931e2005-08-16 16:56:59 +0000253};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800254asn_CHOICE_specifics_t asn_SPC_Choice1_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000255 sizeof(struct Choice1),
256 offsetof(struct Choice1, _asn_ctx),
257 offsetof(struct Choice1, present),
258 sizeof(((struct Choice1 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700259 .tag2el = asn_MAP_Choice1_tag2el_1,
260 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000261 .canonical_order = 0,
262 .ext_start = 1 /* Extensions start */
Lev Walkincee931e2005-08-16 16:56:59 +0000263};
264asn_TYPE_descriptor_t asn_DEF_Choice1 = {
265 "Choice1",
266 "Choice1",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800267 &asn_OP_CHOICE,
Lev Walkincee931e2005-08-16 16:56:59 +0000268 0, /* No effective tags (pointer) */
269 0, /* No effective tags (count) */
270 0, /* No tags (pointer) */
271 0, /* No tags (count) */
Lev Walkin0bfea562017-09-29 23:16:48 -0700272 { 0, 0, CHOICE_constraint },
Lev Walkincee931e2005-08-16 16:56:59 +0000273 asn_MBR_Choice1_1,
274 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000275 &asn_SPC_Choice1_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000276};
277
278
279/*** <<< INCLUDES [Choice2] >>> ***/
280
Lev Walkin22b5ed42006-09-13 02:51:20 +0000281#include "TypeRef.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000282#include <constr_CHOICE.h>
283
284/*** <<< DEPS [Choice2] >>> ***/
285
286typedef enum Choice2_PR {
287 Choice2_PR_NOTHING, /* No components present */
Lev Walkinb85a8132005-08-18 13:38:19 +0000288 Choice2_PR_typeref,
Lev Walkincee931e2005-08-16 16:56:59 +0000289 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000290 Choice2_PR_some3
Lev Walkincee931e2005-08-16 16:56:59 +0000291} Choice2_PR;
292
Lev Walkinb85a8132005-08-18 13:38:19 +0000293/*** <<< FWD-DECLS [Choice2] >>> ***/
294
295struct Everything;
296
Lev Walkincee931e2005-08-16 16:56:59 +0000297/*** <<< TYPE-DECLS [Choice2] >>> ***/
298
299typedef struct Choice2 {
300 Choice2_PR present;
301 union Choice2_u {
Lev Walkinb85a8132005-08-18 13:38:19 +0000302 TypeRef_t typeref;
Lev Walkincee931e2005-08-16 16:56:59 +0000303 /*
304 * This type is extensible,
305 * possible extensions are below.
306 */
Lev Walkinb85a8132005-08-18 13:38:19 +0000307 struct Everything *some3;
Lev Walkincee931e2005-08-16 16:56:59 +0000308 } choice;
309
310 /* Context for parsing across buffer boundaries */
311 asn_struct_ctx_t _asn_ctx;
312} Choice2_t;
313
314/*** <<< FUNC-DECLS [Choice2] >>> ***/
315
316extern asn_TYPE_descriptor_t asn_DEF_Choice2;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800317extern asn_CHOICE_specifics_t asn_SPC_Choice2_specs_1;
318extern asn_TYPE_member_t asn_MBR_Choice2_1[2];
Lev Walkincee931e2005-08-16 16:56:59 +0000319
Lev Walkinb85a8132005-08-18 13:38:19 +0000320/*** <<< POST-INCLUDE [Choice2] >>> ***/
321
Lev Walkin22b5ed42006-09-13 02:51:20 +0000322#include "Everything.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000323
Lev Walkincee931e2005-08-16 16:56:59 +0000324/*** <<< STAT-DEFS [Choice2] >>> ***/
325
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800326asn_TYPE_member_t asn_MBR_Choice2_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000327 { ATF_NOFLAGS, 0, offsetof(struct Choice2, choice.typeref),
Lev Walkincee931e2005-08-16 16:56:59 +0000328 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
329 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000330 .type = &asn_DEF_TypeRef,
Lev Walkin67a30122017-08-10 05:48:54 -0700331 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700332 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000333 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000334 .name = "typeref"
335 },
336 { ATF_POINTER, 0, offsetof(struct Choice2, choice.some3),
337 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
338 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000339 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700340 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700341 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000342 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000343 .name = "some3"
344 },
345};
Lev Walkina7591b52014-10-12 18:37:35 -0700346static const asn_TYPE_tag2member_t asn_MAP_Choice2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700347 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* typeref */
348 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* some3 */
Lev Walkincee931e2005-08-16 16:56:59 +0000349};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800350asn_CHOICE_specifics_t asn_SPC_Choice2_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000351 sizeof(struct Choice2),
352 offsetof(struct Choice2, _asn_ctx),
353 offsetof(struct Choice2, present),
354 sizeof(((struct Choice2 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700355 .tag2el = asn_MAP_Choice2_tag2el_1,
356 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000357 .canonical_order = 0,
358 .ext_start = 1 /* Extensions start */
Lev Walkincee931e2005-08-16 16:56:59 +0000359};
360asn_TYPE_descriptor_t asn_DEF_Choice2 = {
361 "Choice2",
362 "Choice2",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800363 &asn_OP_CHOICE,
Lev Walkincee931e2005-08-16 16:56:59 +0000364 0, /* No effective tags (pointer) */
365 0, /* No effective tags (count) */
366 0, /* No tags (pointer) */
367 0, /* No tags (count) */
Lev Walkin0bfea562017-09-29 23:16:48 -0700368 { 0, 0, CHOICE_constraint },
Lev Walkincee931e2005-08-16 16:56:59 +0000369 asn_MBR_Choice2_1,
Lev Walkinb85a8132005-08-18 13:38:19 +0000370 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000371 &asn_SPC_Choice2_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000372};
373
374
Lev Walkinb85a8132005-08-18 13:38:19 +0000375/*** <<< INCLUDES [Choice3] >>> ***/
376
377#include <constr_SEQUENCE.h>
378#include <asn_SEQUENCE_OF.h>
379#include <constr_SEQUENCE_OF.h>
380#include <constr_CHOICE.h>
381
382/*** <<< DEPS [Choice3] >>> ***/
383
384typedef enum Choice3_PR {
385 Choice3_PR_NOTHING, /* No components present */
386 Choice3_PR_a,
387 Choice3_PR_b,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000388 Choice3_PR_c
Lev Walkinb85a8132005-08-18 13:38:19 +0000389} Choice3_PR;
390
391/*** <<< FWD-DECLS [Choice3] >>> ***/
392
393struct Everything;
394struct Choice3;
395
396/*** <<< TYPE-DECLS [Choice3] >>> ***/
397
398typedef struct Choice3 {
399 Choice3_PR present;
400 union Choice3_u {
401 struct a {
402 struct Everything *aa;
403
404 /* Context for parsing across buffer boundaries */
405 asn_struct_ctx_t _asn_ctx;
406 } a;
407 struct Everything *b;
408 struct c {
409 A_SEQUENCE_OF(struct Choice3) list;
410
411 /* Context for parsing across buffer boundaries */
412 asn_struct_ctx_t _asn_ctx;
413 } c;
414 } choice;
415
416 /* Context for parsing across buffer boundaries */
417 asn_struct_ctx_t _asn_ctx;
418} Choice3_t;
419
420/*** <<< FUNC-DECLS [Choice3] >>> ***/
421
422extern asn_TYPE_descriptor_t asn_DEF_Choice3;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800423extern asn_CHOICE_specifics_t asn_SPC_Choice3_specs_1;
424extern asn_TYPE_member_t asn_MBR_Choice3_1[3];
Lev Walkinb85a8132005-08-18 13:38:19 +0000425
426/*** <<< POST-INCLUDE [Choice3] >>> ***/
427
Lev Walkin22b5ed42006-09-13 02:51:20 +0000428#include "Everything.h"
429#include "Choice3.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000430
431/*** <<< STAT-DEFS [Choice3] >>> ***/
432
433static asn_TYPE_member_t asn_MBR_a_2[] = {
434 { ATF_POINTER, 0, offsetof(struct a, aa),
435 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
436 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000437 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700438 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700439 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000440 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000441 .name = "aa"
442 },
443};
Lev Walkina7591b52014-10-12 18:37:35 -0700444static const ber_tlv_tag_t asn_DEF_a_tags_2[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000445 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
446 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
447};
Lev Walkina7591b52014-10-12 18:37:35 -0700448static const asn_TYPE_tag2member_t asn_MAP_a_tag2el_2[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700449 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* aa */
Lev Walkinb85a8132005-08-18 13:38:19 +0000450};
Lev Walkin59b176e2005-11-26 11:25:14 +0000451static asn_SEQUENCE_specifics_t asn_SPC_a_specs_2 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000452 sizeof(struct a),
453 offsetof(struct a, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700454 .tag2el = asn_MAP_a_tag2el_2,
455 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000456 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +0000457 -1, /* Start extensions */
458 -1 /* Stop extensions */
459};
460static /* Use -fall-defs-global to expose */
461asn_TYPE_descriptor_t asn_DEF_a_2 = {
462 "a",
463 "a",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800464 &asn_OP_SEQUENCE,
Lev Walkin59b176e2005-11-26 11:25:14 +0000465 asn_DEF_a_tags_2,
466 sizeof(asn_DEF_a_tags_2)
467 /sizeof(asn_DEF_a_tags_2[0]) - 1, /* 1 */
468 asn_DEF_a_tags_2, /* Same as above */
469 sizeof(asn_DEF_a_tags_2)
470 /sizeof(asn_DEF_a_tags_2[0]), /* 2 */
Lev Walkin0bfea562017-09-29 23:16:48 -0700471 { 0, 0, SEQUENCE_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +0000472 asn_MBR_a_2,
473 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000474 &asn_SPC_a_specs_2 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000475};
476
477static asn_TYPE_member_t asn_MBR_c_5[] = {
478 { ATF_POINTER, 0, 0,
479 .tag = -1 /* Ambiguous tag (CHOICE?) */,
480 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000481 .type = &asn_DEF_Choice3,
Lev Walkin67a30122017-08-10 05:48:54 -0700482 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700483 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000484 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000485 .name = ""
486 },
487};
Lev Walkina7591b52014-10-12 18:37:35 -0700488static const ber_tlv_tag_t asn_DEF_c_tags_5[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000489 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
490 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
491};
Lev Walkin59b176e2005-11-26 11:25:14 +0000492static asn_SET_OF_specifics_t asn_SPC_c_specs_5 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000493 sizeof(struct c),
494 offsetof(struct c, _asn_ctx),
Lev Walkind1bfea62005-11-08 03:06:16 +0000495 2, /* XER encoding is XMLValueList */
Lev Walkinb85a8132005-08-18 13:38:19 +0000496};
497static /* Use -fall-defs-global to expose */
498asn_TYPE_descriptor_t asn_DEF_c_5 = {
499 "c",
500 "c",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800501 &asn_OP_SEQUENCE_OF,
Lev Walkin59b176e2005-11-26 11:25:14 +0000502 asn_DEF_c_tags_5,
503 sizeof(asn_DEF_c_tags_5)
504 /sizeof(asn_DEF_c_tags_5[0]) - 1, /* 1 */
505 asn_DEF_c_tags_5, /* Same as above */
506 sizeof(asn_DEF_c_tags_5)
507 /sizeof(asn_DEF_c_tags_5[0]), /* 2 */
Lev Walkin0bfea562017-09-29 23:16:48 -0700508 { 0, 0, SEQUENCE_OF_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +0000509 asn_MBR_c_5,
510 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000511 &asn_SPC_c_specs_5 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000512};
513
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800514asn_TYPE_member_t asn_MBR_Choice3_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000515 { ATF_NOFLAGS, 0, offsetof(struct Choice3, choice.a),
516 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +0000517 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000518 .type = &asn_DEF_a_2,
Lev Walkin67a30122017-08-10 05:48:54 -0700519 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700520 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000521 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000522 .name = "a"
523 },
524 { ATF_POINTER, 0, offsetof(struct Choice3, choice.b),
525 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
526 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000527 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700528 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700529 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000530 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000531 .name = "b"
532 },
533 { ATF_NOFLAGS, 0, offsetof(struct Choice3, choice.c),
534 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +0000535 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000536 .type = &asn_DEF_c_5,
Lev Walkin67a30122017-08-10 05:48:54 -0700537 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700538 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000539 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000540 .name = "c"
541 },
542};
Lev Walkina7591b52014-10-12 18:37:35 -0700543static const asn_TYPE_tag2member_t asn_MAP_Choice3_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700544 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
545 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* b */
546 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* c */
Lev Walkinb85a8132005-08-18 13:38:19 +0000547};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800548asn_CHOICE_specifics_t asn_SPC_Choice3_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000549 sizeof(struct Choice3),
550 offsetof(struct Choice3, _asn_ctx),
551 offsetof(struct Choice3, present),
552 sizeof(((struct Choice3 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700553 .tag2el = asn_MAP_Choice3_tag2el_1,
554 .tag2el_count = 3, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000555 .canonical_order = 0,
556 .ext_start = -1 /* Extensions start */
Lev Walkinb85a8132005-08-18 13:38:19 +0000557};
558asn_TYPE_descriptor_t asn_DEF_Choice3 = {
559 "Choice3",
560 "Choice3",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800561 &asn_OP_CHOICE,
Lev Walkinb85a8132005-08-18 13:38:19 +0000562 0, /* No effective tags (pointer) */
563 0, /* No effective tags (count) */
564 0, /* No tags (pointer) */
565 0, /* No tags (count) */
Lev Walkin0bfea562017-09-29 23:16:48 -0700566 { 0, 0, CHOICE_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +0000567 asn_MBR_Choice3_1,
568 3, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000569 &asn_SPC_Choice3_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000570};
571
572
Lev Walkincee931e2005-08-16 16:56:59 +0000573/*** <<< INCLUDES [Set] >>> ***/
574
575#include <asn_SET_OF.h>
576#include <INTEGER.h>
Lev Walkincee931e2005-08-16 16:56:59 +0000577#include <constr_SEQUENCE.h>
578#include <constr_SET_OF.h>
579
580/*** <<< FWD-DECLS [Set] >>> ***/
581
582struct Set;
Lev Walkinb85a8132005-08-18 13:38:19 +0000583struct Sequence;
Lev Walkincee931e2005-08-16 16:56:59 +0000584
Bi-Ruei, Chiu9b87e5b2016-06-06 00:23:16 +0800585/*** <<< FWD-DEFS [Set] >>> ***/
586
587typedef struct Member {
588 INTEGER_t Int;
589 struct Set *set;
590 struct Sequence *seq;
591 struct Set *set2 /* OPTIONAL */;
592 /*
593 * This type is extensible,
594 * possible extensions are below.
595 */
596 struct Set *set3;
597
598 /* Context for parsing across buffer boundaries */
599 asn_struct_ctx_t _asn_ctx;
600} Member;
601
Lev Walkincee931e2005-08-16 16:56:59 +0000602/*** <<< TYPE-DECLS [Set] >>> ***/
603
604typedef struct Set {
Bi-Ruei, Chiu9b87e5b2016-06-06 00:23:16 +0800605 A_SET_OF(Member) list;
Lev Walkincee931e2005-08-16 16:56:59 +0000606
607 /* Context for parsing across buffer boundaries */
608 asn_struct_ctx_t _asn_ctx;
609} Set_t;
610
611/*** <<< FUNC-DECLS [Set] >>> ***/
612
613extern asn_TYPE_descriptor_t asn_DEF_Set;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800614extern asn_SET_OF_specifics_t asn_SPC_Set_specs_1;
615extern asn_TYPE_member_t asn_MBR_Set_1[1];
Lev Walkincee931e2005-08-16 16:56:59 +0000616
617/*** <<< POST-INCLUDE [Set] >>> ***/
618
Lev Walkin22b5ed42006-09-13 02:51:20 +0000619#include "Set.h"
620#include "Sequence.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000621
622/*** <<< STAT-DEFS [Set] >>> ***/
623
624static asn_TYPE_member_t asn_MBR_Member_2[] = {
625 { ATF_NOFLAGS, 0, offsetof(struct Member, Int),
626 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
627 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000628 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700629 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700630 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000631 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000632 .name = "int"
633 },
634 { ATF_POINTER, 0, offsetof(struct Member, set),
635 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
636 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000637 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700638 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700639 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000640 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000641 .name = "set"
642 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000643 { ATF_POINTER, 0, offsetof(struct Member, seq),
Lev Walkincee931e2005-08-16 16:56:59 +0000644 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
645 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000646 .type = &asn_DEF_Sequence,
Lev Walkin67a30122017-08-10 05:48:54 -0700647 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700648 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000649 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000650 .name = "seq"
651 },
652 { ATF_POINTER, 2, offsetof(struct Member, set2),
653 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
654 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000655 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700656 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700657 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000658 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000659 .name = "set2"
660 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000661 { ATF_POINTER, 1, offsetof(struct Member, set3),
Lev Walkincee931e2005-08-16 16:56:59 +0000662 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
663 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000664 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700665 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700666 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000667 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000668 .name = "set3"
669 },
670};
Lev Walkina7591b52014-10-12 18:37:35 -0700671static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000672 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
673};
Lev Walkina7591b52014-10-12 18:37:35 -0700674static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700675 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* int */
676 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* set */
677 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* seq */
678 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* set2 */
679 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* set3 */
Lev Walkincee931e2005-08-16 16:56:59 +0000680};
Lev Walkin59b176e2005-11-26 11:25:14 +0000681static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000682 sizeof(struct Member),
683 offsetof(struct Member, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700684 .tag2el = asn_MAP_Member_tag2el_2,
685 .tag2el_count = 5, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000686 0, 0, 0, /* Optional elements (not needed) */
Lev Walkincee931e2005-08-16 16:56:59 +0000687 3, /* Start extensions */
688 6 /* Stop extensions */
689};
690static /* Use -fall-defs-global to expose */
691asn_TYPE_descriptor_t asn_DEF_Member_2 = {
Lev Walkin59b176e2005-11-26 11:25:14 +0000692 "SEQUENCE",
693 "SEQUENCE",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800694 &asn_OP_SEQUENCE,
Lev Walkin59b176e2005-11-26 11:25:14 +0000695 asn_DEF_Member_tags_2,
696 sizeof(asn_DEF_Member_tags_2)
697 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
698 asn_DEF_Member_tags_2, /* Same as above */
699 sizeof(asn_DEF_Member_tags_2)
700 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -0700701 { 0, 0, SEQUENCE_constraint },
Lev Walkincee931e2005-08-16 16:56:59 +0000702 asn_MBR_Member_2,
703 5, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000704 &asn_SPC_Member_specs_2 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000705};
706
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800707asn_TYPE_member_t asn_MBR_Set_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000708 { ATF_POINTER, 0, 0,
709 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
710 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000711 .type = &asn_DEF_Member_2,
Lev Walkin67a30122017-08-10 05:48:54 -0700712 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700713 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000714 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000715 .name = ""
716 },
717};
Lev Walkina7591b52014-10-12 18:37:35 -0700718static const ber_tlv_tag_t asn_DEF_Set_tags_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000719 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
720};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800721asn_SET_OF_specifics_t asn_SPC_Set_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000722 sizeof(struct Set),
723 offsetof(struct Set, _asn_ctx),
724 0, /* XER encoding is XMLDelimitedItemList */
725};
726asn_TYPE_descriptor_t asn_DEF_Set = {
727 "Set",
728 "Set",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800729 &asn_OP_SET_OF,
Lev Walkin59b176e2005-11-26 11:25:14 +0000730 asn_DEF_Set_tags_1,
731 sizeof(asn_DEF_Set_tags_1)
732 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
733 asn_DEF_Set_tags_1, /* Same as above */
734 sizeof(asn_DEF_Set_tags_1)
735 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -0700736 { 0, 0, SET_OF_constraint },
Lev Walkincee931e2005-08-16 16:56:59 +0000737 asn_MBR_Set_1,
738 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000739 &asn_SPC_Set_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000740};
741
742
743/*** <<< INCLUDES [Sequence] >>> ***/
744
745#include <INTEGER.h>
746#include <constr_SEQUENCE.h>
747
748/*** <<< FWD-DECLS [Sequence] >>> ***/
749
750struct Sequence;
751struct Set;
752
753/*** <<< TYPE-DECLS [Sequence] >>> ***/
754
755typedef struct Sequence {
756 INTEGER_t a;
757 struct Sequence *seq /* OPTIONAL */;
758 /*
759 * This type is extensible,
760 * possible extensions are below.
761 */
762 INTEGER_t *b;
763 struct Set *set /* OPTIONAL */;
764
765 /* Context for parsing across buffer boundaries */
766 asn_struct_ctx_t _asn_ctx;
767} Sequence_t;
768
769/*** <<< FUNC-DECLS [Sequence] >>> ***/
770
771extern asn_TYPE_descriptor_t asn_DEF_Sequence;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800772extern asn_SEQUENCE_specifics_t asn_SPC_Sequence_specs_1;
773extern asn_TYPE_member_t asn_MBR_Sequence_1[4];
Lev Walkincee931e2005-08-16 16:56:59 +0000774
775/*** <<< POST-INCLUDE [Sequence] >>> ***/
776
Lev Walkin22b5ed42006-09-13 02:51:20 +0000777#include "Sequence.h"
778#include "Set.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000779
780/*** <<< STAT-DEFS [Sequence] >>> ***/
781
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800782asn_TYPE_member_t asn_MBR_Sequence_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000783 { ATF_NOFLAGS, 0, offsetof(struct Sequence, a),
784 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
785 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000786 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700787 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700788 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000789 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000790 .name = "a"
791 },
792 { ATF_POINTER, 3, offsetof(struct Sequence, seq),
793 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
794 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000795 .type = &asn_DEF_Sequence,
Lev Walkin67a30122017-08-10 05:48:54 -0700796 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700797 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000798 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000799 .name = "seq"
800 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000801 { ATF_POINTER, 2, offsetof(struct Sequence, b),
Lev Walkincee931e2005-08-16 16:56:59 +0000802 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
803 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000804 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700805 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700806 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000807 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000808 .name = "b"
809 },
810 { ATF_POINTER, 1, offsetof(struct Sequence, set),
811 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
812 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000813 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700814 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700815 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000816 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000817 .name = "set"
818 },
819};
Lev Walkina7591b52014-10-12 18:37:35 -0700820static const ber_tlv_tag_t asn_DEF_Sequence_tags_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000821 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
822};
Lev Walkina7591b52014-10-12 18:37:35 -0700823static const asn_TYPE_tag2member_t asn_MAP_Sequence_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700824 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
825 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* seq */
826 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* b */
827 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* set */
Lev Walkincee931e2005-08-16 16:56:59 +0000828};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800829asn_SEQUENCE_specifics_t asn_SPC_Sequence_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000830 sizeof(struct Sequence),
831 offsetof(struct Sequence, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700832 .tag2el = asn_MAP_Sequence_tag2el_1,
833 .tag2el_count = 4, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000834 0, 0, 0, /* Optional elements (not needed) */
Lev Walkincee931e2005-08-16 16:56:59 +0000835 1, /* Start extensions */
836 5 /* Stop extensions */
837};
838asn_TYPE_descriptor_t asn_DEF_Sequence = {
839 "Sequence",
840 "Sequence",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800841 &asn_OP_SEQUENCE,
Lev Walkin59b176e2005-11-26 11:25:14 +0000842 asn_DEF_Sequence_tags_1,
843 sizeof(asn_DEF_Sequence_tags_1)
844 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
845 asn_DEF_Sequence_tags_1, /* Same as above */
846 sizeof(asn_DEF_Sequence_tags_1)
847 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -0700848 { 0, 0, SEQUENCE_constraint },
Lev Walkincee931e2005-08-16 16:56:59 +0000849 asn_MBR_Sequence_1,
850 4, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000851 &asn_SPC_Sequence_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000852};
853
Lev Walkinb85a8132005-08-18 13:38:19 +0000854
855/*** <<< INCLUDES [TypeRef] >>> ***/
856
Lev Walkin22b5ed42006-09-13 02:51:20 +0000857#include "Sequence.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000858
859/*** <<< TYPE-DECLS [TypeRef] >>> ***/
860
861typedef Sequence_t TypeRef_t;
862
863/*** <<< FUNC-DECLS [TypeRef] >>> ***/
864
865extern asn_TYPE_descriptor_t asn_DEF_TypeRef;
866asn_struct_free_f TypeRef_free;
867asn_struct_print_f TypeRef_print;
868asn_constr_check_f TypeRef_constraint;
869ber_type_decoder_f TypeRef_decode_ber;
870der_type_encoder_f TypeRef_encode_der;
871xer_type_decoder_f TypeRef_decode_xer;
872xer_type_encoder_f TypeRef_encode_xer;
873
874/*** <<< CODE [TypeRef] >>> ***/
875
Lev Walkinb85a8132005-08-18 13:38:19 +0000876/*
877 * This type is implemented using Sequence,
878 * so here we adjust the DEF accordingly.
879 */
Lev Walkinb85a8132005-08-18 13:38:19 +0000880
881/*** <<< STAT-DEFS [TypeRef] >>> ***/
882
Lev Walkina7591b52014-10-12 18:37:35 -0700883static const ber_tlv_tag_t asn_DEF_TypeRef_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000884 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
885};
886asn_TYPE_descriptor_t asn_DEF_TypeRef = {
887 "TypeRef",
888 "TypeRef",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800889 &asn_OP_SEQUENCE,
Lev Walkin59b176e2005-11-26 11:25:14 +0000890 asn_DEF_TypeRef_tags_1,
891 sizeof(asn_DEF_TypeRef_tags_1)
892 /sizeof(asn_DEF_TypeRef_tags_1[0]), /* 1 */
893 asn_DEF_TypeRef_tags_1, /* Same as above */
894 sizeof(asn_DEF_TypeRef_tags_1)
895 /sizeof(asn_DEF_TypeRef_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -0700896 { 0, 0, SEQUENCE_constraint },
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800897 asn_MBR_Sequence_1,
898 4, /* Elements count */
899 &asn_SPC_Sequence_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000900};
901
902
903/*** <<< INCLUDES [Alpha] >>> ***/
904
905#include <constr_SEQUENCE.h>
906
907/*** <<< FWD-DECLS [Alpha] >>> ***/
908
909struct Beta;
910
911/*** <<< TYPE-DECLS [Alpha] >>> ***/
912
913typedef struct Alpha {
914 struct Beta *a;
915 struct b {
916 struct Beta *b /* OPTIONAL */;
917
918 /* Context for parsing across buffer boundaries */
919 asn_struct_ctx_t _asn_ctx;
920 } b;
921
922 /* Context for parsing across buffer boundaries */
923 asn_struct_ctx_t _asn_ctx;
924} Alpha_t;
925
926/*** <<< FUNC-DECLS [Alpha] >>> ***/
927
928extern asn_TYPE_descriptor_t asn_DEF_Alpha;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800929extern asn_SEQUENCE_specifics_t asn_SPC_Alpha_specs_1;
930extern asn_TYPE_member_t asn_MBR_Alpha_1[2];
Lev Walkinb85a8132005-08-18 13:38:19 +0000931
932/*** <<< POST-INCLUDE [Alpha] >>> ***/
933
Lev Walkin22b5ed42006-09-13 02:51:20 +0000934#include "Beta.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000935
936/*** <<< STAT-DEFS [Alpha] >>> ***/
937
938static asn_TYPE_member_t asn_MBR_b_3[] = {
939 { ATF_POINTER, 1, offsetof(struct b, b),
940 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
941 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000942 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -0700943 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700944 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000945 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000946 .name = "b"
947 },
948};
Lev Walkina7591b52014-10-12 18:37:35 -0700949static const ber_tlv_tag_t asn_DEF_b_tags_3[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000950 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
951 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
952};
Lev Walkina7591b52014-10-12 18:37:35 -0700953static const asn_TYPE_tag2member_t asn_MAP_b_tag2el_3[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700954 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* b */
Lev Walkinb85a8132005-08-18 13:38:19 +0000955};
Lev Walkin59b176e2005-11-26 11:25:14 +0000956static asn_SEQUENCE_specifics_t asn_SPC_b_specs_3 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000957 sizeof(struct b),
958 offsetof(struct b, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700959 .tag2el = asn_MAP_b_tag2el_3,
960 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000961 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +0000962 -1, /* Start extensions */
963 -1 /* Stop extensions */
964};
965static /* Use -fall-defs-global to expose */
966asn_TYPE_descriptor_t asn_DEF_b_3 = {
967 "b",
968 "b",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800969 &asn_OP_SEQUENCE,
Lev Walkin59b176e2005-11-26 11:25:14 +0000970 asn_DEF_b_tags_3,
971 sizeof(asn_DEF_b_tags_3)
972 /sizeof(asn_DEF_b_tags_3[0]) - 1, /* 1 */
973 asn_DEF_b_tags_3, /* Same as above */
974 sizeof(asn_DEF_b_tags_3)
975 /sizeof(asn_DEF_b_tags_3[0]), /* 2 */
Lev Walkin0bfea562017-09-29 23:16:48 -0700976 { 0, 0, SEQUENCE_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +0000977 asn_MBR_b_3,
978 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000979 &asn_SPC_b_specs_3 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000980};
981
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800982asn_TYPE_member_t asn_MBR_Alpha_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000983 { ATF_POINTER, 0, offsetof(struct Alpha, a),
984 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
985 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000986 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -0700987 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700988 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000989 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000990 .name = "a"
991 },
992 { ATF_NOFLAGS, 0, offsetof(struct Alpha, b),
993 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +0000994 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000995 .type = &asn_DEF_b_3,
Lev Walkin67a30122017-08-10 05:48:54 -0700996 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -0700997 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +0000998 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000999 .name = "b"
1000 },
1001};
Lev Walkina7591b52014-10-12 18:37:35 -07001002static const ber_tlv_tag_t asn_DEF_Alpha_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001003 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1004};
Lev Walkina7591b52014-10-12 18:37:35 -07001005static const asn_TYPE_tag2member_t asn_MAP_Alpha_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001006 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
1007 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* b */
Lev Walkinb85a8132005-08-18 13:38:19 +00001008};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001009asn_SEQUENCE_specifics_t asn_SPC_Alpha_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001010 sizeof(struct Alpha),
1011 offsetof(struct Alpha, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001012 .tag2el = asn_MAP_Alpha_tag2el_1,
1013 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001014 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001015 -1, /* Start extensions */
1016 -1 /* Stop extensions */
1017};
1018asn_TYPE_descriptor_t asn_DEF_Alpha = {
1019 "Alpha",
1020 "Alpha",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001021 &asn_OP_SEQUENCE,
Lev Walkin59b176e2005-11-26 11:25:14 +00001022 asn_DEF_Alpha_tags_1,
1023 sizeof(asn_DEF_Alpha_tags_1)
1024 /sizeof(asn_DEF_Alpha_tags_1[0]), /* 1 */
1025 asn_DEF_Alpha_tags_1, /* Same as above */
1026 sizeof(asn_DEF_Alpha_tags_1)
1027 /sizeof(asn_DEF_Alpha_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -07001028 { 0, 0, SEQUENCE_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +00001029 asn_MBR_Alpha_1,
1030 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001031 &asn_SPC_Alpha_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001032};
1033
1034
1035/*** <<< INCLUDES [Beta] >>> ***/
1036
1037#include <constr_SEQUENCE.h>
1038
1039/*** <<< FWD-DECLS [Beta] >>> ***/
1040
1041struct Alpha;
1042struct Gamma;
1043
1044/*** <<< TYPE-DECLS [Beta] >>> ***/
1045
1046typedef struct Beta {
1047 struct Alpha *b /* OPTIONAL */;
1048 struct Gamma *g /* OPTIONAL */;
1049
1050 /* Context for parsing across buffer boundaries */
1051 asn_struct_ctx_t _asn_ctx;
1052} Beta_t;
1053
1054/*** <<< FUNC-DECLS [Beta] >>> ***/
1055
1056extern asn_TYPE_descriptor_t asn_DEF_Beta;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001057extern asn_SEQUENCE_specifics_t asn_SPC_Beta_specs_1;
1058extern asn_TYPE_member_t asn_MBR_Beta_1[2];
Lev Walkinb85a8132005-08-18 13:38:19 +00001059
1060/*** <<< POST-INCLUDE [Beta] >>> ***/
1061
Lev Walkin22b5ed42006-09-13 02:51:20 +00001062#include "Alpha.h"
1063#include "Gamma.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001064
1065/*** <<< STAT-DEFS [Beta] >>> ***/
1066
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001067asn_TYPE_member_t asn_MBR_Beta_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001068 { ATF_POINTER, 2, offsetof(struct Beta, b),
1069 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1070 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001071 .type = &asn_DEF_Alpha,
Lev Walkin67a30122017-08-10 05:48:54 -07001072 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -07001073 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +00001074 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001075 .name = "b"
1076 },
1077 { ATF_POINTER, 1, offsetof(struct Beta, g),
1078 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1079 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001080 .type = &asn_DEF_Gamma,
Lev Walkin67a30122017-08-10 05:48:54 -07001081 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -07001082 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +00001083 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001084 .name = "g"
1085 },
1086};
Lev Walkina7591b52014-10-12 18:37:35 -07001087static const ber_tlv_tag_t asn_DEF_Beta_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001088 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1089};
Lev Walkina7591b52014-10-12 18:37:35 -07001090static const asn_TYPE_tag2member_t asn_MAP_Beta_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001091 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* b */
1092 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* g */
Lev Walkinb85a8132005-08-18 13:38:19 +00001093};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001094asn_SEQUENCE_specifics_t asn_SPC_Beta_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001095 sizeof(struct Beta),
1096 offsetof(struct Beta, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001097 .tag2el = asn_MAP_Beta_tag2el_1,
1098 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001099 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001100 -1, /* Start extensions */
1101 -1 /* Stop extensions */
1102};
1103asn_TYPE_descriptor_t asn_DEF_Beta = {
1104 "Beta",
1105 "Beta",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001106 &asn_OP_SEQUENCE,
Lev Walkin59b176e2005-11-26 11:25:14 +00001107 asn_DEF_Beta_tags_1,
1108 sizeof(asn_DEF_Beta_tags_1)
1109 /sizeof(asn_DEF_Beta_tags_1[0]), /* 1 */
1110 asn_DEF_Beta_tags_1, /* Same as above */
1111 sizeof(asn_DEF_Beta_tags_1)
1112 /sizeof(asn_DEF_Beta_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -07001113 { 0, 0, SEQUENCE_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +00001114 asn_MBR_Beta_1,
1115 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001116 &asn_SPC_Beta_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001117};
1118
1119
1120/*** <<< INCLUDES [Gamma] >>> ***/
1121
1122#include <constr_SEQUENCE.h>
1123
1124/*** <<< FWD-DECLS [Gamma] >>> ***/
1125
1126struct TwoThree;
1127struct Alpha;
1128struct Beta;
1129
1130/*** <<< TYPE-DECLS [Gamma] >>> ***/
1131
1132typedef struct Gamma {
1133 struct TwoThree *o;
1134 struct Alpha *a;
1135 struct Beta *b;
1136
1137 /* Context for parsing across buffer boundaries */
1138 asn_struct_ctx_t _asn_ctx;
1139} Gamma_t;
1140
1141/*** <<< FUNC-DECLS [Gamma] >>> ***/
1142
1143extern asn_TYPE_descriptor_t asn_DEF_Gamma;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001144extern asn_SEQUENCE_specifics_t asn_SPC_Gamma_specs_1;
1145extern asn_TYPE_member_t asn_MBR_Gamma_1[3];
Lev Walkinb85a8132005-08-18 13:38:19 +00001146
1147/*** <<< POST-INCLUDE [Gamma] >>> ***/
1148
Lev Walkin22b5ed42006-09-13 02:51:20 +00001149#include "TwoThree.h"
1150#include "Alpha.h"
1151#include "Beta.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001152
1153/*** <<< STAT-DEFS [Gamma] >>> ***/
1154
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001155asn_TYPE_member_t asn_MBR_Gamma_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001156 { ATF_POINTER, 0, offsetof(struct Gamma, o),
1157 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1158 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001159 .type = &asn_DEF_TwoThree,
Lev Walkin67a30122017-08-10 05:48:54 -07001160 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -07001161 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +00001162 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001163 .name = "o"
1164 },
1165 { ATF_POINTER, 0, offsetof(struct Gamma, a),
1166 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1167 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001168 .type = &asn_DEF_Alpha,
Lev Walkin67a30122017-08-10 05:48:54 -07001169 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -07001170 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +00001171 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001172 .name = "a"
1173 },
1174 { ATF_POINTER, 0, offsetof(struct Gamma, b),
1175 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1176 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001177 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -07001178 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -07001179 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +00001180 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001181 .name = "b"
1182 },
1183};
Lev Walkina7591b52014-10-12 18:37:35 -07001184static const ber_tlv_tag_t asn_DEF_Gamma_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001185 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1186};
Lev Walkina7591b52014-10-12 18:37:35 -07001187static const asn_TYPE_tag2member_t asn_MAP_Gamma_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001188 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* o */
1189 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* a */
1190 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* b */
Lev Walkinb85a8132005-08-18 13:38:19 +00001191};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001192asn_SEQUENCE_specifics_t asn_SPC_Gamma_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001193 sizeof(struct Gamma),
1194 offsetof(struct Gamma, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001195 .tag2el = asn_MAP_Gamma_tag2el_1,
1196 .tag2el_count = 3, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001197 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001198 -1, /* Start extensions */
1199 -1 /* Stop extensions */
1200};
1201asn_TYPE_descriptor_t asn_DEF_Gamma = {
1202 "Gamma",
1203 "Gamma",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001204 &asn_OP_SEQUENCE,
Lev Walkin59b176e2005-11-26 11:25:14 +00001205 asn_DEF_Gamma_tags_1,
1206 sizeof(asn_DEF_Gamma_tags_1)
1207 /sizeof(asn_DEF_Gamma_tags_1[0]), /* 1 */
1208 asn_DEF_Gamma_tags_1, /* Same as above */
1209 sizeof(asn_DEF_Gamma_tags_1)
1210 /sizeof(asn_DEF_Gamma_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -07001211 { 0, 0, SEQUENCE_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +00001212 asn_MBR_Gamma_1,
1213 3, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001214 &asn_SPC_Gamma_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001215};
1216
1217
1218/*** <<< INCLUDES [OneTwo] >>> ***/
1219
1220#include <constr_SET.h>
1221
1222/*** <<< DEPS [OneTwo] >>> ***/
1223
1224
1225/*
1226 * Method of determining the components presence
1227 */
1228typedef enum OneTwo_PR {
1229 OneTwo_PR_m12, /* Member m12 is present */
1230} OneTwo_PR;
1231
1232/*** <<< FWD-DECLS [OneTwo] >>> ***/
1233
1234struct TwoThree;
1235
1236/*** <<< TYPE-DECLS [OneTwo] >>> ***/
1237
1238typedef struct OneTwo {
1239 struct TwoThree *m12;
1240
1241 /* Presence bitmask: ASN_SET_ISPRESENT(pOneTwo, OneTwo_PR_x) */
1242 unsigned int _presence_map
1243 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
1244
1245 /* Context for parsing across buffer boundaries */
1246 asn_struct_ctx_t _asn_ctx;
1247} OneTwo_t;
1248
1249/*** <<< FUNC-DECLS [OneTwo] >>> ***/
1250
1251extern asn_TYPE_descriptor_t asn_DEF_OneTwo;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001252extern asn_SET_specifics_t asn_SPC_OneTwo_specs_1;
1253extern asn_TYPE_member_t asn_MBR_OneTwo_1[1];
Lev Walkinb85a8132005-08-18 13:38:19 +00001254
1255/*** <<< POST-INCLUDE [OneTwo] >>> ***/
1256
Lev Walkin22b5ed42006-09-13 02:51:20 +00001257#include "TwoThree.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001258
1259/*** <<< STAT-DEFS [OneTwo] >>> ***/
1260
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001261asn_TYPE_member_t asn_MBR_OneTwo_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001262 { ATF_POINTER, 0, offsetof(struct OneTwo, m12),
1263 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1264 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001265 .type = &asn_DEF_TwoThree,
Lev Walkin67a30122017-08-10 05:48:54 -07001266 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -07001267 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +00001268 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001269 .name = "m12"
1270 },
1271};
Lev Walkina7591b52014-10-12 18:37:35 -07001272static const ber_tlv_tag_t asn_DEF_OneTwo_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001273 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1274};
Lev Walkina7591b52014-10-12 18:37:35 -07001275static const asn_TYPE_tag2member_t asn_MAP_OneTwo_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001276 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* m12 */
Lev Walkinb85a8132005-08-18 13:38:19 +00001277};
Lev Walkina7591b52014-10-12 18:37:35 -07001278static const uint8_t asn_MAP_OneTwo_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001279 (1 << 7)
1280};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001281asn_SET_specifics_t asn_SPC_OneTwo_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001282 sizeof(struct OneTwo),
1283 offsetof(struct OneTwo, _asn_ctx),
1284 offsetof(struct OneTwo, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -07001285 .tag2el = asn_MAP_OneTwo_tag2el_1,
1286 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001287 asn_MAP_OneTwo_tag2el_1, /* Same as above */
Lev Walkinb85a8132005-08-18 13:38:19 +00001288 1, /* Count of tags in the CXER map */
1289 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -07001290 (const unsigned int *)asn_MAP_OneTwo_mmap_1 /* Mandatory elements map */
Lev Walkinb85a8132005-08-18 13:38:19 +00001291};
1292asn_TYPE_descriptor_t asn_DEF_OneTwo = {
1293 "OneTwo",
1294 "OneTwo",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001295 &asn_OP_SET,
Lev Walkin59b176e2005-11-26 11:25:14 +00001296 asn_DEF_OneTwo_tags_1,
1297 sizeof(asn_DEF_OneTwo_tags_1)
1298 /sizeof(asn_DEF_OneTwo_tags_1[0]), /* 1 */
1299 asn_DEF_OneTwo_tags_1, /* Same as above */
1300 sizeof(asn_DEF_OneTwo_tags_1)
1301 /sizeof(asn_DEF_OneTwo_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -07001302 { 0, 0, SET_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +00001303 asn_MBR_OneTwo_1,
1304 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001305 &asn_SPC_OneTwo_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001306};
1307
1308
1309/*** <<< INCLUDES [TwoThree] >>> ***/
1310
1311#include <constr_SET.h>
1312
1313/*** <<< DEPS [TwoThree] >>> ***/
1314
1315
1316/*
1317 * Method of determining the components presence
1318 */
1319typedef enum TwoThree_PR {
1320 TwoThree_PR_m23, /* Member m23 is present */
1321} TwoThree_PR;
1322
1323/*** <<< FWD-DECLS [TwoThree] >>> ***/
1324
1325struct ThreeOne;
1326
1327/*** <<< TYPE-DECLS [TwoThree] >>> ***/
1328
1329typedef struct TwoThree {
1330 struct ThreeOne *m23;
1331
1332 /* Presence bitmask: ASN_SET_ISPRESENT(pTwoThree, TwoThree_PR_x) */
1333 unsigned int _presence_map
1334 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
1335
1336 /* Context for parsing across buffer boundaries */
1337 asn_struct_ctx_t _asn_ctx;
1338} TwoThree_t;
1339
1340/*** <<< FUNC-DECLS [TwoThree] >>> ***/
1341
1342extern asn_TYPE_descriptor_t asn_DEF_TwoThree;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001343extern asn_SET_specifics_t asn_SPC_TwoThree_specs_1;
1344extern asn_TYPE_member_t asn_MBR_TwoThree_1[1];
Lev Walkinb85a8132005-08-18 13:38:19 +00001345
1346/*** <<< POST-INCLUDE [TwoThree] >>> ***/
1347
Lev Walkin22b5ed42006-09-13 02:51:20 +00001348#include "ThreeOne.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001349
1350/*** <<< STAT-DEFS [TwoThree] >>> ***/
1351
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001352asn_TYPE_member_t asn_MBR_TwoThree_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001353 { ATF_POINTER, 0, offsetof(struct TwoThree, m23),
1354 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1355 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001356 .type = &asn_DEF_ThreeOne,
Lev Walkin67a30122017-08-10 05:48:54 -07001357 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -07001358 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +00001359 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001360 .name = "m23"
1361 },
1362};
Lev Walkina7591b52014-10-12 18:37:35 -07001363static const ber_tlv_tag_t asn_DEF_TwoThree_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001364 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1365};
Lev Walkina7591b52014-10-12 18:37:35 -07001366static const asn_TYPE_tag2member_t asn_MAP_TwoThree_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001367 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* m23 */
Lev Walkinb85a8132005-08-18 13:38:19 +00001368};
Lev Walkina7591b52014-10-12 18:37:35 -07001369static const uint8_t asn_MAP_TwoThree_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001370 (1 << 7)
1371};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001372asn_SET_specifics_t asn_SPC_TwoThree_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001373 sizeof(struct TwoThree),
1374 offsetof(struct TwoThree, _asn_ctx),
1375 offsetof(struct TwoThree, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -07001376 .tag2el = asn_MAP_TwoThree_tag2el_1,
1377 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001378 asn_MAP_TwoThree_tag2el_1, /* Same as above */
Lev Walkinb85a8132005-08-18 13:38:19 +00001379 1, /* Count of tags in the CXER map */
1380 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -07001381 (const unsigned int *)asn_MAP_TwoThree_mmap_1 /* Mandatory elements map */
Lev Walkinb85a8132005-08-18 13:38:19 +00001382};
1383asn_TYPE_descriptor_t asn_DEF_TwoThree = {
1384 "TwoThree",
1385 "TwoThree",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001386 &asn_OP_SET,
Lev Walkin59b176e2005-11-26 11:25:14 +00001387 asn_DEF_TwoThree_tags_1,
1388 sizeof(asn_DEF_TwoThree_tags_1)
1389 /sizeof(asn_DEF_TwoThree_tags_1[0]), /* 1 */
1390 asn_DEF_TwoThree_tags_1, /* Same as above */
1391 sizeof(asn_DEF_TwoThree_tags_1)
1392 /sizeof(asn_DEF_TwoThree_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -07001393 { 0, 0, SET_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +00001394 asn_MBR_TwoThree_1,
1395 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001396 &asn_SPC_TwoThree_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001397};
1398
1399
1400/*** <<< INCLUDES [ThreeOne] >>> ***/
1401
1402#include <constr_SET.h>
1403
1404/*** <<< DEPS [ThreeOne] >>> ***/
1405
1406
1407/*
1408 * Method of determining the components presence
1409 */
1410typedef enum ThreeOne_PR {
1411 ThreeOne_PR_m31, /* Member m31 is present */
1412 ThreeOne_PR_g, /* Member g is present */
1413} ThreeOne_PR;
1414
1415/*** <<< FWD-DECLS [ThreeOne] >>> ***/
1416
1417struct OneTwo;
1418struct Gamma;
1419
1420/*** <<< TYPE-DECLS [ThreeOne] >>> ***/
1421
1422typedef struct ThreeOne {
1423 struct OneTwo *m31;
1424 struct Gamma *g;
1425
1426 /* Presence bitmask: ASN_SET_ISPRESENT(pThreeOne, ThreeOne_PR_x) */
1427 unsigned int _presence_map
1428 [((2+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
1429
1430 /* Context for parsing across buffer boundaries */
1431 asn_struct_ctx_t _asn_ctx;
1432} ThreeOne_t;
1433
1434/*** <<< FUNC-DECLS [ThreeOne] >>> ***/
1435
1436extern asn_TYPE_descriptor_t asn_DEF_ThreeOne;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001437extern asn_SET_specifics_t asn_SPC_ThreeOne_specs_1;
1438extern asn_TYPE_member_t asn_MBR_ThreeOne_1[2];
Lev Walkinb85a8132005-08-18 13:38:19 +00001439
1440/*** <<< POST-INCLUDE [ThreeOne] >>> ***/
1441
Lev Walkin22b5ed42006-09-13 02:51:20 +00001442#include "OneTwo.h"
1443#include "Gamma.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001444
1445/*** <<< STAT-DEFS [ThreeOne] >>> ***/
1446
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001447asn_TYPE_member_t asn_MBR_ThreeOne_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001448 { ATF_POINTER, 0, offsetof(struct ThreeOne, m31),
1449 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1450 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001451 .type = &asn_DEF_OneTwo,
Lev Walkin67a30122017-08-10 05:48:54 -07001452 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -07001453 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +00001454 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001455 .name = "m31"
1456 },
1457 { ATF_POINTER, 0, offsetof(struct ThreeOne, g),
1458 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1459 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001460 .type = &asn_DEF_Gamma,
Lev Walkin67a30122017-08-10 05:48:54 -07001461 .type_selector = 0,
Lev Walkin0bfea562017-09-29 23:16:48 -07001462 { .oer_constraints = 0, .per_constraints = 0, .general_constraints = 0 },
Lev Walkin59b176e2005-11-26 11:25:14 +00001463 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001464 .name = "g"
1465 },
1466};
Lev Walkina7591b52014-10-12 18:37:35 -07001467static const ber_tlv_tag_t asn_DEF_ThreeOne_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001468 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1469};
Lev Walkina7591b52014-10-12 18:37:35 -07001470static const asn_TYPE_tag2member_t asn_MAP_ThreeOne_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001471 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* m31 */
1472 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* g */
Lev Walkinb85a8132005-08-18 13:38:19 +00001473};
Lev Walkina7591b52014-10-12 18:37:35 -07001474static const uint8_t asn_MAP_ThreeOne_mmap_1[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001475 (1 << 7) | (1 << 6)
1476};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001477asn_SET_specifics_t asn_SPC_ThreeOne_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001478 sizeof(struct ThreeOne),
1479 offsetof(struct ThreeOne, _asn_ctx),
1480 offsetof(struct ThreeOne, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -07001481 .tag2el = asn_MAP_ThreeOne_tag2el_1,
1482 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001483 asn_MAP_ThreeOne_tag2el_1, /* Same as above */
Lev Walkinb85a8132005-08-18 13:38:19 +00001484 2, /* Count of tags in the CXER map */
1485 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -07001486 (const unsigned int *)asn_MAP_ThreeOne_mmap_1 /* Mandatory elements map */
Lev Walkinb85a8132005-08-18 13:38:19 +00001487};
1488asn_TYPE_descriptor_t asn_DEF_ThreeOne = {
1489 "ThreeOne",
1490 "ThreeOne",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001491 &asn_OP_SET,
Lev Walkin59b176e2005-11-26 11:25:14 +00001492 asn_DEF_ThreeOne_tags_1,
1493 sizeof(asn_DEF_ThreeOne_tags_1)
1494 /sizeof(asn_DEF_ThreeOne_tags_1[0]), /* 1 */
1495 asn_DEF_ThreeOne_tags_1, /* Same as above */
1496 sizeof(asn_DEF_ThreeOne_tags_1)
1497 /sizeof(asn_DEF_ThreeOne_tags_1[0]), /* 1 */
Lev Walkin0bfea562017-09-29 23:16:48 -07001498 { 0, 0, SET_constraint },
Lev Walkinb85a8132005-08-18 13:38:19 +00001499 asn_MBR_ThreeOne_1,
1500 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001501 &asn_SPC_ThreeOne_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001502};
1503