263db6747d0f5acf2a74f0d57a74157dacc3b607
[o-du/l2.git] / src / codec_utils / RRC / CSI-ResourceConfig.h
1 /*
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`
6  */
7
8 #ifndef _CSI_ResourceConfig_H_
9 #define _CSI_ResourceConfig_H_
10
11
12 #include <asn_application.h>
13
14 /* Including external dependencies */
15 #include "CSI-ResourceConfigId.h"
16 #include "BWP-Id.h"
17 #include <NativeEnumerated.h>
18 #include "NZP-CSI-RS-ResourceSetId.h"
19 #include <asn_SEQUENCE_OF.h>
20 #include <constr_SEQUENCE_OF.h>
21 #include "CSI-SSB-ResourceSetId.h"
22 #include <constr_SEQUENCE.h>
23 #include "CSI-IM-ResourceSetId.h"
24 #include <constr_CHOICE.h>
25
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29
30 /* Dependencies */
31 typedef enum CSI_ResourceConfig__csi_RS_ResourceSetList_PR {
32         CSI_ResourceConfig__csi_RS_ResourceSetList_PR_NOTHING,  /* No components present */
33         CSI_ResourceConfig__csi_RS_ResourceSetList_PR_nzp_CSI_RS_SSB,
34         CSI_ResourceConfig__csi_RS_ResourceSetList_PR_csi_IM_ResourceSetList
35 } CSI_ResourceConfig__csi_RS_ResourceSetList_PR;
36 typedef enum CSI_ResourceConfig__resourceType {
37         CSI_ResourceConfig__resourceType_aperiodic      = 0,
38         CSI_ResourceConfig__resourceType_semiPersistent = 1,
39         CSI_ResourceConfig__resourceType_periodic       = 2
40 } e_CSI_ResourceConfig__resourceType;
41
42 /* CSI-ResourceConfig */
43 typedef struct CSI_ResourceConfig {
44         CSI_ResourceConfigId_t   csi_ResourceConfigId;
45         struct CSI_ResourceConfig__csi_RS_ResourceSetList {
46                 CSI_ResourceConfig__csi_RS_ResourceSetList_PR present;
47                 union CSI_ResourceConfig__csi_RS_ResourceSetList_u {
48                         struct CSI_ResourceConfig__csi_RS_ResourceSetList__nzp_CSI_RS_SSB {
49                                 struct CSI_ResourceConfig__csi_RS_ResourceSetList__nzp_CSI_RS_SSB__nzp_CSI_RS_ResourceSetList {
50                                         A_SEQUENCE_OF(NZP_CSI_RS_ResourceSetId_t) list;
51                                         
52                                         /* Context for parsing across buffer boundaries */
53                                         asn_struct_ctx_t _asn_ctx;
54                                 } *nzp_CSI_RS_ResourceSetList;
55                                 struct CSI_ResourceConfig__csi_RS_ResourceSetList__nzp_CSI_RS_SSB__csi_SSB_ResourceSetList {
56                                         A_SEQUENCE_OF(CSI_SSB_ResourceSetId_t) list;
57                                         
58                                         /* Context for parsing across buffer boundaries */
59                                         asn_struct_ctx_t _asn_ctx;
60                                 } *csi_SSB_ResourceSetList;
61                                 
62                                 /* Context for parsing across buffer boundaries */
63                                 asn_struct_ctx_t _asn_ctx;
64                         } *nzp_CSI_RS_SSB;
65                         struct CSI_ResourceConfig__csi_RS_ResourceSetList__csi_IM_ResourceSetList {
66                                 A_SEQUENCE_OF(CSI_IM_ResourceSetId_t) list;
67                                 
68                                 /* Context for parsing across buffer boundaries */
69                                 asn_struct_ctx_t _asn_ctx;
70                         } *csi_IM_ResourceSetList;
71                 } choice;
72                 
73                 /* Context for parsing across buffer boundaries */
74                 asn_struct_ctx_t _asn_ctx;
75         } csi_RS_ResourceSetList;
76         BWP_Id_t         bwp_Id;
77         long     resourceType;
78         /*
79          * This type is extensible,
80          * possible extensions are below.
81          */
82         
83         /* Context for parsing across buffer boundaries */
84         asn_struct_ctx_t _asn_ctx;
85 } CSI_ResourceConfig_t;
86
87 /* Implementation */
88 /* extern asn_TYPE_descriptor_t asn_DEF_resourceType_12;        // (Use -fall-defs-global to expose) */
89 extern asn_TYPE_descriptor_t asn_DEF_CSI_ResourceConfig;
90 extern asn_SEQUENCE_specifics_t asn_SPC_CSI_ResourceConfig_specs_1;
91 extern asn_TYPE_member_t asn_MBR_CSI_ResourceConfig_1[4];
92
93 #ifdef __cplusplus
94 }
95 #endif
96
97 #endif  /* _CSI_ResourceConfig_H_ */
98 #include <asn_internal.h>