|
Agora
1.2.0
Agora project
|
#include <config.h>

Public Member Functions | |
| Config (std::string jsonfilename) | |
| ~Config () | |
| void | Running (bool value) |
| bool | Running () const |
| size_t | BsAntNum () const |
| void | BsAntNum (size_t n_bs_ant) |
| size_t | BfAntNum () const |
| size_t | UeNum () const |
| size_t | UeAntNum () const |
| size_t | UeAntOffset () const |
| size_t | UeAntTotal () const |
| size_t | OfdmCaNum () const |
| size_t | CpLen () const |
| size_t | OfdmDataNum () const |
| size_t | OfdmDataStart () const |
| size_t | OfdmDataStop () const |
| size_t | OfdmPilotSpacing () const |
| bool | HwFramer () const |
| bool | UeHwFramer () const |
| size_t | UeResyncPeriod () const |
| double | FreqGhz () const |
| double | Freq () const |
| double | Rate () const |
| double | Nco () const |
| double | RadioRfFreq () const |
| double | BwFilter () const |
| bool | SingleGain () const |
| double | TxGainA () const |
| double | RxGainA () const |
| double | TxGainB () const |
| double | RxGainB () const |
| double | CalibTxGainA () const |
| double | CalibTxGainB () const |
| double | ClientTxGainA (size_t id) const |
| double | ClientRxGainA (size_t id) const |
| double | ClientTxGainB (size_t id) const |
| double | ClientRxGainB (size_t id) const |
| const std::vector< double > & | ClientTxGainA () const |
| const std::vector< double > & | ClientRxGainA () const |
| const std::vector< double > & | ClientTxGainB () const |
| const std::vector< double > & | ClientRxGainB () const |
| size_t | NumCells () const |
| size_t | NumRadios () const |
| size_t | InitCalibRepeat () const |
| size_t | NumChannels () const |
| size_t | NumUeChannels () const |
| size_t | RefAnt (size_t id) const |
| size_t | RefRadio (size_t id) const |
| size_t | BeaconAnt () const |
| size_t | BeaconLen () const |
| bool | Beamsweep () const |
| bool | SampleCalEn () const |
| bool | ImbalanceCalEn () const |
| size_t | BeamformingAlgo () const |
| std::string | Beamforming () const |
| bool | ExternalRefNode (size_t id) const |
| std::string | Channel () const |
| std::string | UeChannel () const |
| size_t | RecipCalDlAnt (size_t frame_id, size_t dl_cal_symbol) const |
| size_t | ModifyRecCalIndex (size_t previous_index, int mod_value=0) const |
| size_t | RecipCalIndex (size_t frame_id) const |
| size_t | RecipCalUlRxIndex (size_t frame_id, size_t ant) const |
| size_t | RecipCalFrameCnt () const |
| size_t | CoreOffset () const |
| size_t | WorkerThreadNum () const |
| size_t | SocketThreadNum () const |
| size_t | UeCoreOffset () const |
| size_t | UeWorkerThreadNum () const |
| size_t | UeSocketThreadNum () const |
| size_t | FftThreadNum () const |
| size_t | DemulThreadNum () const |
| size_t | DecodeThreadNum () const |
| size_t | BeamThreadNum () const |
| size_t | DemulBlockSize () const |
| size_t | DemulEventsPerSymbol () const |
| size_t | BeamBlockSize () const |
| size_t | BeamBatchSize () const |
| size_t | BeamEventsPerSymbol () const |
| size_t | FftBlockSize () const |
| size_t | EncodeBlockSize () const |
| bool | FreqOrthogonalPilot () const |
| size_t | OfdmTxZeroPrefix () const |
| size_t | OfdmTxZeroPostfix () const |
| size_t | OfdmRxZeroPrefixBs () const |
| size_t | OfdmRxZeroPrefixCalUl () const |
| void | OfdmRxZeroPrefixCalUl (size_t prefix) |
| size_t | OfdmRxZeroPrefixCalDl () const |
| void | OfdmRxZeroPrefixCalDl (const size_t prefix) |
| size_t | OfdmRxZeroPrefixClient () const |
| size_t | SampsPerSymbol () const |
| size_t | SampsPerFrame () const |
| size_t | PacketLength () const |
| float | Scale () const |
| bool | BigstationMode () const |
| size_t | DlPacketLength () const |
| std::string | Modulation (Direction dir) const |
| size_t | ModOrderBits (Direction dir) const |
| size_t | NumBytesPerCb (Direction dir) const |
| size_t | NumPaddingBytesPerCb (Direction dir) const |
| size_t | MacDataBytesNumPerframe (Direction dir) const |
| size_t | MacBytesNumPerframe (Direction dir) const |
| size_t | MacPacketLength (Direction dir) const |
| size_t | MacPayloadMaxLength (Direction dir) const |
| size_t | MacPacketsPerframe (Direction dir) const |
| const LDPCconfig & | LdpcConfig (Direction dir) const |
| Table< complex_float > & | ModTable (Direction dir) |
| const nlohmann::json & | MCSParams (Direction dir) const |
| size_t | SubcarrierPerCodeBlock (Direction dir) const |
| bool | ScrambleEnabled () const |
| std::string | UeServerAddr () const |
| std::string | BsServerAddr () const |
| std::string | UeRruAddr () const |
| std::string | BsRruAddr () const |
| int | BsServerPort () const |
| int | BsRruPort () const |
| int | UeServerPort () const |
| int | UeRruPort () const |
| size_t | FramesToTest () const |
| float | NoiseLevel () const |
| bool | FftInRru () const |
| uint16_t | DpdkNumPorts () const |
| uint16_t | DpdkPortOffset () const |
| const std::string & | DpdkMacAddrs () const |
| size_t | BsMacRxPort () const |
| size_t | BsMacTxPort () const |
| size_t | UeMacRxPort () const |
| size_t | UeMacTxPort () const |
| const std::string & | LogListenerAddr () const |
| size_t | LogListenerPort () const |
| const std::vector< int > & | ClTxAdvance () const |
| const std::vector< float > & | ClCorrScale () const |
| const FrameStats & | Frame () const |
| const std::vector< std::complex< float > > & | PilotCf32 () const |
| const std::vector< std::complex< float > > & | GoldCf32 () const |
| const std::vector< uint32_t > & | Coeffs () const |
| const std::vector< uint32_t > & | Pilot () const |
| const std::vector< uint32_t > & | Beacon () const |
| const complex_float * | PilotsSgn () const |
| const std::vector< std::complex< float > > & | CommonPilot () const |
| const std::vector< std::string > & | RadioId () const |
| const std::vector< std::string > & | HubId () const |
| const std::vector< std::string > & | UeRadioId () const |
| const std::vector< std::string > & | UeRadioName () const |
| const std::vector< size_t > & | CellId () const |
| Table< complex_float > & | UeSpecificPilot () |
| Table< std::complex< int16_t > > & | UeSpecificPilotT () |
| std::vector< std::complex< int16_t > > & | PilotCi16 () |
| std::vector< std::complex< int16_t > > & | BeaconCi16 () |
| Table< int8_t > & | DlBits () |
| Table< int8_t > & | UlBits () |
| Table< int8_t > & | DlModBits () |
| Table< int8_t > & | UlModBits () |
| Table< complex_float > & | UlIqF () |
| Table< complex_float > & | DlIqF () |
| Table< std::complex< int16_t > > & | UlIqT () |
| Table< std::complex< int16_t > > & | DlIqT () |
| void | GenData () |
| void | UpdateUlMCS (const nlohmann::json &mcs) |
| void | UpdateDlMCS (const nlohmann::json &mcs) |
| size_t | GetSymbolId (size_t input_id) const |
| TODO document and review. More... | |
| bool | IsBeacon (size_t, size_t) const |
| bool | IsPilot (size_t, size_t) const |
| bool | IsDlPilot (size_t, size_t) const |
| bool | IsCalDlPilot (size_t, size_t) const |
| bool | IsCalUlPilot (size_t, size_t) const |
| bool | IsDownlink (size_t, size_t) const |
| bool | IsUplink (size_t, size_t) const |
| SymbolType | GetSymbolType (size_t symbol_id) const |
| Return the symbol type of this symbol in this frame. More... | |
| size_t | GetTotalDataSymbolIdx (size_t frame_id, size_t symbol_id) const |
| size_t | GetTotalDataSymbolIdxUl (size_t frame_id, size_t symbol_idx_ul) const |
| size_t | GetTotalDataSymbolIdxDl (size_t frame_id, size_t symbol_idx_dl) const |
| size_t | GetBeaconDlIdx (size_t symbol_id) const |
| size_t | GetPilotUlIdx (size_t symbol_id) const |
| double | GetFrameDurationSec () const |
| Return the frame duration in seconds. More... | |
| complex_float * | GetDataBuf (Table< complex_float > &data_buffers, size_t frame_id, size_t symbol_id) const |
| size_t | GetBeamScId (size_t sc_id) const |
| complex_float * | GetCalibBuffer (Table< complex_float > &calib_buffer, size_t frame_id, size_t sc_id) const |
| Get the calibration buffer for this frame and subcarrier ID. More... | |
| int8_t * | GetMacBits (Table< int8_t > &info_bits, Direction dir, size_t frame_id, size_t symbol_id, size_t ue_id, size_t cb_id) const |
| Get mac bits for this frame, symbol, user and code block ID. More... | |
| int8_t * | GetInfoBits (Table< int8_t > &info_bits, Direction dir, size_t symbol_id, size_t ue_id, size_t cb_id) const |
| Get info bits for this symbol, user and code block ID. More... | |
| int8_t * | GetModBitsBuf (Table< int8_t > &mod_bits_buffer, Direction dir, size_t frame_id, size_t symbol_id, size_t ue_id, size_t sc_id) const |
| Get encoded_buffer for this frame, symbol, user and code block ID. More... | |
| size_t | GetOFDMPilotNum () const |
| size_t | GetOFDMDataNum () const |
| size_t | GetOFDMDataIndex (size_t sc_id) const |
| bool | IsDataSubcarrier (size_t sc_id) const |
| const std::string & | ConfigFilename () const |
| const std::string & | TraceFilename () const |
| const std::string & | Timestamp () const |
| const std::vector< std::string > & | UlTxFreqDataFiles (void) const |
Static Public Attributes | |
| static constexpr bool | kDebugRecipCal = false |
Private Member Functions | |
| void | Print () const |
| nlohmann::json | Parse (const nlohmann::json &in_json, const std::string &json_handle) |
| void | DumpMcsInfo () |
Static Private Attributes | |
| static const size_t | kDefaultSymbolNumPerFrame = 70 |
| static const size_t | kDefaultPilotSymPerFrame = 8 |
| static const size_t | kDefaultULSymPerFrame = 30 |
| static const size_t | kDefaultULSymStart = 9 |
| static const size_t | kDefaultDLSymPerFrame = 30 |
| static const size_t | kDefaultDLSymStart = 40 |
| static constexpr size_t | kCbPerSymbol = 1 |
|
explicit |

