AIStatefulTask ‐ Asynchronous, Stateful Task Scheduler library.

Threads-like task objects evolving through user-defined states.

Classes | Namespaces | Typedefs | Functions
AIStatefulTask.h File Reference

Declaration of base class AIStatefulTask. More...

#include "threadpool/Timer.h"
#include "threadsafe/aithreadsafe.h"
#include "threadsafe/AIMutex.h"
#include "threadpool/AIQueueHandle.h"
#include "utils/AIRefCount.h"
#include "utils/macros.h"
#include "utils/FuzzyBool.h"
#include "utils/is_power_of_two.h"
#include "debug.h"
#include <list>
#include <chrono>
#include <functional>
#include <tuple>
#include "AIStatefulTaskMutex.h"
Include dependency graph for AIStatefulTask.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  AIStatefulTask
 
struct  AIStatefulTask::Actuation
 
struct  AIStatefulTask::Handler
 
union  AIStatefulTask::Handler::Handle
 Contains extra data that depends on the type of the Handler. More...
 
struct  AIStatefulTask::Conditions
 

Namespaces

namespace  statefultask
 Tasks defined by the library project are put into this namespace.
 

Typedefs

using AIWaitConditionFunc = std::function< bool()>
 The type of the functor that must be passed as first parameter to AIStatefulTask::wait_until.
 

Functions

template<task::TaskType TaskType, typename... ARGS>
boost::intrusive_ptr< TaskType > statefultask::create (ARGS &&... args)
 Convenience function to create tasks. More...
 
template<task::TaskType TaskType, typename... ARGS>
boost::intrusive_ptr< TaskType > statefultask::create_from_tuple (std::tuple< ARGS... > &&args)
 

Detailed Description

Declaration of base class AIStatefulTask.

ai-statefultask – Asynchronous, Stateful Task Scheduler library.