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`
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.
23 memb_gapOffset_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
24 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
28 ASN__CTFAIL(app_key, td, sptr,
29 "%s: value not given (%s:%d)",
30 td->name, __FILE__, __LINE__);
34 value = *(const long *)sptr;
36 if((value >= 0 && value <= 159)) {
37 /* Constraint check succeeded */
40 ASN__CTFAIL(app_key, td, sptr,
41 "%s: constraint failed (%s:%d)",
42 td->name, __FILE__, __LINE__);
47 static asn_oer_constraints_t asn_OER_type_mgl_constr_3 CC_NOTUSED = {
50 static asn_per_constraints_t asn_PER_type_mgl_constr_3 CC_NOTUSED = {
51 { APC_CONSTRAINED, 3, 3, 0, 5 } /* (0..5) */,
52 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
53 0, 0 /* No PER value map */
55 static asn_oer_constraints_t asn_OER_type_mgrp_constr_10 CC_NOTUSED = {
58 static asn_per_constraints_t asn_PER_type_mgrp_constr_10 CC_NOTUSED = {
59 { APC_CONSTRAINED, 2, 2, 0, 3 } /* (0..3) */,
60 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
61 0, 0 /* No PER value map */
63 static asn_oer_constraints_t asn_OER_type_mgta_constr_15 CC_NOTUSED = {
66 static asn_per_constraints_t asn_PER_type_mgta_constr_15 CC_NOTUSED = {
67 { APC_CONSTRAINED, 2, 2, 0, 2 } /* (0..2) */,
68 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
69 0, 0 /* No PER value map */
71 static asn_oer_constraints_t asn_OER_memb_gapOffset_constr_2 CC_NOTUSED = {
72 { 1, 1 } /* (0..159) */,
74 static asn_per_constraints_t asn_PER_memb_gapOffset_constr_2 CC_NOTUSED = {
75 { APC_CONSTRAINED, 8, 8, 0, 159 } /* (0..159) */,
76 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
77 0, 0 /* No PER value map */
79 static const asn_INTEGER_enum_map_t asn_MAP_mgl_value2enum_3[] = {
87 static const unsigned int asn_MAP_mgl_enum2value_3[] = {
95 static const asn_INTEGER_specifics_t asn_SPC_mgl_specs_3 = {
96 asn_MAP_mgl_value2enum_3, /* "tag" => N; sorted by tag */
97 asn_MAP_mgl_enum2value_3, /* N => "tag"; sorted by N */
98 6, /* Number of elements in the maps */
99 0, /* Enumeration is not extensible */
100 1, /* Strict enumeration */
101 0, /* Native long size */
104 static const ber_tlv_tag_t asn_DEF_mgl_tags_3[] = {
105 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
106 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
108 static /* Use -fall-defs-global to expose */
109 asn_TYPE_descriptor_t asn_DEF_mgl_3 = {
112 &asn_OP_NativeEnumerated,
114 sizeof(asn_DEF_mgl_tags_3)
115 /sizeof(asn_DEF_mgl_tags_3[0]) - 1, /* 1 */
116 asn_DEF_mgl_tags_3, /* Same as above */
117 sizeof(asn_DEF_mgl_tags_3)
118 /sizeof(asn_DEF_mgl_tags_3[0]), /* 2 */
119 { &asn_OER_type_mgl_constr_3, &asn_PER_type_mgl_constr_3, NativeEnumerated_constraint },
120 0, 0, /* Defined elsewhere */
121 &asn_SPC_mgl_specs_3 /* Additional specs */
124 static const asn_INTEGER_enum_map_t asn_MAP_mgrp_value2enum_10[] = {
130 static const unsigned int asn_MAP_mgrp_enum2value_10[] = {
136 static const asn_INTEGER_specifics_t asn_SPC_mgrp_specs_10 = {
137 asn_MAP_mgrp_value2enum_10, /* "tag" => N; sorted by tag */
138 asn_MAP_mgrp_enum2value_10, /* N => "tag"; sorted by N */
139 4, /* Number of elements in the maps */
140 0, /* Enumeration is not extensible */
141 1, /* Strict enumeration */
142 0, /* Native long size */
145 static const ber_tlv_tag_t asn_DEF_mgrp_tags_10[] = {
146 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
147 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
149 static /* Use -fall-defs-global to expose */
150 asn_TYPE_descriptor_t asn_DEF_mgrp_10 = {
153 &asn_OP_NativeEnumerated,
154 asn_DEF_mgrp_tags_10,
155 sizeof(asn_DEF_mgrp_tags_10)
156 /sizeof(asn_DEF_mgrp_tags_10[0]) - 1, /* 1 */
157 asn_DEF_mgrp_tags_10, /* Same as above */
158 sizeof(asn_DEF_mgrp_tags_10)
159 /sizeof(asn_DEF_mgrp_tags_10[0]), /* 2 */
160 { &asn_OER_type_mgrp_constr_10, &asn_PER_type_mgrp_constr_10, NativeEnumerated_constraint },
161 0, 0, /* Defined elsewhere */
162 &asn_SPC_mgrp_specs_10 /* Additional specs */
165 static const asn_INTEGER_enum_map_t asn_MAP_mgta_value2enum_15[] = {
167 { 1, 8, "ms0dot25" },
170 static const unsigned int asn_MAP_mgta_enum2value_15[] = {
175 static const asn_INTEGER_specifics_t asn_SPC_mgta_specs_15 = {
176 asn_MAP_mgta_value2enum_15, /* "tag" => N; sorted by tag */
177 asn_MAP_mgta_enum2value_15, /* N => "tag"; sorted by N */
178 3, /* Number of elements in the maps */
179 0, /* Enumeration is not extensible */
180 1, /* Strict enumeration */
181 0, /* Native long size */
184 static const ber_tlv_tag_t asn_DEF_mgta_tags_15[] = {
185 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
186 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
188 static /* Use -fall-defs-global to expose */
189 asn_TYPE_descriptor_t asn_DEF_mgta_15 = {
192 &asn_OP_NativeEnumerated,
193 asn_DEF_mgta_tags_15,
194 sizeof(asn_DEF_mgta_tags_15)
195 /sizeof(asn_DEF_mgta_tags_15[0]) - 1, /* 1 */
196 asn_DEF_mgta_tags_15, /* Same as above */
197 sizeof(asn_DEF_mgta_tags_15)
198 /sizeof(asn_DEF_mgta_tags_15[0]), /* 2 */
199 { &asn_OER_type_mgta_constr_15, &asn_PER_type_mgta_constr_15, NativeEnumerated_constraint },
200 0, 0, /* Defined elsewhere */
201 &asn_SPC_mgta_specs_15 /* Additional specs */
204 asn_TYPE_member_t asn_MBR_GapConfig_1[] = {
205 { ATF_NOFLAGS, 0, offsetof(struct GapConfig, gapOffset),
206 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
207 -1, /* IMPLICIT tag at current level */
208 &asn_DEF_NativeInteger,
210 { &asn_OER_memb_gapOffset_constr_2, &asn_PER_memb_gapOffset_constr_2, memb_gapOffset_constraint_1 },
211 0, 0, /* No default value */
214 { ATF_NOFLAGS, 0, offsetof(struct GapConfig, mgl),
215 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
216 -1, /* IMPLICIT tag at current level */
220 0, 0, /* No default value */
223 { ATF_NOFLAGS, 0, offsetof(struct GapConfig, mgrp),
224 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
225 -1, /* IMPLICIT tag at current level */
229 0, 0, /* No default value */
232 { ATF_NOFLAGS, 0, offsetof(struct GapConfig, mgta),
233 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
234 -1, /* IMPLICIT tag at current level */
238 0, 0, /* No default value */
242 static const ber_tlv_tag_t asn_DEF_GapConfig_tags_1[] = {
243 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
245 static const asn_TYPE_tag2member_t asn_MAP_GapConfig_tag2el_1[] = {
246 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* gapOffset */
247 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* mgl */
248 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* mgrp */
249 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* mgta */
251 asn_SEQUENCE_specifics_t asn_SPC_GapConfig_specs_1 = {
252 sizeof(struct GapConfig),
253 offsetof(struct GapConfig, _asn_ctx),
254 asn_MAP_GapConfig_tag2el_1,
255 4, /* Count of tags in the map */
256 0, 0, 0, /* Optional elements (not needed) */
257 4, /* First extension addition */
259 asn_TYPE_descriptor_t asn_DEF_GapConfig = {
263 asn_DEF_GapConfig_tags_1,
264 sizeof(asn_DEF_GapConfig_tags_1)
265 /sizeof(asn_DEF_GapConfig_tags_1[0]), /* 1 */
266 asn_DEF_GapConfig_tags_1, /* Same as above */
267 sizeof(asn_DEF_GapConfig_tags_1)
268 /sizeof(asn_DEF_GapConfig_tags_1[0]), /* 1 */
269 { 0, 0, SEQUENCE_constraint },
271 4, /* Elements count */
272 &asn_SPC_GapConfig_specs_1 /* Additional specs */