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 "BSR-Config.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.
22 static asn_oer_constraints_t asn_OER_type_periodicBSR_Timer_constr_2 CC_NOTUSED = {
25 static asn_per_constraints_t asn_PER_type_periodicBSR_Timer_constr_2 CC_NOTUSED = {
26 { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */,
27 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
28 0, 0 /* No PER value map */
30 static asn_oer_constraints_t asn_OER_type_retxBSR_Timer_constr_19 CC_NOTUSED = {
33 static asn_per_constraints_t asn_PER_type_retxBSR_Timer_constr_19 CC_NOTUSED = {
34 { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */,
35 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
36 0, 0 /* No PER value map */
38 static asn_oer_constraints_t asn_OER_type_logicalChannelSR_DelayTimer_constr_36 CC_NOTUSED = {
41 static asn_per_constraints_t asn_PER_type_logicalChannelSR_DelayTimer_constr_36 CC_NOTUSED = {
42 { APC_CONSTRAINED, 3, 3, 0, 7 } /* (0..7) */,
43 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
44 0, 0 /* No PER value map */
46 static const asn_INTEGER_enum_map_t asn_MAP_periodicBSR_Timer_value2enum_2[] = {
64 static const unsigned int asn_MAP_periodicBSR_Timer_enum2value_2[] = {
65 15, /* infinity(15) */
82 static const asn_INTEGER_specifics_t asn_SPC_periodicBSR_Timer_specs_2 = {
83 asn_MAP_periodicBSR_Timer_value2enum_2, /* "tag" => N; sorted by tag */
84 asn_MAP_periodicBSR_Timer_enum2value_2, /* N => "tag"; sorted by N */
85 16, /* Number of elements in the maps */
86 0, /* Enumeration is not extensible */
87 1, /* Strict enumeration */
88 0, /* Native long size */
91 static const ber_tlv_tag_t asn_DEF_periodicBSR_Timer_tags_2[] = {
92 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
93 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
95 static /* Use -fall-defs-global to expose */
96 asn_TYPE_descriptor_t asn_DEF_periodicBSR_Timer_2 = {
99 &asn_OP_NativeEnumerated,
100 asn_DEF_periodicBSR_Timer_tags_2,
101 sizeof(asn_DEF_periodicBSR_Timer_tags_2)
102 /sizeof(asn_DEF_periodicBSR_Timer_tags_2[0]) - 1, /* 1 */
103 asn_DEF_periodicBSR_Timer_tags_2, /* Same as above */
104 sizeof(asn_DEF_periodicBSR_Timer_tags_2)
105 /sizeof(asn_DEF_periodicBSR_Timer_tags_2[0]), /* 2 */
106 { &asn_OER_type_periodicBSR_Timer_constr_2, &asn_PER_type_periodicBSR_Timer_constr_2, NativeEnumerated_constraint },
107 0, 0, /* Defined elsewhere */
108 &asn_SPC_periodicBSR_Timer_specs_2 /* Additional specs */
111 static const asn_INTEGER_enum_map_t asn_MAP_retxBSR_Timer_value2enum_19[] = {
122 { 10, 7, "sf10240" },
129 static const unsigned int asn_MAP_retxBSR_Timer_enum2value_19[] = {
131 10, /* sf10240(10) */
147 static const asn_INTEGER_specifics_t asn_SPC_retxBSR_Timer_specs_19 = {
148 asn_MAP_retxBSR_Timer_value2enum_19, /* "tag" => N; sorted by tag */
149 asn_MAP_retxBSR_Timer_enum2value_19, /* N => "tag"; sorted by N */
150 16, /* Number of elements in the maps */
151 0, /* Enumeration is not extensible */
152 1, /* Strict enumeration */
153 0, /* Native long size */
156 static const ber_tlv_tag_t asn_DEF_retxBSR_Timer_tags_19[] = {
157 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
158 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
160 static /* Use -fall-defs-global to expose */
161 asn_TYPE_descriptor_t asn_DEF_retxBSR_Timer_19 = {
164 &asn_OP_NativeEnumerated,
165 asn_DEF_retxBSR_Timer_tags_19,
166 sizeof(asn_DEF_retxBSR_Timer_tags_19)
167 /sizeof(asn_DEF_retxBSR_Timer_tags_19[0]) - 1, /* 1 */
168 asn_DEF_retxBSR_Timer_tags_19, /* Same as above */
169 sizeof(asn_DEF_retxBSR_Timer_tags_19)
170 /sizeof(asn_DEF_retxBSR_Timer_tags_19[0]), /* 2 */
171 { &asn_OER_type_retxBSR_Timer_constr_19, &asn_PER_type_retxBSR_Timer_constr_19, NativeEnumerated_constraint },
172 0, 0, /* Defined elsewhere */
173 &asn_SPC_retxBSR_Timer_specs_19 /* Additional specs */
176 static const asn_INTEGER_enum_map_t asn_MAP_logicalChannelSR_DelayTimer_value2enum_36[] = {
186 static const unsigned int asn_MAP_logicalChannelSR_DelayTimer_enum2value_36[] = {
196 static const asn_INTEGER_specifics_t asn_SPC_logicalChannelSR_DelayTimer_specs_36 = {
197 asn_MAP_logicalChannelSR_DelayTimer_value2enum_36, /* "tag" => N; sorted by tag */
198 asn_MAP_logicalChannelSR_DelayTimer_enum2value_36, /* N => "tag"; sorted by N */
199 8, /* Number of elements in the maps */
200 0, /* Enumeration is not extensible */
201 1, /* Strict enumeration */
202 0, /* Native long size */
205 static const ber_tlv_tag_t asn_DEF_logicalChannelSR_DelayTimer_tags_36[] = {
206 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
207 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
209 static /* Use -fall-defs-global to expose */
210 asn_TYPE_descriptor_t asn_DEF_logicalChannelSR_DelayTimer_36 = {
211 "logicalChannelSR-DelayTimer",
212 "logicalChannelSR-DelayTimer",
213 &asn_OP_NativeEnumerated,
214 asn_DEF_logicalChannelSR_DelayTimer_tags_36,
215 sizeof(asn_DEF_logicalChannelSR_DelayTimer_tags_36)
216 /sizeof(asn_DEF_logicalChannelSR_DelayTimer_tags_36[0]) - 1, /* 1 */
217 asn_DEF_logicalChannelSR_DelayTimer_tags_36, /* Same as above */
218 sizeof(asn_DEF_logicalChannelSR_DelayTimer_tags_36)
219 /sizeof(asn_DEF_logicalChannelSR_DelayTimer_tags_36[0]), /* 2 */
220 { &asn_OER_type_logicalChannelSR_DelayTimer_constr_36, &asn_PER_type_logicalChannelSR_DelayTimer_constr_36, NativeEnumerated_constraint },
221 0, 0, /* Defined elsewhere */
222 &asn_SPC_logicalChannelSR_DelayTimer_specs_36 /* Additional specs */
225 asn_TYPE_member_t asn_MBR_BSR_Config_1[] = {
226 { ATF_NOFLAGS, 0, offsetof(struct BSR_Config, periodicBSR_Timer),
227 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
228 -1, /* IMPLICIT tag at current level */
229 &asn_DEF_periodicBSR_Timer_2,
232 0, 0, /* No default value */
235 { ATF_NOFLAGS, 0, offsetof(struct BSR_Config, retxBSR_Timer),
236 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
237 -1, /* IMPLICIT tag at current level */
238 &asn_DEF_retxBSR_Timer_19,
241 0, 0, /* No default value */
244 { ATF_POINTER, 1, offsetof(struct BSR_Config, logicalChannelSR_DelayTimer),
245 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
246 -1, /* IMPLICIT tag at current level */
247 &asn_DEF_logicalChannelSR_DelayTimer_36,
250 0, 0, /* No default value */
251 "logicalChannelSR-DelayTimer"
254 static const int asn_MAP_BSR_Config_oms_1[] = { 2 };
255 static const ber_tlv_tag_t asn_DEF_BSR_Config_tags_1[] = {
256 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
258 static const asn_TYPE_tag2member_t asn_MAP_BSR_Config_tag2el_1[] = {
259 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* periodicBSR-Timer */
260 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* retxBSR-Timer */
261 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* logicalChannelSR-DelayTimer */
263 asn_SEQUENCE_specifics_t asn_SPC_BSR_Config_specs_1 = {
264 sizeof(struct BSR_Config),
265 offsetof(struct BSR_Config, _asn_ctx),
266 asn_MAP_BSR_Config_tag2el_1,
267 3, /* Count of tags in the map */
268 asn_MAP_BSR_Config_oms_1, /* Optional members */
269 1, 0, /* Root/Additions */
270 3, /* First extension addition */
272 asn_TYPE_descriptor_t asn_DEF_BSR_Config = {
276 asn_DEF_BSR_Config_tags_1,
277 sizeof(asn_DEF_BSR_Config_tags_1)
278 /sizeof(asn_DEF_BSR_Config_tags_1[0]), /* 1 */
279 asn_DEF_BSR_Config_tags_1, /* Same as above */
280 sizeof(asn_DEF_BSR_Config_tags_1)
281 /sizeof(asn_DEF_BSR_Config_tags_1[0]), /* 1 */
282 { 0, 0, SEQUENCE_constraint },
283 asn_MBR_BSR_Config_1,
284 3, /* Elements count */
285 &asn_SPC_BSR_Config_specs_1 /* Additional specs */