E2AP and E2SM-RC version upgrade to E2aP v.2.0 and E2SM-RC to v1.0.1
[ric-app/rc.git] / e2sm / wrapper.h
1 #ifndef _WRAPPER_H_
2 #define _WRAPPER_H_
3
4 //#include "ARP.h"
5 #include "BOOLEAN.h"
6 #include "NativeReal.h"
7 //#include "NULL.h"
8 #include "REAL.h"
9 //#include "TimeStamp.h"
10 #include "OCTET_STRING.h"
11 #include "E2SM-RC-ControlHeader-Format1.h"
12 #include "E2SM-RC-ControlHeader.h"
13 #include "E2SM-RC-ControlMessage-Format1.h"
14 #include "E2SM-RC-ControlMessage.h"
15 #include "E2SM-RC-RANFunctionDefinition.h"
16 #include "INTEGER.h"
17 #include "NativeInteger.h"
18 #include "OPEN_TYPE.h"
19 #include "PrintableString.h"
20 //#include "RAN-ControlParameter-Item.h"
21 //#include "RANParameter-ELEMENT.h"
22 #include "RANParameter-ID.h"
23 //#include "RANParameter-Item.h"
24 #include "RANParameter-LIST.h"
25 #include "RANParameter-Name.h"
26 #include "RANParameter-STRUCTURE.h"
27 #include "RANParameter-Value.h"
28 #include "RANParameter-ValueType.h"
29 #include "RANfunction-Name.h"
30 #include "RIC-ControlAction-ID.h"
31 //#include "RIC-ControlAction-Item.h"
32 #include "RIC-ControlAction-Name.h"
33 //#include "RIC-ControlStyle-Item.h"
34 //#include "RIC-EventTriggerStyle-Item.h"
35 #include "RIC-Format-Type.h"
36 #include "RIC-Style-Name.h"
37 #include "RIC-Style-Type.h"
38 //#include "UE-Identity.h"
39 #include "RANParameter-ValueType-Choice-ElementFalse.h"
40 #include "RANParameter-ValueType-Choice-Structure.h"
41 #include "UEID.h"
42 #include "UEID-GNB.h"
43 #include "UEID-GNB-CU-F1AP-ID-List.h"
44 #include "UEID-GNB-CU-CP-E1AP-ID-List.h"
45 #include "UEID-GNB-CU-CP-F1AP-ID-Item.h"
46 #include "UEID-GNB-CU-CP-E1AP-ID-Item.h"
47 #include "E2SM-RC-ControlMessage-Format1-Item.h"
48 #include "RANParameter-STRUCTURE-Item.h"
49 #include "E2SM-RC-ControlOutcome.h"
50 #include "E2SM-RC-ControlOutcome-Format1.h"
51 #include "E2SM-RC-ControlOutcome-Format1-Item.h"
52 #include "NR-CGI.h"
53
54
55 long    F1AP_id[1];
56 long    E1AP_id[1];
57 struct uEID {
58     long    amf_UE_NGAP_Id;
59     //size_t  amf_UE_NGAP_Id_size;
60     const char* pLMNIdentity;
61     size_t  pLMNIdentity_size;
62     const char* aMFRegionID;
63     size_t  aMFRegionID_size;
64     const char* aMFSetID;
65     size_t  aMFSetID_size;
66     const char* aMFPointer;
67     size_t  aMFPointer_size;
68 };
69
70 //extern ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size,struct uEID *in,long f1AP[1],long e1AP[1],long ricControlStyleType, long ricControlActionID);
71
72 extern ssize_t e2sm_encode_ric_control_header(void *buffer, size_t buf_size,struct uEID *in,long f1AP[],size_t f1AP_len,long e1AP[],size_t e1Ap_len,long ricControlStyleType, long ricControlActionID, void *ranParameterValue, size_t ranParameterValue_size);
73
74 extern ssize_t e2sm_encode_ric_control_message(void *buffer, size_t buf_size, long targetPrimaryCell, long targetCell, long nrOrEUtraCell, long nrCGIOrECGI, void *ranParameterValue, size_t  ranParameterValue_size);
75
76 extern E2SM_RC_ControlOutcome_t* e2sm_decode_ric_call_process_outcome(void *buffer, size_t buf_size);
77 extern void e2sm_free_ric_call_process_outcome(E2SM_RC_ControlOutcome_t* controlOutcome) ;
78 extern ssize_t e2sm_encode_nrcgi(NR_CGI_t *nr_cgi, void* ranParameterValue, size_t ranParameterValue_size,
79                                 ulong lNRCellId,uint8_t* buffer, size_t buf_size);
80
81 //extern ssize_t encodeRANParameterTestingItemForStructure(RANParameter_ValueType_Choice_Structure_t **ranParameterChoiceItemStruct,E2SM_RC_ControlMessage_Format1_Item_t **ranParameterItem,long ranParameterID);
82 #endif /* _WRAPPER_H_ */