diff --git a/src/tests/roc_pipeline/bench_pipeline_loop_peak_load.cpp b/src/tests/roc_pipeline/bench_pipeline_loop_peak_load.cpp index 6495782d8..0dc7e0640 100644 --- a/src/tests/roc_pipeline/bench_pipeline_loop_peak_load.cpp +++ b/src/tests/roc_pipeline/bench_pipeline_loop_peak_load.cpp @@ -252,6 +252,7 @@ class DelayStats { }; class TestPipeline : public PipelineLoop, + public IPipelineTaskCompleter, private IPipelineTaskScheduler, public ctl::ControlTaskExecutor { public: @@ -319,6 +320,11 @@ class TestPipeline : public PipelineLoop, state.counters["sc"] = st.scheduler_cancellations; } + virtual void pipeline_task_completed(PipelineTask& basic_task) { + TestPipeline::Task& task = (TestPipeline::Task&)basic_task; + delete &task; + } + using PipelineLoop::process_subframes_and_tasks; private: @@ -375,7 +381,7 @@ class TestPipeline : public PipelineLoop, BackgroundProcessingTask control_task_; }; -class TaskThread : public core::Thread, private IPipelineTaskCompleter { +class TaskThread : public core::Thread { public: TaskThread(TestPipeline& pipeline) : pipeline_(pipeline) @@ -400,16 +406,11 @@ class TaskThread : public core::Thread, private IPipelineTaskCompleter { task->start(); - pipeline_.schedule(*task, *this); + pipeline_.schedule(*task, pipeline_); } } } - virtual void pipeline_task_completed(PipelineTask& basic_task) { - TestPipeline::Task& task = (TestPipeline::Task&)basic_task; - delete &task; - } - TestPipeline& pipeline_; core::Atomic stop_; };