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`
8 #include "EUTRA-PhysCellIdRange.h"
11 * This type is implemented using NativeEnumerated,
12 * so here we adjust the DEF accordingly.
14 static asn_oer_constraints_t asn_OER_type_range_constr_3 CC_NOTUSED = {
17 static asn_per_constraints_t asn_PER_type_range_constr_3 CC_NOTUSED = {
18 { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */,
19 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
20 0, 0 /* No PER value map */
22 static const asn_INTEGER_enum_map_t asn_MAP_range_value2enum_3[] = {
40 static const unsigned int asn_MAP_range_enum2value_3[] = {
58 static const asn_INTEGER_specifics_t asn_SPC_range_specs_3 = {
59 asn_MAP_range_value2enum_3, /* "tag" => N; sorted by tag */
60 asn_MAP_range_enum2value_3, /* N => "tag"; sorted by N */
61 16, /* Number of elements in the maps */
62 0, /* Enumeration is not extensible */
63 1, /* Strict enumeration */
64 0, /* Native long size */
67 static const ber_tlv_tag_t asn_DEF_range_tags_3[] = {
68 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
69 (ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
71 static /* Use -fall-defs-global to expose */
72 asn_TYPE_descriptor_t asn_DEF_range_3 = {
75 &asn_OP_NativeEnumerated,
77 sizeof(asn_DEF_range_tags_3)
78 /sizeof(asn_DEF_range_tags_3[0]) - 1, /* 1 */
79 asn_DEF_range_tags_3, /* Same as above */
80 sizeof(asn_DEF_range_tags_3)
81 /sizeof(asn_DEF_range_tags_3[0]), /* 2 */
82 { &asn_OER_type_range_constr_3, &asn_PER_type_range_constr_3, NativeEnumerated_constraint },
83 0, 0, /* Defined elsewhere */
84 &asn_SPC_range_specs_3 /* Additional specs */
87 asn_TYPE_member_t asn_MBR_EUTRA_PhysCellIdRange_1[] = {
88 { ATF_NOFLAGS, 0, offsetof(struct EUTRA_PhysCellIdRange, start),
89 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
90 -1, /* IMPLICIT tag at current level */
91 &asn_DEF_EUTRA_PhysCellId,
94 0, 0, /* No default value */
97 { ATF_POINTER, 1, offsetof(struct EUTRA_PhysCellIdRange, range),
98 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
99 -1, /* IMPLICIT tag at current level */
103 0, 0, /* No default value */
107 static const int asn_MAP_EUTRA_PhysCellIdRange_oms_1[] = { 1 };
108 static const ber_tlv_tag_t asn_DEF_EUTRA_PhysCellIdRange_tags_1[] = {
109 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
111 static const asn_TYPE_tag2member_t asn_MAP_EUTRA_PhysCellIdRange_tag2el_1[] = {
112 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* start */
113 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* range */
115 asn_SEQUENCE_specifics_t asn_SPC_EUTRA_PhysCellIdRange_specs_1 = {
116 sizeof(struct EUTRA_PhysCellIdRange),
117 offsetof(struct EUTRA_PhysCellIdRange, _asn_ctx),
118 asn_MAP_EUTRA_PhysCellIdRange_tag2el_1,
119 2, /* Count of tags in the map */
120 asn_MAP_EUTRA_PhysCellIdRange_oms_1, /* Optional members */
121 1, 0, /* Root/Additions */
122 -1, /* First extension addition */
124 asn_TYPE_descriptor_t asn_DEF_EUTRA_PhysCellIdRange = {
125 "EUTRA-PhysCellIdRange",
126 "EUTRA-PhysCellIdRange",
128 asn_DEF_EUTRA_PhysCellIdRange_tags_1,
129 sizeof(asn_DEF_EUTRA_PhysCellIdRange_tags_1)
130 /sizeof(asn_DEF_EUTRA_PhysCellIdRange_tags_1[0]), /* 1 */
131 asn_DEF_EUTRA_PhysCellIdRange_tags_1, /* Same as above */
132 sizeof(asn_DEF_EUTRA_PhysCellIdRange_tags_1)
133 /sizeof(asn_DEF_EUTRA_PhysCellIdRange_tags_1[0]), /* 1 */
134 { 0, 0, SEQUENCE_constraint },
135 asn_MBR_EUTRA_PhysCellIdRange_1,
136 2, /* Elements count */
137 &asn_SPC_EUTRA_PhysCellIdRange_specs_1 /* Additional specs */