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 "MAC-CellGroupConfig.h"
10 #include "SchedulingRequestConfig.h"
11 #include "BSR-Config.h"
12 #include "TAG-Config.h"
13 #include "DRX-Config.h"
14 #include "PHR-Config.h"
15 static asn_oer_constraints_t asn_OER_type_drx_Config_constr_2 CC_NOTUSED = {
18 static asn_per_constraints_t asn_PER_type_drx_Config_constr_2 CC_NOTUSED = {
19 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
20 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
21 0, 0 /* No PER value map */
23 static asn_oer_constraints_t asn_OER_type_phr_Config_constr_8 CC_NOTUSED = {
26 static asn_per_constraints_t asn_PER_type_phr_Config_constr_8 CC_NOTUSED = {
27 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
28 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
29 0, 0 /* No PER value map */
31 static asn_oer_constraints_t asn_OER_type_dataInactivityTimer_v1530_constr_15 CC_NOTUSED = {
34 static asn_per_constraints_t asn_PER_type_dataInactivityTimer_v1530_constr_15 CC_NOTUSED = {
35 { APC_CONSTRAINED, 1, 1, 0, 1 } /* (0..1) */,
36 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
37 0, 0 /* No PER value map */
39 static asn_TYPE_member_t asn_MBR_drx_Config_2[] = {
40 { ATF_NOFLAGS, 0, offsetof(struct MAC_CellGroupConfig__drx_Config, choice.release),
41 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
42 -1, /* IMPLICIT tag at current level */
46 0, 0, /* No default value */
49 { ATF_POINTER, 0, offsetof(struct MAC_CellGroupConfig__drx_Config, choice.setup),
50 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
51 -1, /* IMPLICIT tag at current level */
55 0, 0, /* No default value */
59 static const asn_TYPE_tag2member_t asn_MAP_drx_Config_tag2el_2[] = {
60 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
61 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
63 static asn_CHOICE_specifics_t asn_SPC_drx_Config_specs_2 = {
64 sizeof(struct MAC_CellGroupConfig__drx_Config),
65 offsetof(struct MAC_CellGroupConfig__drx_Config, _asn_ctx),
66 offsetof(struct MAC_CellGroupConfig__drx_Config, present),
67 sizeof(((struct MAC_CellGroupConfig__drx_Config *)0)->present),
68 asn_MAP_drx_Config_tag2el_2,
69 2, /* Count of tags in the map */
71 -1 /* Extensions start */
73 static /* Use -fall-defs-global to expose */
74 asn_TYPE_descriptor_t asn_DEF_drx_Config_2 = {
78 0, /* No effective tags (pointer) */
79 0, /* No effective tags (count) */
80 0, /* No tags (pointer) */
81 0, /* No tags (count) */
82 { &asn_OER_type_drx_Config_constr_2, &asn_PER_type_drx_Config_constr_2, CHOICE_constraint },
84 2, /* Elements count */
85 &asn_SPC_drx_Config_specs_2 /* Additional specs */
88 static asn_TYPE_member_t asn_MBR_phr_Config_8[] = {
89 { ATF_NOFLAGS, 0, offsetof(struct MAC_CellGroupConfig__phr_Config, choice.release),
90 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
91 -1, /* IMPLICIT tag at current level */
95 0, 0, /* No default value */
98 { ATF_POINTER, 0, offsetof(struct MAC_CellGroupConfig__phr_Config, choice.setup),
99 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
100 -1, /* IMPLICIT tag at current level */
104 0, 0, /* No default value */
108 static const asn_TYPE_tag2member_t asn_MAP_phr_Config_tag2el_8[] = {
109 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
110 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
112 static asn_CHOICE_specifics_t asn_SPC_phr_Config_specs_8 = {
113 sizeof(struct MAC_CellGroupConfig__phr_Config),
114 offsetof(struct MAC_CellGroupConfig__phr_Config, _asn_ctx),
115 offsetof(struct MAC_CellGroupConfig__phr_Config, present),
116 sizeof(((struct MAC_CellGroupConfig__phr_Config *)0)->present),
117 asn_MAP_phr_Config_tag2el_8,
118 2, /* Count of tags in the map */
120 -1 /* Extensions start */
122 static /* Use -fall-defs-global to expose */
123 asn_TYPE_descriptor_t asn_DEF_phr_Config_8 = {
127 0, /* No effective tags (pointer) */
128 0, /* No effective tags (count) */
129 0, /* No tags (pointer) */
130 0, /* No tags (count) */
131 { &asn_OER_type_phr_Config_constr_8, &asn_PER_type_phr_Config_constr_8, CHOICE_constraint },
132 asn_MBR_phr_Config_8,
133 2, /* Elements count */
134 &asn_SPC_phr_Config_specs_8 /* Additional specs */
137 static asn_TYPE_member_t asn_MBR_dataInactivityTimer_v1530_15[] = {
138 { ATF_NOFLAGS, 0, offsetof(struct MAC_CellGroupConfig__ext1__dataInactivityTimer_v1530, choice.release),
139 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
140 -1, /* IMPLICIT tag at current level */
144 0, 0, /* No default value */
147 { ATF_NOFLAGS, 0, offsetof(struct MAC_CellGroupConfig__ext1__dataInactivityTimer_v1530, choice.setup),
148 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
149 -1, /* IMPLICIT tag at current level */
150 &asn_DEF_DataInactivityTimer,
153 0, 0, /* No default value */
157 static const asn_TYPE_tag2member_t asn_MAP_dataInactivityTimer_v1530_tag2el_15[] = {
158 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* release */
159 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* setup */
161 static asn_CHOICE_specifics_t asn_SPC_dataInactivityTimer_v1530_specs_15 = {
162 sizeof(struct MAC_CellGroupConfig__ext1__dataInactivityTimer_v1530),
163 offsetof(struct MAC_CellGroupConfig__ext1__dataInactivityTimer_v1530, _asn_ctx),
164 offsetof(struct MAC_CellGroupConfig__ext1__dataInactivityTimer_v1530, present),
165 sizeof(((struct MAC_CellGroupConfig__ext1__dataInactivityTimer_v1530 *)0)->present),
166 asn_MAP_dataInactivityTimer_v1530_tag2el_15,
167 2, /* Count of tags in the map */
169 -1 /* Extensions start */
171 static /* Use -fall-defs-global to expose */
172 asn_TYPE_descriptor_t asn_DEF_dataInactivityTimer_v1530_15 = {
173 "dataInactivityTimer-v1530",
174 "dataInactivityTimer-v1530",
176 0, /* No effective tags (pointer) */
177 0, /* No effective tags (count) */
178 0, /* No tags (pointer) */
179 0, /* No tags (count) */
180 { &asn_OER_type_dataInactivityTimer_v1530_constr_15, &asn_PER_type_dataInactivityTimer_v1530_constr_15, CHOICE_constraint },
181 asn_MBR_dataInactivityTimer_v1530_15,
182 2, /* Elements count */
183 &asn_SPC_dataInactivityTimer_v1530_specs_15 /* Additional specs */
186 static asn_TYPE_member_t asn_MBR_ext1_13[] = {
187 { ATF_POINTER, 2, offsetof(struct MAC_CellGroupConfig__ext1, csi_Mask_v1530),
188 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
189 -1, /* IMPLICIT tag at current level */
193 0, 0, /* No default value */
196 { ATF_POINTER, 1, offsetof(struct MAC_CellGroupConfig__ext1, dataInactivityTimer_v1530),
197 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
198 +1, /* EXPLICIT tag at current level */
199 &asn_DEF_dataInactivityTimer_v1530_15,
202 0, 0, /* No default value */
203 "dataInactivityTimer-v1530"
206 static const int asn_MAP_ext1_oms_13[] = { 0, 1 };
207 static const ber_tlv_tag_t asn_DEF_ext1_tags_13[] = {
208 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
209 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
211 static const asn_TYPE_tag2member_t asn_MAP_ext1_tag2el_13[] = {
212 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* csi-Mask-v1530 */
213 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* dataInactivityTimer-v1530 */
215 static asn_SEQUENCE_specifics_t asn_SPC_ext1_specs_13 = {
216 sizeof(struct MAC_CellGroupConfig__ext1),
217 offsetof(struct MAC_CellGroupConfig__ext1, _asn_ctx),
218 asn_MAP_ext1_tag2el_13,
219 2, /* Count of tags in the map */
220 asn_MAP_ext1_oms_13, /* Optional members */
221 2, 0, /* Root/Additions */
222 -1, /* First extension addition */
224 static /* Use -fall-defs-global to expose */
225 asn_TYPE_descriptor_t asn_DEF_ext1_13 = {
229 asn_DEF_ext1_tags_13,
230 sizeof(asn_DEF_ext1_tags_13)
231 /sizeof(asn_DEF_ext1_tags_13[0]) - 1, /* 1 */
232 asn_DEF_ext1_tags_13, /* Same as above */
233 sizeof(asn_DEF_ext1_tags_13)
234 /sizeof(asn_DEF_ext1_tags_13[0]), /* 2 */
235 { 0, 0, SEQUENCE_constraint },
237 2, /* Elements count */
238 &asn_SPC_ext1_specs_13 /* Additional specs */
241 asn_TYPE_member_t asn_MBR_MAC_CellGroupConfig_1[] = {
242 { ATF_POINTER, 5, offsetof(struct MAC_CellGroupConfig, drx_Config),
243 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
244 +1, /* EXPLICIT tag at current level */
245 &asn_DEF_drx_Config_2,
248 0, 0, /* No default value */
251 { ATF_POINTER, 4, offsetof(struct MAC_CellGroupConfig, schedulingRequestConfig),
252 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
253 -1, /* IMPLICIT tag at current level */
254 &asn_DEF_SchedulingRequestConfig,
257 0, 0, /* No default value */
258 "schedulingRequestConfig"
260 { ATF_POINTER, 3, offsetof(struct MAC_CellGroupConfig, bsr_Config),
261 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
262 -1, /* IMPLICIT tag at current level */
266 0, 0, /* No default value */
269 { ATF_POINTER, 2, offsetof(struct MAC_CellGroupConfig, tag_Config),
270 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
271 -1, /* IMPLICIT tag at current level */
275 0, 0, /* No default value */
278 { ATF_POINTER, 1, offsetof(struct MAC_CellGroupConfig, phr_Config),
279 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
280 +1, /* EXPLICIT tag at current level */
281 &asn_DEF_phr_Config_8,
284 0, 0, /* No default value */
287 { ATF_NOFLAGS, 0, offsetof(struct MAC_CellGroupConfig, skipUplinkTxDynamic),
288 (ASN_TAG_CLASS_CONTEXT | (5 << 2)),
289 -1, /* IMPLICIT tag at current level */
293 0, 0, /* No default value */
294 "skipUplinkTxDynamic"
296 { ATF_POINTER, 1, offsetof(struct MAC_CellGroupConfig, ext1),
297 (ASN_TAG_CLASS_CONTEXT | (6 << 2)),
302 0, 0, /* No default value */
306 static const int asn_MAP_MAC_CellGroupConfig_oms_1[] = { 0, 1, 2, 3, 4, 6 };
307 static const ber_tlv_tag_t asn_DEF_MAC_CellGroupConfig_tags_1[] = {
308 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
310 static const asn_TYPE_tag2member_t asn_MAP_MAC_CellGroupConfig_tag2el_1[] = {
311 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* drx-Config */
312 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* schedulingRequestConfig */
313 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* bsr-Config */
314 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* tag-Config */
315 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* phr-Config */
316 { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* skipUplinkTxDynamic */
317 { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* ext1 */
319 asn_SEQUENCE_specifics_t asn_SPC_MAC_CellGroupConfig_specs_1 = {
320 sizeof(struct MAC_CellGroupConfig),
321 offsetof(struct MAC_CellGroupConfig, _asn_ctx),
322 asn_MAP_MAC_CellGroupConfig_tag2el_1,
323 7, /* Count of tags in the map */
324 asn_MAP_MAC_CellGroupConfig_oms_1, /* Optional members */
325 5, 1, /* Root/Additions */
326 6, /* First extension addition */
328 asn_TYPE_descriptor_t asn_DEF_MAC_CellGroupConfig = {
329 "MAC-CellGroupConfig",
330 "MAC-CellGroupConfig",
332 asn_DEF_MAC_CellGroupConfig_tags_1,
333 sizeof(asn_DEF_MAC_CellGroupConfig_tags_1)
334 /sizeof(asn_DEF_MAC_CellGroupConfig_tags_1[0]), /* 1 */
335 asn_DEF_MAC_CellGroupConfig_tags_1, /* Same as above */
336 sizeof(asn_DEF_MAC_CellGroupConfig_tags_1)
337 /sizeof(asn_DEF_MAC_CellGroupConfig_tags_1[0]), /* 1 */
338 { 0, 0, SEQUENCE_constraint },
339 asn_MBR_MAC_CellGroupConfig_1,
340 7, /* Elements count */
341 &asn_SPC_MAC_CellGroupConfig_specs_1 /* Additional specs */