22 #include <libconfig.h++>
23 #include "srslte/srslte.h"
24 #include "srslte/upper/rlc.h"
25 #include "srslte/asn1/rrc_asn1.h"
34 class Rrc :
public srsue::rrc_interface_rlc,
public srsue::rrc_interface_pdcp {
43 Rrc(
const libconfig::Config& cfg,
Phy& phy, srslte::rlc& rlc)
47 virtual ~
Rrc() =
default;
49 void max_retx_attempted()
override {};
56 rrc_state_t state() {
return _state; }
57 void reset() { _state = ACQUIRE_SIB; }
66 void write_pdu_mch(uint32_t lcid, srslte::unique_byte_buffer_t pdu)
override;
72 void write_pdu(uint32_t lcid, srslte::unique_byte_buffer_t pdu)
override {};
73 void write_pdu_bcch_bch(srslte::unique_byte_buffer_t pdu)
override {};
74 void write_pdu_pcch(srslte::unique_byte_buffer_t pdu)
override {};
75 std::string get_rb_name(uint32_t lcid)
override {
return "RB" + std::to_string(lcid); };
78 void handle_sib1(
const asn1::rrc::sib_type1_mbms_r14_s& sib1);
79 rrc_state_t _state = ACQUIRE_SIB;
81 const libconfig::Config& _cfg;