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 "RLC-Config.h"
10 static asn_oer_constraints_t asn_OER_type_RLC_Config_constr_1 CC_NOTUSED = {
13 asn_per_constraints_t asn_PER_type_RLC_Config_constr_1 CC_NOTUSED = {
14 { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 3 } /* (0..3,...) */,
15 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
16 0, 0 /* No PER value map */
18 static asn_TYPE_member_t asn_MBR_am_2[] = {
19 { ATF_NOFLAGS, 0, offsetof(struct RLC_Config__am, ul_AM_RLC),
20 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
21 -1, /* IMPLICIT tag at current level */
25 0, 0, /* No default value */
28 { ATF_NOFLAGS, 0, offsetof(struct RLC_Config__am, dl_AM_RLC),
29 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
30 -1, /* IMPLICIT tag at current level */
34 0, 0, /* No default value */
38 static const ber_tlv_tag_t asn_DEF_am_tags_2[] = {
39 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
40 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
42 static const asn_TYPE_tag2member_t asn_MAP_am_tag2el_2[] = {
43 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ul-AM-RLC */
44 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* dl-AM-RLC */
46 static asn_SEQUENCE_specifics_t asn_SPC_am_specs_2 = {
47 sizeof(struct RLC_Config__am),
48 offsetof(struct RLC_Config__am, _asn_ctx),
50 2, /* Count of tags in the map */
51 0, 0, 0, /* Optional elements (not needed) */
52 -1, /* First extension addition */
54 static /* Use -fall-defs-global to expose */
55 asn_TYPE_descriptor_t asn_DEF_am_2 = {
60 sizeof(asn_DEF_am_tags_2)
61 /sizeof(asn_DEF_am_tags_2[0]) - 1, /* 1 */
62 asn_DEF_am_tags_2, /* Same as above */
63 sizeof(asn_DEF_am_tags_2)
64 /sizeof(asn_DEF_am_tags_2[0]), /* 2 */
65 { 0, 0, SEQUENCE_constraint },
67 2, /* Elements count */
68 &asn_SPC_am_specs_2 /* Additional specs */
71 static asn_TYPE_member_t asn_MBR_um_Bi_Directional_5[] = {
72 { ATF_NOFLAGS, 0, offsetof(struct RLC_Config__um_Bi_Directional, ul_UM_RLC),
73 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
74 -1, /* IMPLICIT tag at current level */
78 0, 0, /* No default value */
81 { ATF_NOFLAGS, 0, offsetof(struct RLC_Config__um_Bi_Directional, dl_UM_RLC),
82 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
83 -1, /* IMPLICIT tag at current level */
87 0, 0, /* No default value */
91 static const ber_tlv_tag_t asn_DEF_um_Bi_Directional_tags_5[] = {
92 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
93 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
95 static const asn_TYPE_tag2member_t asn_MAP_um_Bi_Directional_tag2el_5[] = {
96 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ul-UM-RLC */
97 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* dl-UM-RLC */
99 static asn_SEQUENCE_specifics_t asn_SPC_um_Bi_Directional_specs_5 = {
100 sizeof(struct RLC_Config__um_Bi_Directional),
101 offsetof(struct RLC_Config__um_Bi_Directional, _asn_ctx),
102 asn_MAP_um_Bi_Directional_tag2el_5,
103 2, /* Count of tags in the map */
104 0, 0, 0, /* Optional elements (not needed) */
105 -1, /* First extension addition */
107 static /* Use -fall-defs-global to expose */
108 asn_TYPE_descriptor_t asn_DEF_um_Bi_Directional_5 = {
112 asn_DEF_um_Bi_Directional_tags_5,
113 sizeof(asn_DEF_um_Bi_Directional_tags_5)
114 /sizeof(asn_DEF_um_Bi_Directional_tags_5[0]) - 1, /* 1 */
115 asn_DEF_um_Bi_Directional_tags_5, /* Same as above */
116 sizeof(asn_DEF_um_Bi_Directional_tags_5)
117 /sizeof(asn_DEF_um_Bi_Directional_tags_5[0]), /* 2 */
118 { 0, 0, SEQUENCE_constraint },
119 asn_MBR_um_Bi_Directional_5,
120 2, /* Elements count */
121 &asn_SPC_um_Bi_Directional_specs_5 /* Additional specs */
124 static asn_TYPE_member_t asn_MBR_um_Uni_Directional_UL_8[] = {
125 { ATF_NOFLAGS, 0, offsetof(struct RLC_Config__um_Uni_Directional_UL, ul_UM_RLC),
126 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
127 -1, /* IMPLICIT tag at current level */
131 0, 0, /* No default value */
135 static const ber_tlv_tag_t asn_DEF_um_Uni_Directional_UL_tags_8[] = {
136 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
137 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
139 static const asn_TYPE_tag2member_t asn_MAP_um_Uni_Directional_UL_tag2el_8[] = {
140 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* ul-UM-RLC */
142 static asn_SEQUENCE_specifics_t asn_SPC_um_Uni_Directional_UL_specs_8 = {
143 sizeof(struct RLC_Config__um_Uni_Directional_UL),
144 offsetof(struct RLC_Config__um_Uni_Directional_UL, _asn_ctx),
145 asn_MAP_um_Uni_Directional_UL_tag2el_8,
146 1, /* Count of tags in the map */
147 0, 0, 0, /* Optional elements (not needed) */
148 -1, /* First extension addition */
150 static /* Use -fall-defs-global to expose */
151 asn_TYPE_descriptor_t asn_DEF_um_Uni_Directional_UL_8 = {
152 "um-Uni-Directional-UL",
153 "um-Uni-Directional-UL",
155 asn_DEF_um_Uni_Directional_UL_tags_8,
156 sizeof(asn_DEF_um_Uni_Directional_UL_tags_8)
157 /sizeof(asn_DEF_um_Uni_Directional_UL_tags_8[0]) - 1, /* 1 */
158 asn_DEF_um_Uni_Directional_UL_tags_8, /* Same as above */
159 sizeof(asn_DEF_um_Uni_Directional_UL_tags_8)
160 /sizeof(asn_DEF_um_Uni_Directional_UL_tags_8[0]), /* 2 */
161 { 0, 0, SEQUENCE_constraint },
162 asn_MBR_um_Uni_Directional_UL_8,
163 1, /* Elements count */
164 &asn_SPC_um_Uni_Directional_UL_specs_8 /* Additional specs */
167 static asn_TYPE_member_t asn_MBR_um_Uni_Directional_DL_10[] = {
168 { ATF_NOFLAGS, 0, offsetof(struct RLC_Config__um_Uni_Directional_DL, dl_UM_RLC),
169 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
170 -1, /* IMPLICIT tag at current level */
174 0, 0, /* No default value */
178 static const ber_tlv_tag_t asn_DEF_um_Uni_Directional_DL_tags_10[] = {
179 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
180 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
182 static const asn_TYPE_tag2member_t asn_MAP_um_Uni_Directional_DL_tag2el_10[] = {
183 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* dl-UM-RLC */
185 static asn_SEQUENCE_specifics_t asn_SPC_um_Uni_Directional_DL_specs_10 = {
186 sizeof(struct RLC_Config__um_Uni_Directional_DL),
187 offsetof(struct RLC_Config__um_Uni_Directional_DL, _asn_ctx),
188 asn_MAP_um_Uni_Directional_DL_tag2el_10,
189 1, /* Count of tags in the map */
190 0, 0, 0, /* Optional elements (not needed) */
191 -1, /* First extension addition */
193 static /* Use -fall-defs-global to expose */
194 asn_TYPE_descriptor_t asn_DEF_um_Uni_Directional_DL_10 = {
195 "um-Uni-Directional-DL",
196 "um-Uni-Directional-DL",
198 asn_DEF_um_Uni_Directional_DL_tags_10,
199 sizeof(asn_DEF_um_Uni_Directional_DL_tags_10)
200 /sizeof(asn_DEF_um_Uni_Directional_DL_tags_10[0]) - 1, /* 1 */
201 asn_DEF_um_Uni_Directional_DL_tags_10, /* Same as above */
202 sizeof(asn_DEF_um_Uni_Directional_DL_tags_10)
203 /sizeof(asn_DEF_um_Uni_Directional_DL_tags_10[0]), /* 2 */
204 { 0, 0, SEQUENCE_constraint },
205 asn_MBR_um_Uni_Directional_DL_10,
206 1, /* Elements count */
207 &asn_SPC_um_Uni_Directional_DL_specs_10 /* Additional specs */
210 asn_TYPE_member_t asn_MBR_RLC_Config_1[] = {
211 { ATF_POINTER, 0, offsetof(struct RLC_Config, choice.am),
212 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
217 0, 0, /* No default value */
220 { ATF_POINTER, 0, offsetof(struct RLC_Config, choice.um_Bi_Directional),
221 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
223 &asn_DEF_um_Bi_Directional_5,
226 0, 0, /* No default value */
229 { ATF_POINTER, 0, offsetof(struct RLC_Config, choice.um_Uni_Directional_UL),
230 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
232 &asn_DEF_um_Uni_Directional_UL_8,
235 0, 0, /* No default value */
236 "um-Uni-Directional-UL"
238 { ATF_POINTER, 0, offsetof(struct RLC_Config, choice.um_Uni_Directional_DL),
239 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
241 &asn_DEF_um_Uni_Directional_DL_10,
244 0, 0, /* No default value */
245 "um-Uni-Directional-DL"
248 static const asn_TYPE_tag2member_t asn_MAP_RLC_Config_tag2el_1[] = {
249 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* am */
250 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* um-Bi-Directional */
251 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* um-Uni-Directional-UL */
252 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* um-Uni-Directional-DL */
254 asn_CHOICE_specifics_t asn_SPC_RLC_Config_specs_1 = {
255 sizeof(struct RLC_Config),
256 offsetof(struct RLC_Config, _asn_ctx),
257 offsetof(struct RLC_Config, present),
258 sizeof(((struct RLC_Config *)0)->present),
259 asn_MAP_RLC_Config_tag2el_1,
260 4, /* Count of tags in the map */
262 4 /* Extensions start */
264 asn_TYPE_descriptor_t asn_DEF_RLC_Config = {
268 0, /* No effective tags (pointer) */
269 0, /* No effective tags (count) */
270 0, /* No tags (pointer) */
271 0, /* No tags (count) */
272 { &asn_OER_type_RLC_Config_constr_1, &asn_PER_type_RLC_Config_constr_1, CHOICE_constraint },
273 asn_MBR_RLC_Config_1,
274 4, /* Elements count */
275 &asn_SPC_RLC_Config_specs_1 /* Additional specs */