Agora
1.2.0
Agora project
|
Go to the documentation of this file.
7 #ifndef PACKETTXRX_SIM_H_
8 #define PACKETTXRX_SIM_H_
28 Table<char>& rx_buffer,
size_t packet_num_in_buffer,
33 bool CreateWorker(
size_t tid,
size_t interface_count,
size_t interface_offset,
34 size_t* rx_frame_start, std::vector<RxPacket>& rx_memory,
38 #endif // PACKETTXRX_SIM_H_
Definition: packet_txrx.h:18
std::condition_variable cond_
Definition: packet_txrx.h:90
byte
Definition: core.h:388
std::mutex mutex_
Owned by this class and shared with the workers.
Definition: packet_txrx.h:89
std::vector< std::unique_ptr< TxRxWorker > > worker_threads_
Definition: packet_txrx.h:76
Definition: concurrentqueue.h:630
TxRxTypes
Definition: packet_txrx.h:19
moodycamel::ProducerToken ** tx_producer_tokens_
Definition: packet_txrx.h:86
Implementations of this class provide packet I/O for Agora.
Definition: packet_txrx_sim.h:21
Common definations for PacketTxRx. Including datapath functions for communicating with simulators.
Config *const cfg_
Definition: packet_txrx.h:77
std::atomic< bool > proceed_
Definition: packet_txrx.h:91
txrx worker thread definition. This is the simulator declaration
PacketTxRxSim(Config *const cfg, size_t core_offset, moodycamel::ConcurrentQueue< EventData > *event_notify_q, moodycamel::ConcurrentQueue< EventData > *tx_pending_q, moodycamel::ProducerToken **notify_producer_tokens, moodycamel::ProducerToken **tx_producer_tokens, Table< char > &rx_buffer, size_t packet_num_in_buffer, Table< size_t > &frame_start, char *tx_buffer)
Definition: packet_txrx_sim.cc:12
static constexpr bool kUseUHD
Definition: symbols.h:162
static constexpr bool kUseArgos
Definition: symbols.h:156
~PacketTxRxSim() final=default
Implementations of this class provide packet I/O for Agora.
Definition: packet_txrx.h:34
moodycamel::ConcurrentQueue< EventData > * event_notify_q_
Definition: packet_txrx.h:80
frame_start
Definition: parse_dl_file.m:6
moodycamel::ProducerToken ** notify_producer_tokens_
Definition: packet_txrx.h:84
bool CreateWorker(size_t tid, size_t interface_count, size_t interface_offset, size_t *rx_frame_start, std::vector< RxPacket > &rx_memory, std::byte *const tx_memory) final
Definition: packet_txrx_sim.cc:24
Common definations for PacketTxRxSim. Including datapath functions for communicating with the base st...
#define AGORA_LOG_INFO(...)
Definition: logger.h:62
static void RtAssert(bool condition, const char *throw_str)
Definition: utils.h:104
const size_t core_offset_
Definition: packet_txrx.h:79
moodycamel::ConcurrentQueue< EventData > * tx_pending_q_
Definition: packet_txrx.h:81
@ kBaseStation
Definition: packet_txrx.h:19
size_t NumChannels() const
Definition: packet_txrx.h:74