RENEWLab  1.1.0
RENEW project
Sounder::Scheduler Class Reference

#include <scheduler.h>

Collaboration diagram for Sounder::Scheduler:

Public Member Functions

 Scheduler (Config *in_cfg, unsigned int core_start=0u)
 
 ~Scheduler ()
 
void do_it ()
 
int getRecordedFrameNum ()
 
std::string getTraceFileName ()
 

Private Member Functions

void gc (void)
 

Private Attributes

Configcfg_
 
std::unique_ptr< Receiverreceiver_
 
SampleBufferrx_buffer_
 
size_t rx_thread_buff_size_
 
SampleBufferbs_tx_buffer_
 
size_t bs_tx_thread_buff_size_
 
SampleBuffercl_tx_buffer_
 
size_t cl_tx_thread_buff_size_
 
std::vector< Sounder::RecorderThread * > recorders_
 
std::vector< Sounder::Hdf5Reader * > readers_
 
size_t max_frame_number_
 
moodycamel::ConcurrentQueue< Event_datamessage_queue_
 
std::vector< moodycamel::ConcurrentQueue< Event_data > * > tx_queue_
 
std::vector< moodycamel::ProducerToken * > tx_ptoks_ptr_
 
std::vector< moodycamel::ConcurrentQueue< Event_data > * > cl_tx_queue_
 
std::vector< moodycamel::ProducerToken * > cl_tx_ptoks_ptr_
 
const unsigned int kMainDispatchCore
 
const unsigned int kSchedulerCore
 
const unsigned int kRecvCore
 

Static Private Attributes

static const int KDequeueBulkSize = 5
 

Constructor & Destructor Documentation

◆ Scheduler()

Sounder::Scheduler::Scheduler ( Config in_cfg,
unsigned int  core_start = 0u 
)
Here is the call graph for this function:

◆ ~Scheduler()

Sounder::Scheduler::~Scheduler ( )
Here is the call graph for this function:

Member Function Documentation

◆ do_it()

void Sounder::Scheduler::do_it ( )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ gc()

void Sounder::Scheduler::gc ( void  )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getRecordedFrameNum()

int Sounder::Scheduler::getRecordedFrameNum ( )
Here is the caller graph for this function:

◆ getTraceFileName()

std::string Sounder::Scheduler::getTraceFileName ( )
inline
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ bs_tx_buffer_

SampleBuffer* Sounder::Scheduler::bs_tx_buffer_
private

◆ bs_tx_thread_buff_size_

size_t Sounder::Scheduler::bs_tx_thread_buff_size_
private

◆ cfg_

Config* Sounder::Scheduler::cfg_
private

◆ cl_tx_buffer_

SampleBuffer* Sounder::Scheduler::cl_tx_buffer_
private

◆ cl_tx_ptoks_ptr_

std::vector<moodycamel::ProducerToken*> Sounder::Scheduler::cl_tx_ptoks_ptr_
private

◆ cl_tx_queue_

std::vector<moodycamel::ConcurrentQueue<Event_data>*> Sounder::Scheduler::cl_tx_queue_
private

◆ cl_tx_thread_buff_size_

size_t Sounder::Scheduler::cl_tx_thread_buff_size_
private

◆ KDequeueBulkSize

const int Sounder::Scheduler::KDequeueBulkSize = 5
staticprivate

◆ kMainDispatchCore

const unsigned int Sounder::Scheduler::kMainDispatchCore
private

◆ kRecvCore

const unsigned int Sounder::Scheduler::kRecvCore
private

◆ kSchedulerCore

const unsigned int Sounder::Scheduler::kSchedulerCore
private

◆ max_frame_number_

size_t Sounder::Scheduler::max_frame_number_
private

◆ message_queue_

moodycamel::ConcurrentQueue<Event_data> Sounder::Scheduler::message_queue_
private

◆ readers_

std::vector<Sounder::Hdf5Reader*> Sounder::Scheduler::readers_
private

◆ receiver_

std::unique_ptr<Receiver> Sounder::Scheduler::receiver_
private

◆ recorders_

std::vector<Sounder::RecorderThread*> Sounder::Scheduler::recorders_
private

◆ rx_buffer_

SampleBuffer* Sounder::Scheduler::rx_buffer_
private

◆ rx_thread_buff_size_

size_t Sounder::Scheduler::rx_thread_buff_size_
private

◆ tx_ptoks_ptr_

std::vector<moodycamel::ProducerToken*> Sounder::Scheduler::tx_ptoks_ptr_
private

◆ tx_queue_

std::vector<moodycamel::ConcurrentQueue<Event_data>*> Sounder::Scheduler::tx_queue_
private

The documentation for this class was generated from the following files: