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 "DRB-CountInfo.h"
11 count_Uplink_3_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
12 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
15 ASN__CTFAIL(app_key, td, sptr,
16 "%s: value not given (%s:%d)",
17 td->name, __FILE__, __LINE__);
22 /* Constraint check succeeded */
27 * This type is implemented using NativeInteger,
28 * so here we adjust the DEF accordingly.
31 count_Downlink_4_constraint(const asn_TYPE_descriptor_t *td, const void *sptr,
32 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
35 ASN__CTFAIL(app_key, td, sptr,
36 "%s: value not given (%s:%d)",
37 td->name, __FILE__, __LINE__);
42 /* Constraint check succeeded */
47 * This type is implemented using NativeInteger,
48 * so here we adjust the DEF accordingly.
51 memb_count_Uplink_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
52 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
55 ASN__CTFAIL(app_key, td, sptr,
56 "%s: value not given (%s:%d)",
57 td->name, __FILE__, __LINE__);
62 /* Constraint check succeeded */
67 memb_count_Downlink_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
68 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
71 ASN__CTFAIL(app_key, td, sptr,
72 "%s: value not given (%s:%d)",
73 td->name, __FILE__, __LINE__);
78 /* Constraint check succeeded */
82 static asn_oer_constraints_t asn_OER_type_count_Uplink_constr_3 CC_NOTUSED = {
83 { 4, 1 } /* (0..4294967295) */,
85 static asn_per_constraints_t asn_PER_type_count_Uplink_constr_3 CC_NOTUSED = {
86 { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */,
87 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
88 0, 0 /* No PER value map */
90 static asn_oer_constraints_t asn_OER_type_count_Downlink_constr_4 CC_NOTUSED = {
91 { 4, 1 } /* (0..4294967295) */,
93 static asn_per_constraints_t asn_PER_type_count_Downlink_constr_4 CC_NOTUSED = {
94 { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */,
95 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
96 0, 0 /* No PER value map */
98 static asn_oer_constraints_t asn_OER_memb_count_Uplink_constr_3 CC_NOTUSED = {
99 { 4, 1 } /* (0..4294967295) */,
101 static asn_per_constraints_t asn_PER_memb_count_Uplink_constr_3 CC_NOTUSED = {
102 { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */,
103 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
104 0, 0 /* No PER value map */
106 static asn_oer_constraints_t asn_OER_memb_count_Downlink_constr_4 CC_NOTUSED = {
107 { 4, 1 } /* (0..4294967295) */,
109 static asn_per_constraints_t asn_PER_memb_count_Downlink_constr_4 CC_NOTUSED = {
110 { APC_CONSTRAINED, 32, -1, 0, 4294967295 } /* (0..4294967295) */,
111 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
112 0, 0 /* No PER value map */
114 static const asn_INTEGER_specifics_t asn_SPC_count_Uplink_specs_3 = {
116 0, /* Native long size */
117 1 /* Unsigned representation */
119 static const ber_tlv_tag_t asn_DEF_count_Uplink_tags_3[] = {
120 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
121 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
123 static /* Use -fall-defs-global to expose */
124 asn_TYPE_descriptor_t asn_DEF_count_Uplink_3 = {
127 &asn_OP_NativeInteger,
128 asn_DEF_count_Uplink_tags_3,
129 sizeof(asn_DEF_count_Uplink_tags_3)
130 /sizeof(asn_DEF_count_Uplink_tags_3[0]) - 1, /* 1 */
131 asn_DEF_count_Uplink_tags_3, /* Same as above */
132 sizeof(asn_DEF_count_Uplink_tags_3)
133 /sizeof(asn_DEF_count_Uplink_tags_3[0]), /* 2 */
134 { &asn_OER_type_count_Uplink_constr_3, &asn_PER_type_count_Uplink_constr_3, count_Uplink_3_constraint },
135 0, 0, /* No members */
136 &asn_SPC_count_Uplink_specs_3 /* Additional specs */
139 static const asn_INTEGER_specifics_t asn_SPC_count_Downlink_specs_4 = {
141 0, /* Native long size */
142 1 /* Unsigned representation */
144 static const ber_tlv_tag_t asn_DEF_count_Downlink_tags_4[] = {
145 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
146 (ASN_TAG_CLASS_UNIVERSAL | (2 << 2))
148 static /* Use -fall-defs-global to expose */
149 asn_TYPE_descriptor_t asn_DEF_count_Downlink_4 = {
152 &asn_OP_NativeInteger,
153 asn_DEF_count_Downlink_tags_4,
154 sizeof(asn_DEF_count_Downlink_tags_4)
155 /sizeof(asn_DEF_count_Downlink_tags_4[0]) - 1, /* 1 */
156 asn_DEF_count_Downlink_tags_4, /* Same as above */
157 sizeof(asn_DEF_count_Downlink_tags_4)
158 /sizeof(asn_DEF_count_Downlink_tags_4[0]), /* 2 */
159 { &asn_OER_type_count_Downlink_constr_4, &asn_PER_type_count_Downlink_constr_4, count_Downlink_4_constraint },
160 0, 0, /* No members */
161 &asn_SPC_count_Downlink_specs_4 /* Additional specs */
164 asn_TYPE_member_t asn_MBR_DRB_CountInfo_1[] = {
165 { ATF_NOFLAGS, 0, offsetof(struct DRB_CountInfo, drb_Identity),
166 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
167 -1, /* IMPLICIT tag at current level */
168 &asn_DEF_DRB_Identity,
171 0, 0, /* No default value */
174 { ATF_NOFLAGS, 0, offsetof(struct DRB_CountInfo, count_Uplink),
175 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
176 -1, /* IMPLICIT tag at current level */
177 &asn_DEF_count_Uplink_3,
179 { &asn_OER_memb_count_Uplink_constr_3, &asn_PER_memb_count_Uplink_constr_3, memb_count_Uplink_constraint_1 },
180 0, 0, /* No default value */
183 { ATF_NOFLAGS, 0, offsetof(struct DRB_CountInfo, count_Downlink),
184 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
185 -1, /* IMPLICIT tag at current level */
186 &asn_DEF_count_Downlink_4,
188 { &asn_OER_memb_count_Downlink_constr_4, &asn_PER_memb_count_Downlink_constr_4, memb_count_Downlink_constraint_1 },
189 0, 0, /* No default value */
193 static const ber_tlv_tag_t asn_DEF_DRB_CountInfo_tags_1[] = {
194 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
196 static const asn_TYPE_tag2member_t asn_MAP_DRB_CountInfo_tag2el_1[] = {
197 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* drb-Identity */
198 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* count-Uplink */
199 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* count-Downlink */
201 asn_SEQUENCE_specifics_t asn_SPC_DRB_CountInfo_specs_1 = {
202 sizeof(struct DRB_CountInfo),
203 offsetof(struct DRB_CountInfo, _asn_ctx),
204 asn_MAP_DRB_CountInfo_tag2el_1,
205 3, /* Count of tags in the map */
206 0, 0, 0, /* Optional elements (not needed) */
207 -1, /* First extension addition */
209 asn_TYPE_descriptor_t asn_DEF_DRB_CountInfo = {
213 asn_DEF_DRB_CountInfo_tags_1,
214 sizeof(asn_DEF_DRB_CountInfo_tags_1)
215 /sizeof(asn_DEF_DRB_CountInfo_tags_1[0]), /* 1 */
216 asn_DEF_DRB_CountInfo_tags_1, /* Same as above */
217 sizeof(asn_DEF_DRB_CountInfo_tags_1)
218 /sizeof(asn_DEF_DRB_CountInfo_tags_1[0]), /* 1 */
219 { 0, 0, SEQUENCE_constraint },
220 asn_MBR_DRB_CountInfo_1,
221 3, /* Elements count */
222 &asn_SPC_DRB_CountInfo_specs_1 /* Additional specs */