#include <radio_lib.h>
|
| RadioConfig (Config *cfg, Radio::RadioType radio_type) |
|
| ~RadioConfig () |
|
bool | RadioStart () |
|
void | RadioStop () |
|
void | ReadSensors () |
|
int | RadioTx (size_t radio_id, const void *const *buffs, Radio::TxFlags flags, long long &tx_time) |
|
int | RadioTx (size_t radio_id, const std::vector< std::vector< std::complex< int16_t >>> &tx_data, Radio::TxFlags flags, long long &tx_time_ns) |
|
int | RadioRx (size_t radio_id, std::vector< std::vector< std::complex< int16_t >>> &rx_data, size_t rx_size, Radio::RxFlags &out_flags, long long &rx_time_ns) |
|
int | RadioRx (size_t radio_id, std::vector< std::vector< std::complex< int16_t >> * > &rx_buffs, size_t rx_size, Radio::RxFlags &out_flags, long long &rx_time_ns) |
|
int | RadioRx (size_t radio_id, std::vector< void * > &rx_locs, size_t rx_size, Radio::RxFlags &out_flags, long long &rx_time_ns) |
|
bool | DoCalib () const |
|
void | Go () |
|
arma::cx_float * | GetCalibUl () |
|
arma::cx_float * | GetCalibDl () |
|
void | InitBsRadio (size_t radio_id) |
|
void | ConfigureBsRadio (size_t radio_id) |
|
|
static void | DciqMinimize (Radio *target_dev, Radio *ref_dev, int direction, size_t channel, double rx_center_tone, double tx_center_tone) |
|
static void | SetIqBalance (Radio *dev, int direction, size_t channel, int gcorr, int iqcorr) |
|
static void | AdjustCalibrationGains (std::vector< Radio * > &rx_devs, Radio *tx_dev, size_t channel, double fft_bin, bool plot=false) |
|
◆ RadioConfig()
◆ ~RadioConfig()
RadioConfig::~RadioConfig |
( |
| ) |
|
◆ AdjustCalibrationGains()
void RadioConfig::AdjustCalibrationGains |
( |
std::vector< Radio * > & |
rx_devs, |
|
|
Radio * |
tx_dev, |
|
|
size_t |
channel, |
|
|
double |
fft_bin, |
|
|
bool |
plot = false |
|
) |
| |
|
staticprivate |
◆ AdjustDelays()
void RadioConfig::AdjustDelays |
( |
const std::vector< int > & |
ch0_offsets | ) |
|
|
private |
◆ CalibrateSampleOffset()
void RadioConfig::CalibrateSampleOffset |
( |
| ) |
|
|
private |
◆ CalibrateSampleOffsetDownlink()
bool RadioConfig::CalibrateSampleOffsetDownlink |
( |
size_t |
max_attempts | ) |
|
|
private |
◆ CalibrateSampleOffsetUplink()
bool RadioConfig::CalibrateSampleOffsetUplink |
( |
size_t |
max_attempts | ) |
|
|
private |
◆ ConfigureBsRadio()
void RadioConfig::ConfigureBsRadio |
( |
size_t |
radio_id | ) |
|
◆ DciqCalibrationProc()
void RadioConfig::DciqCalibrationProc |
( |
size_t |
channel | ) |
|
|
private |
◆ DciqMinimize()
void RadioConfig::DciqMinimize |
( |
Radio * |
target_dev, |
|
|
Radio * |
ref_dev, |
|
|
int |
direction, |
|
|
size_t |
channel, |
|
|
double |
rx_center_tone, |
|
|
double |
tx_center_tone |
|
) |
| |
|
staticprivate |
◆ DoCalib()
bool RadioConfig::DoCalib |
( |
| ) |
const |
|
inline |
◆ FindTimeOffset()
bool RadioConfig::FindTimeOffset |
( |
const std::vector< std::vector< std::complex< int16_t >>> & |
rx_mat, |
|
|
std::vector< int > & |
offset |
|
) |
| |
|
private |
◆ GetCalibDl()
arma::cx_float* RadioConfig::GetCalibDl |
( |
| ) |
|
|
inline |
◆ GetCalibUl()
arma::cx_float* RadioConfig::GetCalibUl |
( |
| ) |
|
|
inline |
◆ Go()
◆ InitBsRadio()
void RadioConfig::InitBsRadio |
( |
size_t |
radio_id | ) |
|
◆ InitialCalib()
bool RadioConfig::InitialCalib |
( |
| ) |
|
|
private |
◆ RadioRx() [1/3]
int RadioConfig::RadioRx |
( |
size_t |
radio_id, |
|
|
std::vector< std::vector< std::complex< int16_t >> * > & |
rx_buffs, |
|
|
size_t |
rx_size, |
|
|
Radio::RxFlags & |
out_flags, |
|
|
long long & |
rx_time_ns |
|
) |
| |
◆ RadioRx() [2/3]
int RadioConfig::RadioRx |
( |
size_t |
radio_id, |
|
|
std::vector< std::vector< std::complex< int16_t >>> & |
rx_data, |
|
|
size_t |
rx_size, |
|
|
Radio::RxFlags & |
out_flags, |
|
|
long long & |
rx_time_ns |
|
) |
| |
◆ RadioRx() [3/3]
int RadioConfig::RadioRx |
( |
size_t |
radio_id, |
|
|
std::vector< void * > & |
rx_locs, |
|
|
size_t |
rx_size, |
|
|
Radio::RxFlags & |
out_flags, |
|
|
long long & |
rx_time_ns |
|
) |
| |
◆ RadioStart()
bool RadioConfig::RadioStart |
( |
| ) |
|
◆ RadioStop()
void RadioConfig::RadioStop |
( |
| ) |
|
◆ RadioTx() [1/2]
int RadioConfig::RadioTx |
( |
size_t |
radio_id, |
|
|
const std::vector< std::vector< std::complex< int16_t >>> & |
tx_data, |
|
|
Radio::TxFlags |
flags, |
|
|
long long & |
tx_time_ns |
|
) |
| |
◆ RadioTx() [2/2]
int RadioConfig::RadioTx |
( |
size_t |
radio_id, |
|
|
const void *const * |
buffs, |
|
|
Radio::TxFlags |
flags, |
|
|
long long & |
tx_time |
|
) |
| |
◆ ReadSensors()
void RadioConfig::ReadSensors |
( |
| ) |
|
◆ SetIqBalance()
void RadioConfig::SetIqBalance |
( |
Radio * |
dev, |
|
|
int |
direction, |
|
|
size_t |
channel, |
|
|
int |
gcorr, |
|
|
int |
iqcorr |
|
) |
| |
|
staticprivate |
◆ SyncArrayTime()
long long RadioConfig::SyncArrayTime |
( |
| ) |
|
|
private |
Wait for enough time for the boards to update
◆ TxArrayToRef()
auto RadioConfig::TxArrayToRef |
( |
const std::vector< std::complex< int16_t >> & |
tx_vec | ) |
|
|
private |
◆ TxRefToArray()
auto RadioConfig::TxRefToArray |
( |
const std::vector< std::complex< int16_t >> & |
tx_vec | ) |
|
|
private |
◆ antenna_num_
size_t RadioConfig::antenna_num_ |
|
private |
◆ calib_
◆ calib_meas_num_
size_t RadioConfig::calib_meas_num_ |
|
private |
◆ cfg_
◆ hubs_
std::vector<SoapySDR::Device*> RadioConfig::hubs_ |
|
private |
◆ init_calib_dl_
Table<arma::cx_float> RadioConfig::init_calib_dl_ |
|
private |
◆ init_calib_dl_processed_
arma::cx_float* RadioConfig::init_calib_dl_processed_ |
|
private |
◆ init_calib_ul_
Table<arma::cx_float> RadioConfig::init_calib_ul_ |
|
private |
◆ init_calib_ul_processed_
arma::cx_float* RadioConfig::init_calib_ul_processed_ |
|
private |
◆ num_radios_configured_
std::atomic<size_t> RadioConfig::num_radios_configured_ |
|
private |
◆ num_radios_initialized_
std::atomic<size_t> RadioConfig::num_radios_initialized_ |
|
private |
◆ radio_num_
size_t RadioConfig::radio_num_ |
|
private |
◆ radios_
std::vector<std::unique_ptr<Radio> > RadioConfig::radios_ |
|
private |
The documentation for this class was generated from the following files: