b57e0535344d6ccb5d7a15d0288399d207cd60a2
[o-du/l2.git] / src / codec_utils / RRC / SRS-TPC-CommandConfig.c
1 /*
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`
6  */
7
8 #include "SRS-TPC-CommandConfig.h"
9
10 static int
11 memb_startingBitOfFormat2_3SUL_v1530_constraint_5(const asn_TYPE_descriptor_t *td, const void *sptr,
12                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
13         long value;
14         
15         if(!sptr) {
16                 ASN__CTFAIL(app_key, td, sptr,
17                         "%s: value not given (%s:%d)",
18                         td->name, __FILE__, __LINE__);
19                 return -1;
20         }
21         
22         value = *(const long *)sptr;
23         
24         if((value >= 1 && value <= 31)) {
25                 /* Constraint check succeeded */
26                 return 0;
27         } else {
28                 ASN__CTFAIL(app_key, td, sptr,
29                         "%s: constraint failed (%s:%d)",
30                         td->name, __FILE__, __LINE__);
31                 return -1;
32         }
33 }
34
35 static int
36 memb_startingBitOfFormat2_3_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
37                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
38         long value;
39         
40         if(!sptr) {
41                 ASN__CTFAIL(app_key, td, sptr,
42                         "%s: value not given (%s:%d)",
43                         td->name, __FILE__, __LINE__);
44                 return -1;
45         }
46         
47         value = *(const long *)sptr;
48         
49         if((value >= 1 && value <= 31)) {
50                 /* Constraint check succeeded */
51                 return 0;
52         } else {
53                 ASN__CTFAIL(app_key, td, sptr,
54                         "%s: constraint failed (%s:%d)",
55                         td->name, __FILE__, __LINE__);
56                 return -1;
57         }
58 }
59
60 static int
61 memb_fieldTypeFormat2_3_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
62                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
63         long value;
64         
65         if(!sptr) {
66                 ASN__CTFAIL(app_key, td, sptr,
67                         "%s: value not given (%s:%d)",
68                         td->name, __FILE__, __LINE__);
69                 return -1;
70         }
71         
72         value = *(const long *)sptr;
73         
74         if((value >= 0 && value <= 1)) {
75                 /* Constraint check succeeded */
76                 return 0;
77         } else {
78                 ASN__CTFAIL(app_key, td, sptr,
79                         "%s: constraint failed (%s:%d)",
80                         td->name, __FILE__, __LINE__);
81                 return -1;
82         }
83 }
84
85 static asn_oer_constraints_t asn_OER_memb_startingBitOfFormat2_3SUL_v1530_constr_6 CC_NOTUSED = {
86         { 1, 1 }        /* (1..31) */,
87         -1};
88 static asn_per_constraints_t asn_PER_memb_startingBitOfFormat2_3SUL_v1530_constr_6 CC_NOTUSED = {
89         { APC_CONSTRAINED,       5,  5,  1,  31 }       /* (1..31) */,
90         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
91         0, 0    /* No PER value map */
92 };
93 static asn_oer_constraints_t asn_OER_memb_startingBitOfFormat2_3_constr_2 CC_NOTUSED = {
94         { 1, 1 }        /* (1..31) */,
95         -1};
96 static asn_per_constraints_t asn_PER_memb_startingBitOfFormat2_3_constr_2 CC_NOTUSED = {
97         { APC_CONSTRAINED,       5,  5,  1,  31 }       /* (1..31) */,
98         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
99         0, 0    /* No PER value map */
100 };
101 static asn_oer_constraints_t asn_OER_memb_fieldTypeFormat2_3_constr_3 CC_NOTUSED = {
102         { 1, 1 }        /* (0..1) */,
103         -1};
104 static asn_per_constraints_t asn_PER_memb_fieldTypeFormat2_3_constr_3 CC_NOTUSED = {
105         { APC_CONSTRAINED,       1,  1,  0,  1 }        /* (0..1) */,
106         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
107         0, 0    /* No PER value map */
108 };
109 static asn_TYPE_member_t asn_MBR_ext1_5[] = {
110         { ATF_POINTER, 1, offsetof(struct SRS_TPC_CommandConfig__ext1, startingBitOfFormat2_3SUL_v1530),
111                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
112                 -1,     /* IMPLICIT tag at current level */
113                 &asn_DEF_NativeInteger,
114                 0,
115                 { &asn_OER_memb_startingBitOfFormat2_3SUL_v1530_constr_6, &asn_PER_memb_startingBitOfFormat2_3SUL_v1530_constr_6,  memb_startingBitOfFormat2_3SUL_v1530_constraint_5 },
116                 0, 0, /* No default value */
117                 "startingBitOfFormat2-3SUL-v1530"
118                 },
119 };
120 static const int asn_MAP_ext1_oms_5[] = { 0 };
121 static const ber_tlv_tag_t asn_DEF_ext1_tags_5[] = {
122         (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
123         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
124 };
125 static const asn_TYPE_tag2member_t asn_MAP_ext1_tag2el_5[] = {
126     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* startingBitOfFormat2-3SUL-v1530 */
127 };
128 static asn_SEQUENCE_specifics_t asn_SPC_ext1_specs_5 = {
129         sizeof(struct SRS_TPC_CommandConfig__ext1),
130         offsetof(struct SRS_TPC_CommandConfig__ext1, _asn_ctx),
131         asn_MAP_ext1_tag2el_5,
132         1,      /* Count of tags in the map */
133         asn_MAP_ext1_oms_5,     /* Optional members */
134         1, 0,   /* Root/Additions */
135         -1,     /* First extension addition */
136 };
137 static /* Use -fall-defs-global to expose */
138 asn_TYPE_descriptor_t asn_DEF_ext1_5 = {
139         "ext1",
140         "ext1",
141         &asn_OP_SEQUENCE,
142         asn_DEF_ext1_tags_5,
143         sizeof(asn_DEF_ext1_tags_5)
144                 /sizeof(asn_DEF_ext1_tags_5[0]) - 1, /* 1 */
145         asn_DEF_ext1_tags_5,    /* Same as above */
146         sizeof(asn_DEF_ext1_tags_5)
147                 /sizeof(asn_DEF_ext1_tags_5[0]), /* 2 */
148         { 0, 0, SEQUENCE_constraint },
149         asn_MBR_ext1_5,
150         1,      /* Elements count */
151         &asn_SPC_ext1_specs_5   /* Additional specs */
152 };
153
154 asn_TYPE_member_t asn_MBR_SRS_TPC_CommandConfig_1[] = {
155         { ATF_POINTER, 3, offsetof(struct SRS_TPC_CommandConfig, startingBitOfFormat2_3),
156                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
157                 -1,     /* IMPLICIT tag at current level */
158                 &asn_DEF_NativeInteger,
159                 0,
160                 { &asn_OER_memb_startingBitOfFormat2_3_constr_2, &asn_PER_memb_startingBitOfFormat2_3_constr_2,  memb_startingBitOfFormat2_3_constraint_1 },
161                 0, 0, /* No default value */
162                 "startingBitOfFormat2-3"
163                 },
164         { ATF_POINTER, 2, offsetof(struct SRS_TPC_CommandConfig, fieldTypeFormat2_3),
165                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
166                 -1,     /* IMPLICIT tag at current level */
167                 &asn_DEF_NativeInteger,
168                 0,
169                 { &asn_OER_memb_fieldTypeFormat2_3_constr_3, &asn_PER_memb_fieldTypeFormat2_3_constr_3,  memb_fieldTypeFormat2_3_constraint_1 },
170                 0, 0, /* No default value */
171                 "fieldTypeFormat2-3"
172                 },
173         { ATF_POINTER, 1, offsetof(struct SRS_TPC_CommandConfig, ext1),
174                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
175                 0,
176                 &asn_DEF_ext1_5,
177                 0,
178                 { 0, 0, 0 },
179                 0, 0, /* No default value */
180                 "ext1"
181                 },
182 };
183 static const int asn_MAP_SRS_TPC_CommandConfig_oms_1[] = { 0, 1, 2 };
184 static const ber_tlv_tag_t asn_DEF_SRS_TPC_CommandConfig_tags_1[] = {
185         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
186 };
187 static const asn_TYPE_tag2member_t asn_MAP_SRS_TPC_CommandConfig_tag2el_1[] = {
188     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* startingBitOfFormat2-3 */
189     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* fieldTypeFormat2-3 */
190     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* ext1 */
191 };
192 asn_SEQUENCE_specifics_t asn_SPC_SRS_TPC_CommandConfig_specs_1 = {
193         sizeof(struct SRS_TPC_CommandConfig),
194         offsetof(struct SRS_TPC_CommandConfig, _asn_ctx),
195         asn_MAP_SRS_TPC_CommandConfig_tag2el_1,
196         3,      /* Count of tags in the map */
197         asn_MAP_SRS_TPC_CommandConfig_oms_1,    /* Optional members */
198         2, 1,   /* Root/Additions */
199         2,      /* First extension addition */
200 };
201 asn_TYPE_descriptor_t asn_DEF_SRS_TPC_CommandConfig = {
202         "SRS-TPC-CommandConfig",
203         "SRS-TPC-CommandConfig",
204         &asn_OP_SEQUENCE,
205         asn_DEF_SRS_TPC_CommandConfig_tags_1,
206         sizeof(asn_DEF_SRS_TPC_CommandConfig_tags_1)
207                 /sizeof(asn_DEF_SRS_TPC_CommandConfig_tags_1[0]), /* 1 */
208         asn_DEF_SRS_TPC_CommandConfig_tags_1,   /* Same as above */
209         sizeof(asn_DEF_SRS_TPC_CommandConfig_tags_1)
210                 /sizeof(asn_DEF_SRS_TPC_CommandConfig_tags_1[0]), /* 1 */
211         { 0, 0, SEQUENCE_constraint },
212         asn_MBR_SRS_TPC_CommandConfig_1,
213         3,      /* Elements count */
214         &asn_SPC_SRS_TPC_CommandConfig_specs_1  /* Additional specs */
215 };
216