Updated documentation for mock a1 tool
[ric-app/admin.git] / asn1c_defs / X2N_CoverageModification-Item.c
1 /*
2  * Generated by asn1c-0.9.29 n1 (http://lionet.info/asn1c)
3  * From ASN.1 module "X2AP-IEs"
4  *      found in "../../asn_defs/asn1/x2ap-15-04.asn"
5  *      `asn1c -fcompound-names -fno-include-deps -findirect-choice -gen-PER -no-gen-OER`
6  */
7
8 #include "X2N_CoverageModification-Item.h"
9
10 #include "X2N_CellReplacingInfo.h"
11 static int
12 memb_X2N_coverageState_constraint_1(const asn_TYPE_descriptor_t *td, const void *sptr,
13                         asn_app_constraint_failed_f *ctfailcb, void *app_key) {
14         long value;
15         
16         if(!sptr) {
17                 ASN__CTFAIL(app_key, td, sptr,
18                         "%s: value not given (%s:%d)",
19                         td->name, __FILE__, __LINE__);
20                 return -1;
21         }
22         
23         value = *(const long *)sptr;
24         
25         if((value >= 0 && value <= 15)) {
26                 /* Constraint check succeeded */
27                 return 0;
28         } else {
29                 ASN__CTFAIL(app_key, td, sptr,
30                         "%s: constraint failed (%s:%d)",
31                         td->name, __FILE__, __LINE__);
32                 return -1;
33         }
34 }
35
36 static asn_per_constraints_t asn_PER_memb_X2N_coverageState_constr_3 CC_NOTUSED = {
37         { APC_CONSTRAINED | APC_EXTENSIBLE,  4,  4,  0,  15 }   /* (0..15,...) */,
38         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
39         0, 0    /* No PER value map */
40 };
41 asn_TYPE_member_t asn_MBR_X2N_CoverageModification_Item_1[] = {
42         { ATF_NOFLAGS, 0, offsetof(struct X2N_CoverageModification_Item, eCGI),
43                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
44                 -1,     /* IMPLICIT tag at current level */
45                 &asn_DEF_X2N_ECGI,
46                 0,
47                 { 0, 0, 0 },
48                 0, 0, /* No default value */
49                 "eCGI"
50                 },
51         { ATF_NOFLAGS, 0, offsetof(struct X2N_CoverageModification_Item, coverageState),
52                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
53                 -1,     /* IMPLICIT tag at current level */
54                 &asn_DEF_NativeInteger,
55                 0,
56                 { 0, &asn_PER_memb_X2N_coverageState_constr_3,  memb_X2N_coverageState_constraint_1 },
57                 0, 0, /* No default value */
58                 "coverageState"
59                 },
60         { ATF_POINTER, 2, offsetof(struct X2N_CoverageModification_Item, cellDeploymentStatusIndicator),
61                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
62                 -1,     /* IMPLICIT tag at current level */
63                 &asn_DEF_X2N_CellDeploymentStatusIndicator,
64                 0,
65                 { 0, 0, 0 },
66                 0, 0, /* No default value */
67                 "cellDeploymentStatusIndicator"
68                 },
69         { ATF_POINTER, 1, offsetof(struct X2N_CoverageModification_Item, cellReplacingInfo),
70                 (ASN_TAG_CLASS_CONTEXT | (3 << 2)),
71                 -1,     /* IMPLICIT tag at current level */
72                 &asn_DEF_X2N_CellReplacingInfo,
73                 0,
74                 { 0, 0, 0 },
75                 0, 0, /* No default value */
76                 "cellReplacingInfo"
77                 },
78 };
79 static const int asn_MAP_X2N_CoverageModification_Item_oms_1[] = { 2, 3 };
80 static const ber_tlv_tag_t asn_DEF_X2N_CoverageModification_Item_tags_1[] = {
81         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
82 };
83 static const asn_TYPE_tag2member_t asn_MAP_X2N_CoverageModification_Item_tag2el_1[] = {
84     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* eCGI */
85     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* coverageState */
86     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* cellDeploymentStatusIndicator */
87     { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* cellReplacingInfo */
88 };
89 asn_SEQUENCE_specifics_t asn_SPC_X2N_CoverageModification_Item_specs_1 = {
90         sizeof(struct X2N_CoverageModification_Item),
91         offsetof(struct X2N_CoverageModification_Item, _asn_ctx),
92         asn_MAP_X2N_CoverageModification_Item_tag2el_1,
93         4,      /* Count of tags in the map */
94         asn_MAP_X2N_CoverageModification_Item_oms_1,    /* Optional members */
95         2, 0,   /* Root/Additions */
96         4,      /* First extension addition */
97 };
98 asn_TYPE_descriptor_t asn_DEF_X2N_CoverageModification_Item = {
99         "CoverageModification-Item",
100         "CoverageModification-Item",
101         &asn_OP_SEQUENCE,
102         asn_DEF_X2N_CoverageModification_Item_tags_1,
103         sizeof(asn_DEF_X2N_CoverageModification_Item_tags_1)
104                 /sizeof(asn_DEF_X2N_CoverageModification_Item_tags_1[0]), /* 1 */
105         asn_DEF_X2N_CoverageModification_Item_tags_1,   /* Same as above */
106         sizeof(asn_DEF_X2N_CoverageModification_Item_tags_1)
107                 /sizeof(asn_DEF_X2N_CoverageModification_Item_tags_1[0]), /* 1 */
108         { 0, 0, SEQUENCE_constraint },
109         asn_MBR_X2N_CoverageModification_Item_1,
110         4,      /* Elements count */
111         &asn_SPC_X2N_CoverageModification_Item_specs_1  /* Additional specs */
112 };
113