CCF
Loading...
Searching...
No Matches
Classes | Typedefs | Functions
ccf::tasks Namespace Reference

Classes

struct  BaseTask
 
struct  BasicTask
 
struct  BasicTaskAction
 
struct  Delayed
 
class  FanInTasks
 
struct  IResumable
 
struct  ITaskAction
 
class  JobBoard
 
class  OrderedTasks
 
class  SubTaskQueue
 
class  ThreadManager
 
struct  WaitingWorkerThread
 

Typedefs

using TaskAction = std::shared_ptr< ITaskAction >
 
using Resumable = std::unique_ptr< IResumable >
 
using Task = std::shared_ptr< BaseTask >
 

Functions

template<typename... Ts>
Task make_basic_task (Ts &&... ts)
 
template<typename... Ts>
TaskAction make_basic_action (Ts &&... ts)
 
void resume_task (std::unique_ptr< IResumable > &&resumable)
 
Resumable pause_current_task ()
 
void resume_task (Resumable &&resumable)
 
JobBoardget_main_job_board ()
 
void set_task_threads (size_t new_worker_count)
 
void add_task (Task task)
 
void add_delayed_task (Task task, std::chrono::milliseconds delay)
 
void add_periodic_task (Task task, std::chrono::milliseconds initial_delay, std::chrono::milliseconds repeat_period)
 
void tick (std::chrono::milliseconds elapsed)
 
void task_worker_loop (JobBoard &job_board, std::atomic< bool > &stop_signal)
 

Typedef Documentation

◆ Resumable

using ccf::tasks::Resumable = typedef std::unique_ptr<IResumable>

◆ Task

using ccf::tasks::Task = typedef std::shared_ptr<BaseTask>

◆ TaskAction

using ccf::tasks::TaskAction = typedef std::shared_ptr<ITaskAction>

Function Documentation

◆ add_delayed_task()

void ccf::tasks::add_delayed_task ( Task  task,
std::chrono::milliseconds  delay 
)

◆ add_periodic_task()

void ccf::tasks::add_periodic_task ( Task  task,
std::chrono::milliseconds  initial_delay,
std::chrono::milliseconds  repeat_period 
)

◆ add_task()

void ccf::tasks::add_task ( Task  task)

◆ get_main_job_board()

JobBoard & ccf::tasks::get_main_job_board ( )

◆ make_basic_action()

template<typename... Ts>
TaskAction ccf::tasks::make_basic_action ( Ts &&...  ts)

◆ make_basic_task()

template<typename... Ts>
Task ccf::tasks::make_basic_task ( Ts &&...  ts)

◆ pause_current_task()

Resumable ccf::tasks::pause_current_task ( )

◆ resume_task() [1/2]

void ccf::tasks::resume_task ( Resumable &&  resumable)

◆ resume_task() [2/2]

void ccf::tasks::resume_task ( std::unique_ptr< IResumable > &&  resumable)

◆ set_task_threads()

void ccf::tasks::set_task_threads ( size_t  new_worker_count)

◆ task_worker_loop()

void ccf::tasks::task_worker_loop ( JobBoard job_board,
std::atomic< bool > &  stop_signal 
)
inline

◆ tick()

void ccf::tasks::tick ( std::chrono::milliseconds  elapsed)