[JIRA ID- ODUHIGH-462] [ISSUE ID ODUHIGH-477] Adding support for drx configuration...
[o-du/l2.git] / src / du_app / du_f1ap_conversions.h
1 /*******************************************************************************
2 ################################################################################
3 #   Copyright (c) [2017-2019] [Radisys]                                        #
4 #                                                                              #
5 #   Licensed under the Apache License, Version 2.0 (the "License");            #
6 #   you may not use this file except in compliance with the License.           #
7 #   You may obtain a copy of the License at                                    #
8 #                                                                              #
9 #       http://www.apache.org/licenses/LICENSE-2.0                             #
10 #                                                                              #
11 #   Unless required by applicable law or agreed to in writing, software        #
12 #   distributed under the License is distributed on an "AS IS" BASIS,          #
13 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #
14 #   See the License for the specific language governing permissions and        #
15 #   limitations under the License.                                             #
16 ################################################################################
17 *******************************************************************************/
18
19 /* This file contains definitions of F1AP conversion functions */
20
21 #include "RLC-BearerConfig.h"
22 #include "RLC-Config.h"
23 #include "SN-FieldLengthAM.h"
24 #include "SN-FieldLengthUM.h"
25 #include "T-PollRetransmit.h"
26 #include "PollPDU.h"
27 #include "PollByte.h"
28 #include "T-Reassembly.h"
29 #include "T-StatusProhibit.h"
30 #include "PUCCH-Resource.h"
31 #include "PagingDRX.h"
32 #include "PCCH-Config.h"
33 #include "ServingCellConfigCommonSIB.h"
34 #include "ServingCellConfigCommon.h"
35 #include "CFRA.h"
36 #include "RACH-ConfigCommon.h"
37 #include "du_app_rlc_inf.h"
38 #include "LongDRXCycleLength.h"
39 #include "ShortDRXCycleLength.h"
40 #include "DRX-ConfigRrc.h"
41
42 RLC_BearerConfig__servedRadioBearer_PR covertRbTypeFromIntEnumToRrcEnum(RlcRbType rbType);
43 RLC_Config_PR covertRlcModeFromIntEnumToRrcEnum(RlcMode mode);
44 SN_FieldLengthAM_t covertAmSnLenFromIntEnumToRrcEnum(SnLenAm snLen);
45 SnLenAm covertAmSnLenFromRrcEnumToIntEnum(SN_FieldLengthAM_t snLen);
46 SN_FieldLengthUM_t covertUmSnLenFromIntEnumToRrcEnum(SnLenUm snLen);
47 SnLenUm covertUmSnLenFromRrcEnumToIntEnum(SN_FieldLengthUM_t snLen);
48 T_PollRetransmit_t covertPollRetxTmrValueToEnum(uint16_t pollRetxTmr);
49 uint16_t covertPollRetxTmrEnumToValue(uint8_t pollRetxTmrCfg);
50 PollPDU_t covertPollPduValueToEnum(int32_t pollPdu);
51 int32_t covertPollPduEnumToValue(uint8_t pollPduCfg);
52 PollByte_t covertPollByteValueToEnum(int32_t pollByte);
53 int32_t covertPollByteEnumToValue(uint16_t pollBytesCfg);
54 uint8_t covertMaxRetxValueToEnum(uint8_t maxRetx);
55 uint8_t covertMaxRetxEnumToValue(uint8_t maxRetxCfg);
56 T_Reassembly_t convertReasmblTmrValueToEnum(int8_t reasmblTmr);
57 int8_t convertReasmblTmrEnumToValue(uint8_t reAsmblTmrCfg);
58 T_StatusProhibit_t convertProhibitTmrValueToEnum(int16_t prohibitTmr);
59 int16_t convertProhibitTmrEnumToValue(T_StatusProhibit_t prohibitTmr);
60 PUCCH_Resource__format_PR covertPucchFormatIntEnumToRrcEnum(uint8_t pucchFormat);
61 long convertBsrPeriodicTmrValueToEnum(int16_t periodicTmr);
62 long convertBsrRetxTmrValueToEnum(uint16_t retxTmr);
63 long convertLcSrDelayTmrValueToEnum(uint16_t delayTimer);
64
65 e_PagingDRX convertPagingCycleValueToEnum(uint16_t pagingDrxCycle);
66 uint16_t convertPagingCycleEnumToValue(e_PagingDRX pagingDrx);
67 uint8_t convertNsEnumToValue(e_PCCH_Config__ns Ns);
68 e_PCCH_Config__ns convertNsValueToEnum(uint8_t numPO);
69
70 e_ServingCellConfigCommonSIB__ssb_PeriodicityServingCell convertSsbPeriodicityValueToEnumForSib(uint16_t ssbPeriodicity);
71 e_ServingCellConfigCommon__ssb_periodicityServingCell convertSsbPeriodicityValueToEnum(uint16_t ssbPeriodicity);
72 e_CFRA__occasions__ssb_perRACH_Occasion convertCFRASsbPerRachOccasionValueToEnum(uint8_t ssbOccPerRach);
73 e_ServingCellConfigCommon__dmrs_TypeA_Position convertDmrsTypeAPosValueToEnum(uint8_t dmrsTypeAPos);
74 e_RACH_ConfigCommon__ssb_perRACH_OccasionAndCB_PreamblesPerSSB__one convertCbPreamblePerSsbValueToEnum(uint8_t numCbPreamblePerSsb);
75
76 enum DRX_ConfigRrc__drx_LongCycleStartOffset_PR convertLongDrxCycleLengthValueToEnum(uint16_t longDrxCycleLength);
77 e_DRX_ConfigRrc__shortDRX__drx_ShortCycle convertShortDrxCycleLengthValueToEnum(uint16_t shortDrxCycleLength);
78 e_DRX_ConfigRrc__drx_onDurationTimer__milliSeconds convertOnDurationTimerMilliSecondsValueToEnum(uint16_t ondurationTime);
79 e_DRX_ConfigRrc__drx_RetransmissionTimerUL convertDrxRetransmissionTimerUlValueToEnum(uint16_t retransmissionTimerUL);
80 e_DRX_ConfigRrc__drx_RetransmissionTimerDL convertDrxRetransmissionTimerDlValueToEnum(uint16_t retransmissionTimerDL);
81 e_DRX_ConfigRrc__drx_InactivityTimer convertDrxInactivityTimerValueToEnum(uint16_t inactivityTimer);
82 uint16_t convertShortDrxCycleLengthEnumToValue(e_ShortDRXCycleLength shortDrxCycleLength);
83 uint16_t convertLongDrxCycleLengthEnumToValue(e_LongDRXCycleLength longDrxCycleLength);
84 uint16_t convertDrxInactivityTimerEnumToValue(e_DRX_ConfigRrc__drx_InactivityTimer inactivityTimer);
85 uint16_t convertDrxRetransmissionTimerDlEnumToValue(e_DRX_ConfigRrc__drx_RetransmissionTimerDL retransmissionTimerDL);
86 uint16_t convertDrxRetransmissionTimerUlEnumToValue(e_DRX_ConfigRrc__drx_RetransmissionTimerUL retransmissionTimerUL);
87 uint16_t convertOnDurationTimerMilliSecondsEnumToValue(e_DRX_ConfigRrc__drx_onDurationTimer__milliSeconds ondurationTime);
88 /**********************************************************************
89   End of file
90  **********************************************************************/