[Epic-ID: ODUHIGH-406][Task-ID: ODUHIGH-441]: Update name of Paging RRC Codec
[o-du/l2.git] / src / codec_utils / RRC / PUSCH-ConfigCommon.c
1 /*
2  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3  * From ASN.1 module "NR-RRC-Definitions"
4  *      found in "./22April22_Paging/rrc_15.3_asn.asn1"
5  *      `asn1c -D ./22April22_Paging -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-example`
6  */
7
8 #include "PUSCH-ConfigCommon.h"
9
10 #include "PUSCH-TimeDomainResourceAllocationList.h"
11 /*
12  * This type is implemented using NativeEnumerated,
13  * so here we adjust the DEF accordingly.
14  */
15 static int
16 memb_msg3_DeltaPreamble_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
17                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
18         long value;
19         
20         if(!sptr) {
21                 ASN__CTFAIL(app_key, td, sptr,
22                         "%s: value not given (%s:%d)",
23                         td->name, __FILE__, __LINE__);
24                 return -1;
25         }
26         
27         value = *(const long *)sptr;
28         
29         if((value >= -1 && value <= 6)) {
30                 /* Constraint check succeeded */
31                 return 0;
32         } else {
33                 ASN__CTFAIL(app_key, td, sptr,
34                         "%s: constraint failed (%s:%d)",
35                         td->name, __FILE__, __LINE__);
36                 return -1;
37         }
38 }
39
40 static int
41 memb_p0_NominalWithGrant_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
42                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
43         long value;
44         
45         if(!sptr) {
46                 ASN__CTFAIL(app_key, td, sptr,
47                         "%s: value not given (%s:%d)",
48                         td->name, __FILE__, __LINE__);
49                 return -1;
50         }
51         
52         value = *(const long *)sptr;
53         
54         if((value >= -202 && value <= 24)) {
55                 /* Constraint check succeeded */
56                 return 0;
57         } else {
58                 ASN__CTFAIL(app_key, td, sptr,
59                         "%s: constraint failed (%s:%d)",
60                         td->name, __FILE__, __LINE__);
61                 return -1;
62         }
63 }
64
65 static asn_oer_constraints_t asn_OER_type_groupHoppingEnabledTransformPrecoding_constr_2 CC_NOTUSED = {
66         { 0, 0 },
67         -1};
68 static asn_per_constraints_t asn_PER_type_groupHoppingEnabledTransformPrecoding_constr_2 CC_NOTUSED = {
69         { APC_CONSTRAINED,       0,  0,  0,  0 }        /* (0..0) */,
70         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
71         0, 0    /* No PER value map */
72 };
73 static asn_oer_constraints_t asn_OER_memb_msg3_DeltaPreamble_constr_5 CC_NOTUSED = {
74         { 1, 0 }        /* (-1..6) */,
75         -1};
76 static asn_per_constraints_t asn_PER_memb_msg3_DeltaPreamble_constr_5 CC_NOTUSED = {
77         { APC_CONSTRAINED,       3,  3, -1,  6 }        /* (-1..6) */,
78         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
79         0, 0    /* No PER value map */
80 };
81 static asn_oer_constraints_t asn_OER_memb_p0_NominalWithGrant_constr_6 CC_NOTUSED = {
82         { 2, 0 }        /* (-202..24) */,
83         -1};
84 static asn_per_constraints_t asn_PER_memb_p0_NominalWithGrant_constr_6 CC_NOTUSED = {
85         { APC_CONSTRAINED,       8,  8, -202,  24 }     /* (-202..24) */,
86         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
87         0, 0    /* No PER value map */
88 };
89 static const asn_INTEGER_enum_map_t asn_MAP_groupHoppingEnabledTransformPrecoding_value2enum_2[] = {
90         { 0,    7,      "enabled" }
91 };
92 static const unsigned int asn_MAP_groupHoppingEnabledTransformPrecoding_enum2value_2[] = {
93         0       /* enabled(0) */
94 };
95 static const asn_INTEGER_specifics_t asn_SPC_groupHoppingEnabledTransformPrecoding_specs_2 = {
96         asn_MAP_groupHoppingEnabledTransformPrecoding_value2enum_2,     /* "tag" => N; sorted by tag */
97         asn_MAP_groupHoppingEnabledTransformPrecoding_enum2value_2,     /* N => "tag"; sorted by N */
98         1,      /* Number of elements in the maps */
99         0,      /* Enumeration is not extensible */
100         1,      /* Strict enumeration */
101         0,      /* Native long size */
102         0
103 };
104 static const ber_tlv_tag_t asn_DEF_groupHoppingEnabledTransformPrecoding_tags_2[] = {
105         (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
106         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
107 };
108 static /* Use -fall-defs-global to expose */
109 asn_TYPE_descriptor_t asn_DEF_groupHoppingEnabledTransformPrecoding_2 = {
110         "groupHoppingEnabledTransformPrecoding",
111         "groupHoppingEnabledTransformPrecoding",
112         &asn_OP_NativeEnumerated,
113         asn_DEF_groupHoppingEnabledTransformPrecoding_tags_2,
114         sizeof(asn_DEF_groupHoppingEnabledTransformPrecoding_tags_2)
115                 /sizeof(asn_DEF_groupHoppingEnabledTransformPrecoding_tags_2[0]) - 1, /* 1 */
116         asn_DEF_groupHoppingEnabledTransformPrecoding_tags_2,   /* Same as above */
117         sizeof(asn_DEF_groupHoppingEnabledTransformPrecoding_tags_2)
118                 /sizeof(asn_DEF_groupHoppingEnabledTransformPrecoding_tags_2[0]), /* 2 */
119         { &asn_OER_type_groupHoppingEnabledTransformPrecoding_constr_2, &asn_PER_type_groupHoppingEnabledTransformPrecoding_constr_2, NativeEnumerated_constraint },
120         0, 0,   /* Defined elsewhere */
121         &asn_SPC_groupHoppingEnabledTransformPrecoding_specs_2  /* Additional specs */
122 };
123
124 asn_TYPE_member_t asn_MBR_PUSCH_ConfigCommon_1[] = {
125         { ATF_POINTER, 4, offsetof(struct PUSCH_ConfigCommon, groupHoppingEnabledTransformPrecoding),
126                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
127                 -1,     /* IMPLICIT tag at current level */
128                 &asn_DEF_groupHoppingEnabledTransformPrecoding_2,
129                 0,
130                 { 0, 0, 0 },
131                 0, 0, /* No default value */
132                 "groupHoppingEnabledTransformPrecoding"
133                 },
134         { ATF_POINTER, 3, offsetof(struct PUSCH_ConfigCommon, pusch_TimeDomainAllocationList),
135                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
136                 -1,     /* IMPLICIT tag at current level */
137                 &asn_DEF_PUSCH_TimeDomainResourceAllocationList,
138                 0,
139                 { 0, 0, 0 },
140                 0, 0, /* No default value */
141                 "pusch-TimeDomainAllocationList"
142                 },
143         { ATF_POINTER, 2, offsetof(struct PUSCH_ConfigCommon, msg3_DeltaPreamble),
144                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
145                 -1,     /* IMPLICIT tag at current level */
146                 &asn_DEF_NativeInteger,
147                 0,
148                 { &asn_OER_memb_msg3_DeltaPreamble_constr_5, &asn_PER_memb_msg3_DeltaPreamble_constr_5,  memb_msg3_DeltaPreamble_constraint_1 },
149                 0, 0, /* No default value */
150                 "msg3-DeltaPreamble"
151                 },
152         { ATF_POINTER, 1, offsetof(struct PUSCH_ConfigCommon, p0_NominalWithGrant),
153                 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
154                 -1,     /* IMPLICIT tag at current level */
155                 &asn_DEF_NativeInteger,
156                 0,
157                 { &asn_OER_memb_p0_NominalWithGrant_constr_6, &asn_PER_memb_p0_NominalWithGrant_constr_6,  memb_p0_NominalWithGrant_constraint_1 },
158                 0, 0, /* No default value */
159                 "p0-NominalWithGrant"
160                 },
161 };
162 static const int asn_MAP_PUSCH_ConfigCommon_oms_1[] = { 0, 1, 2, 3 };
163 static const ber_tlv_tag_t asn_DEF_PUSCH_ConfigCommon_tags_1[] = {
164         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
165 };
166 static const asn_TYPE_tag2member_t asn_MAP_PUSCH_ConfigCommon_tag2el_1[] = {
167     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* groupHoppingEnabledTransformPrecoding */
168     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pusch-TimeDomainAllocationList */
169     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* msg3-DeltaPreamble */
170     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* p0-NominalWithGrant */
171 };
172 asn_SEQUENCE_specifics_t asn_SPC_PUSCH_ConfigCommon_specs_1 = {
173         sizeof(struct PUSCH_ConfigCommon),
174         offsetof(struct PUSCH_ConfigCommon, _asn_ctx),
175         asn_MAP_PUSCH_ConfigCommon_tag2el_1,
176         4,      /* Count of tags in the map */
177         asn_MAP_PUSCH_ConfigCommon_oms_1,       /* Optional members */
178         4, 0,   /* Root/Additions */
179         4,      /* First extension addition */
180 };
181 asn_TYPE_descriptor_t asn_DEF_PUSCH_ConfigCommon = {
182         "PUSCH-ConfigCommon",
183         "PUSCH-ConfigCommon",
184         &asn_OP_SEQUENCE,
185         asn_DEF_PUSCH_ConfigCommon_tags_1,
186         sizeof(asn_DEF_PUSCH_ConfigCommon_tags_1)
187                 /sizeof(asn_DEF_PUSCH_ConfigCommon_tags_1[0]), /* 1 */
188         asn_DEF_PUSCH_ConfigCommon_tags_1,      /* Same as above */
189         sizeof(asn_DEF_PUSCH_ConfigCommon_tags_1)
190                 /sizeof(asn_DEF_PUSCH_ConfigCommon_tags_1[0]), /* 1 */
191         { 0, 0, SEQUENCE_constraint },
192         asn_MBR_PUSCH_ConfigCommon_1,
193         4,      /* Elements count */
194         &asn_SPC_PUSCH_ConfigCommon_specs_1     /* Additional specs */
195 };
196