HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
WorkTaskGraph_DefaultImpl::BaseTask Class Referenceabstract

#include <taskGraph_defaultImpl.h>

+ Inheritance diagram for WorkTaskGraph_DefaultImpl::BaseTask:

Public Member Functions

 BaseTask ()=default
 
virtual WORK_API ~BaseTask ()
 
WORK_API void operator() (const int depth=0, WorkTaskGraph_DefaultImpl *const taskGraph=nullptr) const
 
virtual BaseTaskexecute ()=0
 
void AddChildReference ()
 
int RemoveChildReference ()
 
template<typename F , typename... Args>
F * AllocateChild (Args &&...args)
 

Protected Member Functions

void _RecycleAsContinuation ()
 

Friends

class WorkTaskGraph_DefaultImpl
 

Detailed Description

Definition at line 51 of file taskGraph_defaultImpl.h.

Constructor & Destructor Documentation

WorkTaskGraph_DefaultImpl::BaseTask::BaseTask ( )
default
virtual WORK_API WorkTaskGraph_DefaultImpl::BaseTask::~BaseTask ( )
virtual

Reimplemented in WorkTaskGraph::BaseTask.

Member Function Documentation

void WorkTaskGraph_DefaultImpl::BaseTask::_RecycleAsContinuation ( )
inlineprotected

Definition at line 80 of file taskGraph_defaultImpl.h.

void WorkTaskGraph_DefaultImpl::BaseTask::AddChildReference ( )
inline

Definition at line 63 of file taskGraph_defaultImpl.h.

template<typename F , typename... Args>
F* WorkTaskGraph_DefaultImpl::BaseTask::AllocateChild ( Args &&...  args)
inline

Definition at line 72 of file taskGraph_defaultImpl.h.

WORK_API void WorkTaskGraph_DefaultImpl::BaseTask::operator() ( const int  depth = 0,
WorkTaskGraph_DefaultImpl *const  taskGraph = nullptr 
) const

Callable operator that implements continuation passing, recycling, and scheduler bypass.

int WorkTaskGraph_DefaultImpl::BaseTask::RemoveChildReference ( )
inline

Definition at line 67 of file taskGraph_defaultImpl.h.

Friends And Related Function Documentation

Definition at line 86 of file taskGraph_defaultImpl.h.


The documentation for this class was generated from the following file: