2 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
3 * From ASN.1 module "E2SM-KPM-IEs"
4 * found in "/home/rshacham/e2sm-kpm-v01.02.asn"
5 * `asn1c -fcompound-names`
8 #include "RAN-Container.h"
10 static asn_oer_constraints_t asn_OER_type_reportContainer_constr_3 CC_NOTUSED = {
13 static asn_per_constraints_t asn_PER_type_reportContainer_constr_3 CC_NOTUSED = {
14 { APC_CONSTRAINED | APC_EXTENSIBLE, 2, 2, 0, 2 } /* (0..2,...) */,
15 { APC_UNCONSTRAINED, -1, -1, 0, 0 },
16 0, 0 /* No PER value map */
18 static asn_TYPE_member_t asn_MBR_reportContainer_3[] = {
19 { ATF_NOFLAGS, 0, offsetof(struct RAN_Container__reportContainer, choice.oDU_UE),
20 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
21 -1, /* IMPLICIT tag at current level */
22 &asn_DEF_DU_Usage_Report_Per_UE,
25 0, 0, /* No default value */
28 { ATF_NOFLAGS, 0, offsetof(struct RAN_Container__reportContainer, choice.oCU_CP_UE),
29 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
30 -1, /* IMPLICIT tag at current level */
31 &asn_DEF_CU_CP_Usage_Report_Per_UE,
34 0, 0, /* No default value */
37 { ATF_NOFLAGS, 0, offsetof(struct RAN_Container__reportContainer, choice.oCU_UP_UE),
38 (ASN_TAG_CLASS_CONTEXT | (2 << 2)),
39 -1, /* IMPLICIT tag at current level */
40 &asn_DEF_CU_UP_Usage_Report_Per_UE,
43 0, 0, /* No default value */
47 static const asn_TYPE_tag2member_t asn_MAP_reportContainer_tag2el_3[] = {
48 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* oDU-UE */
49 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* oCU-CP-UE */
50 { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* oCU-UP-UE */
52 static asn_CHOICE_specifics_t asn_SPC_reportContainer_specs_3 = {
53 sizeof(struct RAN_Container__reportContainer),
54 offsetof(struct RAN_Container__reportContainer, _asn_ctx),
55 offsetof(struct RAN_Container__reportContainer, present),
56 sizeof(((struct RAN_Container__reportContainer *)0)->present),
57 asn_MAP_reportContainer_tag2el_3,
58 3, /* Count of tags in the map */
60 3 /* Extensions start */
62 static /* Use -fall-defs-global to expose */
63 asn_TYPE_descriptor_t asn_DEF_reportContainer_3 = {
67 0, /* No effective tags (pointer) */
68 0, /* No effective tags (count) */
69 0, /* No tags (pointer) */
70 0, /* No tags (count) */
71 { &asn_OER_type_reportContainer_constr_3, &asn_PER_type_reportContainer_constr_3, CHOICE_constraint },
72 asn_MBR_reportContainer_3,
73 3, /* Elements count */
74 &asn_SPC_reportContainer_specs_3 /* Additional specs */
77 asn_TYPE_member_t asn_MBR_RAN_Container_1[] = {
78 { ATF_NOFLAGS, 0, offsetof(struct RAN_Container, timestamp),
79 (ASN_TAG_CLASS_CONTEXT | (0 << 2)),
80 -1, /* IMPLICIT tag at current level */
84 0, 0, /* No default value */
87 { ATF_NOFLAGS, 0, offsetof(struct RAN_Container, reportContainer),
88 (ASN_TAG_CLASS_CONTEXT | (1 << 2)),
89 +1, /* EXPLICIT tag at current level */
90 &asn_DEF_reportContainer_3,
93 0, 0, /* No default value */
97 static const ber_tlv_tag_t asn_DEF_RAN_Container_tags_1[] = {
98 (ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
100 static const asn_TYPE_tag2member_t asn_MAP_RAN_Container_tag2el_1[] = {
101 { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* timestamp */
102 { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* reportContainer */
104 asn_SEQUENCE_specifics_t asn_SPC_RAN_Container_specs_1 = {
105 sizeof(struct RAN_Container),
106 offsetof(struct RAN_Container, _asn_ctx),
107 asn_MAP_RAN_Container_tag2el_1,
108 2, /* Count of tags in the map */
109 0, 0, 0, /* Optional elements (not needed) */
110 2, /* First extension addition */
112 asn_TYPE_descriptor_t asn_DEF_RAN_Container = {
116 asn_DEF_RAN_Container_tags_1,
117 sizeof(asn_DEF_RAN_Container_tags_1)
118 /sizeof(asn_DEF_RAN_Container_tags_1[0]), /* 1 */
119 asn_DEF_RAN_Container_tags_1, /* Same as above */
120 sizeof(asn_DEF_RAN_Container_tags_1)
121 /sizeof(asn_DEF_RAN_Container_tags_1[0]), /* 1 */
122 { 0, 0, SEQUENCE_constraint },
123 asn_MBR_RAN_Container_1,
124 2, /* Elements count */
125 &asn_SPC_RAN_Container_specs_1 /* Additional specs */