2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "NR-RRC-Definitions"
4 * found in "/home/labadmin/hlal/rrc_15.3_asn.asn1"
5 * `asn1c -D ./15_3_rrc/ -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
8 #include "RLF-TimersAndConstants.h"
11 * This type is implemented using NativeEnumerated,
12 * so here we adjust the DEF accordingly.
15 * This type is implemented using NativeEnumerated,
16 * so here we adjust the DEF accordingly.
19 * This type is implemented using NativeEnumerated,
20 * so here we adjust the DEF accordingly.
23 * This type is implemented using NativeEnumerated,
24 * so here we adjust the DEF accordingly.
26 static asn_oer_constraints_t asn_OER_type_t310_constr_2 CC_NOTUSED = {
29 static asn_per_constraints_t asn_PER_type_t310_constr_2 CC_NOTUSED = {
30 { APC_CONSTRAINED, 4, 4, 0, 8 } /* (0..8) */,
31 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
32 0, 0 /* No PER value map */
34 static asn_oer_constraints_t asn_OER_type_n310_constr_12 CC_NOTUSED = {
37 static asn_per_constraints_t asn_PER_type_n310_constr_12 CC_NOTUSED = {
38 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
39 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
40 0, 0 /* No PER value map */
42 static asn_oer_constraints_t asn_OER_type_n311_constr_21 CC_NOTUSED = {
45 static asn_per_constraints_t asn_PER_type_n311_constr_21 CC_NOTUSED = {
46 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
47 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
48 0, 0 /* No PER value map */
50 static asn_oer_constraints_t asn_OER_type_t311_v1530_constr_32 CC_NOTUSED = {
53 static asn_per_constraints_t asn_PER_type_t311_v1530_constr_32 CC_NOTUSED = {
54 { APC_CONSTRAINED, 3, 3, 0, 6 } /* (0..6) */,
55 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
56 0, 0 /* No PER value map */
58 static const asn_INTEGER_enum_map_t asn_MAP_t310_value2enum_2[] = {
69 static const unsigned int asn_MAP_t310_enum2value_2[] = {
80 static const asn_INTEGER_specifics_t asn_SPC_t310_specs_2 = {
81 asn_MAP_t310_value2enum_2, /* "tag" => N; sorted by tag */
82 asn_MAP_t310_enum2value_2, /* N => "tag"; sorted by N */
83 9, /* Number of elements in the maps */
84 0, /* Enumeration is not extensible */
85 1, /* Strict enumeration */
86 0, /* Native long size */
89 static const ber_tlv_tag_t asn_DEF_t310_tags_2[] = {
90 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
91 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
93 static /* Use -fall-defs-global to expose */
94 asn_TYPE_descriptor_t asn_DEF_t310_2 = {
97 &asn_OP_NativeEnumerated,
99 sizeof(asn_DEF_t310_tags_2)
100 /sizeof(asn_DEF_t310_tags_2[0]) - 1, /* 1 */
101 asn_DEF_t310_tags_2, /* Same as above */
102 sizeof(asn_DEF_t310_tags_2)
103 /sizeof(asn_DEF_t310_tags_2[0]), /* 2 */
104 { &asn_OER_type_t310_constr_2, &asn_PER_type_t310_constr_2, NativeEnumerated_constraint },
105 0, 0, /* Defined elsewhere */
106 &asn_SPC_t310_specs_2 /* Additional specs */
109 static const asn_INTEGER_enum_map_t asn_MAP_n310_value2enum_12[] = {
119 static const unsigned int asn_MAP_n310_enum2value_12[] = {
129 static const asn_INTEGER_specifics_t asn_SPC_n310_specs_12 = {
130 asn_MAP_n310_value2enum_12, /* "tag" => N; sorted by tag */
131 asn_MAP_n310_enum2value_12, /* N => "tag"; sorted by N */
132 8, /* Number of elements in the maps */
133 0, /* Enumeration is not extensible */
134 1, /* Strict enumeration */
135 0, /* Native long size */
138 static const ber_tlv_tag_t asn_DEF_n310_tags_12[] = {
139 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
140 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
142 static /* Use -fall-defs-global to expose */
143 asn_TYPE_descriptor_t asn_DEF_n310_12 = {
146 &asn_OP_NativeEnumerated,
147 asn_DEF_n310_tags_12,
148 sizeof(asn_DEF_n310_tags_12)
149 /sizeof(asn_DEF_n310_tags_12[0]) - 1, /* 1 */
150 asn_DEF_n310_tags_12, /* Same as above */
151 sizeof(asn_DEF_n310_tags_12)
152 /sizeof(asn_DEF_n310_tags_12[0]), /* 2 */
153 { &asn_OER_type_n310_constr_12, &asn_PER_type_n310_constr_12, NativeEnumerated_constraint },
154 0, 0, /* Defined elsewhere */
155 &asn_SPC_n310_specs_12 /* Additional specs */
158 static const asn_INTEGER_enum_map_t asn_MAP_n311_value2enum_21[] = {
168 static const unsigned int asn_MAP_n311_enum2value_21[] = {
178 static const asn_INTEGER_specifics_t asn_SPC_n311_specs_21 = {
179 asn_MAP_n311_value2enum_21, /* "tag" => N; sorted by tag */
180 asn_MAP_n311_enum2value_21, /* N => "tag"; sorted by N */
181 8, /* Number of elements in the maps */
182 0, /* Enumeration is not extensible */
183 1, /* Strict enumeration */
184 0, /* Native long size */
187 static const ber_tlv_tag_t asn_DEF_n311_tags_21[] = {
188 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
189 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
191 static /* Use -fall-defs-global to expose */
192 asn_TYPE_descriptor_t asn_DEF_n311_21 = {
195 &asn_OP_NativeEnumerated,
196 asn_DEF_n311_tags_21,
197 sizeof(asn_DEF_n311_tags_21)
198 /sizeof(asn_DEF_n311_tags_21[0]) - 1, /* 1 */
199 asn_DEF_n311_tags_21, /* Same as above */
200 sizeof(asn_DEF_n311_tags_21)
201 /sizeof(asn_DEF_n311_tags_21[0]), /* 2 */
202 { &asn_OER_type_n311_constr_21, &asn_PER_type_n311_constr_21, NativeEnumerated_constraint },
203 0, 0, /* Defined elsewhere */
204 &asn_SPC_n311_specs_21 /* Additional specs */
207 static const asn_INTEGER_enum_map_t asn_MAP_t311_v1530_value2enum_32[] = {
216 static const unsigned int asn_MAP_t311_v1530_enum2value_32[] = {
225 static const asn_INTEGER_specifics_t asn_SPC_t311_v1530_specs_32 = {
226 asn_MAP_t311_v1530_value2enum_32, /* "tag" => N; sorted by tag */
227 asn_MAP_t311_v1530_enum2value_32, /* N => "tag"; sorted by N */
228 7, /* Number of elements in the maps */
229 0, /* Enumeration is not extensible */
230 1, /* Strict enumeration */
231 0, /* Native long size */
234 static const ber_tlv_tag_t asn_DEF_t311_v1530_tags_32[] = {
235 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
236 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
238 static /* Use -fall-defs-global to expose */
239 asn_TYPE_descriptor_t asn_DEF_t311_v1530_32 = {
242 &asn_OP_NativeEnumerated,
243 asn_DEF_t311_v1530_tags_32,
244 sizeof(asn_DEF_t311_v1530_tags_32)
245 /sizeof(asn_DEF_t311_v1530_tags_32[0]) - 1, /* 1 */
246 asn_DEF_t311_v1530_tags_32, /* Same as above */
247 sizeof(asn_DEF_t311_v1530_tags_32)
248 /sizeof(asn_DEF_t311_v1530_tags_32[0]), /* 2 */
249 { &asn_OER_type_t311_v1530_constr_32, &asn_PER_type_t311_v1530_constr_32, NativeEnumerated_constraint },
250 0, 0, /* Defined elsewhere */
251 &asn_SPC_t311_v1530_specs_32 /* Additional specs */
254 static asn_TYPE_member_t asn_MBR_ext1_31[] = {
255 { ATF_NOFLAGS, 0, offsetof(struct RLF_TimersAndConstants__ext1, t311_v1530),
256 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
257 -1, /* IMPLICIT tag at current level */
258 &asn_DEF_t311_v1530_32,
261 0, 0, /* No default value */
265 static const ber_tlv_tag_t asn_DEF_ext1_tags_31[] = {
266 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
267 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
269 static const asn_TYPE_tag2member_t asn_MAP_ext1_tag2el_31[] = {
270 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* t311-v1530 */
272 static asn_SEQUENCE_specifics_t asn_SPC_ext1_specs_31 = {
273 sizeof(struct RLF_TimersAndConstants__ext1),
274 offsetof(struct RLF_TimersAndConstants__ext1, _asn_ctx),
275 asn_MAP_ext1_tag2el_31,
276 1, /* Count of tags in the map */
277 0, 0, 0, /* Optional elements (not needed) */
278 -1, /* First extension addition */
280 static /* Use -fall-defs-global to expose */
281 asn_TYPE_descriptor_t asn_DEF_ext1_31 = {
285 asn_DEF_ext1_tags_31,
286 sizeof(asn_DEF_ext1_tags_31)
287 /sizeof(asn_DEF_ext1_tags_31[0]) - 1, /* 1 */
288 asn_DEF_ext1_tags_31, /* Same as above */
289 sizeof(asn_DEF_ext1_tags_31)
290 /sizeof(asn_DEF_ext1_tags_31[0]), /* 2 */
291 { 0, 0, SEQUENCE_constraint },
293 1, /* Elements count */
294 &asn_SPC_ext1_specs_31 /* Additional specs */
297 asn_TYPE_member_t asn_MBR_RLF_TimersAndConstants_1[] = {
298 { ATF_NOFLAGS, 0, offsetof(struct RLF_TimersAndConstants, t310),
299 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
300 -1, /* IMPLICIT tag at current level */
304 0, 0, /* No default value */
307 { ATF_NOFLAGS, 0, offsetof(struct RLF_TimersAndConstants, n310),
308 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
309 -1, /* IMPLICIT tag at current level */
313 0, 0, /* No default value */
316 { ATF_NOFLAGS, 0, offsetof(struct RLF_TimersAndConstants, n311),
317 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
318 -1, /* IMPLICIT tag at current level */
322 0, 0, /* No default value */
325 { ATF_POINTER, 1, offsetof(struct RLF_TimersAndConstants, ext1),
326 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
331 0, 0, /* No default value */
335 static const int asn_MAP_RLF_TimersAndConstants_oms_1[] = { 3 };
336 static const ber_tlv_tag_t asn_DEF_RLF_TimersAndConstants_tags_1[] = {
337 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
339 static const asn_TYPE_tag2member_t asn_MAP_RLF_TimersAndConstants_tag2el_1[] = {
340 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* t310 */
341 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* n310 */
342 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* n311 */
343 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ext1 */
345 asn_SEQUENCE_specifics_t asn_SPC_RLF_TimersAndConstants_specs_1 = {
346 sizeof(struct RLF_TimersAndConstants),
347 offsetof(struct RLF_TimersAndConstants, _asn_ctx),
348 asn_MAP_RLF_TimersAndConstants_tag2el_1,
349 4, /* Count of tags in the map */
350 asn_MAP_RLF_TimersAndConstants_oms_1, /* Optional members */
351 0, 1, /* Root/Additions */
352 3, /* First extension addition */
354 asn_TYPE_descriptor_t asn_DEF_RLF_TimersAndConstants = {
355 "RLF-TimersAndConstants",
356 "RLF-TimersAndConstants",
358 asn_DEF_RLF_TimersAndConstants_tags_1,
359 sizeof(asn_DEF_RLF_TimersAndConstants_tags_1)
360 /sizeof(asn_DEF_RLF_TimersAndConstants_tags_1[0]), /* 1 */
361 asn_DEF_RLF_TimersAndConstants_tags_1, /* Same as above */
362 sizeof(asn_DEF_RLF_TimersAndConstants_tags_1)
363 /sizeof(asn_DEF_RLF_TimersAndConstants_tags_1[0]), /* 1 */
364 { 0, 0, SEQUENCE_constraint },
365 asn_MBR_RLF_TimersAndConstants_1,
366 4, /* Elements count */
367 &asn_SPC_RLF_TimersAndConstants_specs_1 /* Additional specs */