# Study plan for 11.08.2022: Make a table of sub folder + source code names related to OAI DU with short explanation of what the source code does. Need to fix a few mistakes! :::success **References** - [Repository](https://gitlab.eurecom.fr/oai/openairinterface5g/-/tree/develop/) - [OAI 5G RAN PROJECT GROUP](https://openairinterface.org/oai-5g-ran-project/) - [Webinar part 1](https://youtu.be/bmY7C0_dg5M) - [Webinar part 2](https://youtu.be/9p2dptdyfbk) - [Webinar part 3](https://youtu.be/0t1CERWVw2k) - [Webinar part 4](https://youtu.be/biH3KBu6e7U) ::: ## Table of sub folder. :::info * Repository: - [openairinterface5g \openair2](https://gitlab.eurecom.fr/oai/openairinterface5g/-/tree/develop/openair2) * Contain: 732 Files, 23 Folders ::: |Type|Name|Content| |---|---|---| |Directory|COMMON|See [COMMON](#openair2\COMMON)| |Directory|DOCS|See [DOCS](#openair2\DOCS)| |Directory|ENB_APP|See [ENB_APP](#openair2\ENB_APP)| |Directory|F1AP|See [F1AP](#openair2\F1AP)| |Directory|GNB_APP|See [GNB_APP](#openair2\GNB_APP)| |Directory|LAYER2|See [LAYER2](#openair2\LAYER2)| |Directory|NR_PHY_INTERFACE|See [ENB_APP](#openair2\NR_PHY_INTERFACE)| ### openair2\COMMON |Type|Name|Content| |---|---|---| |NAS stack|as_message.h|Defines the messages supported by the Access Stratum sublayer protocol (usually RRC and S1AP for E-UTRAN) and functions used to encode and decode| |NAS stack|commonDef.h|Contains global common definitions| |NAS stack|f1ap_messages_def.h|F1 message encodeder| |-|f1ap_messages_types.h|f1ap message transfer| |-|flexran_messages_def.h|handle protobuf message| |-|gtpv1_u_messages_def.h|-| |-|itti_sim_messages_def.h|brief itti message for itti simulator| |-|itti_sim_messages_types.h|brief itti message for itti simulator| |-|m2ap_messages_def.h|ITTI LOG messages+ encoder| |-|m3ap_messages_types.h|-| |-|mac_messages_def.h|Messages between RRC and MAC layers| |-|mac_messages_types.h|-| |-|mac_rlc_primitives.h|primitives for communications between the RLC and MAC sub-layers| |-|mac_rrc_primitives.h|communications between the RRC and MAC sub-layers| |-|messages_def.h|-| |-|nas_messages_def.h|-| |-|nas_messages_types.h|-| |NAS stack|networkDef.h|-| |-|ngap_messages_def.h|Messages for NGAP logging| |-|ngap_messages_types.h|-| |-|openair_defs.h|code review comments + re-test| |-|pdcp_messages_def.h|Messages between RRC and PDCP layers| |-|phy_messages_types.h|-| |-|platform_constants.h|GENERIC ACCESS STRATUM TYPES| |-|ral_messages_def.h|-| |-|ral_messages_types.h|-| |-|rlc_messages_def.h|Messages for RLC logging| |-|rrc_messages_types.h|Messages for RRC logging| |-|rrm_constants.h|CONSTANTS FOR L1/L2/L3 LAYERS| |-|rtos_header.h|-| |-|s1ap_messages_def.h|Messages for S1AP logging | |-|s1ap_messages_types.h|-| |-|sctp_messages_def.h|-| |-|CTP_MESSAGES_TYPES_H|-| |-|udp_messages_types.h|-| |-|x2ap_messages_def.h|ITTI LOG messages/ENCODER| |-|x2ap_messages_types.h|-| #### openair2\DOCS |Type|Name|Content| |---|---|---| |Directory|DOXYGEN|See [DOXYGEN](#openair2\DOCS\DOXYGEN)| |Directory|TEMPLATES|See [TEMPLATES](#openair2\DOCS\TEMPLATES)| ##### openair2\DOCS\DOXYGEN |Type|Name|Content| |---|---|---| |Directory|images|Task's images| |Info file|Doxyfile|Project related configuration options| ###### openair2\DOCS\TEMPLATES |Type|Name|Content| |---|---|---| |Directory|CODE|images| ||-|Doxyfile(not use)| ||-|example_doxy.h(not use)| ###### openair2\ENB_APP |Folder|Subfolder|Content| |---|---|---| |Directory|CONTROL_MODULES|See [CONTROL_MODULES](#openair2\ENB_APP\CONTROL_MODULES)| |Directory|MESSAGES/V2|[MESSAGES/V2](#openair2\ENB_APP\MESSAGES/V2)| |Directory|flexran_apps|does not works| |file openair2|L1_paramdef.h|brief definition of configuration parameters for all eNodeB modules| |file openair2|MACRLC_paramdef.h|definition of configuration parameters for all eNodeB modules | |-|NB_IoT_config.c|IoT configuration file| |-|NB_IoT_config.h|IoT configuration file| |file openair2|NB_IoT_interface.c|load library implementing coding/decoding algorithms| |file openair2|NB_IoT_interface.h|api interface for nb-iot application| |-|NB_IoT_paramdef.h|definition of configuration parameters for all eNodeB modules | |-|RRC_config_tools.c|RRC configuration tools| |-|RRC_config_tools.h|-| |-|RRC_paramsvalues.h|macro definitions for RRC authorized and asn1 parameters values, to be used in paramdef_t/chechedparam_t structure initializations| |-|enb_app.c|fixing a compilation warning in enb_app| |-|enb_app.h|cell reconfiguration/restart: take protobuf, perform in ENB_APP| |-|enb_config.c|enb configuration file| |-|enb_config.h|minor changes for oairu executabl| |-|enb_config_SL.c|enb configuration of SL file| |-|enb_config_eMTC.c|enb configuration eMTC| |-|enb_paramdef.h|definition of configuration parameters for all eNodeB modules| |-|enb_paramdef_emtc.h|definition of configuration parameters for all eNodeB modules| |-|enb_paramdef_mce.h|brief definition of configuration parameters for MCE modules| |-|enb_paramdef_mme.h|brief definition of configuration parameters for MME modules| |-|enb_paramdef_sidelink.h|brief definition of configuration parameters for sidelink eNodeB modules| |-|flexran_agent.c|brief top level flexran agent receive thread and itti task| |-|flexran_agent.h|brief top level flexran agent| |-|flexran_agent_app.c|brief CM for handling of applications| |-|flexran_agent_app.h|brief Common app definitions| |-|flexran_agent_async.c|brief channel implementation for async interface| |-|flexran_agent_async.h|brief channel implementation for async interface| |-|flexran_agent_common.c|brief common primitives for all agents| |-|flexran_agent_common.h|brief common message primitves and utilities| |-|flexran_agent_common_internal.c|brief internal functions for common message primitves and utilities| |-|flexran_agent_common_internal.h|brief internal agent functions for common message primitves and utilities| |-|flexran_agent_defs.h|brief FlexRAN agent common definitions| |-|flexran_agent_extern.h|brief FlexRAN agent - Extern VSF xfaces| |-|flexran_agent_handler.c|brief FlexRAN agent tx and rx message handler| |-|flexran_agent_net_comm.c|brief FlexRAN agent network interface abstraction| |-|flexran_agent_net_comm.h|brief FlexRAN agent network interface abstraction| |-|flexran_agent_ran_api.c|brief FlexRAN RAN API abstraction| |-|flexran_agent_ran_api.h|brief FlexRAN RAN API abstraction header| |-|flexran_agent_ran_api_to_fix.c|fix gcc reported issues| |-|flexran_agent_task_manager.c|brief Implementation of scheduled tasks manager for the FlexRAN agent| |-|flexran_agent_task_manager.h|brief Implementation of scheduled tasks manager for the FlexRAN agent| |-|flexran_agent_timer.c|brief FlexRAN Timer| |-|flexran_agent_timer.h |brief FlexRAN Timer header| ## openair2\F1AP |Type|Name|Content| |---|---|---| |Directory|MESSAGES/ASN1|See [MESSAGES/ASN1](#openair2\F1AP\MESSAGES/ASN1)| |File|dummy_enb.c|commit removes all non-standard bools in the whole project| |-|f1ap_common.c|brief f1ap procedures for both CU and DU| |-|f1ap_common.h|brief f1ap procedures for both CU and DU| |-|f1ap_cu_interface_management.c|brief f1ap interface management for CU| |-|f1ap_cu_interface_management.h|brief f1ap interface management for CU| |-|f1ap_cu_paging.c|brief f1ap interface management for DU| |-|f1ap_cu_paging.h|brief f1ap interface management for DU| |-|f1ap_cu_rrc_message_transfer.c|brief f1ap rrc message transfer for CU| |-|f1ap_cu_rrc_message_transfer.h|brief f1ap rrc message transfer for CU| |-|f1ap_cu_system_information.c|brief f1ap interface management for DU| |-|f1ap_cu_system_information.h|brief f1ap interface management for DU| |-|f1ap_cu_task.c|brief data structures for F1 interface modules| |-|f1ap_cu_task.h|brief data structures for F1 interface modules| |-|f1ap_cu_ue_context_management.c|brief F1AP UE Context Management, CU side| |-|f1ap_cu_ue_context_management.h|brief header file of CU UE Context management| |-|f1ap_cu_warning_message_transmission.c|brief f1ap interface management for DU| |-|f1ap_cu_warning_message_transmission.h|brief f1ap interface management for DU| |-|f1ap_decoder.c |brief f1ap pdu decode procedures| |-|f1ap_decoder.h|brief f1ap pdu decode procedures| |-|f1ap_default_values.h|brief default values for f1ap procedures| |-|f1ap_du_interface_management.c|brief f1ap interface management for DU| |-|f1ap_du_interface_management.h|brief f1ap interface management for DU| |-|f1ap_du_paging.c|brief f1ap interface management for DU| |-|f1ap_du_paging.h|brief f1ap interface management for DU| |-|f1ap_du_rrc_message_transfer.c|brief f1ap rrc message transfer for DU| |-|f1ap_du_rrc_message_transfer.h|brief f1ap rrc message transfer for DU| |-|f1ap_du_task.c|brief data structures for F1 interface modules| |-|f1ap_du_task.h|brief data structures for F1 interface modules| |-|f1ap_du_ue_context_management.c|brief F1AP UE Context Management, DU side| |-|f1ap_du_ue_context_management.h|brief f1ap ue context management for DU| |-|f1ap_du_warning_message_transmission.c|brief f1ap interface management for DU| |-|f1ap_du_warning_message_transmission.h|brief f1ap interface management for DU| |-|f1ap_encoder.c|brief f1ap pdu encode procedures| |-|f1ap_encoder.h|brief f1ap pdu encode procedures| |-|f1ap_handlers.c|brief f1ap messages handlers| |-|f1ap_encoder.h|brief f1ap pdu encode procedures| |-|f1ap_handlers.c|brief f1ap messages handlers| |-|f1ap_itti_messaging.c|buffer availability of RLC(DU) towards the CU| |-|f1ap_itti_messaging.h|buffer availability of RLC(DU) towards the CU| |-|f1ap_messaging.h|brief f1ap procedures| ### openair2\F1AP\MESSAGES/ASN1 |Type|Name|Content| |---|---|---| |Folder|R15.1.1|See [R15.1.1](#openair2\F1AP\MESSAGES/ASN1\R15.1.1)| |Folder|R15.2.1|See [R15.2.1](#openair2\F1AP\MESSAGES/ASN1\R15.2.1)| |Folder|R15.3.1|See [R15.3.1.1](#openair2\F1AP\MESSAGES/ASN1\R15.3.1)| |File|asn1tostruct.py|script v%s\n" %| ### openair2\F1AP\MESSAGES/ASN1\R15.1.1 |Type|Name|Content| |---|---|---| |Sсript|F1AP-CommonDataTypes.asn|scripts for proper generation of F1 messages| |-|F1AP-Constants.asn|scripts for proper generation of F1 messages| |-|F1AP-Containers.asn|-| |-|F1AP-IEs.asn|-| |-|F1AP-PDU-Contents.asn|-| |-|F1AP-PDU-Descriptions.asn|-| |-|asn1_constants.h|-| ### openair2\F1AP\MESSAGES/ASN1\R15.2.1 |Type|Name|Content| |---|---|---| |Sсript|F1AP-CommonDataTypes.asn|scripts for proper| |-|F1AP-Constants.asn|-| |-|F1AP-Containers.asn|-| |-|F1AP-IEs.asn|-| |-|F1AP-PDU-Contents.asn|PDU definitions for F1AP| |-|F1AP-PDU-Descriptions.asn| F1AP-PDU-Descriptions| ### openair2\F1AP\MESSAGES/ASN1\R15.3.1 |Type|Name|Content| |---|---|---| |Script|38473-g31.asn|update F1AP to R16.3.1. testing with OTA eNB| |-|F1AP-CommonDataTypes.asn|-| |-|F1AP-Constants.asn|-| |-|F1AP-Containers.asn|-| |-|F1AP-IEs.asn|-| |-|F1AP-PDU-Contents.asn|F1AP-PDU-Contents| |-|F1AP-PDU-Descriptions.asn|update F1AP to R16.3.1. testing with OTA eNB| ### openair2\GNB_APP |Type|Name|Content| |---|---|---| |file openair2|L1_nr_paramdef.h|brief definition of configuration parameters for all eNodeB modules| |-|MACRLC_nr_paramdef.h|brief definition of configuration parameters for all gNodeB modules | |-|RRC_nr_paramsvalues.h|brief macro definitions for RRC authorized and asn1 parameters values, to be used in paramdef_t/chechedparam_t structure initializations| |-|gnb_app.c|-| |-|gnb_app.h|-| |-|gnb_config.c|-| |-|gnb_config.h|-| |-|gnb_paramdef.h|brief definition of configuration parameters for all gNodeB modules| ### openair2\LAYER2 |Type|Name|Content| |---|---|---| |Folder|MAC|See [MAC](#openair2\LAYER2\MAC)| |Folder|NR_MAC_COMMON|See [NR_MAC_COMMON](#openair2\LAYER2\NR_MAC_COMMON)| |-|NR_MAC_UE|See [NR_MAC_UE](#openair2\LAYER2\NR_MAC_UE)| |-|NR_MAC_gNB|See [NR_MAC_gNB](#openair2\LAYER2\NR_MAC_gNB)| |-|nr_pdcp|See [nr_pdcp](#openair2\LAYER2\nr_pdcp)| |-|nr_rlc|See [nr_rlc](#openair2\LAYER2\nr_rlc)| |-|rlc_v2|See [rlc_v2](#openair2\LAYER2\rlc_v2)| |File|openair2_proc.c|print openair2 overall statistics| |Folder|RLC|See [RLC](#openair2\LAYER2\RLC)| ### openair2\LAYER2\MAC |Type|Name|Content| |---|---|---| |file|config.c|brief UE and eNB configuration performed by RRC or as a consequence of RRC procedures| |-|defs_NB_IoT.h|brief MAC layer structures| |-|eNB_scheduler.c|brief eNB scheduler top level function operates on per subframe basis| |-|eNB_scheduler_RA.c|brief primitives used for random access| |-|eNB_scheduler_dlsch.c|brief procedures related to eNB for the DLSCH transport channel| |-|eNB_scheduler_fairRR.c|brief eNB scheduler fair round robin| |-|eNB_scheduler_primitives.c|brief primitives used by eNB for BCH, RACH, ULSCH, DLSCH scheduling| |-|eNB_scheduler_ulsch.c|brief eNB procedures for the ULSCH transport channel| |-|mac.h|brief MAC data structures, constant, and function prototype| |-|mac_extern.h|brief mac externs| |-|mac_proto.h|brief MAC functions prototypes for eNB and UE| |-|main.c|brief top init of Layer 2| |-|pre_processor.c|brief eNB scheduler preprocessing fuction prior to scheduling| |-|ue_procedures.c|brief primitives to build the asn1 messages / primitives to build FeMBMS asn1 messages| ### openair2\LAYER2\PDCP_v10.1.0 |Type|Name|Content| |---|---|---| |File|pdcp.c|brief pdcp interface with RLC| |-|pdcp.h|brief pdcp interface with RLC, RRC| |-|pdcp_primitives.c|brief PDCP PDU buffer dissector code| |-|pdcp_primitives.h|brief pdcp primitives| |-|pdcp_sequence_manager.c|brief PDCP Sequence Numbering Methods| |-|pdcp_sequence_manager.h|brief PDCP Sequence Numbering Methods| |-|pdcp_util.c|brief PDCP Util Methods| |-|pdcp_util.h|brief PDCP Util Methods| ### openair2\LAYER2\RLC |Type|Name|Content| |---|---|---| |Folder|AM_v9.3.0|[AM_v9.3.0](#openair2\LAYER2\RLC\AM_v9.3.0)| |-|TM_v9.3.0|[TM_v9.3.0](#openair2\LAYER2\RLC\TM_v9.3.0)| |-|UM_v9.3.0|[UM_v9.3.0](#openair2\LAYER2\RLC\UM_v9.3.0)| |File|rlc.c|brief This file, and only this file must be included by external code that interact with RLC layer.| |-|rlc.h|brief This file, and only this file must be included by external code that interact with RLC layer.| |-|rlc_mac.c|brief This file, and only this file must be included by external code that interact with MAC layer.| |-|rlc_rrc.c|brief This file, and only this file must be included by external code that interact with RLC&RRC layers.| ### openair2\LAYER2\RLC\AM_v9.3.0 |Type|Name|Content| |---|---|---| |File|rlc_am.c|brief This file defines the RLC AM variables stored in a struct called rlc_am_entity_t| |-|rlc_am_entity.h |brief This file defines the RLC AM variables stored in a struct called rlc_am_entity_t| |-|rlc_am_init.c|-| |-|rlc_am_reassembly.c|brief This file defines the prototypes of the functions dealing with the reassembly of segments| |-|rlc_am_reassembly.h|brief This file defines the prototypes of the functions dealing with the reassembly of segments| |-|rlc_am_receiver.c|brief This file defines the prototypes of the functions dealing with the retransmission| |-|rlc_am_retransmit.c|brief This file defines the prototypes of the functions dealing with the retransmission| |-|rlc_am_retransmit.h|brief This file defines the prototypes of the functions dealing with the retransmission| |-|rlc_am_rx_list.c|brief This file defines the prototypes of the functions dealing with a RX list data structure supporting re-segmentation| |-|rlc_am_rx_list.h|brief This file defines the prototypes of the functions dealing with a RX list data structure supporting re-segmentation| |-|rlc_am_segment.c|This file defines the prototypes of the functions dealing with the segmentation of PDCP SDUs| |-|rlc_am_segment.h|This file defines the prototypes of the functions dealing with the segmentation of PDCP SDUs| |-|rlc_am_status_report.c|-| |-|rlc_am_test.c|-| |-|rlc_am_timer_poll_retransmit.c|-| ### openair2\LAYER2\RLC\TM_v9.3.0 |Type|Name|Content| |---|---|---| |File|rlc_tm.c|only this file must be included by code that interact with RLC TM layer| |-|rlc_tm.h|only this file must be included by code that interact with RLC TM layer| |-|rlc_tm_entity.h|This file defines the RLC TM variables stored in a struct called rlc_tm_entity_t| |-|rlc_tm_init.c|This file defines the prototypes of the functions dealing with the control primitives and initialization| |-|rlc_tm_init.h|This file defines the prototypes of the functions dealing with the control primitives and initialization| ### openair2\LAYER2\RLC\UM_v9.3.0 |Type|Name|Content| |---|---|---| |File|rlc_um_control_primitives.c|This file defines the RLC UM variables stored in a struct called rlc_um_entity_t| |-|rlc_um_entity.h|This file defines the RLC UM variables stored in a struct called rlc_um_entity_t| ### openair2\NR_PHY_INTERFACE |Type|Name|Content| |---|---|---| |file openair2|NR_IF_Module.c|data structures for PHY/MAC interface modules| |-|NR_IF_Module.h|brief data structures for PHY/MAC interface modules| ### openair2\LAYER2\NR_MAC_COMMON |Type|Name|Content| |---|---|---| |File|nr_compute_tbs_common.c|Compute NR TBS| |-|nr_mac.h|common MAC data structures and constants| |-|nr_mac_common.c|Common MAC/PHY functions for NR UE and gNB| |-|nr_mac_common.h|common MAC function prototypes| |-|nr_mac_extern.h|NR mac externs| ### openair2\LAYER2\NR_MAC_UE |Type|Name|Content| |---|---|---| |File|config_ue.c|UE and eNB configuration performed by RRC or as a consequence of RRC procedures| |-|mac_defs.h|MAC data structures and constants| |-|mac_extern.h|extern variables for MAC layer| |-|mac_proto.h|MAC functions prototypes for gNB and UE| |-|mac_vars.c|MAC Layer variables| |-|main_ue_nr.c|top init of Layer 2| |-|nr_l1_helpers.c|PHY/MAC helper functions| |-|nr_l1_helpers.h|Function to compute configured maximum output power according to clause 6.2.4 of 3GPP TS 38.101-1 version 16.5.0 Release 16 Mod_id Module id of UE| |-|nr_ra_procedures.c|Routines for UE MAC-layer Random Access procedures (TS 38.321, Release 15)| |-|nr_ue_dci_configuration.c|functions for generating dci search procedures based on RRC Serving Cell Group Configuration| |-|nr_ue_procedures.c|procedures related to UE| |-|nr_ue_scheduler.c |Routines for UE scheduling| ### openair2\LAYER2\NR_MAC_gNB |Type|Name|Content| |---|---|---| |File|config.c|gNB configuration performed by RRC or as a consequence of RRC procedures| |-|gNB_scheduler.c|gNB scheduler top level function operates on per subframe basis| |-|gNB_scheduler_RA.c|primitives used for random access| |-|gNB_scheduler_bch.c|procedures related to eNB for the BCH transport channel| |-|gNB_scheduler_dlsch.c|procedures related to gNB for the DLSCH transport channel| |-|gNB_scheduler_phytest.c|gNB scheduling procedures in phy_test mode| |-|gNB_scheduler_primitives.c|primitives used by gNB for BCH, RACH, ULSCH, DLSCH scheduling| |-|gNB_scheduler_srs.c|MAC procedures related to SRS| |-|gNB_scheduler_uci.c|MAC procedures related to UCI| |-|gNB_scheduler_ulsch.c|gNB procedures for the ULSCH transport channel| |-|mac_proto.h|MAC functions prototypes for gNB| |-|main.c|top init of Layer 2| |-|nr_mac_gNB.h|MAC data structures, constant, and function prototype| ### openair2\LAYER2\nr_pdcp |Type|Name|Content| |---|---|---| |File|asn1_utils.c|pdcp configurator| |-|asn1_utils.h|pdcp configurator| |-|nr_pdcp.h|SDAP Initial Implementation| |-|nr_pdcp_entity.c|SDAP Initial Implementation| |-|nr_pdcp_entity.h|SDAP Initial Implementation| |-|nr_pdcp_integrity_nia1.c|nr_pdcp: nia1 implementation| |-|nr_pdcp_integrity_nia1.h|nr_pdcp: nia1 implementation| |-|nr_pdcp_integrity_nia2.c|nr pdcp: bugfix: reset integrity context| |-|nr_pdcp_integrity_nia2.h|nr pdcp: first draft of NIA2 integrity| |-|nr_pdcp_oai_api.c|nr pdcp: improvements| |-|nr_pdcp_sdu.c|nr pdcp: improvements| |-|nr_pdcp_sdu.h|nr pdcp: improvements| |-|nr_pdcp_security_nea2.c|nr pdcp: bugfix: better nettle version detection| |-|nr_pdcp_security_nea2.h|NSA: first draft of nea2 security for gNB| |-|nr_pdcp_timer_thread.c|nr pdcp: improvements| |-|nr_pdcp_timer_thread.h|nr pdcp: improvements| |-|nr_pdcp_ue_manager.c|SDAP Initial Implementation| |-|nr_pdcp_ue_manager.h|SDAP Initial Implementation| ### openair2\LAYER2\nr_rlc |Type|Name|Content| |---|---|---| |Folder|tests|results of tests| |File|asn1_utils.h|buffer availability of RLC(DU) towards the CU| |-|asn1_utils.h|-| |-|nr_rlc_entity_am.c|Merge remote-tracking branch 'origin/develop' into F1_interop_ACC_n78 | |-|nr_rlc_entity_am.h|-| |-|nr_rlc_entity_tm.c|buffer availability of RLC(DU) towards the CU | |-|nr_rlc_entity_tm.h|-| |-|nr_rlc_entity_um.c|-| |-|nr_rlc_entity_um.h|-| |-|nr_rlc_oai_api.c|Header file for nr_rlc_oai_api| |-|nr_rlc_oai_api.h|Header file for nr_rlc_oai_api| |-|nr_rlc_pdu.c|RX PDU management;PDU encoder;PDU decoder| |-|nr_rlc_pdu.h|RX PDU management;PDU encoder;PDU decoder| |-|nr_rlc_sdu.c|RX SDU management;SDU encoder;SDU decoder| |-|nr_rlc_sdu.h|-| |-|nr_rlc_ue_manager.c|ue functions;manager functions| |-|nr_rlc_ue_manager.h|-| ### openair2\LAYER2\rlc_v2 |Type|Name|Content| |---|---|---| |Folder|tests|rlc v2: implement SOstart/SOend in NACK reporting| |File|asn1_utils.c|alternative RLC implementation| |-|asn1_utils.h|-| |-|rlc_entity.c|-| |-|rlc_entity.H|-| |-|rlc_entity_am.c|-| |-|rlc_entity_am.h|-| |-|rlc_entity_um.c|PDU management;PDU encoder;PDU decoder| |-|rlc_entity_um.h|-| |-|rlc_oai_api.c|alternative RLC implementation| |-|rlc_pdu.c|-| |-|rlc_pdu.h|-| |-|rlc_sdu.c|-| |-|rlc_sdu.h|-| |-|rlc_ue_manager.c|-| |-|rlc_ue_manager.h|-|