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`
10 #include "PLMN-IdentityInfoList.h"
11 #include "MultiFrequencyBandListNR.h"
13 memb_ssb_SubcarrierOffset_constraint_4(const asn_TYPE_descriptor_t *td, const void *sptr,
14 asn_app_constraint_failed_f *ctfailcb, void *app_key) {
18 ASN__CTFAIL(app_key, td, sptr,
19 "%s: value not given (%s:%d)",
20 td->name, __FILE__, __LINE__);
24 value = *(const long *)sptr;
26 if((value >= 0 && value <= 15)) {
27 /* Constraint check succeeded */
30 ASN__CTFAIL(app_key, td, sptr,
31 "%s: constraint failed (%s:%d)",
32 td->name, __FILE__, __LINE__);
37 static asn_oer_constraints_t asn_OER_memb_ssb_SubcarrierOffset_constr_5 CC_NOTUSED = {
38 { 1, 1 } /* (0..15) */,
40 static asn_per_constraints_t asn_PER_memb_ssb_SubcarrierOffset_constr_5 CC_NOTUSED = {
41 { APC_CONSTRAINED, 4, 4, 0, 15 } /* (0..15) */,
42 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
43 0, 0 /* No PER value map */
45 static asn_TYPE_member_t asn_MBR_noSIB1_4[] = {
46 { ATF_NOFLAGS, 0, offsetof(struct CGI_Info__noSIB1, ssb_SubcarrierOffset),
47 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
48 -1, /* IMPLICIT tag at current level */
49 &asn_DEF_NativeInteger,
51 { &asn_OER_memb_ssb_SubcarrierOffset_constr_5, &asn_PER_memb_ssb_SubcarrierOffset_constr_5, memb_ssb_SubcarrierOffset_constraint_4 },
52 0, 0, /* No default value */
53 "ssb-SubcarrierOffset"
55 { ATF_NOFLAGS, 0, offsetof(struct CGI_Info__noSIB1, pdcch_ConfigSIB1),
56 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
57 -1, /* IMPLICIT tag at current level */
58 &asn_DEF_PDCCH_ConfigSIB1,
61 0, 0, /* No default value */
65 static const ber_tlv_tag_t asn_DEF_noSIB1_tags_4[] = {
66 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
67 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
69 static const asn_TYPE_tag2member_t asn_MAP_noSIB1_tag2el_4[] = {
70 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* ssb-SubcarrierOffset */
71 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* pdcch-ConfigSIB1 */
73 static asn_SEQUENCE_specifics_t asn_SPC_noSIB1_specs_4 = {
74 sizeof(struct CGI_Info__noSIB1),
75 offsetof(struct CGI_Info__noSIB1, _asn_ctx),
76 asn_MAP_noSIB1_tag2el_4,
77 2, /* Count of tags in the map */
78 0, 0, 0, /* Optional elements (not needed) */
79 -1, /* First extension addition */
81 static /* Use -fall-defs-global to expose */
82 asn_TYPE_descriptor_t asn_DEF_noSIB1_4 = {
86 asn_DEF_noSIB1_tags_4,
87 sizeof(asn_DEF_noSIB1_tags_4)
88 /sizeof(asn_DEF_noSIB1_tags_4[0]) - 1, /* 1 */
89 asn_DEF_noSIB1_tags_4, /* Same as above */
90 sizeof(asn_DEF_noSIB1_tags_4)
91 /sizeof(asn_DEF_noSIB1_tags_4[0]), /* 2 */
92 { 0, 0, SEQUENCE_constraint },
94 2, /* Elements count */
95 &asn_SPC_noSIB1_specs_4 /* Additional specs */
98 asn_TYPE_member_t asn_MBR_CGI_Info_1[] = {
99 { ATF_POINTER, 3, offsetof(struct CGI_Info, plmn_IdentityInfoList),
100 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
101 -1, /* IMPLICIT tag at current level */
102 &asn_DEF_PLMN_IdentityInfoList,
105 0, 0, /* No default value */
106 "plmn-IdentityInfoList"
108 { ATF_POINTER, 2, offsetof(struct CGI_Info, frequencyBandList),
109 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
110 -1, /* IMPLICIT tag at current level */
111 &asn_DEF_MultiFrequencyBandListNR,
114 0, 0, /* No default value */
117 { ATF_POINTER, 1, offsetof(struct CGI_Info, noSIB1),
118 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
123 0, 0, /* No default value */
127 static const int asn_MAP_CGI_Info_oms_1[] = { 0, 1, 2 };
128 static const ber_tlv_tag_t asn_DEF_CGI_Info_tags_1[] = {
129 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
131 static const asn_TYPE_tag2member_t asn_MAP_CGI_Info_tag2el_1[] = {
132 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* plmn-IdentityInfoList */
133 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* frequencyBandList */
134 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* noSIB1 */
136 asn_SEQUENCE_specifics_t asn_SPC_CGI_Info_specs_1 = {
137 sizeof(struct CGI_Info),
138 offsetof(struct CGI_Info, _asn_ctx),
139 asn_MAP_CGI_Info_tag2el_1,
140 3, /* Count of tags in the map */
141 asn_MAP_CGI_Info_oms_1, /* Optional members */
142 3, 0, /* Root/Additions */
143 3, /* First extension addition */
145 asn_TYPE_descriptor_t asn_DEF_CGI_Info = {
149 asn_DEF_CGI_Info_tags_1,
150 sizeof(asn_DEF_CGI_Info_tags_1)
151 /sizeof(asn_DEF_CGI_Info_tags_1[0]), /* 1 */
152 asn_DEF_CGI_Info_tags_1, /* Same as above */
153 sizeof(asn_DEF_CGI_Info_tags_1)
154 /sizeof(asn_DEF_CGI_Info_tags_1[0]), /* 1 */
155 { 0, 0, SEQUENCE_constraint },
157 3, /* Elements count */
158 &asn_SPC_CGI_Info_specs_1 /* Additional specs */