blob: 6e33241800889fa91d396526695ec382e89150b1 [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 Walkincee931e2005-08-16 16:56:59 +000057 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040058 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000059 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
60 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000061 .name = "ch1"
62 },
Lev Walkinb85a8132005-08-18 13:38:19 +000063 { ATF_POINTER, 0, offsetof(struct Everything, ch2),
Lev Walkincee931e2005-08-16 16:56:59 +000064 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
65 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000066 .type = &asn_DEF_Choice2,
Lev Walkin67a30122017-08-10 05:48:54 -070067 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000068 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040069 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000070 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
71 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000072 .name = "ch2"
73 },
Lev Walkinb85a8132005-08-18 13:38:19 +000074 { ATF_POINTER, 0, offsetof(struct Everything, ch3),
Lev Walkincee931e2005-08-16 16:56:59 +000075 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
Lev Walkinb85a8132005-08-18 13:38:19 +000076 .tag_mode = +1, /* EXPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000077 .type = &asn_DEF_Choice3,
Lev Walkin67a30122017-08-10 05:48:54 -070078 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +000079 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040080 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000081 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
82 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +000083 .name = "ch3"
84 },
85 { ATF_NOFLAGS, 0, offsetof(struct Everything, set),
86 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
Lev Walkincee931e2005-08-16 16:56:59 +000087 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000088 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -070089 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000090 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040091 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000092 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
93 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +000094 .name = "set"
95 },
Lev Walkinb85a8132005-08-18 13:38:19 +000096 { ATF_NOFLAGS, 0, offsetof(struct Everything, a),
97 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
98 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +000099 .type = &asn_DEF_Alpha,
Lev Walkin67a30122017-08-10 05:48:54 -0700100 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000101 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400102 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000103 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
104 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000105 .name = "a"
106 },
107 { ATF_NOFLAGS, 0, offsetof(struct Everything, b),
108 .tag = (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
109 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000110 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -0700111 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000112 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400113 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000114 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
115 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000116 .name = "b"
117 },
118 { ATF_NOFLAGS, 0, offsetof(struct Everything, g),
119 .tag = (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
120 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000121 .type = &asn_DEF_Gamma,
Lev Walkin67a30122017-08-10 05:48:54 -0700122 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000123 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400124 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000125 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
126 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000127 .name = "g"
128 },
129 { ATF_NOFLAGS, 0, offsetof(struct Everything, ot),
130 .tag = (ASN_TAG_CLASS_CONTEXT | (7 << 2)),
131 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000132 .type = &asn_DEF_OneTwo,
Lev Walkin67a30122017-08-10 05:48:54 -0700133 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000134 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400135 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000136 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
137 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000138 .name = "ot"
139 },
140 { ATF_NOFLAGS, 0, offsetof(struct Everything, tt),
141 .tag = (ASN_TAG_CLASS_CONTEXT | (8 << 2)),
142 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000143 .type = &asn_DEF_TwoThree,
Lev Walkin67a30122017-08-10 05:48:54 -0700144 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000145 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400146 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000147 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
148 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000149 .name = "tt"
150 },
151 { ATF_NOFLAGS, 0, offsetof(struct Everything, to),
152 .tag = (ASN_TAG_CLASS_CONTEXT | (9 << 2)),
153 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000154 .type = &asn_DEF_ThreeOne,
Lev Walkin67a30122017-08-10 05:48:54 -0700155 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000156 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400157 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000158 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
159 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000160 .name = "to"
161 },
Lev Walkincee931e2005-08-16 16:56:59 +0000162};
Lev Walkina7591b52014-10-12 18:37:35 -0700163static const ber_tlv_tag_t asn_DEF_Everything_tags_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000164 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
165};
Lev Walkina7591b52014-10-12 18:37:35 -0700166static const asn_TYPE_tag2member_t asn_MAP_Everything_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700167 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ch1 */
168 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ch2 */
169 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ch3 */
170 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* set */
171 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* a */
172 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* b */
173 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* g */
174 { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* ot */
175 { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* tt */
176 { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 } /* to */
Lev Walkincee931e2005-08-16 16:56:59 +0000177};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800178asn_SEQUENCE_specifics_t asn_SPC_Everything_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000179 sizeof(struct Everything),
180 offsetof(struct Everything, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700181 .tag2el = asn_MAP_Everything_tag2el_1,
182 .tag2el_count = 10, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000183 0, 0, 0, /* Optional elements (not needed) */
Lev Walkincee931e2005-08-16 16:56:59 +0000184 -1, /* Start extensions */
185 -1 /* Stop extensions */
186};
187asn_TYPE_descriptor_t asn_DEF_Everything = {
188 "Everything",
189 "Everything",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800190 &asn_OP_SEQUENCE,
Lev Walkincee931e2005-08-16 16:56:59 +0000191 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000192 asn_DEF_Everything_tags_1,
193 sizeof(asn_DEF_Everything_tags_1)
194 /sizeof(asn_DEF_Everything_tags_1[0]), /* 1 */
195 asn_DEF_Everything_tags_1, /* Same as above */
196 sizeof(asn_DEF_Everything_tags_1)
197 /sizeof(asn_DEF_Everything_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400198 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000199 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000200 asn_MBR_Everything_1,
Lev Walkinb85a8132005-08-18 13:38:19 +0000201 10, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000202 &asn_SPC_Everything_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000203};
204
205
206/*** <<< INCLUDES [Choice1] >>> ***/
207
Lev Walkincee931e2005-08-16 16:56:59 +0000208#include <constr_CHOICE.h>
209
210/*** <<< DEPS [Choice1] >>> ***/
211
212typedef enum Choice1_PR {
213 Choice1_PR_NOTHING, /* No components present */
214 Choice1_PR_something,
215 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000216 Choice1_PR_some2
Lev Walkincee931e2005-08-16 16:56:59 +0000217} Choice1_PR;
218
Lev Walkinb85a8132005-08-18 13:38:19 +0000219/*** <<< FWD-DECLS [Choice1] >>> ***/
220
221struct Everything;
222
Lev Walkincee931e2005-08-16 16:56:59 +0000223/*** <<< TYPE-DECLS [Choice1] >>> ***/
224
225typedef struct Choice1 {
226 Choice1_PR present;
227 union Choice1_u {
Lev Walkinb85a8132005-08-18 13:38:19 +0000228 struct Everything *something;
Lev Walkincee931e2005-08-16 16:56:59 +0000229 /*
230 * This type is extensible,
231 * possible extensions are below.
232 */
Lev Walkinb85a8132005-08-18 13:38:19 +0000233 struct Everything *some2;
Lev Walkincee931e2005-08-16 16:56:59 +0000234 } choice;
235
236 /* Context for parsing across buffer boundaries */
237 asn_struct_ctx_t _asn_ctx;
238} Choice1_t;
239
240/*** <<< FUNC-DECLS [Choice1] >>> ***/
241
242extern asn_TYPE_descriptor_t asn_DEF_Choice1;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800243extern asn_CHOICE_specifics_t asn_SPC_Choice1_specs_1;
244extern asn_TYPE_member_t asn_MBR_Choice1_1[2];
Lev Walkincee931e2005-08-16 16:56:59 +0000245
Lev Walkinb85a8132005-08-18 13:38:19 +0000246/*** <<< POST-INCLUDE [Choice1] >>> ***/
247
Lev Walkin22b5ed42006-09-13 02:51:20 +0000248#include "Everything.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000249
Lev Walkincee931e2005-08-16 16:56:59 +0000250/*** <<< STAT-DEFS [Choice1] >>> ***/
251
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800252asn_TYPE_member_t asn_MBR_Choice1_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000253 { ATF_POINTER, 0, offsetof(struct Choice1, choice.something),
Lev Walkincee931e2005-08-16 16:56:59 +0000254 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
255 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000256 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700257 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000258 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400259 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000260 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
261 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000262 .name = "something"
263 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000264 { ATF_POINTER, 0, offsetof(struct Choice1, choice.some2),
Lev Walkincee931e2005-08-16 16:56:59 +0000265 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
266 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000267 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700268 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000269 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400270 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000271 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
272 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000273 .name = "some2"
274 },
275};
Lev Walkina7591b52014-10-12 18:37:35 -0700276static const asn_TYPE_tag2member_t asn_MAP_Choice1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700277 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* something */
278 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* some2 */
Lev Walkincee931e2005-08-16 16:56:59 +0000279};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800280asn_CHOICE_specifics_t asn_SPC_Choice1_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000281 sizeof(struct Choice1),
282 offsetof(struct Choice1, _asn_ctx),
283 offsetof(struct Choice1, present),
284 sizeof(((struct Choice1 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700285 .tag2el = asn_MAP_Choice1_tag2el_1,
286 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000287 .canonical_order = 0,
288 .ext_start = 1 /* Extensions start */
Lev Walkincee931e2005-08-16 16:56:59 +0000289};
290asn_TYPE_descriptor_t asn_DEF_Choice1 = {
291 "Choice1",
292 "Choice1",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800293 &asn_OP_CHOICE,
Lev Walkincee931e2005-08-16 16:56:59 +0000294 CHOICE_constraint,
Lev Walkincee931e2005-08-16 16:56:59 +0000295 0, /* No effective tags (pointer) */
296 0, /* No effective tags (count) */
297 0, /* No tags (pointer) */
298 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400299 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000300 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000301 asn_MBR_Choice1_1,
302 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000303 &asn_SPC_Choice1_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000304};
305
306
307/*** <<< INCLUDES [Choice2] >>> ***/
308
Lev Walkin22b5ed42006-09-13 02:51:20 +0000309#include "TypeRef.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000310#include <constr_CHOICE.h>
311
312/*** <<< DEPS [Choice2] >>> ***/
313
314typedef enum Choice2_PR {
315 Choice2_PR_NOTHING, /* No components present */
Lev Walkinb85a8132005-08-18 13:38:19 +0000316 Choice2_PR_typeref,
Lev Walkincee931e2005-08-16 16:56:59 +0000317 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000318 Choice2_PR_some3
Lev Walkincee931e2005-08-16 16:56:59 +0000319} Choice2_PR;
320
Lev Walkinb85a8132005-08-18 13:38:19 +0000321/*** <<< FWD-DECLS [Choice2] >>> ***/
322
323struct Everything;
324
Lev Walkincee931e2005-08-16 16:56:59 +0000325/*** <<< TYPE-DECLS [Choice2] >>> ***/
326
327typedef struct Choice2 {
328 Choice2_PR present;
329 union Choice2_u {
Lev Walkinb85a8132005-08-18 13:38:19 +0000330 TypeRef_t typeref;
Lev Walkincee931e2005-08-16 16:56:59 +0000331 /*
332 * This type is extensible,
333 * possible extensions are below.
334 */
Lev Walkinb85a8132005-08-18 13:38:19 +0000335 struct Everything *some3;
Lev Walkincee931e2005-08-16 16:56:59 +0000336 } choice;
337
338 /* Context for parsing across buffer boundaries */
339 asn_struct_ctx_t _asn_ctx;
340} Choice2_t;
341
342/*** <<< FUNC-DECLS [Choice2] >>> ***/
343
344extern asn_TYPE_descriptor_t asn_DEF_Choice2;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800345extern asn_CHOICE_specifics_t asn_SPC_Choice2_specs_1;
346extern asn_TYPE_member_t asn_MBR_Choice2_1[2];
Lev Walkincee931e2005-08-16 16:56:59 +0000347
Lev Walkinb85a8132005-08-18 13:38:19 +0000348/*** <<< POST-INCLUDE [Choice2] >>> ***/
349
Lev Walkin22b5ed42006-09-13 02:51:20 +0000350#include "Everything.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000351
Lev Walkincee931e2005-08-16 16:56:59 +0000352/*** <<< STAT-DEFS [Choice2] >>> ***/
353
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800354asn_TYPE_member_t asn_MBR_Choice2_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000355 { ATF_NOFLAGS, 0, offsetof(struct Choice2, choice.typeref),
Lev Walkincee931e2005-08-16 16:56:59 +0000356 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
357 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000358 .type = &asn_DEF_TypeRef,
Lev Walkin67a30122017-08-10 05:48:54 -0700359 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000360 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400361 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000362 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
363 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000364 .name = "typeref"
365 },
366 { ATF_POINTER, 0, offsetof(struct Choice2, choice.some3),
367 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
368 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000369 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700370 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000371 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400372 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000373 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
374 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000375 .name = "some3"
376 },
377};
Lev Walkina7591b52014-10-12 18:37:35 -0700378static const asn_TYPE_tag2member_t asn_MAP_Choice2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700379 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* typeref */
380 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* some3 */
Lev Walkincee931e2005-08-16 16:56:59 +0000381};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800382asn_CHOICE_specifics_t asn_SPC_Choice2_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000383 sizeof(struct Choice2),
384 offsetof(struct Choice2, _asn_ctx),
385 offsetof(struct Choice2, present),
386 sizeof(((struct Choice2 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700387 .tag2el = asn_MAP_Choice2_tag2el_1,
388 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000389 .canonical_order = 0,
390 .ext_start = 1 /* Extensions start */
Lev Walkincee931e2005-08-16 16:56:59 +0000391};
392asn_TYPE_descriptor_t asn_DEF_Choice2 = {
393 "Choice2",
394 "Choice2",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800395 &asn_OP_CHOICE,
Lev Walkincee931e2005-08-16 16:56:59 +0000396 CHOICE_constraint,
Lev Walkincee931e2005-08-16 16:56:59 +0000397 0, /* No effective tags (pointer) */
398 0, /* No effective tags (count) */
399 0, /* No tags (pointer) */
400 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400401 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000402 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000403 asn_MBR_Choice2_1,
Lev Walkinb85a8132005-08-18 13:38:19 +0000404 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000405 &asn_SPC_Choice2_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000406};
407
408
Lev Walkinb85a8132005-08-18 13:38:19 +0000409/*** <<< INCLUDES [Choice3] >>> ***/
410
411#include <constr_SEQUENCE.h>
412#include <asn_SEQUENCE_OF.h>
413#include <constr_SEQUENCE_OF.h>
414#include <constr_CHOICE.h>
415
416/*** <<< DEPS [Choice3] >>> ***/
417
418typedef enum Choice3_PR {
419 Choice3_PR_NOTHING, /* No components present */
420 Choice3_PR_a,
421 Choice3_PR_b,
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000422 Choice3_PR_c
Lev Walkinb85a8132005-08-18 13:38:19 +0000423} Choice3_PR;
424
425/*** <<< FWD-DECLS [Choice3] >>> ***/
426
427struct Everything;
428struct Choice3;
429
430/*** <<< TYPE-DECLS [Choice3] >>> ***/
431
432typedef struct Choice3 {
433 Choice3_PR present;
434 union Choice3_u {
435 struct a {
436 struct Everything *aa;
437
438 /* Context for parsing across buffer boundaries */
439 asn_struct_ctx_t _asn_ctx;
440 } a;
441 struct Everything *b;
442 struct c {
443 A_SEQUENCE_OF(struct Choice3) list;
444
445 /* Context for parsing across buffer boundaries */
446 asn_struct_ctx_t _asn_ctx;
447 } c;
448 } choice;
449
450 /* Context for parsing across buffer boundaries */
451 asn_struct_ctx_t _asn_ctx;
452} Choice3_t;
453
454/*** <<< FUNC-DECLS [Choice3] >>> ***/
455
456extern asn_TYPE_descriptor_t asn_DEF_Choice3;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800457extern asn_CHOICE_specifics_t asn_SPC_Choice3_specs_1;
458extern asn_TYPE_member_t asn_MBR_Choice3_1[3];
Lev Walkinb85a8132005-08-18 13:38:19 +0000459
460/*** <<< POST-INCLUDE [Choice3] >>> ***/
461
Lev Walkin22b5ed42006-09-13 02:51:20 +0000462#include "Everything.h"
463#include "Choice3.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000464
465/*** <<< STAT-DEFS [Choice3] >>> ***/
466
467static asn_TYPE_member_t asn_MBR_a_2[] = {
468 { ATF_POINTER, 0, offsetof(struct a, aa),
469 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
470 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000471 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700472 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000473 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400474 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000475 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
476 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000477 .name = "aa"
478 },
479};
Lev Walkina7591b52014-10-12 18:37:35 -0700480static const ber_tlv_tag_t asn_DEF_a_tags_2[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000481 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
482 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
483};
Lev Walkina7591b52014-10-12 18:37:35 -0700484static const asn_TYPE_tag2member_t asn_MAP_a_tag2el_2[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700485 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* aa */
Lev Walkinb85a8132005-08-18 13:38:19 +0000486};
Lev Walkin59b176e2005-11-26 11:25:14 +0000487static asn_SEQUENCE_specifics_t asn_SPC_a_specs_2 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000488 sizeof(struct a),
489 offsetof(struct a, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700490 .tag2el = asn_MAP_a_tag2el_2,
491 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000492 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +0000493 -1, /* Start extensions */
494 -1 /* Stop extensions */
495};
496static /* Use -fall-defs-global to expose */
497asn_TYPE_descriptor_t asn_DEF_a_2 = {
498 "a",
499 "a",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800500 &asn_OP_SEQUENCE,
Lev Walkinb85a8132005-08-18 13:38:19 +0000501 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000502 asn_DEF_a_tags_2,
503 sizeof(asn_DEF_a_tags_2)
504 /sizeof(asn_DEF_a_tags_2[0]) - 1, /* 1 */
505 asn_DEF_a_tags_2, /* Same as above */
506 sizeof(asn_DEF_a_tags_2)
507 /sizeof(asn_DEF_a_tags_2[0]), /* 2 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400508 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000509 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +0000510 asn_MBR_a_2,
511 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000512 &asn_SPC_a_specs_2 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000513};
514
515static asn_TYPE_member_t asn_MBR_c_5[] = {
516 { ATF_POINTER, 0, 0,
517 .tag = -1 /* Ambiguous tag (CHOICE?) */,
518 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000519 .type = &asn_DEF_Choice3,
Lev Walkin67a30122017-08-10 05:48:54 -0700520 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000521 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400522 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000523 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
524 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000525 .name = ""
526 },
527};
Lev Walkina7591b52014-10-12 18:37:35 -0700528static const ber_tlv_tag_t asn_DEF_c_tags_5[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000529 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
530 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
531};
Lev Walkin59b176e2005-11-26 11:25:14 +0000532static asn_SET_OF_specifics_t asn_SPC_c_specs_5 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000533 sizeof(struct c),
534 offsetof(struct c, _asn_ctx),
Lev Walkind1bfea62005-11-08 03:06:16 +0000535 2, /* XER encoding is XMLValueList */
Lev Walkinb85a8132005-08-18 13:38:19 +0000536};
537static /* Use -fall-defs-global to expose */
538asn_TYPE_descriptor_t asn_DEF_c_5 = {
539 "c",
540 "c",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800541 &asn_OP_SEQUENCE_OF,
Lev Walkinb85a8132005-08-18 13:38:19 +0000542 SEQUENCE_OF_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000543 asn_DEF_c_tags_5,
544 sizeof(asn_DEF_c_tags_5)
545 /sizeof(asn_DEF_c_tags_5[0]) - 1, /* 1 */
546 asn_DEF_c_tags_5, /* Same as above */
547 sizeof(asn_DEF_c_tags_5)
548 /sizeof(asn_DEF_c_tags_5[0]), /* 2 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400549 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000550 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +0000551 asn_MBR_c_5,
552 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000553 &asn_SPC_c_specs_5 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000554};
555
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800556asn_TYPE_member_t asn_MBR_Choice3_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000557 { ATF_NOFLAGS, 0, offsetof(struct Choice3, choice.a),
558 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +0000559 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000560 .type = &asn_DEF_a_2,
Lev Walkin67a30122017-08-10 05:48:54 -0700561 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000562 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400563 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000564 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
565 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000566 .name = "a"
567 },
568 { ATF_POINTER, 0, offsetof(struct Choice3, choice.b),
569 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
570 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000571 .type = &asn_DEF_Everything,
Lev Walkin67a30122017-08-10 05:48:54 -0700572 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000573 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400574 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000575 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
576 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000577 .name = "b"
578 },
579 { ATF_NOFLAGS, 0, offsetof(struct Choice3, choice.c),
580 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +0000581 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000582 .type = &asn_DEF_c_5,
Lev Walkin67a30122017-08-10 05:48:54 -0700583 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000584 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400585 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000586 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
587 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +0000588 .name = "c"
589 },
590};
Lev Walkina7591b52014-10-12 18:37:35 -0700591static const asn_TYPE_tag2member_t asn_MAP_Choice3_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700592 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
593 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* b */
594 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* c */
Lev Walkinb85a8132005-08-18 13:38:19 +0000595};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800596asn_CHOICE_specifics_t asn_SPC_Choice3_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000597 sizeof(struct Choice3),
598 offsetof(struct Choice3, _asn_ctx),
599 offsetof(struct Choice3, present),
600 sizeof(((struct Choice3 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700601 .tag2el = asn_MAP_Choice3_tag2el_1,
602 .tag2el_count = 3, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000603 .canonical_order = 0,
604 .ext_start = -1 /* Extensions start */
Lev Walkinb85a8132005-08-18 13:38:19 +0000605};
606asn_TYPE_descriptor_t asn_DEF_Choice3 = {
607 "Choice3",
608 "Choice3",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800609 &asn_OP_CHOICE,
Lev Walkinb85a8132005-08-18 13:38:19 +0000610 CHOICE_constraint,
Lev Walkinb85a8132005-08-18 13:38:19 +0000611 0, /* No effective tags (pointer) */
612 0, /* No effective tags (count) */
613 0, /* No tags (pointer) */
614 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400615 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000616 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +0000617 asn_MBR_Choice3_1,
618 3, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000619 &asn_SPC_Choice3_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000620};
621
622
Lev Walkincee931e2005-08-16 16:56:59 +0000623/*** <<< INCLUDES [Set] >>> ***/
624
625#include <asn_SET_OF.h>
626#include <INTEGER.h>
Lev Walkincee931e2005-08-16 16:56:59 +0000627#include <constr_SEQUENCE.h>
628#include <constr_SET_OF.h>
629
630/*** <<< FWD-DECLS [Set] >>> ***/
631
632struct Set;
Lev Walkinb85a8132005-08-18 13:38:19 +0000633struct Sequence;
Lev Walkincee931e2005-08-16 16:56:59 +0000634
Bi-Ruei, Chiu9b87e5b2016-06-06 00:23:16 +0800635/*** <<< FWD-DEFS [Set] >>> ***/
636
637typedef struct Member {
638 INTEGER_t Int;
639 struct Set *set;
640 struct Sequence *seq;
641 struct Set *set2 /* OPTIONAL */;
642 /*
643 * This type is extensible,
644 * possible extensions are below.
645 */
646 struct Set *set3;
647
648 /* Context for parsing across buffer boundaries */
649 asn_struct_ctx_t _asn_ctx;
650} Member;
651
Lev Walkincee931e2005-08-16 16:56:59 +0000652/*** <<< TYPE-DECLS [Set] >>> ***/
653
654typedef struct Set {
Bi-Ruei, Chiu9b87e5b2016-06-06 00:23:16 +0800655 A_SET_OF(Member) list;
Lev Walkincee931e2005-08-16 16:56:59 +0000656
657 /* Context for parsing across buffer boundaries */
658 asn_struct_ctx_t _asn_ctx;
659} Set_t;
660
661/*** <<< FUNC-DECLS [Set] >>> ***/
662
663extern asn_TYPE_descriptor_t asn_DEF_Set;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800664extern asn_SET_OF_specifics_t asn_SPC_Set_specs_1;
665extern asn_TYPE_member_t asn_MBR_Set_1[1];
Lev Walkincee931e2005-08-16 16:56:59 +0000666
667/*** <<< POST-INCLUDE [Set] >>> ***/
668
Lev Walkin22b5ed42006-09-13 02:51:20 +0000669#include "Set.h"
670#include "Sequence.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000671
672/*** <<< STAT-DEFS [Set] >>> ***/
673
674static asn_TYPE_member_t asn_MBR_Member_2[] = {
675 { ATF_NOFLAGS, 0, offsetof(struct Member, Int),
676 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
677 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000678 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700679 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000680 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400681 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000682 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
683 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000684 .name = "int"
685 },
686 { ATF_POINTER, 0, offsetof(struct Member, set),
687 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
688 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000689 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700690 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000691 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400692 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000693 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
694 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000695 .name = "set"
696 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000697 { ATF_POINTER, 0, offsetof(struct Member, seq),
Lev Walkincee931e2005-08-16 16:56:59 +0000698 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
699 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000700 .type = &asn_DEF_Sequence,
Lev Walkin67a30122017-08-10 05:48:54 -0700701 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000702 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400703 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000704 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
705 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000706 .name = "seq"
707 },
708 { ATF_POINTER, 2, offsetof(struct Member, set2),
709 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
710 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000711 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700712 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000713 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400714 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000715 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
716 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000717 .name = "set2"
718 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000719 { ATF_POINTER, 1, offsetof(struct Member, set3),
Lev Walkincee931e2005-08-16 16:56:59 +0000720 .tag = (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
721 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000722 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700723 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000724 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400725 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000726 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
727 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000728 .name = "set3"
729 },
730};
Lev Walkina7591b52014-10-12 18:37:35 -0700731static const ber_tlv_tag_t asn_DEF_Member_tags_2[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000732 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
733};
Lev Walkina7591b52014-10-12 18:37:35 -0700734static const asn_TYPE_tag2member_t asn_MAP_Member_tag2el_2[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700735 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* int */
736 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* set */
737 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* seq */
738 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* set2 */
739 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* set3 */
Lev Walkincee931e2005-08-16 16:56:59 +0000740};
Lev Walkin59b176e2005-11-26 11:25:14 +0000741static asn_SEQUENCE_specifics_t asn_SPC_Member_specs_2 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000742 sizeof(struct Member),
743 offsetof(struct Member, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700744 .tag2el = asn_MAP_Member_tag2el_2,
745 .tag2el_count = 5, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000746 0, 0, 0, /* Optional elements (not needed) */
Lev Walkincee931e2005-08-16 16:56:59 +0000747 3, /* Start extensions */
748 6 /* Stop extensions */
749};
750static /* Use -fall-defs-global to expose */
751asn_TYPE_descriptor_t asn_DEF_Member_2 = {
Lev Walkin59b176e2005-11-26 11:25:14 +0000752 "SEQUENCE",
753 "SEQUENCE",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800754 &asn_OP_SEQUENCE,
Lev Walkincee931e2005-08-16 16:56:59 +0000755 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000756 asn_DEF_Member_tags_2,
757 sizeof(asn_DEF_Member_tags_2)
758 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
759 asn_DEF_Member_tags_2, /* Same as above */
760 sizeof(asn_DEF_Member_tags_2)
761 /sizeof(asn_DEF_Member_tags_2[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400762 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000763 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000764 asn_MBR_Member_2,
765 5, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000766 &asn_SPC_Member_specs_2 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000767};
768
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800769asn_TYPE_member_t asn_MBR_Set_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000770 { ATF_POINTER, 0, 0,
771 .tag = (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
772 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000773 .type = &asn_DEF_Member_2,
Lev Walkin67a30122017-08-10 05:48:54 -0700774 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000775 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400776 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000777 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
778 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000779 .name = ""
780 },
781};
Lev Walkina7591b52014-10-12 18:37:35 -0700782static const ber_tlv_tag_t asn_DEF_Set_tags_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000783 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
784};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800785asn_SET_OF_specifics_t asn_SPC_Set_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000786 sizeof(struct Set),
787 offsetof(struct Set, _asn_ctx),
788 0, /* XER encoding is XMLDelimitedItemList */
789};
790asn_TYPE_descriptor_t asn_DEF_Set = {
791 "Set",
792 "Set",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800793 &asn_OP_SET_OF,
Lev Walkincee931e2005-08-16 16:56:59 +0000794 SET_OF_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000795 asn_DEF_Set_tags_1,
796 sizeof(asn_DEF_Set_tags_1)
797 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
798 asn_DEF_Set_tags_1, /* Same as above */
799 sizeof(asn_DEF_Set_tags_1)
800 /sizeof(asn_DEF_Set_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400801 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000802 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000803 asn_MBR_Set_1,
804 1, /* Single element */
Lev Walkin59b176e2005-11-26 11:25:14 +0000805 &asn_SPC_Set_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000806};
807
808
809/*** <<< INCLUDES [Sequence] >>> ***/
810
811#include <INTEGER.h>
812#include <constr_SEQUENCE.h>
813
814/*** <<< FWD-DECLS [Sequence] >>> ***/
815
816struct Sequence;
817struct Set;
818
819/*** <<< TYPE-DECLS [Sequence] >>> ***/
820
821typedef struct Sequence {
822 INTEGER_t a;
823 struct Sequence *seq /* OPTIONAL */;
824 /*
825 * This type is extensible,
826 * possible extensions are below.
827 */
828 INTEGER_t *b;
829 struct Set *set /* OPTIONAL */;
830
831 /* Context for parsing across buffer boundaries */
832 asn_struct_ctx_t _asn_ctx;
833} Sequence_t;
834
835/*** <<< FUNC-DECLS [Sequence] >>> ***/
836
837extern asn_TYPE_descriptor_t asn_DEF_Sequence;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800838extern asn_SEQUENCE_specifics_t asn_SPC_Sequence_specs_1;
839extern asn_TYPE_member_t asn_MBR_Sequence_1[4];
Lev Walkincee931e2005-08-16 16:56:59 +0000840
841/*** <<< POST-INCLUDE [Sequence] >>> ***/
842
Lev Walkin22b5ed42006-09-13 02:51:20 +0000843#include "Sequence.h"
844#include "Set.h"
Lev Walkincee931e2005-08-16 16:56:59 +0000845
846/*** <<< STAT-DEFS [Sequence] >>> ***/
847
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800848asn_TYPE_member_t asn_MBR_Sequence_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000849 { ATF_NOFLAGS, 0, offsetof(struct Sequence, a),
850 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
851 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000852 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700853 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000854 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400855 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000856 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
857 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000858 .name = "a"
859 },
860 { ATF_POINTER, 3, offsetof(struct Sequence, seq),
861 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
862 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000863 .type = &asn_DEF_Sequence,
Lev Walkin67a30122017-08-10 05:48:54 -0700864 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000865 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400866 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000867 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
868 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000869 .name = "seq"
870 },
Lev Walkinb85a8132005-08-18 13:38:19 +0000871 { ATF_POINTER, 2, offsetof(struct Sequence, b),
Lev Walkincee931e2005-08-16 16:56:59 +0000872 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
873 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000874 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700875 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000876 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400877 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000878 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
879 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000880 .name = "b"
881 },
882 { ATF_POINTER, 1, offsetof(struct Sequence, set),
883 .tag = (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
884 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000885 .type = &asn_DEF_Set,
Lev Walkin67a30122017-08-10 05:48:54 -0700886 .type_selector = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000887 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400888 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000889 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
890 .default_value = 0,
Lev Walkincee931e2005-08-16 16:56:59 +0000891 .name = "set"
892 },
893};
Lev Walkina7591b52014-10-12 18:37:35 -0700894static const ber_tlv_tag_t asn_DEF_Sequence_tags_1[] = {
Lev Walkincee931e2005-08-16 16:56:59 +0000895 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
896};
Lev Walkina7591b52014-10-12 18:37:35 -0700897static const asn_TYPE_tag2member_t asn_MAP_Sequence_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700898 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
899 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* seq */
900 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* b */
901 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* set */
Lev Walkincee931e2005-08-16 16:56:59 +0000902};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800903asn_SEQUENCE_specifics_t asn_SPC_Sequence_specs_1 = {
Lev Walkincee931e2005-08-16 16:56:59 +0000904 sizeof(struct Sequence),
905 offsetof(struct Sequence, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -0700906 .tag2el = asn_MAP_Sequence_tag2el_1,
907 .tag2el_count = 4, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000908 0, 0, 0, /* Optional elements (not needed) */
Lev Walkincee931e2005-08-16 16:56:59 +0000909 1, /* Start extensions */
910 5 /* Stop extensions */
911};
912asn_TYPE_descriptor_t asn_DEF_Sequence = {
913 "Sequence",
914 "Sequence",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800915 &asn_OP_SEQUENCE,
Lev Walkincee931e2005-08-16 16:56:59 +0000916 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000917 asn_DEF_Sequence_tags_1,
918 sizeof(asn_DEF_Sequence_tags_1)
919 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
920 asn_DEF_Sequence_tags_1, /* Same as above */
921 sizeof(asn_DEF_Sequence_tags_1)
922 /sizeof(asn_DEF_Sequence_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400923 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000924 0, /* No PER visible constraints */
Lev Walkincee931e2005-08-16 16:56:59 +0000925 asn_MBR_Sequence_1,
926 4, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000927 &asn_SPC_Sequence_specs_1 /* Additional specs */
Lev Walkincee931e2005-08-16 16:56:59 +0000928};
929
Lev Walkinb85a8132005-08-18 13:38:19 +0000930
931/*** <<< INCLUDES [TypeRef] >>> ***/
932
Lev Walkin22b5ed42006-09-13 02:51:20 +0000933#include "Sequence.h"
Lev Walkinb85a8132005-08-18 13:38:19 +0000934
935/*** <<< TYPE-DECLS [TypeRef] >>> ***/
936
937typedef Sequence_t TypeRef_t;
938
939/*** <<< FUNC-DECLS [TypeRef] >>> ***/
940
941extern asn_TYPE_descriptor_t asn_DEF_TypeRef;
942asn_struct_free_f TypeRef_free;
943asn_struct_print_f TypeRef_print;
944asn_constr_check_f TypeRef_constraint;
945ber_type_decoder_f TypeRef_decode_ber;
946der_type_encoder_f TypeRef_encode_der;
947xer_type_decoder_f TypeRef_decode_xer;
948xer_type_encoder_f TypeRef_encode_xer;
949
950/*** <<< CODE [TypeRef] >>> ***/
951
Lev Walkinb85a8132005-08-18 13:38:19 +0000952/*
953 * This type is implemented using Sequence,
954 * so here we adjust the DEF accordingly.
955 */
Lev Walkinb85a8132005-08-18 13:38:19 +0000956
957/*** <<< STAT-DEFS [TypeRef] >>> ***/
958
Lev Walkina7591b52014-10-12 18:37:35 -0700959static const ber_tlv_tag_t asn_DEF_TypeRef_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +0000960 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
961};
962asn_TYPE_descriptor_t asn_DEF_TypeRef = {
963 "TypeRef",
964 "TypeRef",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +0800965 &asn_OP_SEQUENCE,
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800966 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +0000967 asn_DEF_TypeRef_tags_1,
968 sizeof(asn_DEF_TypeRef_tags_1)
969 /sizeof(asn_DEF_TypeRef_tags_1[0]), /* 1 */
970 asn_DEF_TypeRef_tags_1, /* Same as above */
971 sizeof(asn_DEF_TypeRef_tags_1)
972 /sizeof(asn_DEF_TypeRef_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400973 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000974 0, /* No PER visible constraints */
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800975 asn_MBR_Sequence_1,
976 4, /* Elements count */
977 &asn_SPC_Sequence_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +0000978};
979
980
981/*** <<< INCLUDES [Alpha] >>> ***/
982
983#include <constr_SEQUENCE.h>
984
985/*** <<< FWD-DECLS [Alpha] >>> ***/
986
987struct Beta;
988
989/*** <<< TYPE-DECLS [Alpha] >>> ***/
990
991typedef struct Alpha {
992 struct Beta *a;
993 struct b {
994 struct Beta *b /* OPTIONAL */;
995
996 /* Context for parsing across buffer boundaries */
997 asn_struct_ctx_t _asn_ctx;
998 } b;
999
1000 /* Context for parsing across buffer boundaries */
1001 asn_struct_ctx_t _asn_ctx;
1002} Alpha_t;
1003
1004/*** <<< FUNC-DECLS [Alpha] >>> ***/
1005
1006extern asn_TYPE_descriptor_t asn_DEF_Alpha;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001007extern asn_SEQUENCE_specifics_t asn_SPC_Alpha_specs_1;
1008extern asn_TYPE_member_t asn_MBR_Alpha_1[2];
Lev Walkinb85a8132005-08-18 13:38:19 +00001009
1010/*** <<< POST-INCLUDE [Alpha] >>> ***/
1011
Lev Walkin22b5ed42006-09-13 02:51:20 +00001012#include "Beta.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001013
1014/*** <<< STAT-DEFS [Alpha] >>> ***/
1015
1016static asn_TYPE_member_t asn_MBR_b_3[] = {
1017 { ATF_POINTER, 1, offsetof(struct b, b),
1018 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1019 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001020 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -07001021 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001022 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001023 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001024 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1025 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001026 .name = "b"
1027 },
1028};
Lev Walkina7591b52014-10-12 18:37:35 -07001029static const ber_tlv_tag_t asn_DEF_b_tags_3[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001030 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1031 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1032};
Lev Walkina7591b52014-10-12 18:37:35 -07001033static const asn_TYPE_tag2member_t asn_MAP_b_tag2el_3[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001034 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* b */
Lev Walkinb85a8132005-08-18 13:38:19 +00001035};
Lev Walkin59b176e2005-11-26 11:25:14 +00001036static asn_SEQUENCE_specifics_t asn_SPC_b_specs_3 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001037 sizeof(struct b),
1038 offsetof(struct b, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001039 .tag2el = asn_MAP_b_tag2el_3,
1040 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001041 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001042 -1, /* Start extensions */
1043 -1 /* Stop extensions */
1044};
1045static /* Use -fall-defs-global to expose */
1046asn_TYPE_descriptor_t asn_DEF_b_3 = {
1047 "b",
1048 "b",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001049 &asn_OP_SEQUENCE,
Lev Walkinb85a8132005-08-18 13:38:19 +00001050 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +00001051 asn_DEF_b_tags_3,
1052 sizeof(asn_DEF_b_tags_3)
1053 /sizeof(asn_DEF_b_tags_3[0]) - 1, /* 1 */
1054 asn_DEF_b_tags_3, /* Same as above */
1055 sizeof(asn_DEF_b_tags_3)
1056 /sizeof(asn_DEF_b_tags_3[0]), /* 2 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001057 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001058 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001059 asn_MBR_b_3,
1060 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001061 &asn_SPC_b_specs_3 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001062};
1063
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001064asn_TYPE_member_t asn_MBR_Alpha_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001065 { ATF_POINTER, 0, offsetof(struct Alpha, a),
1066 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1067 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001068 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -07001069 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001070 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001071 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001072 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1073 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001074 .name = "a"
1075 },
1076 { ATF_NOFLAGS, 0, offsetof(struct Alpha, b),
1077 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
Lev Walkin9ab21b82006-10-19 02:46:01 +00001078 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001079 .type = &asn_DEF_b_3,
Lev Walkin67a30122017-08-10 05:48:54 -07001080 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001081 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001082 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001083 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1084 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001085 .name = "b"
1086 },
1087};
Lev Walkina7591b52014-10-12 18:37:35 -07001088static const ber_tlv_tag_t asn_DEF_Alpha_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001089 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1090};
Lev Walkina7591b52014-10-12 18:37:35 -07001091static const asn_TYPE_tag2member_t asn_MAP_Alpha_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001092 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* a */
1093 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* b */
Lev Walkinb85a8132005-08-18 13:38:19 +00001094};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001095asn_SEQUENCE_specifics_t asn_SPC_Alpha_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001096 sizeof(struct Alpha),
1097 offsetof(struct Alpha, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001098 .tag2el = asn_MAP_Alpha_tag2el_1,
1099 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001100 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001101 -1, /* Start extensions */
1102 -1 /* Stop extensions */
1103};
1104asn_TYPE_descriptor_t asn_DEF_Alpha = {
1105 "Alpha",
1106 "Alpha",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001107 &asn_OP_SEQUENCE,
Lev Walkinb85a8132005-08-18 13:38:19 +00001108 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +00001109 asn_DEF_Alpha_tags_1,
1110 sizeof(asn_DEF_Alpha_tags_1)
1111 /sizeof(asn_DEF_Alpha_tags_1[0]), /* 1 */
1112 asn_DEF_Alpha_tags_1, /* Same as above */
1113 sizeof(asn_DEF_Alpha_tags_1)
1114 /sizeof(asn_DEF_Alpha_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001115 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001116 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001117 asn_MBR_Alpha_1,
1118 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001119 &asn_SPC_Alpha_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001120};
1121
1122
1123/*** <<< INCLUDES [Beta] >>> ***/
1124
1125#include <constr_SEQUENCE.h>
1126
1127/*** <<< FWD-DECLS [Beta] >>> ***/
1128
1129struct Alpha;
1130struct Gamma;
1131
1132/*** <<< TYPE-DECLS [Beta] >>> ***/
1133
1134typedef struct Beta {
1135 struct Alpha *b /* OPTIONAL */;
1136 struct Gamma *g /* OPTIONAL */;
1137
1138 /* Context for parsing across buffer boundaries */
1139 asn_struct_ctx_t _asn_ctx;
1140} Beta_t;
1141
1142/*** <<< FUNC-DECLS [Beta] >>> ***/
1143
1144extern asn_TYPE_descriptor_t asn_DEF_Beta;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001145extern asn_SEQUENCE_specifics_t asn_SPC_Beta_specs_1;
1146extern asn_TYPE_member_t asn_MBR_Beta_1[2];
Lev Walkinb85a8132005-08-18 13:38:19 +00001147
1148/*** <<< POST-INCLUDE [Beta] >>> ***/
1149
Lev Walkin22b5ed42006-09-13 02:51:20 +00001150#include "Alpha.h"
1151#include "Gamma.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001152
1153/*** <<< STAT-DEFS [Beta] >>> ***/
1154
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001155asn_TYPE_member_t asn_MBR_Beta_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001156 { ATF_POINTER, 2, offsetof(struct Beta, b),
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_Alpha,
Lev Walkin67a30122017-08-10 05:48:54 -07001160 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001161 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001162 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001163 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1164 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001165 .name = "b"
1166 },
1167 { ATF_POINTER, 1, offsetof(struct Beta, g),
1168 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1169 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001170 .type = &asn_DEF_Gamma,
Lev Walkin67a30122017-08-10 05:48:54 -07001171 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001172 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001173 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001174 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1175 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001176 .name = "g"
1177 },
1178};
Lev Walkina7591b52014-10-12 18:37:35 -07001179static const ber_tlv_tag_t asn_DEF_Beta_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001180 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1181};
Lev Walkina7591b52014-10-12 18:37:35 -07001182static const asn_TYPE_tag2member_t asn_MAP_Beta_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001183 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* b */
1184 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* g */
Lev Walkinb85a8132005-08-18 13:38:19 +00001185};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001186asn_SEQUENCE_specifics_t asn_SPC_Beta_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001187 sizeof(struct Beta),
1188 offsetof(struct Beta, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001189 .tag2el = asn_MAP_Beta_tag2el_1,
1190 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001191 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001192 -1, /* Start extensions */
1193 -1 /* Stop extensions */
1194};
1195asn_TYPE_descriptor_t asn_DEF_Beta = {
1196 "Beta",
1197 "Beta",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001198 &asn_OP_SEQUENCE,
Lev Walkinb85a8132005-08-18 13:38:19 +00001199 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +00001200 asn_DEF_Beta_tags_1,
1201 sizeof(asn_DEF_Beta_tags_1)
1202 /sizeof(asn_DEF_Beta_tags_1[0]), /* 1 */
1203 asn_DEF_Beta_tags_1, /* Same as above */
1204 sizeof(asn_DEF_Beta_tags_1)
1205 /sizeof(asn_DEF_Beta_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001206 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001207 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001208 asn_MBR_Beta_1,
1209 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001210 &asn_SPC_Beta_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001211};
1212
1213
1214/*** <<< INCLUDES [Gamma] >>> ***/
1215
1216#include <constr_SEQUENCE.h>
1217
1218/*** <<< FWD-DECLS [Gamma] >>> ***/
1219
1220struct TwoThree;
1221struct Alpha;
1222struct Beta;
1223
1224/*** <<< TYPE-DECLS [Gamma] >>> ***/
1225
1226typedef struct Gamma {
1227 struct TwoThree *o;
1228 struct Alpha *a;
1229 struct Beta *b;
1230
1231 /* Context for parsing across buffer boundaries */
1232 asn_struct_ctx_t _asn_ctx;
1233} Gamma_t;
1234
1235/*** <<< FUNC-DECLS [Gamma] >>> ***/
1236
1237extern asn_TYPE_descriptor_t asn_DEF_Gamma;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001238extern asn_SEQUENCE_specifics_t asn_SPC_Gamma_specs_1;
1239extern asn_TYPE_member_t asn_MBR_Gamma_1[3];
Lev Walkinb85a8132005-08-18 13:38:19 +00001240
1241/*** <<< POST-INCLUDE [Gamma] >>> ***/
1242
Lev Walkin22b5ed42006-09-13 02:51:20 +00001243#include "TwoThree.h"
1244#include "Alpha.h"
1245#include "Beta.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001246
1247/*** <<< STAT-DEFS [Gamma] >>> ***/
1248
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001249asn_TYPE_member_t asn_MBR_Gamma_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001250 { ATF_POINTER, 0, offsetof(struct Gamma, o),
1251 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1252 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001253 .type = &asn_DEF_TwoThree,
Lev Walkin67a30122017-08-10 05:48:54 -07001254 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001255 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001256 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001257 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1258 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001259 .name = "o"
1260 },
1261 { ATF_POINTER, 0, offsetof(struct Gamma, a),
1262 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1263 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001264 .type = &asn_DEF_Alpha,
Lev Walkin67a30122017-08-10 05:48:54 -07001265 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001266 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001267 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001268 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1269 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001270 .name = "a"
1271 },
1272 { ATF_POINTER, 0, offsetof(struct Gamma, b),
1273 .tag = (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
1274 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001275 .type = &asn_DEF_Beta,
Lev Walkin67a30122017-08-10 05:48:54 -07001276 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001277 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001278 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001279 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1280 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001281 .name = "b"
1282 },
1283};
Lev Walkina7591b52014-10-12 18:37:35 -07001284static const ber_tlv_tag_t asn_DEF_Gamma_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001285 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
1286};
Lev Walkina7591b52014-10-12 18:37:35 -07001287static const asn_TYPE_tag2member_t asn_MAP_Gamma_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001288 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* o */
1289 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* a */
1290 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* b */
Lev Walkinb85a8132005-08-18 13:38:19 +00001291};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001292asn_SEQUENCE_specifics_t asn_SPC_Gamma_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001293 sizeof(struct Gamma),
1294 offsetof(struct Gamma, _asn_ctx),
Lev Walkine3917082017-08-23 10:29:38 -07001295 .tag2el = asn_MAP_Gamma_tag2el_1,
1296 .tag2el_count = 3, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001297 0, 0, 0, /* Optional elements (not needed) */
Lev Walkinb85a8132005-08-18 13:38:19 +00001298 -1, /* Start extensions */
1299 -1 /* Stop extensions */
1300};
1301asn_TYPE_descriptor_t asn_DEF_Gamma = {
1302 "Gamma",
1303 "Gamma",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001304 &asn_OP_SEQUENCE,
Lev Walkinb85a8132005-08-18 13:38:19 +00001305 SEQUENCE_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +00001306 asn_DEF_Gamma_tags_1,
1307 sizeof(asn_DEF_Gamma_tags_1)
1308 /sizeof(asn_DEF_Gamma_tags_1[0]), /* 1 */
1309 asn_DEF_Gamma_tags_1, /* Same as above */
1310 sizeof(asn_DEF_Gamma_tags_1)
1311 /sizeof(asn_DEF_Gamma_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001312 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001313 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001314 asn_MBR_Gamma_1,
1315 3, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001316 &asn_SPC_Gamma_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001317};
1318
1319
1320/*** <<< INCLUDES [OneTwo] >>> ***/
1321
1322#include <constr_SET.h>
1323
1324/*** <<< DEPS [OneTwo] >>> ***/
1325
1326
1327/*
1328 * Method of determining the components presence
1329 */
1330typedef enum OneTwo_PR {
1331 OneTwo_PR_m12, /* Member m12 is present */
1332} OneTwo_PR;
1333
1334/*** <<< FWD-DECLS [OneTwo] >>> ***/
1335
1336struct TwoThree;
1337
1338/*** <<< TYPE-DECLS [OneTwo] >>> ***/
1339
1340typedef struct OneTwo {
1341 struct TwoThree *m12;
1342
1343 /* Presence bitmask: ASN_SET_ISPRESENT(pOneTwo, OneTwo_PR_x) */
1344 unsigned int _presence_map
1345 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
1346
1347 /* Context for parsing across buffer boundaries */
1348 asn_struct_ctx_t _asn_ctx;
1349} OneTwo_t;
1350
1351/*** <<< FUNC-DECLS [OneTwo] >>> ***/
1352
1353extern asn_TYPE_descriptor_t asn_DEF_OneTwo;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001354extern asn_SET_specifics_t asn_SPC_OneTwo_specs_1;
1355extern asn_TYPE_member_t asn_MBR_OneTwo_1[1];
Lev Walkinb85a8132005-08-18 13:38:19 +00001356
1357/*** <<< POST-INCLUDE [OneTwo] >>> ***/
1358
Lev Walkin22b5ed42006-09-13 02:51:20 +00001359#include "TwoThree.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001360
1361/*** <<< STAT-DEFS [OneTwo] >>> ***/
1362
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001363asn_TYPE_member_t asn_MBR_OneTwo_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001364 { ATF_POINTER, 0, offsetof(struct OneTwo, m12),
1365 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1366 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001367 .type = &asn_DEF_TwoThree,
Lev Walkin67a30122017-08-10 05:48:54 -07001368 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001369 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001370 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001371 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1372 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001373 .name = "m12"
1374 },
1375};
Lev Walkina7591b52014-10-12 18:37:35 -07001376static const ber_tlv_tag_t asn_DEF_OneTwo_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001377 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1378};
Lev Walkina7591b52014-10-12 18:37:35 -07001379static const asn_TYPE_tag2member_t asn_MAP_OneTwo_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001380 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* m12 */
Lev Walkinb85a8132005-08-18 13:38:19 +00001381};
Lev Walkina7591b52014-10-12 18:37:35 -07001382static const uint8_t asn_MAP_OneTwo_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001383 (1 << 7)
1384};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001385asn_SET_specifics_t asn_SPC_OneTwo_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001386 sizeof(struct OneTwo),
1387 offsetof(struct OneTwo, _asn_ctx),
1388 offsetof(struct OneTwo, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -07001389 .tag2el = asn_MAP_OneTwo_tag2el_1,
1390 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001391 asn_MAP_OneTwo_tag2el_1, /* Same as above */
Lev Walkinb85a8132005-08-18 13:38:19 +00001392 1, /* Count of tags in the CXER map */
1393 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -07001394 (const unsigned int *)asn_MAP_OneTwo_mmap_1 /* Mandatory elements map */
Lev Walkinb85a8132005-08-18 13:38:19 +00001395};
1396asn_TYPE_descriptor_t asn_DEF_OneTwo = {
1397 "OneTwo",
1398 "OneTwo",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001399 &asn_OP_SET,
Lev Walkinb85a8132005-08-18 13:38:19 +00001400 SET_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +00001401 asn_DEF_OneTwo_tags_1,
1402 sizeof(asn_DEF_OneTwo_tags_1)
1403 /sizeof(asn_DEF_OneTwo_tags_1[0]), /* 1 */
1404 asn_DEF_OneTwo_tags_1, /* Same as above */
1405 sizeof(asn_DEF_OneTwo_tags_1)
1406 /sizeof(asn_DEF_OneTwo_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001407 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001408 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001409 asn_MBR_OneTwo_1,
1410 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001411 &asn_SPC_OneTwo_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001412};
1413
1414
1415/*** <<< INCLUDES [TwoThree] >>> ***/
1416
1417#include <constr_SET.h>
1418
1419/*** <<< DEPS [TwoThree] >>> ***/
1420
1421
1422/*
1423 * Method of determining the components presence
1424 */
1425typedef enum TwoThree_PR {
1426 TwoThree_PR_m23, /* Member m23 is present */
1427} TwoThree_PR;
1428
1429/*** <<< FWD-DECLS [TwoThree] >>> ***/
1430
1431struct ThreeOne;
1432
1433/*** <<< TYPE-DECLS [TwoThree] >>> ***/
1434
1435typedef struct TwoThree {
1436 struct ThreeOne *m23;
1437
1438 /* Presence bitmask: ASN_SET_ISPRESENT(pTwoThree, TwoThree_PR_x) */
1439 unsigned int _presence_map
1440 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
1441
1442 /* Context for parsing across buffer boundaries */
1443 asn_struct_ctx_t _asn_ctx;
1444} TwoThree_t;
1445
1446/*** <<< FUNC-DECLS [TwoThree] >>> ***/
1447
1448extern asn_TYPE_descriptor_t asn_DEF_TwoThree;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001449extern asn_SET_specifics_t asn_SPC_TwoThree_specs_1;
1450extern asn_TYPE_member_t asn_MBR_TwoThree_1[1];
Lev Walkinb85a8132005-08-18 13:38:19 +00001451
1452/*** <<< POST-INCLUDE [TwoThree] >>> ***/
1453
Lev Walkin22b5ed42006-09-13 02:51:20 +00001454#include "ThreeOne.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001455
1456/*** <<< STAT-DEFS [TwoThree] >>> ***/
1457
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001458asn_TYPE_member_t asn_MBR_TwoThree_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001459 { ATF_POINTER, 0, offsetof(struct TwoThree, m23),
1460 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1461 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001462 .type = &asn_DEF_ThreeOne,
Lev Walkin67a30122017-08-10 05:48:54 -07001463 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001464 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001465 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001466 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1467 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001468 .name = "m23"
1469 },
1470};
Lev Walkina7591b52014-10-12 18:37:35 -07001471static const ber_tlv_tag_t asn_DEF_TwoThree_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001472 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1473};
Lev Walkina7591b52014-10-12 18:37:35 -07001474static const asn_TYPE_tag2member_t asn_MAP_TwoThree_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001475 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* m23 */
Lev Walkinb85a8132005-08-18 13:38:19 +00001476};
Lev Walkina7591b52014-10-12 18:37:35 -07001477static const uint8_t asn_MAP_TwoThree_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001478 (1 << 7)
1479};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001480asn_SET_specifics_t asn_SPC_TwoThree_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001481 sizeof(struct TwoThree),
1482 offsetof(struct TwoThree, _asn_ctx),
1483 offsetof(struct TwoThree, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -07001484 .tag2el = asn_MAP_TwoThree_tag2el_1,
1485 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001486 asn_MAP_TwoThree_tag2el_1, /* Same as above */
Lev Walkinb85a8132005-08-18 13:38:19 +00001487 1, /* Count of tags in the CXER map */
1488 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -07001489 (const unsigned int *)asn_MAP_TwoThree_mmap_1 /* Mandatory elements map */
Lev Walkinb85a8132005-08-18 13:38:19 +00001490};
1491asn_TYPE_descriptor_t asn_DEF_TwoThree = {
1492 "TwoThree",
1493 "TwoThree",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001494 &asn_OP_SET,
Lev Walkinb85a8132005-08-18 13:38:19 +00001495 SET_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +00001496 asn_DEF_TwoThree_tags_1,
1497 sizeof(asn_DEF_TwoThree_tags_1)
1498 /sizeof(asn_DEF_TwoThree_tags_1[0]), /* 1 */
1499 asn_DEF_TwoThree_tags_1, /* Same as above */
1500 sizeof(asn_DEF_TwoThree_tags_1)
1501 /sizeof(asn_DEF_TwoThree_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001502 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001503 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001504 asn_MBR_TwoThree_1,
1505 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001506 &asn_SPC_TwoThree_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001507};
1508
1509
1510/*** <<< INCLUDES [ThreeOne] >>> ***/
1511
1512#include <constr_SET.h>
1513
1514/*** <<< DEPS [ThreeOne] >>> ***/
1515
1516
1517/*
1518 * Method of determining the components presence
1519 */
1520typedef enum ThreeOne_PR {
1521 ThreeOne_PR_m31, /* Member m31 is present */
1522 ThreeOne_PR_g, /* Member g is present */
1523} ThreeOne_PR;
1524
1525/*** <<< FWD-DECLS [ThreeOne] >>> ***/
1526
1527struct OneTwo;
1528struct Gamma;
1529
1530/*** <<< TYPE-DECLS [ThreeOne] >>> ***/
1531
1532typedef struct ThreeOne {
1533 struct OneTwo *m31;
1534 struct Gamma *g;
1535
1536 /* Presence bitmask: ASN_SET_ISPRESENT(pThreeOne, ThreeOne_PR_x) */
1537 unsigned int _presence_map
1538 [((2+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
1539
1540 /* Context for parsing across buffer boundaries */
1541 asn_struct_ctx_t _asn_ctx;
1542} ThreeOne_t;
1543
1544/*** <<< FUNC-DECLS [ThreeOne] >>> ***/
1545
1546extern asn_TYPE_descriptor_t asn_DEF_ThreeOne;
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001547extern asn_SET_specifics_t asn_SPC_ThreeOne_specs_1;
1548extern asn_TYPE_member_t asn_MBR_ThreeOne_1[2];
Lev Walkinb85a8132005-08-18 13:38:19 +00001549
1550/*** <<< POST-INCLUDE [ThreeOne] >>> ***/
1551
Lev Walkin22b5ed42006-09-13 02:51:20 +00001552#include "OneTwo.h"
1553#include "Gamma.h"
Lev Walkinb85a8132005-08-18 13:38:19 +00001554
1555/*** <<< STAT-DEFS [ThreeOne] >>> ***/
1556
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001557asn_TYPE_member_t asn_MBR_ThreeOne_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001558 { ATF_POINTER, 0, offsetof(struct ThreeOne, m31),
1559 .tag = (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
1560 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001561 .type = &asn_DEF_OneTwo,
Lev Walkin67a30122017-08-10 05:48:54 -07001562 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001563 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001564 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001565 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1566 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001567 .name = "m31"
1568 },
1569 { ATF_POINTER, 0, offsetof(struct ThreeOne, g),
1570 .tag = (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
1571 .tag_mode = -1, /* IMPLICIT tag at current level */
Lev Walkinae7bf3f2005-08-29 10:31:14 +00001572 .type = &asn_DEF_Gamma,
Lev Walkin67a30122017-08-10 05:48:54 -07001573 .type_selector = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001574 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +04001575 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +00001576 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
1577 .default_value = 0,
Lev Walkinb85a8132005-08-18 13:38:19 +00001578 .name = "g"
1579 },
1580};
Lev Walkina7591b52014-10-12 18:37:35 -07001581static const ber_tlv_tag_t asn_DEF_ThreeOne_tags_1[] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001582 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
1583};
Lev Walkina7591b52014-10-12 18:37:35 -07001584static const asn_TYPE_tag2member_t asn_MAP_ThreeOne_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -07001585 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* m31 */
1586 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* g */
Lev Walkinb85a8132005-08-18 13:38:19 +00001587};
Lev Walkina7591b52014-10-12 18:37:35 -07001588static const uint8_t asn_MAP_ThreeOne_mmap_1[(2 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001589 (1 << 7) | (1 << 6)
1590};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +08001591asn_SET_specifics_t asn_SPC_ThreeOne_specs_1 = {
Lev Walkinb85a8132005-08-18 13:38:19 +00001592 sizeof(struct ThreeOne),
1593 offsetof(struct ThreeOne, _asn_ctx),
1594 offsetof(struct ThreeOne, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -07001595 .tag2el = asn_MAP_ThreeOne_tag2el_1,
1596 .tag2el_count = 2, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +00001597 asn_MAP_ThreeOne_tag2el_1, /* Same as above */
Lev Walkinb85a8132005-08-18 13:38:19 +00001598 2, /* Count of tags in the CXER map */
1599 0, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -07001600 (const unsigned int *)asn_MAP_ThreeOne_mmap_1 /* Mandatory elements map */
Lev Walkinb85a8132005-08-18 13:38:19 +00001601};
1602asn_TYPE_descriptor_t asn_DEF_ThreeOne = {
1603 "ThreeOne",
1604 "ThreeOne",
Bi-Ruei, Chiu1f87ac02017-08-20 01:25:45 +08001605 &asn_OP_SET,
Lev Walkinb85a8132005-08-18 13:38:19 +00001606 SET_constraint,
Lev Walkin59b176e2005-11-26 11:25:14 +00001607 asn_DEF_ThreeOne_tags_1,
1608 sizeof(asn_DEF_ThreeOne_tags_1)
1609 /sizeof(asn_DEF_ThreeOne_tags_1[0]), /* 1 */
1610 asn_DEF_ThreeOne_tags_1, /* Same as above */
1611 sizeof(asn_DEF_ThreeOne_tags_1)
1612 /sizeof(asn_DEF_ThreeOne_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +04001613 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +00001614 0, /* No PER visible constraints */
Lev Walkinb85a8132005-08-18 13:38:19 +00001615 asn_MBR_ThreeOne_1,
1616 2, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +00001617 &asn_SPC_ThreeOne_specs_1 /* Additional specs */
Lev Walkinb85a8132005-08-18 13:38:19 +00001618};
1619