Merge "Cleanup of message sib1"
[o-du/l2.git] / src / codec_utils / RRC / FeatureSetDownlinkPerCC.c
1 /*
2  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3  * From ASN.1 module "NR-RRC-Definitions"
4  *      found in "../../../rrc_15.5.1_asn.asn1"
5  *      `asn1c -D ./rrc_out_hlal -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
6  */
7
8 #include "FeatureSetDownlinkPerCC.h"
9
10 /*
11  * This type is implemented using NativeEnumerated,
12  * so here we adjust the DEF accordingly.
13  */
14 static asn_oer_constraints_t asn_OER_type_channelBW_90mhz_constr_4 CC_NOTUSED = {
15         { 0, 0 },
16         -1};
17 static asn_per_constraints_t asn_PER_type_channelBW_90mhz_constr_4 CC_NOTUSED = {
18         { APC_CONSTRAINED,       0,  0,  0,  0 }        /* (0..0) */,
19         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
20         0, 0    /* No PER value map */
21 };
22 static const asn_INTEGER_enum_map_t asn_MAP_channelBW_90mhz_value2enum_4[] = {
23         { 0,    9,      "supported" }
24 };
25 static const unsigned int asn_MAP_channelBW_90mhz_enum2value_4[] = {
26         0       /* supported(0) */
27 };
28 static const asn_INTEGER_specifics_t asn_SPC_channelBW_90mhz_specs_4 = {
29         asn_MAP_channelBW_90mhz_value2enum_4,   /* "tag" => N; sorted by tag */
30         asn_MAP_channelBW_90mhz_enum2value_4,   /* N => "tag"; sorted by N */
31         1,      /* Number of elements in the maps */
32         0,      /* Enumeration is not extensible */
33         1,      /* Strict enumeration */
34         0,      /* Native long size */
35         0
36 };
37 static const ber_tlv_tag_t asn_DEF_channelBW_90mhz_tags_4[] = {
38         (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
39         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
40 };
41 static /* Use -fall-defs-global to expose */
42 asn_TYPE_descriptor_t asn_DEF_channelBW_90mhz_4 = {
43         "channelBW-90mhz",
44         "channelBW-90mhz",
45         &asn_OP_NativeEnumerated,
46         asn_DEF_channelBW_90mhz_tags_4,
47         sizeof(asn_DEF_channelBW_90mhz_tags_4)
48                 /sizeof(asn_DEF_channelBW_90mhz_tags_4[0]) - 1, /* 1 */
49         asn_DEF_channelBW_90mhz_tags_4, /* Same as above */
50         sizeof(asn_DEF_channelBW_90mhz_tags_4)
51                 /sizeof(asn_DEF_channelBW_90mhz_tags_4[0]), /* 2 */
52         { &asn_OER_type_channelBW_90mhz_constr_4, &asn_PER_type_channelBW_90mhz_constr_4, NativeEnumerated_constraint },
53         0, 0,   /* Defined elsewhere */
54         &asn_SPC_channelBW_90mhz_specs_4        /* Additional specs */
55 };
56
57 asn_TYPE_member_t asn_MBR_FeatureSetDownlinkPerCC_1[] = {
58         { ATF_NOFLAGS, 0, offsetof(struct FeatureSetDownlinkPerCC, supportedSubcarrierSpacingDL),
59                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
60                 -1,     /* IMPLICIT tag at current level */
61                 &asn_DEF_SubcarrierSpacing,
62                 0,
63                 { 0, 0, 0 },
64                 0, 0, /* No default value */
65                 "supportedSubcarrierSpacingDL"
66                 },
67         { ATF_NOFLAGS, 0, offsetof(struct FeatureSetDownlinkPerCC, supportedBandwidthDL),
68                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
69                 +1,     /* EXPLICIT tag at current level */
70                 &asn_DEF_SupportedBandwidth,
71                 0,
72                 { 0, 0, 0 },
73                 0, 0, /* No default value */
74                 "supportedBandwidthDL"
75                 },
76         { ATF_POINTER, 3, offsetof(struct FeatureSetDownlinkPerCC, channelBW_90mhz),
77                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
78                 -1,     /* IMPLICIT tag at current level */
79                 &asn_DEF_channelBW_90mhz_4,
80                 0,
81                 { 0, 0, 0 },
82                 0, 0, /* No default value */
83                 "channelBW-90mhz"
84                 },
85         { ATF_POINTER, 2, offsetof(struct FeatureSetDownlinkPerCC, maxNumberMIMO_LayersPDSCH),
86                 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
87                 -1,     /* IMPLICIT tag at current level */
88                 &asn_DEF_MIMO_LayersDL,
89                 0,
90                 { 0, 0, 0 },
91                 0, 0, /* No default value */
92                 "maxNumberMIMO-LayersPDSCH"
93                 },
94         { ATF_POINTER, 1, offsetof(struct FeatureSetDownlinkPerCC, supportedModulationOrderDL),
95                 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
96                 -1,     /* IMPLICIT tag at current level */
97                 &asn_DEF_ModulationOrder,
98                 0,
99                 { 0, 0, 0 },
100                 0, 0, /* No default value */
101                 "supportedModulationOrderDL"
102                 },
103 };
104 static const int asn_MAP_FeatureSetDownlinkPerCC_oms_1[] = { 2, 3, 4 };
105 static const ber_tlv_tag_t asn_DEF_FeatureSetDownlinkPerCC_tags_1[] = {
106         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
107 };
108 static const asn_TYPE_tag2member_t asn_MAP_FeatureSetDownlinkPerCC_tag2el_1[] = {
109     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* supportedSubcarrierSpacingDL */
110     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* supportedBandwidthDL */
111     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* channelBW-90mhz */
112     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* maxNumberMIMO-LayersPDSCH */
113     { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* supportedModulationOrderDL */
114 };
115 asn_SEQUENCE_specifics_t asn_SPC_FeatureSetDownlinkPerCC_specs_1 = {
116         sizeof(struct FeatureSetDownlinkPerCC),
117         offsetof(struct FeatureSetDownlinkPerCC, _asn_ctx),
118         asn_MAP_FeatureSetDownlinkPerCC_tag2el_1,
119         5,      /* Count of tags in the map */
120         asn_MAP_FeatureSetDownlinkPerCC_oms_1,  /* Optional members */
121         3, 0,   /* Root/Additions */
122         -1,     /* First extension addition */
123 };
124 asn_TYPE_descriptor_t asn_DEF_FeatureSetDownlinkPerCC = {
125         "FeatureSetDownlinkPerCC",
126         "FeatureSetDownlinkPerCC",
127         &asn_OP_SEQUENCE,
128         asn_DEF_FeatureSetDownlinkPerCC_tags_1,
129         sizeof(asn_DEF_FeatureSetDownlinkPerCC_tags_1)
130                 /sizeof(asn_DEF_FeatureSetDownlinkPerCC_tags_1[0]), /* 1 */
131         asn_DEF_FeatureSetDownlinkPerCC_tags_1, /* Same as above */
132         sizeof(asn_DEF_FeatureSetDownlinkPerCC_tags_1)
133                 /sizeof(asn_DEF_FeatureSetDownlinkPerCC_tags_1[0]), /* 1 */
134         { 0, 0, SEQUENCE_constraint },
135         asn_MBR_FeatureSetDownlinkPerCC_1,
136         5,      /* Elements count */
137         &asn_SPC_FeatureSetDownlinkPerCC_specs_1        /* Additional specs */
138 };
139