2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "E2SM-KPM-IEs"
5 * `asn1c -pdu=auto -fincludes-quoted -fcompound-names -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example`
8 #include "TestCond-Type.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.
27 * This type is implemented using NativeEnumerated,
28 * so here we adjust the DEF accordingly.
31 * This type is implemented using NativeEnumerated,
32 * so here we adjust the DEF accordingly.
34 static asn_per_constraints_t asn_PER_type_gBR_constr_2 CC_NOTUSED = {
35 { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */,
36 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
37 0, 0 /* No PER value map */
39 static asn_per_constraints_t asn_PER_type_aMBR_constr_5 CC_NOTUSED = {
40 { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */,
41 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
42 0, 0 /* No PER value map */
44 static asn_per_constraints_t asn_PER_type_isStat_constr_8 CC_NOTUSED = {
45 { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */,
46 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
47 0, 0 /* No PER value map */
49 static asn_per_constraints_t asn_PER_type_isCatM_constr_11 CC_NOTUSED = {
50 { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */,
51 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
52 0, 0 /* No PER value map */
54 static asn_per_constraints_t asn_PER_type_rSRP_constr_14 CC_NOTUSED = {
55 { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */,
56 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
57 0, 0 /* No PER value map */
59 static asn_per_constraints_t asn_PER_type_rSRQ_constr_17 CC_NOTUSED = {
60 { APC_CONSTRAINED | APC_EXTENSIBLE, 0, 0, 0, 0 } /* (0..0,...) */,
61 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
62 0, 0 /* No PER value map */
64 asn_per_constraints_t asn_PER_type_TestCond_Type_constr_1 CC_NOTUSED = {
65 { APC_CONSTRAINED | APC_EXTENSIBLE, 3, 3, 0, 5 } /* (0..5,...) */,
66 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
67 0, 0 /* No PER value map */
69 static const asn_INTEGER_enum_map_t asn_MAP_gBR_value2enum_2[] = {
71 /* This list is extensible */
73 static const unsigned int asn_MAP_gBR_enum2value_2[] = {
75 /* This list is extensible */
77 static const asn_INTEGER_specifics_t asn_SPC_gBR_specs_2 = {
78 asn_MAP_gBR_value2enum_2, /* "tag" => N; sorted by tag */
79 asn_MAP_gBR_enum2value_2, /* N => "tag"; sorted by N */
80 1, /* Number of elements in the maps */
81 2, /* Extensions before this member */
82 1, /* Strict enumeration */
83 0, /* Native long size */
86 static const ber_tlv_tag_t asn_DEF_gBR_tags_2[] = {
87 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
88 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
90 static /* Use -fall-defs-global to expose */
91 asn_TYPE_descriptor_t asn_DEF_gBR_2 = {
94 &asn_OP_NativeEnumerated,
96 sizeof(asn_DEF_gBR_tags_2)
97 /sizeof(asn_DEF_gBR_tags_2[0]) - 1, /* 1 */
98 asn_DEF_gBR_tags_2, /* Same as above */
99 sizeof(asn_DEF_gBR_tags_2)
100 /sizeof(asn_DEF_gBR_tags_2[0]), /* 2 */
101 { 0, &asn_PER_type_gBR_constr_2, NativeEnumerated_constraint },
102 0, 0, /* Defined elsewhere */
103 &asn_SPC_gBR_specs_2 /* Additional specs */
106 static const asn_INTEGER_enum_map_t asn_MAP_aMBR_value2enum_5[] = {
108 /* This list is extensible */
110 static const unsigned int asn_MAP_aMBR_enum2value_5[] = {
112 /* This list is extensible */
114 static const asn_INTEGER_specifics_t asn_SPC_aMBR_specs_5 = {
115 asn_MAP_aMBR_value2enum_5, /* "tag" => N; sorted by tag */
116 asn_MAP_aMBR_enum2value_5, /* N => "tag"; sorted by N */
117 1, /* Number of elements in the maps */
118 2, /* Extensions before this member */
119 1, /* Strict enumeration */
120 0, /* Native long size */
123 static const ber_tlv_tag_t asn_DEF_aMBR_tags_5[] = {
124 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
125 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
127 static /* Use -fall-defs-global to expose */
128 asn_TYPE_descriptor_t asn_DEF_aMBR_5 = {
131 &asn_OP_NativeEnumerated,
133 sizeof(asn_DEF_aMBR_tags_5)
134 /sizeof(asn_DEF_aMBR_tags_5[0]) - 1, /* 1 */
135 asn_DEF_aMBR_tags_5, /* Same as above */
136 sizeof(asn_DEF_aMBR_tags_5)
137 /sizeof(asn_DEF_aMBR_tags_5[0]), /* 2 */
138 { 0, &asn_PER_type_aMBR_constr_5, NativeEnumerated_constraint },
139 0, 0, /* Defined elsewhere */
140 &asn_SPC_aMBR_specs_5 /* Additional specs */
143 static const asn_INTEGER_enum_map_t asn_MAP_isStat_value2enum_8[] = {
145 /* This list is extensible */
147 static const unsigned int asn_MAP_isStat_enum2value_8[] = {
149 /* This list is extensible */
151 static const asn_INTEGER_specifics_t asn_SPC_isStat_specs_8 = {
152 asn_MAP_isStat_value2enum_8, /* "tag" => N; sorted by tag */
153 asn_MAP_isStat_enum2value_8, /* N => "tag"; sorted by N */
154 1, /* Number of elements in the maps */
155 2, /* Extensions before this member */
156 1, /* Strict enumeration */
157 0, /* Native long size */
160 static const ber_tlv_tag_t asn_DEF_isStat_tags_8[] = {
161 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
162 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
164 static /* Use -fall-defs-global to expose */
165 asn_TYPE_descriptor_t asn_DEF_isStat_8 = {
168 &asn_OP_NativeEnumerated,
169 asn_DEF_isStat_tags_8,
170 sizeof(asn_DEF_isStat_tags_8)
171 /sizeof(asn_DEF_isStat_tags_8[0]) - 1, /* 1 */
172 asn_DEF_isStat_tags_8, /* Same as above */
173 sizeof(asn_DEF_isStat_tags_8)
174 /sizeof(asn_DEF_isStat_tags_8[0]), /* 2 */
175 { 0, &asn_PER_type_isStat_constr_8, NativeEnumerated_constraint },
176 0, 0, /* Defined elsewhere */
177 &asn_SPC_isStat_specs_8 /* Additional specs */
180 static const asn_INTEGER_enum_map_t asn_MAP_isCatM_value2enum_11[] = {
182 /* This list is extensible */
184 static const unsigned int asn_MAP_isCatM_enum2value_11[] = {
186 /* This list is extensible */
188 static const asn_INTEGER_specifics_t asn_SPC_isCatM_specs_11 = {
189 asn_MAP_isCatM_value2enum_11, /* "tag" => N; sorted by tag */
190 asn_MAP_isCatM_enum2value_11, /* N => "tag"; sorted by N */
191 1, /* Number of elements in the maps */
192 2, /* Extensions before this member */
193 1, /* Strict enumeration */
194 0, /* Native long size */
197 static const ber_tlv_tag_t asn_DEF_isCatM_tags_11[] = {
198 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
199 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
201 static /* Use -fall-defs-global to expose */
202 asn_TYPE_descriptor_t asn_DEF_isCatM_11 = {
205 &asn_OP_NativeEnumerated,
206 asn_DEF_isCatM_tags_11,
207 sizeof(asn_DEF_isCatM_tags_11)
208 /sizeof(asn_DEF_isCatM_tags_11[0]) - 1, /* 1 */
209 asn_DEF_isCatM_tags_11, /* Same as above */
210 sizeof(asn_DEF_isCatM_tags_11)
211 /sizeof(asn_DEF_isCatM_tags_11[0]), /* 2 */
212 { 0, &asn_PER_type_isCatM_constr_11, NativeEnumerated_constraint },
213 0, 0, /* Defined elsewhere */
214 &asn_SPC_isCatM_specs_11 /* Additional specs */
217 static const asn_INTEGER_enum_map_t asn_MAP_rSRP_value2enum_14[] = {
219 /* This list is extensible */
221 static const unsigned int asn_MAP_rSRP_enum2value_14[] = {
223 /* This list is extensible */
225 static const asn_INTEGER_specifics_t asn_SPC_rSRP_specs_14 = {
226 asn_MAP_rSRP_value2enum_14, /* "tag" => N; sorted by tag */
227 asn_MAP_rSRP_enum2value_14, /* N => "tag"; sorted by N */
228 1, /* Number of elements in the maps */
229 2, /* Extensions before this member */
230 1, /* Strict enumeration */
231 0, /* Native long size */
234 static const ber_tlv_tag_t asn_DEF_rSRP_tags_14[] = {
235 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
236 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
238 static /* Use -fall-defs-global to expose */
239 asn_TYPE_descriptor_t asn_DEF_rSRP_14 = {
242 &asn_OP_NativeEnumerated,
243 asn_DEF_rSRP_tags_14,
244 sizeof(asn_DEF_rSRP_tags_14)
245 /sizeof(asn_DEF_rSRP_tags_14[0]) - 1, /* 1 */
246 asn_DEF_rSRP_tags_14, /* Same as above */
247 sizeof(asn_DEF_rSRP_tags_14)
248 /sizeof(asn_DEF_rSRP_tags_14[0]), /* 2 */
249 { 0, &asn_PER_type_rSRP_constr_14, NativeEnumerated_constraint },
250 0, 0, /* Defined elsewhere */
251 &asn_SPC_rSRP_specs_14 /* Additional specs */
254 static const asn_INTEGER_enum_map_t asn_MAP_rSRQ_value2enum_17[] = {
256 /* This list is extensible */
258 static const unsigned int asn_MAP_rSRQ_enum2value_17[] = {
260 /* This list is extensible */
262 static const asn_INTEGER_specifics_t asn_SPC_rSRQ_specs_17 = {
263 asn_MAP_rSRQ_value2enum_17, /* "tag" => N; sorted by tag */
264 asn_MAP_rSRQ_enum2value_17, /* N => "tag"; sorted by N */
265 1, /* Number of elements in the maps */
266 2, /* Extensions before this member */
267 1, /* Strict enumeration */
268 0, /* Native long size */
271 static const ber_tlv_tag_t asn_DEF_rSRQ_tags_17[] = {
272 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
273 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
275 static /* Use -fall-defs-global to expose */
276 asn_TYPE_descriptor_t asn_DEF_rSRQ_17 = {
279 &asn_OP_NativeEnumerated,
280 asn_DEF_rSRQ_tags_17,
281 sizeof(asn_DEF_rSRQ_tags_17)
282 /sizeof(asn_DEF_rSRQ_tags_17[0]) - 1, /* 1 */
283 asn_DEF_rSRQ_tags_17, /* Same as above */
284 sizeof(asn_DEF_rSRQ_tags_17)
285 /sizeof(asn_DEF_rSRQ_tags_17[0]), /* 2 */
286 { 0, &asn_PER_type_rSRQ_constr_17, NativeEnumerated_constraint },
287 0, 0, /* Defined elsewhere */
288 &asn_SPC_rSRQ_specs_17 /* Additional specs */
291 asn_TYPE_member_t asn_MBR_TestCond_Type_1[] = {
292 { ATF_NOFLAGS, 0, offsetof(struct TestCond_Type, choice.gBR),
293 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
294 -1, /* IMPLICIT tag at current level */
298 0, 0, /* No default value */
301 { ATF_NOFLAGS, 0, offsetof(struct TestCond_Type, choice.aMBR),
302 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
303 -1, /* IMPLICIT tag at current level */
307 0, 0, /* No default value */
310 { ATF_NOFLAGS, 0, offsetof(struct TestCond_Type, choice.isStat),
311 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
312 -1, /* IMPLICIT tag at current level */
316 0, 0, /* No default value */
319 { ATF_NOFLAGS, 0, offsetof(struct TestCond_Type, choice.isCatM),
320 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
321 -1, /* IMPLICIT tag at current level */
325 0, 0, /* No default value */
328 { ATF_NOFLAGS, 0, offsetof(struct TestCond_Type, choice.rSRP),
329 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
330 -1, /* IMPLICIT tag at current level */
334 0, 0, /* No default value */
337 { ATF_NOFLAGS, 0, offsetof(struct TestCond_Type, choice.rSRQ),
338 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
339 -1, /* IMPLICIT tag at current level */
343 0, 0, /* No default value */
347 static const asn_TYPE_tag2member_t asn_MAP_TestCond_Type_tag2el_1[] = {
348 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gBR */
349 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* aMBR */
350 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* isStat */
351 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* isCatM */
352 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* rSRP */
353 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* rSRQ */
355 asn_CHOICE_specifics_t asn_SPC_TestCond_Type_specs_1 = {
356 sizeof(struct TestCond_Type),
357 offsetof(struct TestCond_Type, _asn_ctx),
358 offsetof(struct TestCond_Type, present),
359 sizeof(((struct TestCond_Type *)0)->present),
360 asn_MAP_TestCond_Type_tag2el_1,
361 6, /* Count of tags in the map */
363 6 /* Extensions start */
365 asn_TYPE_descriptor_t asn_DEF_TestCond_Type = {
369 0, /* No effective tags (pointer) */
370 0, /* No effective tags (count) */
371 0, /* No tags (pointer) */
372 0, /* No tags (count) */
373 { 0, &asn_PER_type_TestCond_Type_constr_1, CHOICE_constraint },
374 asn_MBR_TestCond_Type_1,
375 6, /* Elements count */
376 &asn_SPC_TestCond_Type_specs_1 /* Additional specs */