| Config::~Config | ( | ) |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |
|
inline |

|
inline |
|
inline |
|
inline |
|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |
|
inline |
|
inline |

|
inline |

|
inline |
|
inline |
|
inline |

|
inline |
|
inline |

|
inline |
|
inline |

|
inline |
|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |
|
inline |

|
inline |

|
inline |
|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
private |


|
inline |

|
inline |

|
inline |

|
inline |

|
inline |
|
inline |
|
inline |

|
inline |

|
inline |

|
inline |

| void Config::GenData | ( | ) |

|
inline |


|
inline |
Return the subcarrier ID to which we should refer to for the zeroforcing matrices of subcarrier [sc_id].

|
inline |
Get the calibration buffer for this frame and subcarrier ID.
|
inline |
Fetch the data buffer for this frame and symbol ID. The symbol must be an uplink symbol.


|
inline |
Return the frame duration in seconds.


|
inline |
Get info bits for this symbol, user and code block ID.


|
inline |
Get mac bits for this frame, symbol, user and code block ID.

|
inline |
Get encoded_buffer for this frame, symbol, user and code block ID.


|
inline |

|
inline |


|
inline |

|
inline |


| size_t Config::GetSymbolId | ( | size_t | input_id | ) | const |
TODO document and review.

| SymbolType Config::GetSymbolType | ( | size_t | symbol_id | ) | const |
Return the symbol type of this symbol in this frame.


