Skip to content
Snippets Groups Projects
Commit 379e9ab7 authored by Giovanna Lazzari Miotto's avatar Giovanna Lazzari Miotto :mushroom:
Browse files

tidy: Make members private, clean up

parent 5255e952
No related branches found
No related tags found
No related merge requests found
Pipeline #8301570 passed
......@@ -105,7 +105,7 @@ void MultiPipeline::MonitorRun() {
throw(std::runtime_error("Invalid control state: \n" + control_.Print()));
}
control_.cv_.notify_all();
cv_.notify_one();
run_condition_.notify_one();
}
}
}
......@@ -125,17 +125,17 @@ int MultiPipeline::Run() {
while (true) {
{
std::unique_lock lock(cv_mutex_);
cv_.wait(lock, [&] { return ready_to_run_ || control_.flag_teardown_; });
run_condition_.wait(lock, [&] { return ready_to_run_ || control_.flag_teardown_; });
LOG(TRACE) << "Action triggered: run=" << ready_to_run_
<< ", teardown=" << control_.flag_teardown_;
ready_to_run_ = false;
}
LOG(TRACE) << "Action triggered: run=" << ready_to_run_
<< ", teardown=" << control_.flag_teardown_;
if (control_.flag_teardown_) {
break;
}
cv_.notify_all();
run_condition_.notify_all();
try {
RunPipelines(static_cast<unsigned int>(pipelines_.size()));
......
......@@ -19,8 +19,8 @@ class MultiPipeline {
public:
explicit MultiPipeline(Config c);
~MultiPipeline();
void MonitorRun();
int Run();
void MonitorRun();
void ReportRun();
std::ostringstream ReportAllPipelineMetrics();
std::ostringstream ReportEndOfRun(double duration_ns, bool commit_to_file);
......@@ -28,25 +28,25 @@ class MultiPipeline {
static ctrl control_;
const Config conf_;
std::deque<Pipeline> pipelines_;
std::deque<std::unique_ptr<PipelineMonitor>> pipeline_monitors_;
tbb::task_scheduler_init scheduler_init_;
boost::asio::io_service io_service_;
boost::thread server_thread_;
std::unique_ptr<server> server_;
bool ready_to_run_ = false;
bool is_reporting_ = false;
bool shutdown_ = false;
std::condition_variable cv_;
private:
void MakePipelines();
int RunPipelines(uint num_streams);
std::deque<std::unique_ptr<PipelineMonitor>> pipeline_monitors_;
std::mutex cv_mutex_;
std::condition_variable run_condition_;
std::thread run_control_thread_;
std::thread reporter_thread_;
boost::asio::io_service io_service_;
boost::thread server_thread_;
std::unique_ptr<server> server_;
tbb::task_scheduler_init scheduler_init_;
bool ready_to_run_ = false;
bool is_reporting_ = false;
bool shutdown_ = false;
};
#endif // SCDAQ_MULTI_PIPELINE_H
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment