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 "CSI-RS-ResourceMapping.h"
11 memb_row1_constraint_2(const asn_TYPE_descriptor_t *td, const void *sptr,
12 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
13 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
17 ASN__CTFAIL(app_key, td, sptr,
18 "%s: value not given (%s:%d)",
19 td->name, __FILE__, __LINE__);
25 size = 8 * st->size - (st->bits_unused & 0x07);
31 /* Constraint check succeeded */
34 ASN__CTFAIL(app_key, td, sptr,
35 "%s: constraint failed (%s:%d)",
36 td->name, __FILE__, __LINE__);
42 memb_row2_constraint_2(const asn_TYPE_descriptor_t *td, const void *sptr,
43 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
44 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
48 ASN__CTFAIL(app_key, td, sptr,
49 "%s: value not given (%s:%d)",
50 td->name, __FILE__, __LINE__);
56 size = 8 * st->size - (st->bits_unused & 0x07);
62 /* Constraint check succeeded */
65 ASN__CTFAIL(app_key, td, sptr,
66 "%s: constraint failed (%s:%d)",
67 td->name, __FILE__, __LINE__);
73 memb_row4_constraint_2(const asn_TYPE_descriptor_t *td, const void *sptr,
74 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
75 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
79 ASN__CTFAIL(app_key, td, sptr,
80 "%s: value not given (%s:%d)",
81 td->name, __FILE__, __LINE__);
87 size = 8 * st->size - (st->bits_unused & 0x07);
93 /* Constraint check succeeded */
96 ASN__CTFAIL(app_key, td, sptr,
97 "%s: constraint failed (%s:%d)",
98 td->name, __FILE__, __LINE__);
104 memb_other_constraint_2(const asn_TYPE_descriptor_t *td, const void *sptr,
105 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
106 const BIT_STRING_t *st = (const BIT_STRING_t *)sptr;
110 ASN__CTFAIL(app_key, td, sptr,
111 "%s: value not given (%s:%d)",
112 td->name, __FILE__, __LINE__);
118 size = 8 * st->size - (st->bits_unused & 0x07);
124 /* Constraint check succeeded */
127 ASN__CTFAIL(app_key, td, sptr,
128 "%s: constraint failed (%s:%d)",
129 td->name, __FILE__, __LINE__);
135 * This type is implemented using NativeEnumerated,
136 * so here we adjust the DEF accordingly.
139 * This type is implemented using NativeEnumerated,
140 * so here we adjust the DEF accordingly.
143 * This type is implemented using NativeEnumerated,
144 * so here we adjust the DEF accordingly.
147 memb_firstOFDMSymbolInTimeDomain_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
148 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
152 ASN__CTFAIL(app_key, td, sptr,
153 "%s: value not given (%s:%d)",
154 td->name, __FILE__, __LINE__);
158 value = *(const long *)sptr;
160 if((value >= 0 && value <= 13)) {
161 /* Constraint check succeeded */
164 ASN__CTFAIL(app_key, td, sptr,
165 "%s: constraint failed (%s:%d)",
166 td->name, __FILE__, __LINE__);
172 memb_firstOFDMSymbolInTimeDomain2_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
173 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
177 ASN__CTFAIL(app_key, td, sptr,
178 "%s: value not given (%s:%d)",
179 td->name, __FILE__, __LINE__);
183 value = *(const long *)sptr;
185 if((value >= 2 && value <= 12)) {
186 /* Constraint check succeeded */
189 ASN__CTFAIL(app_key, td, sptr,
190 "%s: constraint failed (%s:%d)",
191 td->name, __FILE__, __LINE__);
196 static asn_oer_constraints_t asn_OER_memb_row1_constr_3 CC_NOTUSED = {
198 4 /* (SIZE(4..4)) */};
199 static asn_per_constraints_t asn_PER_memb_row1_constr_3 CC_NOTUSED = {
200 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
201 { APC_CONSTRAINED, 0, 0, 4, 4 } /* (SIZE(4..4)) */,
202 0, 0 /* No PER value map */
204 static asn_oer_constraints_t asn_OER_memb_row2_constr_4 CC_NOTUSED = {
206 12 /* (SIZE(12..12)) */};
207 static asn_per_constraints_t asn_PER_memb_row2_constr_4 CC_NOTUSED = {
208 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
209 { APC_CONSTRAINED, 0, 0, 12, 12 } /* (SIZE(12..12)) */,
210 0, 0 /* No PER value map */
212 static asn_oer_constraints_t asn_OER_memb_row4_constr_5 CC_NOTUSED = {
214 3 /* (SIZE(3..3)) */};
215 static asn_per_constraints_t asn_PER_memb_row4_constr_5 CC_NOTUSED = {
216 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
217 { APC_CONSTRAINED, 0, 0, 3, 3 } /* (SIZE(3..3)) */,
218 0, 0 /* No PER value map */
220 static asn_oer_constraints_t asn_OER_memb_other_constr_6 CC_NOTUSED = {
222 6 /* (SIZE(6..6)) */};
223 static asn_per_constraints_t asn_PER_memb_other_constr_6 CC_NOTUSED = {
224 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
225 { APC_CONSTRAINED, 0, 0, 6, 6 } /* (SIZE(6..6)) */,
226 0, 0 /* No PER value map */
228 static asn_oer_constraints_t asn_OER_type_frequencyDomainAllocation_constr_2 CC_NOTUSED = {
231 static asn_per_constraints_t asn_PER_type_frequencyDomainAllocation_constr_2 CC_NOTUSED = {
232 { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */,
233 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
234 0, 0 /* No PER value map */
236 static asn_oer_constraints_t asn_OER_type_nrofPorts_constr_7 CC_NOTUSED = {
239 static asn_per_constraints_t asn_PER_type_nrofPorts_constr_7 CC_NOTUSED = {
240 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
241 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
242 0, 0 /* No PER value map */
244 static asn_oer_constraints_t asn_OER_type_cdm_Type_constr_18 CC_NOTUSED = {
247 static asn_per_constraints_t asn_PER_type_cdm_Type_constr_18 CC_NOTUSED = {
248 { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */,
249 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
250 0, 0 /* No PER value map */
252 static asn_oer_constraints_t asn_OER_type_dot5_constr_24 CC_NOTUSED = {
255 static asn_per_constraints_t asn_PER_type_dot5_constr_24 CC_NOTUSED = {
256 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
257 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
258 0, 0 /* No PER value map */
260 static asn_oer_constraints_t asn_OER_type_density_constr_23 CC_NOTUSED = {
263 static asn_per_constraints_t asn_PER_type_density_constr_23 CC_NOTUSED = {
264 { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */,
265 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
266 0, 0 /* No PER value map */
268 static asn_oer_constraints_t asn_OER_memb_firstOFDMSymbolInTimeDomain_constr_16 CC_NOTUSED = {
269 { 1, 1 } /* (0..13) */,
271 static asn_per_constraints_t asn_PER_memb_firstOFDMSymbolInTimeDomain_constr_16 CC_NOTUSED = {
272 { APC_CONSTRAINED, 4, 4, 0, 13 } /* (0..13) */,
273 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
274 0, 0 /* No PER value map */
276 static asn_oer_constraints_t asn_OER_memb_firstOFDMSymbolInTimeDomain2_constr_17 CC_NOTUSED = {
277 { 1, 1 } /* (2..12) */,
279 static asn_per_constraints_t asn_PER_memb_firstOFDMSymbolInTimeDomain2_constr_17 CC_NOTUSED = {
280 { APC_CONSTRAINED, 4, 4, 2, 12 } /* (2..12) */,
281 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
282 0, 0 /* No PER value map */
284 static asn_TYPE_member_t asn_MBR_frequencyDomainAllocation_2[] = {
285 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping__frequencyDomainAllocation, choice.row1),
286 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
287 -1, /* IMPLICIT tag at current level */
290 { &asn_OER_memb_row1_constr_3, &asn_PER_memb_row1_constr_3, memb_row1_constraint_2 },
291 0, 0, /* No default value */
294 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping__frequencyDomainAllocation, choice.row2),
295 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
296 -1, /* IMPLICIT tag at current level */
299 { &asn_OER_memb_row2_constr_4, &asn_PER_memb_row2_constr_4, memb_row2_constraint_2 },
300 0, 0, /* No default value */
303 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping__frequencyDomainAllocation, choice.row4),
304 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
305 -1, /* IMPLICIT tag at current level */
308 { &asn_OER_memb_row4_constr_5, &asn_PER_memb_row4_constr_5, memb_row4_constraint_2 },
309 0, 0, /* No default value */
312 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping__frequencyDomainAllocation, choice.other),
313 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
314 -1, /* IMPLICIT tag at current level */
317 { &asn_OER_memb_other_constr_6, &asn_PER_memb_other_constr_6, memb_other_constraint_2 },
318 0, 0, /* No default value */
322 static const asn_TYPE_tag2member_t asn_MAP_frequencyDomainAllocation_tag2el_2[] = {
323 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* row1 */
324 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* row2 */
325 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* row4 */
326 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* other */
328 static asn_CHOICE_specifics_t asn_SPC_frequencyDomainAllocation_specs_2 = {
329 sizeof(struct CSI_RS_ResourceMapping__frequencyDomainAllocation),
330 offsetof(struct CSI_RS_ResourceMapping__frequencyDomainAllocation, _asn_ctx),
331 offsetof(struct CSI_RS_ResourceMapping__frequencyDomainAllocation, present),
332 sizeof(((struct CSI_RS_ResourceMapping__frequencyDomainAllocation *)0)->present),
333 asn_MAP_frequencyDomainAllocation_tag2el_2,
334 4, /* Count of tags in the map */
336 -1 /* Extensions start */
338 static /* Use -fall-defs-global to expose */
339 asn_TYPE_descriptor_t asn_DEF_frequencyDomainAllocation_2 = {
340 "frequencyDomainAllocation",
341 "frequencyDomainAllocation",
343 0, /* No effective tags (pointer) */
344 0, /* No effective tags (count) */
345 0, /* No tags (pointer) */
346 0, /* No tags (count) */
347 { &asn_OER_type_frequencyDomainAllocation_constr_2, &asn_PER_type_frequencyDomainAllocation_constr_2, CHOICE_constraint },
348 asn_MBR_frequencyDomainAllocation_2,
349 4, /* Elements count */
350 &asn_SPC_frequencyDomainAllocation_specs_2 /* Additional specs */
353 static const asn_INTEGER_enum_map_t asn_MAP_nrofPorts_value2enum_7[] = {
363 static const unsigned int asn_MAP_nrofPorts_enum2value_7[] = {
373 static const asn_INTEGER_specifics_t asn_SPC_nrofPorts_specs_7 = {
374 asn_MAP_nrofPorts_value2enum_7, /* "tag" => N; sorted by tag */
375 asn_MAP_nrofPorts_enum2value_7, /* N => "tag"; sorted by N */
376 8, /* Number of elements in the maps */
377 0, /* Enumeration is not extensible */
378 1, /* Strict enumeration */
379 0, /* Native long size */
382 static const ber_tlv_tag_t asn_DEF_nrofPorts_tags_7[] = {
383 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
384 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
386 static /* Use -fall-defs-global to expose */
387 asn_TYPE_descriptor_t asn_DEF_nrofPorts_7 = {
390 &asn_OP_NativeEnumerated,
391 asn_DEF_nrofPorts_tags_7,
392 sizeof(asn_DEF_nrofPorts_tags_7)
393 /sizeof(asn_DEF_nrofPorts_tags_7[0]) - 1, /* 1 */
394 asn_DEF_nrofPorts_tags_7, /* Same as above */
395 sizeof(asn_DEF_nrofPorts_tags_7)
396 /sizeof(asn_DEF_nrofPorts_tags_7[0]), /* 2 */
397 { &asn_OER_type_nrofPorts_constr_7, &asn_PER_type_nrofPorts_constr_7, NativeEnumerated_constraint },
398 0, 0, /* Defined elsewhere */
399 &asn_SPC_nrofPorts_specs_7 /* Additional specs */
402 static const asn_INTEGER_enum_map_t asn_MAP_cdm_Type_value2enum_18[] = {
405 { 2, 12, "cdm4-FD2-TD2" },
406 { 3, 12, "cdm8-FD2-TD4" }
408 static const unsigned int asn_MAP_cdm_Type_enum2value_18[] = {
409 2, /* cdm4-FD2-TD2(2) */
410 3, /* cdm8-FD2-TD4(3) */
414 static const asn_INTEGER_specifics_t asn_SPC_cdm_Type_specs_18 = {
415 asn_MAP_cdm_Type_value2enum_18, /* "tag" => N; sorted by tag */
416 asn_MAP_cdm_Type_enum2value_18, /* N => "tag"; sorted by N */
417 4, /* Number of elements in the maps */
418 0, /* Enumeration is not extensible */
419 1, /* Strict enumeration */
420 0, /* Native long size */
423 static const ber_tlv_tag_t asn_DEF_cdm_Type_tags_18[] = {
424 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
425 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
427 static /* Use -fall-defs-global to expose */
428 asn_TYPE_descriptor_t asn_DEF_cdm_Type_18 = {
431 &asn_OP_NativeEnumerated,
432 asn_DEF_cdm_Type_tags_18,
433 sizeof(asn_DEF_cdm_Type_tags_18)
434 /sizeof(asn_DEF_cdm_Type_tags_18[0]) - 1, /* 1 */
435 asn_DEF_cdm_Type_tags_18, /* Same as above */
436 sizeof(asn_DEF_cdm_Type_tags_18)
437 /sizeof(asn_DEF_cdm_Type_tags_18[0]), /* 2 */
438 { &asn_OER_type_cdm_Type_constr_18, &asn_PER_type_cdm_Type_constr_18, NativeEnumerated_constraint },
439 0, 0, /* Defined elsewhere */
440 &asn_SPC_cdm_Type_specs_18 /* Additional specs */
443 static const asn_INTEGER_enum_map_t asn_MAP_dot5_value2enum_24[] = {
444 { 0, 8, "evenPRBs" },
447 static const unsigned int asn_MAP_dot5_enum2value_24[] = {
451 static const asn_INTEGER_specifics_t asn_SPC_dot5_specs_24 = {
452 asn_MAP_dot5_value2enum_24, /* "tag" => N; sorted by tag */
453 asn_MAP_dot5_enum2value_24, /* N => "tag"; sorted by N */
454 2, /* Number of elements in the maps */
455 0, /* Enumeration is not extensible */
456 1, /* Strict enumeration */
457 0, /* Native long size */
460 static const ber_tlv_tag_t asn_DEF_dot5_tags_24[] = {
461 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
462 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
464 static /* Use -fall-defs-global to expose */
465 asn_TYPE_descriptor_t asn_DEF_dot5_24 = {
468 &asn_OP_NativeEnumerated,
469 asn_DEF_dot5_tags_24,
470 sizeof(asn_DEF_dot5_tags_24)
471 /sizeof(asn_DEF_dot5_tags_24[0]) - 1, /* 1 */
472 asn_DEF_dot5_tags_24, /* Same as above */
473 sizeof(asn_DEF_dot5_tags_24)
474 /sizeof(asn_DEF_dot5_tags_24[0]), /* 2 */
475 { &asn_OER_type_dot5_constr_24, &asn_PER_type_dot5_constr_24, NativeEnumerated_constraint },
476 0, 0, /* Defined elsewhere */
477 &asn_SPC_dot5_specs_24 /* Additional specs */
480 static asn_TYPE_member_t asn_MBR_density_23[] = {
481 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping__density, choice.dot5),
482 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
483 -1, /* IMPLICIT tag at current level */
487 0, 0, /* No default value */
490 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping__density, choice.one),
491 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
492 -1, /* IMPLICIT tag at current level */
496 0, 0, /* No default value */
499 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping__density, choice.three),
500 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
501 -1, /* IMPLICIT tag at current level */
505 0, 0, /* No default value */
508 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping__density, choice.spare),
509 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
510 -1, /* IMPLICIT tag at current level */
514 0, 0, /* No default value */
518 static const asn_TYPE_tag2member_t asn_MAP_density_tag2el_23[] = {
519 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* dot5 */
520 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* one */
521 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* three */
522 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* spare */
524 static asn_CHOICE_specifics_t asn_SPC_density_specs_23 = {
525 sizeof(struct CSI_RS_ResourceMapping__density),
526 offsetof(struct CSI_RS_ResourceMapping__density, _asn_ctx),
527 offsetof(struct CSI_RS_ResourceMapping__density, present),
528 sizeof(((struct CSI_RS_ResourceMapping__density *)0)->present),
529 asn_MAP_density_tag2el_23,
530 4, /* Count of tags in the map */
532 -1 /* Extensions start */
534 static /* Use -fall-defs-global to expose */
535 asn_TYPE_descriptor_t asn_DEF_density_23 = {
539 0, /* No effective tags (pointer) */
540 0, /* No effective tags (count) */
541 0, /* No tags (pointer) */
542 0, /* No tags (count) */
543 { &asn_OER_type_density_constr_23, &asn_PER_type_density_constr_23, CHOICE_constraint },
545 4, /* Elements count */
546 &asn_SPC_density_specs_23 /* Additional specs */
549 asn_TYPE_member_t asn_MBR_CSI_RS_ResourceMapping_1[] = {
550 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping, frequencyDomainAllocation),
551 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
552 +1, /* EXPLICIT tag at current level */
553 &asn_DEF_frequencyDomainAllocation_2,
556 0, 0, /* No default value */
557 "frequencyDomainAllocation"
559 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping, nrofPorts),
560 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
561 -1, /* IMPLICIT tag at current level */
562 &asn_DEF_nrofPorts_7,
565 0, 0, /* No default value */
568 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping, firstOFDMSymbolInTimeDomain),
569 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
570 -1, /* IMPLICIT tag at current level */
571 &asn_DEF_NativeInteger,
573 { &asn_OER_memb_firstOFDMSymbolInTimeDomain_constr_16, &asn_PER_memb_firstOFDMSymbolInTimeDomain_constr_16, memb_firstOFDMSymbolInTimeDomain_constraint_1 },
574 0, 0, /* No default value */
575 "firstOFDMSymbolInTimeDomain"
577 { ATF_POINTER, 1, offsetof(struct CSI_RS_ResourceMapping, firstOFDMSymbolInTimeDomain2),
578 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
579 -1, /* IMPLICIT tag at current level */
580 &asn_DEF_NativeInteger,
582 { &asn_OER_memb_firstOFDMSymbolInTimeDomain2_constr_17, &asn_PER_memb_firstOFDMSymbolInTimeDomain2_constr_17, memb_firstOFDMSymbolInTimeDomain2_constraint_1 },
583 0, 0, /* No default value */
584 "firstOFDMSymbolInTimeDomain2"
586 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping, cdm_Type),
587 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
588 -1, /* IMPLICIT tag at current level */
589 &asn_DEF_cdm_Type_18,
592 0, 0, /* No default value */
595 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping, density),
596 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
597 +1, /* EXPLICIT tag at current level */
601 0, 0, /* No default value */
604 { ATF_NOFLAGS, 0, offsetof(struct CSI_RS_ResourceMapping, freqBand),
605 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
606 -1, /* IMPLICIT tag at current level */
607 &asn_DEF_CSI_FrequencyOccupation,
610 0, 0, /* No default value */
614 static const int asn_MAP_CSI_RS_ResourceMapping_oms_1[] = { 3 };
615 static const ber_tlv_tag_t asn_DEF_CSI_RS_ResourceMapping_tags_1[] = {
616 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
618 static const asn_TYPE_tag2member_t asn_MAP_CSI_RS_ResourceMapping_tag2el_1[] = {
619 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* frequencyDomainAllocation */
620 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* nrofPorts */
621 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* firstOFDMSymbolInTimeDomain */
622 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* firstOFDMSymbolInTimeDomain2 */
623 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* cdm-Type */
624 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* density */
625 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* freqBand */
627 asn_SEQUENCE_specifics_t asn_SPC_CSI_RS_ResourceMapping_specs_1 = {
628 sizeof(struct CSI_RS_ResourceMapping),
629 offsetof(struct CSI_RS_ResourceMapping, _asn_ctx),
630 asn_MAP_CSI_RS_ResourceMapping_tag2el_1,
631 7, /* Count of tags in the map */
632 asn_MAP_CSI_RS_ResourceMapping_oms_1, /* Optional members */
633 1, 0, /* Root/Additions */
634 7, /* First extension addition */
636 asn_TYPE_descriptor_t asn_DEF_CSI_RS_ResourceMapping = {
637 "CSI-RS-ResourceMapping",
638 "CSI-RS-ResourceMapping",
640 asn_DEF_CSI_RS_ResourceMapping_tags_1,
641 sizeof(asn_DEF_CSI_RS_ResourceMapping_tags_1)
642 /sizeof(asn_DEF_CSI_RS_ResourceMapping_tags_1[0]), /* 1 */
643 asn_DEF_CSI_RS_ResourceMapping_tags_1, /* Same as above */
644 sizeof(asn_DEF_CSI_RS_ResourceMapping_tags_1)
645 /sizeof(asn_DEF_CSI_RS_ResourceMapping_tags_1[0]), /* 1 */
646 { 0, 0, SEQUENCE_constraint },
647 asn_MBR_CSI_RS_ResourceMapping_1,
648 7, /* Elements count */
649 &asn_SPC_CSI_RS_ResourceMapping_specs_1 /* Additional specs */