2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "NR-RRC-Definitions"
4 * found in "../ASN1_Input/rrc_15_3_asn.asn1"
5 * `asn1c -D ../RRC_output_14Nov/ -fcompound-names -fno-include-deps -findirect-choice -gen-PER`
8 #include "FeatureSetUplinkPerCC.h"
11 * This type is implemented using NativeEnumerated,
12 * so here we adjust the DEF accordingly.
15 memb_maxNumberSRS_ResourcePerSet_constraint_6(const asn_TYPE_descriptor_t *td, const void *sptr,
16 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
20 ASN__CTFAIL(app_key, td, sptr,
21 "%s: value not given (%s:%d)",
22 td->name, __FILE__, __LINE__);
26 value = *(const long *)sptr;
28 if((value >= 1 && value <= 2)) {
29 /* Constraint check succeeded */
32 ASN__CTFAIL(app_key, td, sptr,
33 "%s: constraint failed (%s:%d)",
34 td->name, __FILE__, __LINE__);
39 static asn_oer_constraints_t asn_OER_type_channelBW_90mhz_constr_4 CC_NOTUSED = {
42 static asn_per_constraints_t asn_PER_type_channelBW_90mhz_constr_4 CC_NOTUSED = {
43 { APC_CONSTRAINED, 0, 0, 0, 0 } /* (0..0) */,
44 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
45 0, 0 /* No PER value map */
47 static asn_oer_constraints_t asn_OER_memb_maxNumberSRS_ResourcePerSet_constr_8 CC_NOTUSED = {
48 { 1, 1 } /* (1..2) */,
50 static asn_per_constraints_t asn_PER_memb_maxNumberSRS_ResourcePerSet_constr_8 CC_NOTUSED = {
51 { APC_CONSTRAINED, 1, 1, 1, 2 } /* (1..2) */,
52 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
53 0, 0 /* No PER value map */
55 static const asn_INTEGER_enum_map_t asn_MAP_channelBW_90mhz_value2enum_4[] = {
58 static const unsigned int asn_MAP_channelBW_90mhz_enum2value_4[] = {
61 static const asn_INTEGER_specifics_t asn_SPC_channelBW_90mhz_specs_4 = {
62 asn_MAP_channelBW_90mhz_value2enum_4, /* "tag" => N; sorted by tag */
63 asn_MAP_channelBW_90mhz_enum2value_4, /* N => "tag"; sorted by N */
64 1, /* Number of elements in the maps */
65 0, /* Enumeration is not extensible */
66 1, /* Strict enumeration */
67 0, /* Native long size */
70 static const ber_tlv_tag_t asn_DEF_channelBW_90mhz_tags_4[] = {
71 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
72 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
74 static /* Use -fall-defs-global to expose */
75 asn_TYPE_descriptor_t asn_DEF_channelBW_90mhz_4 = {
78 &asn_OP_NativeEnumerated,
79 asn_DEF_channelBW_90mhz_tags_4,
80 sizeof(asn_DEF_channelBW_90mhz_tags_4)
81 /sizeof(asn_DEF_channelBW_90mhz_tags_4[0]) - 1, /* 1 */
82 asn_DEF_channelBW_90mhz_tags_4, /* Same as above */
83 sizeof(asn_DEF_channelBW_90mhz_tags_4)
84 /sizeof(asn_DEF_channelBW_90mhz_tags_4[0]), /* 2 */
85 { &asn_OER_type_channelBW_90mhz_constr_4, &asn_PER_type_channelBW_90mhz_constr_4, NativeEnumerated_constraint },
86 0, 0, /* Defined elsewhere */
87 &asn_SPC_channelBW_90mhz_specs_4 /* Additional specs */
90 static asn_TYPE_member_t asn_MBR_mimo_CB_PUSCH_6[] = {
91 { ATF_POINTER, 1, offsetof(struct FeatureSetUplinkPerCC__mimo_CB_PUSCH, maxNumberMIMO_LayersCB_PUSCH),
92 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
93 -1, /* IMPLICIT tag at current level */
94 &asn_DEF_MIMO_LayersUL,
97 0, 0, /* No default value */
98 "maxNumberMIMO-LayersCB-PUSCH"
100 { ATF_NOFLAGS, 0, offsetof(struct FeatureSetUplinkPerCC__mimo_CB_PUSCH, maxNumberSRS_ResourcePerSet),
101 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
102 -1, /* IMPLICIT tag at current level */
103 &asn_DEF_NativeInteger,
105 { &asn_OER_memb_maxNumberSRS_ResourcePerSet_constr_8, &asn_PER_memb_maxNumberSRS_ResourcePerSet_constr_8, memb_maxNumberSRS_ResourcePerSet_constraint_6 },
106 0, 0, /* No default value */
107 "maxNumberSRS-ResourcePerSet"
110 static const int asn_MAP_mimo_CB_PUSCH_oms_6[] = { 0 };
111 static const ber_tlv_tag_t asn_DEF_mimo_CB_PUSCH_tags_6[] = {
112 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
113 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
115 static const asn_TYPE_tag2member_t asn_MAP_mimo_CB_PUSCH_tag2el_6[] = {
116 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* maxNumberMIMO-LayersCB-PUSCH */
117 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* maxNumberSRS-ResourcePerSet */
119 static asn_SEQUENCE_specifics_t asn_SPC_mimo_CB_PUSCH_specs_6 = {
120 sizeof(struct FeatureSetUplinkPerCC__mimo_CB_PUSCH),
121 offsetof(struct FeatureSetUplinkPerCC__mimo_CB_PUSCH, _asn_ctx),
122 asn_MAP_mimo_CB_PUSCH_tag2el_6,
123 2, /* Count of tags in the map */
124 asn_MAP_mimo_CB_PUSCH_oms_6, /* Optional members */
125 1, 0, /* Root/Additions */
126 -1, /* First extension addition */
128 static /* Use -fall-defs-global to expose */
129 asn_TYPE_descriptor_t asn_DEF_mimo_CB_PUSCH_6 = {
133 asn_DEF_mimo_CB_PUSCH_tags_6,
134 sizeof(asn_DEF_mimo_CB_PUSCH_tags_6)
135 /sizeof(asn_DEF_mimo_CB_PUSCH_tags_6[0]) - 1, /* 1 */
136 asn_DEF_mimo_CB_PUSCH_tags_6, /* Same as above */
137 sizeof(asn_DEF_mimo_CB_PUSCH_tags_6)
138 /sizeof(asn_DEF_mimo_CB_PUSCH_tags_6[0]), /* 2 */
139 { 0, 0, SEQUENCE_constraint },
140 asn_MBR_mimo_CB_PUSCH_6,
141 2, /* Elements count */
142 &asn_SPC_mimo_CB_PUSCH_specs_6 /* Additional specs */
145 asn_TYPE_member_t asn_MBR_FeatureSetUplinkPerCC_1[] = {
146 { ATF_NOFLAGS, 0, offsetof(struct FeatureSetUplinkPerCC, supportedSubcarrierSpacingUL),
147 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
148 -1, /* IMPLICIT tag at current level */
149 &asn_DEF_SubcarrierSpacing,
152 0, 0, /* No default value */
153 "supportedSubcarrierSpacingUL"
155 { ATF_NOFLAGS, 0, offsetof(struct FeatureSetUplinkPerCC, supportedBandwidthUL),
156 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
157 +1, /* EXPLICIT tag at current level */
158 &asn_DEF_SupportedBandwidth,
161 0, 0, /* No default value */
162 "supportedBandwidthUL"
164 { ATF_POINTER, 4, offsetof(struct FeatureSetUplinkPerCC, channelBW_90mhz),
165 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
166 -1, /* IMPLICIT tag at current level */
167 &asn_DEF_channelBW_90mhz_4,
170 0, 0, /* No default value */
173 { ATF_POINTER, 3, offsetof(struct FeatureSetUplinkPerCC, mimo_CB_PUSCH),
174 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
176 &asn_DEF_mimo_CB_PUSCH_6,
179 0, 0, /* No default value */
182 { ATF_POINTER, 2, offsetof(struct FeatureSetUplinkPerCC, maxNumberMIMO_LayersNonCB_PUSCH),
183 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
184 -1, /* IMPLICIT tag at current level */
185 &asn_DEF_MIMO_LayersUL,
188 0, 0, /* No default value */
189 "maxNumberMIMO-LayersNonCB-PUSCH"
191 { ATF_POINTER, 1, offsetof(struct FeatureSetUplinkPerCC, supportedModulationOrderUL),
192 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
193 -1, /* IMPLICIT tag at current level */
194 &asn_DEF_ModulationOrder,
197 0, 0, /* No default value */
198 "supportedModulationOrderUL"
201 static const int asn_MAP_FeatureSetUplinkPerCC_oms_1[] = { 2, 3, 4, 5 };
202 static const ber_tlv_tag_t asn_DEF_FeatureSetUplinkPerCC_tags_1[] = {
203 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
205 static const asn_TYPE_tag2member_t asn_MAP_FeatureSetUplinkPerCC_tag2el_1[] = {
206 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* supportedSubcarrierSpacingUL */
207 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* supportedBandwidthUL */
208 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* channelBW-90mhz */
209 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* mimo-CB-PUSCH */
210 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* maxNumberMIMO-LayersNonCB-PUSCH */
211 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 } /* supportedModulationOrderUL */
213 asn_SEQUENCE_specifics_t asn_SPC_FeatureSetUplinkPerCC_specs_1 = {
214 sizeof(struct FeatureSetUplinkPerCC),
215 offsetof(struct FeatureSetUplinkPerCC, _asn_ctx),
216 asn_MAP_FeatureSetUplinkPerCC_tag2el_1,
217 6, /* Count of tags in the map */
218 asn_MAP_FeatureSetUplinkPerCC_oms_1, /* Optional members */
219 4, 0, /* Root/Additions */
220 -1, /* First extension addition */
222 asn_TYPE_descriptor_t asn_DEF_FeatureSetUplinkPerCC = {
223 "FeatureSetUplinkPerCC",
224 "FeatureSetUplinkPerCC",
226 asn_DEF_FeatureSetUplinkPerCC_tags_1,
227 sizeof(asn_DEF_FeatureSetUplinkPerCC_tags_1)
228 /sizeof(asn_DEF_FeatureSetUplinkPerCC_tags_1[0]), /* 1 */
229 asn_DEF_FeatureSetUplinkPerCC_tags_1, /* Same as above */
230 sizeof(asn_DEF_FeatureSetUplinkPerCC_tags_1)
231 /sizeof(asn_DEF_FeatureSetUplinkPerCC_tags_1[0]), /* 1 */
232 { 0, 0, SEQUENCE_constraint },
233 asn_MBR_FeatureSetUplinkPerCC_1,
234 6, /* Elements count */
235 &asn_SPC_FeatureSetUplinkPerCC_specs_1 /* Additional specs */