blob: 1a8e997902d939d8f4465d1ab889dcf52b13774d [file] [log] [blame]
Lev Walkin35631482004-07-01 00:52:50 +00001
Lev Walkinb47ddce2004-08-11 05:25:47 +00002/*** <<< INCLUDES [T1] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +00003
Lev Walkin35631482004-07-01 00:52:50 +00004#include <INTEGER.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +00005#include <constr_SET.h>
6
7/*** <<< DEPS [T1] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +00008
9
10/*
11 * Method of determining the components presence
12 */
Lev Walkin64399722004-08-11 07:17:22 +000013typedef enum T1_PR {
Lev Walkin35631482004-07-01 00:52:50 +000014 T1_PR_i, /* Member i is present */
Lev Walkin64399722004-08-11 07:17:22 +000015} T1_PR;
Lev Walkin35631482004-07-01 00:52:50 +000016
17/*** <<< TYPE-DECLS [T1] >>> ***/
18
Lev Walkin35631482004-07-01 00:52:50 +000019typedef struct T1 {
20 INTEGER_t i;
21 /*
22 * This type is extensible,
23 * possible extensions are below.
24 */
25
26 /* Presence bitmask: ASN_SET_ISPRESENT(pT1, T1_PR_x) */
27 unsigned int _presence_map
28 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
29
30 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +000031 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +000032} T1_t;
33
Lev Walkinc8285712005-03-04 22:18:20 +000034/*** <<< FUNC-DECLS [T1] >>> ***/
35
36extern asn_TYPE_descriptor_t asn_DEF_T1;
37
Lev Walkin35631482004-07-01 00:52:50 +000038/*** <<< STAT-DEFS [T1] >>> ***/
39
Lev Walkine0272aa2005-03-04 11:26:08 +000040static asn_TYPE_member_t asn_MBR_T1_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +000041 { ATF_NOFLAGS, 0, offsetof(struct T1, i),
Lev Walkin2e3055d2004-08-20 13:36:32 +000042 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
43 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +000044 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -070045 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +000046 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040047 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000048 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
49 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +000050 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +000051 },
52};
Lev Walkina7591b52014-10-12 18:37:35 -070053static const ber_tlv_tag_t asn_DEF_T1_tags_1[] = {
Lev Walkin35631482004-07-01 00:52:50 +000054 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
55};
Lev Walkina7591b52014-10-12 18:37:35 -070056static const asn_TYPE_tag2member_t asn_MAP_T1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -070057 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +000058};
Lev Walkina7591b52014-10-12 18:37:35 -070059static const uint8_t asn_MAP_T1_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin35631482004-07-01 00:52:50 +000060 (1 << 7)
61};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080062static
63asn_SET_specifics_t asn_SPC_T1_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +000064 sizeof(struct T1),
Lev Walkindfae9752004-09-29 13:19:37 +000065 offsetof(struct T1, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +000066 offsetof(struct T1, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -070067 .tag2el = asn_MAP_T1_tag2el_1,
68 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +000069 asn_MAP_T1_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +000070 1, /* Count of tags in the CXER map */
Lev Walkin35631482004-07-01 00:52:50 +000071 1, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -070072 (const unsigned int *)asn_MAP_T1_mmap_1 /* Mandatory elements map */
Lev Walkin35631482004-07-01 00:52:50 +000073};
Lev Walkindfae9752004-09-29 13:19:37 +000074asn_TYPE_descriptor_t asn_DEF_T1 = {
Lev Walkin35631482004-07-01 00:52:50 +000075 "T1",
Lev Walkindc06f6b2004-10-20 15:50:55 +000076 "T1",
Lev Walkina9cc46e2004-09-22 16:06:28 +000077 SET_free,
78 SET_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -070079 SET_compare,
Lev Walkin35631482004-07-01 00:52:50 +000080 SET_constraint,
81 SET_decode_ber,
82 SET_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +000083 SET_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +000084 SET_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -070085 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +040086 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +000087 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +000088 asn_DEF_T1_tags_1,
89 sizeof(asn_DEF_T1_tags_1)
90 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
91 asn_DEF_T1_tags_1, /* Same as above */
92 sizeof(asn_DEF_T1_tags_1)
93 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +040094 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +000095 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +000096 asn_MBR_T1_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +000097 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +000098 &asn_SPC_T1_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +000099};
100
101
Lev Walkinb47ddce2004-08-11 05:25:47 +0000102/*** <<< INCLUDES [T2] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +0000103
Lev Walkin35631482004-07-01 00:52:50 +0000104#include <INTEGER.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +0000105#include <constr_SET.h>
106
107/*** <<< DEPS [T2] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +0000108
109
110/*
111 * Method of determining the components presence
112 */
Lev Walkin64399722004-08-11 07:17:22 +0000113typedef enum T2_PR {
Lev Walkin35631482004-07-01 00:52:50 +0000114 T2_PR_i, /* Member i is present */
Lev Walkin64399722004-08-11 07:17:22 +0000115} T2_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000116
117/*** <<< TYPE-DECLS [T2] >>> ***/
118
Lev Walkin35631482004-07-01 00:52:50 +0000119typedef struct T2 {
120 INTEGER_t i;
121 /*
122 * This type is extensible,
123 * possible extensions are below.
124 */
125
126 /* Presence bitmask: ASN_SET_ISPRESENT(pT2, T2_PR_x) */
127 unsigned int _presence_map
128 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
129
130 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000131 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000132} T2_t;
133
Lev Walkinc8285712005-03-04 22:18:20 +0000134/*** <<< FUNC-DECLS [T2] >>> ***/
135
136extern asn_TYPE_descriptor_t asn_DEF_T2;
137
Lev Walkin35631482004-07-01 00:52:50 +0000138/*** <<< STAT-DEFS [T2] >>> ***/
139
Lev Walkine0272aa2005-03-04 11:26:08 +0000140static asn_TYPE_member_t asn_MBR_T2_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000141 { ATF_NOFLAGS, 0, offsetof(struct T2, i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000142 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
143 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000144 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700145 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000146 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400147 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000148 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
149 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000150 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000151 },
152};
Lev Walkina7591b52014-10-12 18:37:35 -0700153static const ber_tlv_tag_t asn_DEF_T2_tags_1[] = {
Lev Walkin35631482004-07-01 00:52:50 +0000154 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
155};
Lev Walkina7591b52014-10-12 18:37:35 -0700156static const asn_TYPE_tag2member_t asn_MAP_T2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700157 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000158};
Lev Walkina7591b52014-10-12 18:37:35 -0700159static const uint8_t asn_MAP_T2_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin35631482004-07-01 00:52:50 +0000160 (1 << 7)
161};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800162static
163asn_SET_specifics_t asn_SPC_T2_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000164 sizeof(struct T2),
Lev Walkindfae9752004-09-29 13:19:37 +0000165 offsetof(struct T2, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000166 offsetof(struct T2, _presence_map),
Lev Walkine3917082017-08-23 10:29:38 -0700167 .tag2el = asn_MAP_T2_tag2el_1,
168 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000169 asn_MAP_T2_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +0000170 1, /* Count of tags in the CXER map */
Lev Walkin35631482004-07-01 00:52:50 +0000171 1, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -0700172 (const unsigned int *)asn_MAP_T2_mmap_1 /* Mandatory elements map */
Lev Walkin35631482004-07-01 00:52:50 +0000173};
Lev Walkindfae9752004-09-29 13:19:37 +0000174asn_TYPE_descriptor_t asn_DEF_T2 = {
Lev Walkin35631482004-07-01 00:52:50 +0000175 "T2",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000176 "T2",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000177 SET_free,
178 SET_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700179 SET_compare,
Lev Walkin35631482004-07-01 00:52:50 +0000180 SET_constraint,
181 SET_decode_ber,
182 SET_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +0000183 SET_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000184 SET_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700185 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400186 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +0000187 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000188 asn_DEF_T2_tags_1,
189 sizeof(asn_DEF_T2_tags_1)
190 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
191 asn_DEF_T2_tags_1, /* Same as above */
192 sizeof(asn_DEF_T2_tags_1)
193 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400194 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000195 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000196 asn_MBR_T2_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000197 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000198 &asn_SPC_T2_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000199};
200
201
Lev Walkinb47ddce2004-08-11 05:25:47 +0000202/*** <<< INCLUDES [T3] >>> ***/
203
204#include <INTEGER.h>
205#include <constr_CHOICE.h>
206
Lev Walkin35631482004-07-01 00:52:50 +0000207/*** <<< DEPS [T3] >>> ***/
208
Lev Walkinb47ddce2004-08-11 05:25:47 +0000209typedef enum T3_PR {
210 T3_PR_NOTHING, /* No components present */
johvik792216e2017-04-11 10:42:21 +0200211 T3_PR_i
Lev Walkinb47ddce2004-08-11 05:25:47 +0000212 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000213
Lev Walkin64399722004-08-11 07:17:22 +0000214} T3_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000215
216/*** <<< TYPE-DECLS [T3] >>> ***/
217
Lev Walkin35631482004-07-01 00:52:50 +0000218typedef struct T3 {
Lev Walkin64399722004-08-11 07:17:22 +0000219 T3_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000220 union T3_u {
Lev Walkin35631482004-07-01 00:52:50 +0000221 INTEGER_t i;
222 /*
223 * This type is extensible,
224 * possible extensions are below.
225 */
226 } choice;
227
228 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000229 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000230} T3_t;
231
Lev Walkinc8285712005-03-04 22:18:20 +0000232/*** <<< FUNC-DECLS [T3] >>> ***/
233
234extern asn_TYPE_descriptor_t asn_DEF_T3;
235
Lev Walkin35631482004-07-01 00:52:50 +0000236/*** <<< STAT-DEFS [T3] >>> ***/
237
Lev Walkine0272aa2005-03-04 11:26:08 +0000238static asn_TYPE_member_t asn_MBR_T3_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000239 { ATF_NOFLAGS, 0, offsetof(struct T3, choice.i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000240 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
241 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000242 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700243 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000244 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400245 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000246 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
247 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000248 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000249 },
250};
Lev Walkina7591b52014-10-12 18:37:35 -0700251static const asn_TYPE_tag2member_t asn_MAP_T3_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700252 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000253};
Lev Walkin59b176e2005-11-26 11:25:14 +0000254static asn_CHOICE_specifics_t asn_SPC_T3_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000255 sizeof(struct T3),
Lev Walkindfae9752004-09-29 13:19:37 +0000256 offsetof(struct T3, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000257 offsetof(struct T3, present),
258 sizeof(((struct T3 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700259 .tag2el = asn_MAP_T3_tag2el_1,
260 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000261 .canonical_order = 0,
262 .ext_start = 1 /* Extensions start */
Lev Walkin35631482004-07-01 00:52:50 +0000263};
Lev Walkindfae9752004-09-29 13:19:37 +0000264asn_TYPE_descriptor_t asn_DEF_T3 = {
Lev Walkin35631482004-07-01 00:52:50 +0000265 "T3",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000266 "T3",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000267 CHOICE_free,
268 CHOICE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700269 CHOICE_compare,
Lev Walkin35631482004-07-01 00:52:50 +0000270 CHOICE_constraint,
271 CHOICE_decode_ber,
272 CHOICE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000273 CHOICE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000274 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700275 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400276 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +0000277 CHOICE_outmost_tag,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000278 0, /* No effective tags (pointer) */
279 0, /* No effective tags (count) */
280 0, /* No tags (pointer) */
281 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400282 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000283 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000284 asn_MBR_T3_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000285 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000286 &asn_SPC_T3_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000287};
288
289
Lev Walkinb47ddce2004-08-11 05:25:47 +0000290/*** <<< INCLUDES [T4] >>> ***/
291
292#include <INTEGER.h>
293#include <constr_CHOICE.h>
294
Lev Walkin35631482004-07-01 00:52:50 +0000295/*** <<< DEPS [T4] >>> ***/
296
Lev Walkinb47ddce2004-08-11 05:25:47 +0000297typedef enum T4_PR {
298 T4_PR_NOTHING, /* No components present */
johvik792216e2017-04-11 10:42:21 +0200299 T4_PR_i
Lev Walkinb47ddce2004-08-11 05:25:47 +0000300 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000301
Lev Walkin64399722004-08-11 07:17:22 +0000302} T4_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000303
304/*** <<< TYPE-DECLS [T4] >>> ***/
305
Lev Walkin35631482004-07-01 00:52:50 +0000306typedef struct T4 {
Lev Walkin64399722004-08-11 07:17:22 +0000307 T4_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000308 union T4_u {
Lev Walkin35631482004-07-01 00:52:50 +0000309 INTEGER_t i;
310 /*
311 * This type is extensible,
312 * possible extensions are below.
313 */
314 } choice;
315
316 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000317 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000318} T4_t;
319
Lev Walkinc8285712005-03-04 22:18:20 +0000320/*** <<< FUNC-DECLS [T4] >>> ***/
321
322extern asn_TYPE_descriptor_t asn_DEF_T4;
323
Lev Walkin35631482004-07-01 00:52:50 +0000324/*** <<< STAT-DEFS [T4] >>> ***/
325
Lev Walkine0272aa2005-03-04 11:26:08 +0000326static asn_TYPE_member_t asn_MBR_T4_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000327 { ATF_NOFLAGS, 0, offsetof(struct T4, choice.i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000328 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
329 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000330 .type = &asn_DEF_INTEGER,
Lev Walkin67a30122017-08-10 05:48:54 -0700331 .type_selector = 0,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000332 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400333 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000334 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
335 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000336 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000337 },
338};
Lev Walkina7591b52014-10-12 18:37:35 -0700339static const asn_TYPE_tag2member_t asn_MAP_T4_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700340 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000341};
Lev Walkin59b176e2005-11-26 11:25:14 +0000342static asn_CHOICE_specifics_t asn_SPC_T4_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000343 sizeof(struct T4),
Lev Walkindfae9752004-09-29 13:19:37 +0000344 offsetof(struct T4, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000345 offsetof(struct T4, present),
346 sizeof(((struct T4 *)0)->present),
Lev Walkine3917082017-08-23 10:29:38 -0700347 .tag2el = asn_MAP_T4_tag2el_1,
348 .tag2el_count = 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000349 .canonical_order = 0,
350 .ext_start = 1 /* Extensions start */
Lev Walkin35631482004-07-01 00:52:50 +0000351};
Lev Walkindfae9752004-09-29 13:19:37 +0000352asn_TYPE_descriptor_t asn_DEF_T4 = {
Lev Walkin35631482004-07-01 00:52:50 +0000353 "T4",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000354 "T4",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000355 CHOICE_free,
356 CHOICE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700357 CHOICE_compare,
Lev Walkin35631482004-07-01 00:52:50 +0000358 CHOICE_constraint,
359 CHOICE_decode_ber,
360 CHOICE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000361 CHOICE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000362 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700363 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400364 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +0000365 CHOICE_outmost_tag,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000366 0, /* No effective tags (pointer) */
367 0, /* No effective tags (count) */
368 0, /* No tags (pointer) */
369 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400370 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000371 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000372 asn_MBR_T4_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000373 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000374 &asn_SPC_T4_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000375};
376