28 #include "RestHandler.h"
29 #include <libconfig.h++>
30 #include "srslte/srslte.h"
31 #include "srslte/upper/rlc.h"
32 #include "srslte/upper/pdcp.h"
33 #include "srslte/mac/pdu.h"
55 , mch_mac_msg(20, log_h) {}
101 void configure_mbsfn(uint8_t area_id, srslte_scs_t subcarrier_spacing);
118 const std::vector<uint8_t>
mch_data()
const;
123 float cinr_db() {
return _ue_dl.chest_res.snr_db; }
126 const libconfig::Config& _cfg;
132 cf_t* _signal_buffer_rx[SRSLTE_MAX_PORTS] = {};
133 uint32_t _signal_buffer_max_samples = 0;
135 static const uint32_t _payload_buffer_sz = SRSLTE_MAX_BUFFER_SIZE_BYTES;
136 uint8_t _payload_buffer[_payload_buffer_sz];
137 srslte_softbuffer_rx_t _softbuffer;
139 srslte_ue_dl_t _ue_dl = {};
140 srslte_ue_dl_cfg_t _ue_dl_cfg = {};
141 srslte_dl_sf_cfg_t _sf_cfg = {};
142 srslte_pmch_cfg_t _pmch_cfg = {};
144 uint8_t _area_id = 1;
145 bool _mbsfn_configured =
false;
147 srslte::mch_pdu mch_mac_msg;
152 static std::mutex _sched_stop_mutex;
153 static std::map<uint8_t, uint16_t> _sched_stops;
155 static std::mutex _rlc_mutex;
156 static int _current_mcs;