blob: 81fd3a8de11ac88d257395695e34da888eb744c2 [file] [log] [blame]
rajalakshmisv960885a2022-05-31 14:59:10 +00001/*
2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "E2SM-RC-IEs"
4 * found in "e2sm-rc-nov2021.asn"
5 * `asn1c -fcompound-names -fno-include-deps -findirect-choice -pdu=auto -gen-PER -gen-OER -no-gen-example -D .`
6 */
7
8#include "RANFunctionDefinition-Policy-Action-Item.h"
9
10#include "PolicyAction-RANParameter-Item.h"
11#include "PolicyCondition-RANParameter-Item.h"
12static int
13memb_ran_PolicyActionParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
14 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
15 size_t size;
16
17 if(!sptr) {
18 ASN__CTFAIL(app_key, td, sptr,
19 "%s: value not given (%s:%d)",
20 td->name, __FILE__, __LINE__);
21 return -1;
22 }
23
24 /* Determine the number of elements */
25 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
26
27 if((size >= 1 && size <= 65535)) {
28 /* Perform validation of the inner elements */
29 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
30 } else {
31 ASN__CTFAIL(app_key, td, sptr,
32 "%s: constraint failed (%s:%d)",
33 td->name, __FILE__, __LINE__);
34 return -1;
35 }
36}
37
38static int
39memb_ran_PolicyConditionParameters_List_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
40 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
41 size_t size;
42
43 if(!sptr) {
44 ASN__CTFAIL(app_key, td, sptr,
45 "%s: value not given (%s:%d)",
46 td->name, __FILE__, __LINE__);
47 return -1;
48 }
49
50 /* Determine the number of elements */
51 size = _A_CSEQUENCE_FROM_VOID(sptr)->count;
52
53 if((size >= 1 && size <= 65535)) {
54 /* Perform validation of the inner elements */
55 return td->encoding_constraints.general_constraints(td, sptr, ctfailcb, app_key);
56 } else {
57 ASN__CTFAIL(app_key, td, sptr,
58 "%s: constraint failed (%s:%d)",
59 td->name, __FILE__, __LINE__);
60 return -1;
61 }
62}
63
64static asn_oer_constraints_t asn_OER_type_ran_PolicyActionParameters_List_constr_5 CC_NOTUSED = {
65 { 0, 0 },
66 -1 /* (SIZE(1..65535)) */};
67static asn_per_constraints_t asn_PER_type_ran_PolicyActionParameters_List_constr_5 CC_NOTUSED = {
68 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
69 { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */,
70 0, 0 /* No PER value map */
71};
72static asn_oer_constraints_t asn_OER_type_ran_PolicyConditionParameters_List_constr_7 CC_NOTUSED = {
73 { 0, 0 },
74 -1 /* (SIZE(1..65535)) */};
75static asn_per_constraints_t asn_PER_type_ran_PolicyConditionParameters_List_constr_7 CC_NOTUSED = {
76 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
77 { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */,
78 0, 0 /* No PER value map */
79};
80static asn_oer_constraints_t asn_OER_memb_ran_PolicyActionParameters_List_constr_5 CC_NOTUSED = {
81 { 0, 0 },
82 -1 /* (SIZE(1..65535)) */};
83static asn_per_constraints_t asn_PER_memb_ran_PolicyActionParameters_List_constr_5 CC_NOTUSED = {
84 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
85 { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */,
86 0, 0 /* No PER value map */
87};
88static asn_oer_constraints_t asn_OER_memb_ran_PolicyConditionParameters_List_constr_7 CC_NOTUSED = {
89 { 0, 0 },
90 -1 /* (SIZE(1..65535)) */};
91static asn_per_constraints_t asn_PER_memb_ran_PolicyConditionParameters_List_constr_7 CC_NOTUSED = {
92 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
93 { APC_CONSTRAINED, 16, 16, 1, 65535 } /* (SIZE(1..65535)) */,
94 0, 0 /* No PER value map */
95};
96static asn_TYPE_member_t asn_MBR_ran_PolicyActionParameters_List_5[] = {
97 { ATF_POINTER, 0, 0,
98 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
99 0,
100 &asn_DEF_PolicyAction_RANParameter_Item,
101 0,
102 { 0, 0, 0 },
103 0, 0, /* No default value */
104 ""
105 },
106};
107static const ber_tlv_tag_t asn_DEF_ran_PolicyActionParameters_List_tags_5[] = {
108 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
109 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
110};
111static asn_SET_OF_specifics_t asn_SPC_ran_PolicyActionParameters_List_specs_5 = {
112 sizeof(struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyActionParameters_List),
113 offsetof(struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyActionParameters_List, _asn_ctx),
114 0, /* XER encoding is XMLDelimitedItemList */
115};
116static /* Use -fall-defs-global to expose */
117asn_TYPE_descriptor_t asn_DEF_ran_PolicyActionParameters_List_5 = {
118 "ran-PolicyActionParameters-List",
119 "ran-PolicyActionParameters-List",
120 &asn_OP_SEQUENCE_OF,
121 asn_DEF_ran_PolicyActionParameters_List_tags_5,
122 sizeof(asn_DEF_ran_PolicyActionParameters_List_tags_5)
123 /sizeof(asn_DEF_ran_PolicyActionParameters_List_tags_5[0]) - 1, /* 1 */
124 asn_DEF_ran_PolicyActionParameters_List_tags_5, /* Same as above */
125 sizeof(asn_DEF_ran_PolicyActionParameters_List_tags_5)
126 /sizeof(asn_DEF_ran_PolicyActionParameters_List_tags_5[0]), /* 2 */
127 { &asn_OER_type_ran_PolicyActionParameters_List_constr_5, &asn_PER_type_ran_PolicyActionParameters_List_constr_5, SEQUENCE_OF_constraint },
128 asn_MBR_ran_PolicyActionParameters_List_5,
129 1, /* Single element */
130 &asn_SPC_ran_PolicyActionParameters_List_specs_5 /* Additional specs */
131};
132
133static asn_TYPE_member_t asn_MBR_ran_PolicyConditionParameters_List_7[] = {
134 { ATF_POINTER, 0, 0,
135 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2)),
136 0,
137 &asn_DEF_PolicyCondition_RANParameter_Item,
138 0,
139 { 0, 0, 0 },
140 0, 0, /* No default value */
141 ""
142 },
143};
144static const ber_tlv_tag_t asn_DEF_ran_PolicyConditionParameters_List_tags_7[] = {
145 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
146 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
147};
148static asn_SET_OF_specifics_t asn_SPC_ran_PolicyConditionParameters_List_specs_7 = {
149 sizeof(struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyConditionParameters_List),
150 offsetof(struct RANFunctionDefinition_Policy_Action_Item__ran_PolicyConditionParameters_List, _asn_ctx),
151 0, /* XER encoding is XMLDelimitedItemList */
152};
153static /* Use -fall-defs-global to expose */
154asn_TYPE_descriptor_t asn_DEF_ran_PolicyConditionParameters_List_7 = {
155 "ran-PolicyConditionParameters-List",
156 "ran-PolicyConditionParameters-List",
157 &asn_OP_SEQUENCE_OF,
158 asn_DEF_ran_PolicyConditionParameters_List_tags_7,
159 sizeof(asn_DEF_ran_PolicyConditionParameters_List_tags_7)
160 /sizeof(asn_DEF_ran_PolicyConditionParameters_List_tags_7[0]) - 1, /* 1 */
161 asn_DEF_ran_PolicyConditionParameters_List_tags_7, /* Same as above */
162 sizeof(asn_DEF_ran_PolicyConditionParameters_List_tags_7)
163 /sizeof(asn_DEF_ran_PolicyConditionParameters_List_tags_7[0]), /* 2 */
164 { &asn_OER_type_ran_PolicyConditionParameters_List_constr_7, &asn_PER_type_ran_PolicyConditionParameters_List_constr_7, SEQUENCE_OF_constraint },
165 asn_MBR_ran_PolicyConditionParameters_List_7,
166 1, /* Single element */
167 &asn_SPC_ran_PolicyConditionParameters_List_specs_7 /* Additional specs */
168};
169
170asn_TYPE_member_t asn_MBR_RANFunctionDefinition_Policy_Action_Item_1[] = {
171 { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ric_PolicyAction_ID),
172 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
173 -1, /* IMPLICIT tag at current level */
174 &asn_DEF_RIC_ControlAction_ID,
175 0,
176 { 0, 0, 0 },
177 0, 0, /* No default value */
178 "ric-PolicyAction-ID"
179 },
180 { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ric_PolicyAction_Name),
181 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
182 -1, /* IMPLICIT tag at current level */
183 &asn_DEF_RIC_ControlAction_Name,
184 0,
185 { 0, 0, 0 },
186 0, 0, /* No default value */
187 "ric-PolicyAction-Name"
188 },
189 { ATF_NOFLAGS, 0, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ric_ActionDefinitionFormat_Type),
190 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
191 -1, /* IMPLICIT tag at current level */
192 &asn_DEF_RIC_Format_Type,
193 0,
194 { 0, 0, 0 },
195 0, 0, /* No default value */
196 "ric-ActionDefinitionFormat-Type"
197 },
198 { ATF_POINTER, 2, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ran_PolicyActionParameters_List),
199 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
200 0,
201 &asn_DEF_ran_PolicyActionParameters_List_5,
202 0,
203 { &asn_OER_memb_ran_PolicyActionParameters_List_constr_5, &asn_PER_memb_ran_PolicyActionParameters_List_constr_5, memb_ran_PolicyActionParameters_List_constraint_1 },
204 0, 0, /* No default value */
205 "ran-PolicyActionParameters-List"
206 },
207 { ATF_POINTER, 1, offsetof(struct RANFunctionDefinition_Policy_Action_Item, ran_PolicyConditionParameters_List),
208 (ASN_TAG_CLASS_CONTEXT | (4 << 2)),
209 0,
210 &asn_DEF_ran_PolicyConditionParameters_List_7,
211 0,
212 { &asn_OER_memb_ran_PolicyConditionParameters_List_constr_7, &asn_PER_memb_ran_PolicyConditionParameters_List_constr_7, memb_ran_PolicyConditionParameters_List_constraint_1 },
213 0, 0, /* No default value */
214 "ran-PolicyConditionParameters-List"
215 },
216};
217static const int asn_MAP_RANFunctionDefinition_Policy_Action_Item_oms_1[] = { 3, 4 };
218static const ber_tlv_tag_t asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1[] = {
219 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
220};
221static const asn_TYPE_tag2member_t asn_MAP_RANFunctionDefinition_Policy_Action_Item_tag2el_1[] = {
222 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ric-PolicyAction-ID */
223 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ric-PolicyAction-Name */
224 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* ric-ActionDefinitionFormat-Type */
225 { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* ran-PolicyActionParameters-List */
226 { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 } /* ran-PolicyConditionParameters-List */
227};
228asn_SEQUENCE_specifics_t asn_SPC_RANFunctionDefinition_Policy_Action_Item_specs_1 = {
229 sizeof(struct RANFunctionDefinition_Policy_Action_Item),
230 offsetof(struct RANFunctionDefinition_Policy_Action_Item, _asn_ctx),
231 asn_MAP_RANFunctionDefinition_Policy_Action_Item_tag2el_1,
232 5, /* Count of tags in the map */
233 asn_MAP_RANFunctionDefinition_Policy_Action_Item_oms_1, /* Optional members */
234 2, 0, /* Root/Additions */
235 5, /* First extension addition */
236};
237asn_TYPE_descriptor_t asn_DEF_RANFunctionDefinition_Policy_Action_Item = {
238 "RANFunctionDefinition-Policy-Action-Item",
239 "RANFunctionDefinition-Policy-Action-Item",
240 &asn_OP_SEQUENCE,
241 asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1,
242 sizeof(asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1)
243 /sizeof(asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1[0]), /* 1 */
244 asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1, /* Same as above */
245 sizeof(asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1)
246 /sizeof(asn_DEF_RANFunctionDefinition_Policy_Action_Item_tags_1[0]), /* 1 */
247 { 0, 0, SEQUENCE_constraint },
248 asn_MBR_RANFunctionDefinition_Policy_Action_Item_1,
249 5, /* Elements count */
250 &asn_SPC_RANFunctionDefinition_Policy_Action_Item_specs_1 /* Additional specs */
251};
252