Moving in e2sim originally from it/test/simulators
[sim/e2-interface.git] / e2sim / ASN1c / CNTypeRestrictionsItem.c
1 /*****************************************************************************
2 #                                                                            *
3 # Copyright 2019 AT&T Intellectual Property                                  *
4 #                                                                            *
5 # Licensed under the Apache License, Version 2.0 (the "License");            *
6 # you may not use this file except in compliance with the License.           *
7 # You may obtain a copy of the License at                                    *
8 #                                                                            *
9 #      http://www.apache.org/licenses/LICENSE-2.0                            *
10 #                                                                            *
11 # Unless required by applicable law or agreed to in writing, software        *
12 # distributed under the License is distributed on an "AS IS" BASIS,          *
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   *
14 # See the License for the specific language governing permissions and        *
15 # limitations under the License.                                             *
16 #                                                                            *
17 ******************************************************************************/
18
19 /*
20  * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
21  * From ASN.1 module "X2AP-IEs"
22  *      found in "../../asnFiles/X2AP-IEs.asn"
23  *      `asn1c -fcompound-names -fincludes-quoted -fno-include-deps -findirect-choice -gen-PER -no-gen-OER -D.`
24  */
25
26 #include "CNTypeRestrictionsItem.h"
27
28 #include "ProtocolExtensionContainer.h"
29 /*
30  * This type is implemented using NativeEnumerated,
31  * so here we adjust the DEF accordingly.
32  */
33 static asn_per_constraints_t asn_PER_type_cn_type_constr_3 CC_NOTUSED = {
34         { APC_CONSTRAINED | APC_EXTENSIBLE,  0,  0,  0,  0 }    /* (0..0,...) */,
35         { APC_UNCONSTRAINED,    -1, -1,  0,  0 },
36         0, 0    /* No PER value map */
37 };
38 static const asn_INTEGER_enum_map_t asn_MAP_cn_type_value2enum_3[] = {
39         { 0,    16,     "fiveGC-forbidden" }
40         /* This list is extensible */
41 };
42 static const unsigned int asn_MAP_cn_type_enum2value_3[] = {
43         0       /* fiveGC-forbidden(0) */
44         /* This list is extensible */
45 };
46 static const asn_INTEGER_specifics_t asn_SPC_cn_type_specs_3 = {
47         asn_MAP_cn_type_value2enum_3,   /* "tag" => N; sorted by tag */
48         asn_MAP_cn_type_enum2value_3,   /* N => "tag"; sorted by N */
49         1,      /* Number of elements in the maps */
50         2,      /* Extensions before this member */
51         1,      /* Strict enumeration */
52         0,      /* Native long size */
53         0
54 };
55 static const ber_tlv_tag_t asn_DEF_cn_type_tags_3[] = {
56         (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
57         (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
58 };
59 static /* Use -fall-defs-global to expose */
60 asn_TYPE_descriptor_t asn_DEF_cn_type_3 = {
61         "cn-type",
62         "cn-type",
63         &asn_OP_NativeEnumerated,
64         asn_DEF_cn_type_tags_3,
65         sizeof(asn_DEF_cn_type_tags_3)
66                 /sizeof(asn_DEF_cn_type_tags_3[0]) - 1, /* 1 */
67         asn_DEF_cn_type_tags_3, /* Same as above */
68         sizeof(asn_DEF_cn_type_tags_3)
69                 /sizeof(asn_DEF_cn_type_tags_3[0]), /* 2 */
70         { 0, &asn_PER_type_cn_type_constr_3, NativeEnumerated_constraint },
71         0, 0,   /* Defined elsewhere */
72         &asn_SPC_cn_type_specs_3        /* Additional specs */
73 };
74
75 asn_TYPE_member_t asn_MBR_CNTypeRestrictionsItem_1[] = {
76         { ATF_NOFLAGS, 0, offsetof(struct CNTypeRestrictionsItem, plmn_Id),
77                 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
78                 -1,     /* IMPLICIT tag at current level */
79                 &asn_DEF_PLMN_Identity,
80                 0,
81                 { 0, 0, 0 },
82                 0, 0, /* No default value */
83                 "plmn-Id"
84                 },
85         { ATF_NOFLAGS, 0, offsetof(struct CNTypeRestrictionsItem, cn_type),
86                 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
87                 -1,     /* IMPLICIT tag at current level */
88                 &asn_DEF_cn_type_3,
89                 0,
90                 { 0, 0, 0 },
91                 0, 0, /* No default value */
92                 "cn-type"
93                 },
94         { ATF_POINTER, 1, offsetof(struct CNTypeRestrictionsItem, iE_Extensions),
95                 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
96                 -1,     /* IMPLICIT tag at current level */
97                 &asn_DEF_ProtocolExtensionContainer_170P116,
98                 0,
99                 { 0, 0, 0 },
100                 0, 0, /* No default value */
101                 "iE-Extensions"
102                 },
103 };
104 static const int asn_MAP_CNTypeRestrictionsItem_oms_1[] = { 2 };
105 static const ber_tlv_tag_t asn_DEF_CNTypeRestrictionsItem_tags_1[] = {
106         (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
107 };
108 static const asn_TYPE_tag2member_t asn_MAP_CNTypeRestrictionsItem_tag2el_1[] = {
109     { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* plmn-Id */
110     { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* cn-type */
111     { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* iE-Extensions */
112 };
113 asn_SEQUENCE_specifics_t asn_SPC_CNTypeRestrictionsItem_specs_1 = {
114         sizeof(struct CNTypeRestrictionsItem),
115         offsetof(struct CNTypeRestrictionsItem, _asn_ctx),
116         asn_MAP_CNTypeRestrictionsItem_tag2el_1,
117         3,      /* Count of tags in the map */
118         asn_MAP_CNTypeRestrictionsItem_oms_1,   /* Optional members */
119         1, 0,   /* Root/Additions */
120         3,      /* First extension addition */
121 };
122 asn_TYPE_descriptor_t asn_DEF_CNTypeRestrictionsItem = {
123         "CNTypeRestrictionsItem",
124         "CNTypeRestrictionsItem",
125         &asn_OP_SEQUENCE,
126         asn_DEF_CNTypeRestrictionsItem_tags_1,
127         sizeof(asn_DEF_CNTypeRestrictionsItem_tags_1)
128                 /sizeof(asn_DEF_CNTypeRestrictionsItem_tags_1[0]), /* 1 */
129         asn_DEF_CNTypeRestrictionsItem_tags_1,  /* Same as above */
130         sizeof(asn_DEF_CNTypeRestrictionsItem_tags_1)
131                 /sizeof(asn_DEF_CNTypeRestrictionsItem_tags_1[0]), /* 1 */
132         { 0, 0, SEQUENCE_constraint },
133         asn_MBR_CNTypeRestrictionsItem_1,
134         3,      /* Elements count */
135         &asn_SPC_CNTypeRestrictionsItem_specs_1 /* Additional specs */
136 };
137