blob: b4ff41801a56eb642d1becbbc4b4772e8bf2d53f [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 Walkinba58e1b2005-01-17 12:20:19 +000045 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +040046 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +000047 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
48 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +000049 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +000050 },
51};
Lev Walkina7591b52014-10-12 18:37:35 -070052static const ber_tlv_tag_t asn_DEF_T1_tags_1[] = {
Lev Walkin35631482004-07-01 00:52:50 +000053 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
54};
Lev Walkina7591b52014-10-12 18:37:35 -070055static const asn_TYPE_tag2member_t asn_MAP_T1_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -070056 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +000057};
Lev Walkina7591b52014-10-12 18:37:35 -070058static const uint8_t asn_MAP_T1_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin35631482004-07-01 00:52:50 +000059 (1 << 7)
60};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +080061static
62asn_SET_specifics_t asn_SPC_T1_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +000063 sizeof(struct T1),
Lev Walkindfae9752004-09-29 13:19:37 +000064 offsetof(struct T1, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +000065 offsetof(struct T1, _presence_map),
Lev Walkin59b176e2005-11-26 11:25:14 +000066 asn_MAP_T1_tag2el_1,
Lev Walkin35631482004-07-01 00:52:50 +000067 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +000068 asn_MAP_T1_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +000069 1, /* Count of tags in the CXER map */
Lev Walkin35631482004-07-01 00:52:50 +000070 1, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -070071 (const unsigned int *)asn_MAP_T1_mmap_1 /* Mandatory elements map */
Lev Walkin35631482004-07-01 00:52:50 +000072};
Lev Walkindfae9752004-09-29 13:19:37 +000073asn_TYPE_descriptor_t asn_DEF_T1 = {
Lev Walkin35631482004-07-01 00:52:50 +000074 "T1",
Lev Walkindc06f6b2004-10-20 15:50:55 +000075 "T1",
Lev Walkina9cc46e2004-09-22 16:06:28 +000076 SET_free,
77 SET_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -070078 SET_compare,
Lev Walkin35631482004-07-01 00:52:50 +000079 SET_constraint,
80 SET_decode_ber,
81 SET_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +000082 SET_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +000083 SET_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -070084 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +040085 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +000086 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +000087 asn_DEF_T1_tags_1,
88 sizeof(asn_DEF_T1_tags_1)
89 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
90 asn_DEF_T1_tags_1, /* Same as above */
91 sizeof(asn_DEF_T1_tags_1)
92 /sizeof(asn_DEF_T1_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +040093 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +000094 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +000095 asn_MBR_T1_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +000096 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +000097 &asn_SPC_T1_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +000098};
99
100
Lev Walkinb47ddce2004-08-11 05:25:47 +0000101/*** <<< INCLUDES [T2] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +0000102
Lev Walkin35631482004-07-01 00:52:50 +0000103#include <INTEGER.h>
Lev Walkinb47ddce2004-08-11 05:25:47 +0000104#include <constr_SET.h>
105
106/*** <<< DEPS [T2] >>> ***/
Lev Walkin35631482004-07-01 00:52:50 +0000107
108
109/*
110 * Method of determining the components presence
111 */
Lev Walkin64399722004-08-11 07:17:22 +0000112typedef enum T2_PR {
Lev Walkin35631482004-07-01 00:52:50 +0000113 T2_PR_i, /* Member i is present */
Lev Walkin64399722004-08-11 07:17:22 +0000114} T2_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000115
116/*** <<< TYPE-DECLS [T2] >>> ***/
117
Lev Walkin35631482004-07-01 00:52:50 +0000118typedef struct T2 {
119 INTEGER_t i;
120 /*
121 * This type is extensible,
122 * possible extensions are below.
123 */
124
125 /* Presence bitmask: ASN_SET_ISPRESENT(pT2, T2_PR_x) */
126 unsigned int _presence_map
127 [((1+(8*sizeof(unsigned int))-1)/(8*sizeof(unsigned int)))];
128
129 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000130 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000131} T2_t;
132
Lev Walkinc8285712005-03-04 22:18:20 +0000133/*** <<< FUNC-DECLS [T2] >>> ***/
134
135extern asn_TYPE_descriptor_t asn_DEF_T2;
136
Lev Walkin35631482004-07-01 00:52:50 +0000137/*** <<< STAT-DEFS [T2] >>> ***/
138
Lev Walkine0272aa2005-03-04 11:26:08 +0000139static asn_TYPE_member_t asn_MBR_T2_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000140 { ATF_NOFLAGS, 0, offsetof(struct T2, i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000141 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
142 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000143 .type = &asn_DEF_INTEGER,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000144 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400145 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000146 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
147 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000148 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000149 },
150};
Lev Walkina7591b52014-10-12 18:37:35 -0700151static const ber_tlv_tag_t asn_DEF_T2_tags_1[] = {
Lev Walkin35631482004-07-01 00:52:50 +0000152 (ASN_TAG_CLASS_UNIVERSAL | (17 << 2))
153};
Lev Walkina7591b52014-10-12 18:37:35 -0700154static const asn_TYPE_tag2member_t asn_MAP_T2_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700155 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000156};
Lev Walkina7591b52014-10-12 18:37:35 -0700157static const uint8_t asn_MAP_T2_mmap_1[(1 + (8 * sizeof(unsigned int)) - 1) / 8] = {
Lev Walkin35631482004-07-01 00:52:50 +0000158 (1 << 7)
159};
Bi-Ruei, Chiu1fa31c92016-05-16 13:50:09 +0800160static
161asn_SET_specifics_t asn_SPC_T2_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000162 sizeof(struct T2),
Lev Walkindfae9752004-09-29 13:19:37 +0000163 offsetof(struct T2, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000164 offsetof(struct T2, _presence_map),
Lev Walkin59b176e2005-11-26 11:25:14 +0000165 asn_MAP_T2_tag2el_1,
Lev Walkin35631482004-07-01 00:52:50 +0000166 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000167 asn_MAP_T2_tag2el_1, /* Same as above */
Lev Walkinf82138b2005-02-25 08:20:32 +0000168 1, /* Count of tags in the CXER map */
Lev Walkin35631482004-07-01 00:52:50 +0000169 1, /* Whether extensible */
Lev Walkin46ef3f32017-07-06 08:47:53 -0700170 (const unsigned int *)asn_MAP_T2_mmap_1 /* Mandatory elements map */
Lev Walkin35631482004-07-01 00:52:50 +0000171};
Lev Walkindfae9752004-09-29 13:19:37 +0000172asn_TYPE_descriptor_t asn_DEF_T2 = {
Lev Walkin35631482004-07-01 00:52:50 +0000173 "T2",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000174 "T2",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000175 SET_free,
176 SET_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700177 SET_compare,
Lev Walkin35631482004-07-01 00:52:50 +0000178 SET_constraint,
179 SET_decode_ber,
180 SET_encode_der,
Lev Walkinb2230802005-02-14 20:31:31 +0000181 SET_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000182 SET_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700183 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400184 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +0000185 0, /* Use generic outmost tag fetcher */
Lev Walkin59b176e2005-11-26 11:25:14 +0000186 asn_DEF_T2_tags_1,
187 sizeof(asn_DEF_T2_tags_1)
188 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
189 asn_DEF_T2_tags_1, /* Same as above */
190 sizeof(asn_DEF_T2_tags_1)
191 /sizeof(asn_DEF_T2_tags_1[0]), /* 1 */
Lev Walkinb33425f2017-07-14 14:59:52 +0400192 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000193 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000194 asn_MBR_T2_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000195 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000196 &asn_SPC_T2_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000197};
198
199
Lev Walkinb47ddce2004-08-11 05:25:47 +0000200/*** <<< INCLUDES [T3] >>> ***/
201
202#include <INTEGER.h>
203#include <constr_CHOICE.h>
204
Lev Walkin35631482004-07-01 00:52:50 +0000205/*** <<< DEPS [T3] >>> ***/
206
Lev Walkinb47ddce2004-08-11 05:25:47 +0000207typedef enum T3_PR {
208 T3_PR_NOTHING, /* No components present */
johvik792216e2017-04-11 10:42:21 +0200209 T3_PR_i
Lev Walkinb47ddce2004-08-11 05:25:47 +0000210 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000211
Lev Walkin64399722004-08-11 07:17:22 +0000212} T3_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000213
214/*** <<< TYPE-DECLS [T3] >>> ***/
215
Lev Walkin35631482004-07-01 00:52:50 +0000216typedef struct T3 {
Lev Walkin64399722004-08-11 07:17:22 +0000217 T3_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000218 union T3_u {
Lev Walkin35631482004-07-01 00:52:50 +0000219 INTEGER_t i;
220 /*
221 * This type is extensible,
222 * possible extensions are below.
223 */
224 } choice;
225
226 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000227 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000228} T3_t;
229
Lev Walkinc8285712005-03-04 22:18:20 +0000230/*** <<< FUNC-DECLS [T3] >>> ***/
231
232extern asn_TYPE_descriptor_t asn_DEF_T3;
233
Lev Walkin35631482004-07-01 00:52:50 +0000234/*** <<< STAT-DEFS [T3] >>> ***/
235
Lev Walkine0272aa2005-03-04 11:26:08 +0000236static asn_TYPE_member_t asn_MBR_T3_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000237 { ATF_NOFLAGS, 0, offsetof(struct T3, choice.i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000238 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
239 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000240 .type = &asn_DEF_INTEGER,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000241 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400242 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000243 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
244 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000245 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000246 },
247};
Lev Walkina7591b52014-10-12 18:37:35 -0700248static const asn_TYPE_tag2member_t asn_MAP_T3_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700249 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000250};
Lev Walkin59b176e2005-11-26 11:25:14 +0000251static asn_CHOICE_specifics_t asn_SPC_T3_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000252 sizeof(struct T3),
Lev Walkindfae9752004-09-29 13:19:37 +0000253 offsetof(struct T3, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000254 offsetof(struct T3, present),
255 sizeof(((struct T3 *)0)->present),
Lev Walkin59b176e2005-11-26 11:25:14 +0000256 asn_MAP_T3_tag2el_1,
Lev Walkin35631482004-07-01 00:52:50 +0000257 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000258 .canonical_order = 0,
259 .ext_start = 1 /* Extensions start */
Lev Walkin35631482004-07-01 00:52:50 +0000260};
Lev Walkindfae9752004-09-29 13:19:37 +0000261asn_TYPE_descriptor_t asn_DEF_T3 = {
Lev Walkin35631482004-07-01 00:52:50 +0000262 "T3",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000263 "T3",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000264 CHOICE_free,
265 CHOICE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700266 CHOICE_compare,
Lev Walkin35631482004-07-01 00:52:50 +0000267 CHOICE_constraint,
268 CHOICE_decode_ber,
269 CHOICE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000270 CHOICE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000271 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700272 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400273 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +0000274 CHOICE_outmost_tag,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000275 0, /* No effective tags (pointer) */
276 0, /* No effective tags (count) */
277 0, /* No tags (pointer) */
278 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400279 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000280 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000281 asn_MBR_T3_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000282 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000283 &asn_SPC_T3_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000284};
285
286
Lev Walkinb47ddce2004-08-11 05:25:47 +0000287/*** <<< INCLUDES [T4] >>> ***/
288
289#include <INTEGER.h>
290#include <constr_CHOICE.h>
291
Lev Walkin35631482004-07-01 00:52:50 +0000292/*** <<< DEPS [T4] >>> ***/
293
Lev Walkinb47ddce2004-08-11 05:25:47 +0000294typedef enum T4_PR {
295 T4_PR_NOTHING, /* No components present */
johvik792216e2017-04-11 10:42:21 +0200296 T4_PR_i
Lev Walkinb47ddce2004-08-11 05:25:47 +0000297 /* Extensions may appear below */
Lev Walkin9f5bb3a2006-08-18 01:46:46 +0000298
Lev Walkin64399722004-08-11 07:17:22 +0000299} T4_PR;
Lev Walkin35631482004-07-01 00:52:50 +0000300
301/*** <<< TYPE-DECLS [T4] >>> ***/
302
Lev Walkin35631482004-07-01 00:52:50 +0000303typedef struct T4 {
Lev Walkin64399722004-08-11 07:17:22 +0000304 T4_PR present;
Lev Walkin0f5d74c2005-08-14 15:03:31 +0000305 union T4_u {
Lev Walkin35631482004-07-01 00:52:50 +0000306 INTEGER_t i;
307 /*
308 * This type is extensible,
309 * possible extensions are below.
310 */
311 } choice;
312
313 /* Context for parsing across buffer boundaries */
Lev Walkindfae9752004-09-29 13:19:37 +0000314 asn_struct_ctx_t _asn_ctx;
Lev Walkin35631482004-07-01 00:52:50 +0000315} T4_t;
316
Lev Walkinc8285712005-03-04 22:18:20 +0000317/*** <<< FUNC-DECLS [T4] >>> ***/
318
319extern asn_TYPE_descriptor_t asn_DEF_T4;
320
Lev Walkin35631482004-07-01 00:52:50 +0000321/*** <<< STAT-DEFS [T4] >>> ***/
322
Lev Walkine0272aa2005-03-04 11:26:08 +0000323static asn_TYPE_member_t asn_MBR_T4_1[] = {
Lev Walkincc93b0f2004-09-10 09:18:20 +0000324 { ATF_NOFLAGS, 0, offsetof(struct T4, choice.i),
Lev Walkin2e3055d2004-08-20 13:36:32 +0000325 .tag = (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)),
326 .tag_mode = 0,
Lev Walkinae7bf3f2005-08-29 10:31:14 +0000327 .type = &asn_DEF_INTEGER,
Lev Walkinba58e1b2005-01-17 12:20:19 +0000328 .memb_constraints = 0, /* Defer constraints checking to the member type */
Lev Walkinb33425f2017-07-14 14:59:52 +0400329 .oer_constraints = 0, /* OER is not compiled, use -gen-OER */
Lev Walkin59b176e2005-11-26 11:25:14 +0000330 .per_constraints = 0, /* PER is not compiled, use -gen-PER */
331 .default_value = 0,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000332 .name = "i"
Lev Walkin35631482004-07-01 00:52:50 +0000333 },
334};
Lev Walkina7591b52014-10-12 18:37:35 -0700335static const asn_TYPE_tag2member_t asn_MAP_T4_tag2el_1[] = {
Lev Walkin4062b012013-10-11 14:29:38 -0700336 { (ASN_TAG_CLASS_UNIVERSAL | (2 << 2)), 0, 0, 0 } /* i */
Lev Walkin35631482004-07-01 00:52:50 +0000337};
Lev Walkin59b176e2005-11-26 11:25:14 +0000338static asn_CHOICE_specifics_t asn_SPC_T4_specs_1 = {
Lev Walkin35631482004-07-01 00:52:50 +0000339 sizeof(struct T4),
Lev Walkindfae9752004-09-29 13:19:37 +0000340 offsetof(struct T4, _asn_ctx),
Lev Walkin35631482004-07-01 00:52:50 +0000341 offsetof(struct T4, present),
342 sizeof(((struct T4 *)0)->present),
Lev Walkin59b176e2005-11-26 11:25:14 +0000343 asn_MAP_T4_tag2el_1,
Lev Walkin35631482004-07-01 00:52:50 +0000344 1, /* Count of tags in the map */
Lev Walkin59b176e2005-11-26 11:25:14 +0000345 .canonical_order = 0,
346 .ext_start = 1 /* Extensions start */
Lev Walkin35631482004-07-01 00:52:50 +0000347};
Lev Walkindfae9752004-09-29 13:19:37 +0000348asn_TYPE_descriptor_t asn_DEF_T4 = {
Lev Walkin35631482004-07-01 00:52:50 +0000349 "T4",
Lev Walkindc06f6b2004-10-20 15:50:55 +0000350 "T4",
Lev Walkina9cc46e2004-09-22 16:06:28 +0000351 CHOICE_free,
352 CHOICE_print,
Lev Walkincd2f48e2017-08-10 02:14:59 -0700353 CHOICE_compare,
Lev Walkin35631482004-07-01 00:52:50 +0000354 CHOICE_constraint,
355 CHOICE_decode_ber,
356 CHOICE_encode_der,
Lev Walkin61b40d82004-10-23 15:07:45 +0000357 CHOICE_decode_xer,
Lev Walkina9cc46e2004-09-22 16:06:28 +0000358 CHOICE_encode_xer,
Lev Walkinba68c912017-07-06 07:52:39 -0700359 0, 0, /* No OER support, use "-gen-OER" to enable */
Lev Walkinb33425f2017-07-14 14:59:52 +0400360 0, 0, /* No PER support, use "-gen-PER" to enable */
Lev Walkin35631482004-07-01 00:52:50 +0000361 CHOICE_outmost_tag,
Lev Walkin188ed2c2004-09-13 08:31:01 +0000362 0, /* No effective tags (pointer) */
363 0, /* No effective tags (count) */
364 0, /* No tags (pointer) */
365 0, /* No tags (count) */
Lev Walkinb33425f2017-07-14 14:59:52 +0400366 0, /* No OER visible constraints */
Lev Walkin59b176e2005-11-26 11:25:14 +0000367 0, /* No PER visible constraints */
Lev Walkine0272aa2005-03-04 11:26:08 +0000368 asn_MBR_T4_1,
Lev Walkin2e3055d2004-08-20 13:36:32 +0000369 1, /* Elements count */
Lev Walkin59b176e2005-11-26 11:25:14 +0000370 &asn_SPC_T4_specs_1 /* Additional specs */
Lev Walkin35631482004-07-01 00:52:50 +0000371};
372