|
inline |
Return total number of data symbols of all frames in a buffer that holds data of kFrameWnd frames


|
inline |
Return total number of downlink data symbols of all frames in a buffer that holds data of kFrameWnd frames


|
inline |
Return total number of uplink data symbols of all frames in a buffer that holds data of kFrameWnd frames


|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

| bool Config::IsBeacon | ( | size_t | , |
| size_t | |||
| ) | const |
| bool Config::IsCalDlPilot | ( | size_t | , |
| size_t | symbol_id | ||
| ) | const |


| bool Config::IsCalUlPilot | ( | size_t | , |
| size_t | symbol_id | ||
| ) | const |


|
inline |

| bool Config::IsDlPilot | ( | size_t | , |
| size_t | symbol_id | ||
| ) | const |


| bool Config::IsDownlink | ( | size_t | frame_id, |
| size_t | symbol_id | ||
| ) | const |

| bool Config::IsPilot | ( | size_t | , |
| size_t | symbol_id | ||
| ) | const |


| bool Config::IsUplink | ( | size_t | , |
| size_t | symbol_id | ||
| ) | const |


|
inline |

|
inline |
|
inline |
|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |
|
inline |

|
inline |
|
inline |

|
inline |

|
inline |

|
inline |

|
private |


|
inline |

|
inline |

|
inline |

|
inline |

|
private |


|
inline |

|
inline |

|
inline |

|
inline |


|
inline |


|
inline |


|
inline |


|
inline |

|
inline |

|
inline |
|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |


|
inline |
|
inline |

|
inline |

|
inline |

|
inline |
|
inline |
|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

|
inline |

| void Config::UpdateDlMCS | ( | const nlohmann::json & | mcs | ) |


| void Config::UpdateUlMCS | ( | const nlohmann::json & | mcs | ) |


|
inline |

|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticconstexprprivate |
|
staticconstexpr |
|
inlinestaticprivate |
|
inlinestaticprivate |
|
inlinestaticprivate |
|
inlinestaticprivate |
|
inlinestaticprivate |
|
inlinestaticprivate |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |