Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
|
Pipeline task scheduler interface. PipelineLoop uses this interface to schedule asynchronous work. Method calls may come from different threads, but are serialized. More...
#include <ipipeline_task_scheduler.h>
Public Member Functions | |
virtual void | schedule_task_processing (PipelineLoop &pipeline, core::nanoseconds_t deadline)=0 |
Schedule asynchronous work. More... | |
virtual void | cancel_task_processing (PipelineLoop &pipeline)=0 |
Cancel previously scheduled asynchronous work. More... | |
Pipeline task scheduler interface. PipelineLoop uses this interface to schedule asynchronous work. Method calls may come from different threads, but are serialized.
Definition at line 25 of file ipipeline_task_scheduler.h.
|
pure virtual |
Cancel previously scheduled asynchronous work.
|
pure virtual |
Schedule asynchronous work.
pipeline
calls this when it wants to invoke PipelineLoop::process_tasks() asynchronously.
deadline
is a hint when it's better to invoke the method. It's an absolute timestamp in nanoseconds from the same clock domain as core::timestamp().
Zero deadline means invoke as soon as possible.