XII Release 0.1.0
Loading...
Searching...
No Matches
xiiDelegateTask< T > Class Template Referencefinal

A simple task implementation that calls a delegate function. More...

#include <DelegateTask.h>

Inheritance diagram for xiiDelegateTask< T >:
[legend]

Public Types

using FunctionType = xiiDelegate<void(const T&)>
 

Public Member Functions

 xiiDelegateTask (xiiStringView sTaskName, xiiTaskNesting taskNesting, FunctionType func, const T &param)
 
- Public Member Functions inherited from xiiTask
void ConfigureTask (xiiStringView sTaskName, xiiTaskNesting nestingMode, xiiOnTaskFinishedCallback callback=xiiOnTaskFinishedCallback())
 Sets the most important task properties. This has to be done before the task is added to a task group for the first time.
 
void SetMultiplicity (xiiUInt32 uiMultiplicity)
 Changes the multiplicity of this task.
 
xiiUInt32 GetMultiplicity () const
 
bool IsTaskFinished () const
 Returns whether the task has been finished. This includes being canceled.
 
bool HasBeenCanceled () const
 Can be used inside an overridden 'Execute' function to terminate execution prematurely.
 
- Public Member Functions inherited from xiiRefCounted
virtual ~xiiRefCounted ()=default
 Adds a virtual destructor.
 
- Public Member Functions inherited from xiiRefCountingImpl
 xiiRefCountingImpl ()=default
 Constructor.
 
 xiiRefCountingImpl (const xiiRefCountingImpl &rhs)
 
void operator= (const xiiRefCountingImpl &rhs)
 
xiiUInt32 AddRef () const
 Increments the reference counter. Returns the new reference count.
 
xiiUInt32 ReleaseRef () const
 Decrements the reference counter. Returns the new reference count.
 
bool IsReferenced () const
 Returns true if the reference count is greater than 0, false otherwise.
 
xiiUInt32 GetRefCount () const
 Returns the current reference count.
 

Private Member Functions

virtual void Execute () override
 Override this to implement the task's supposed functionality.
 

Additional Inherited Members

- Protected Member Functions inherited from xiiTask
virtual void ExecuteWithMultiplicity (xiiUInt32 uiInvocation) const
 Override this to implement the task's supposed functionality.
 

Detailed Description

template<typename T>
class xiiDelegateTask< T >

A simple task implementation that calls a delegate function.

Member Function Documentation

◆ Execute()

template<typename T>
virtual void xiiDelegateTask< T >::Execute ( )
inlineoverrideprivatevirtual

Override this to implement the task's supposed functionality.

This function is called for tasks that do not use multiplicity. They are executed a single time for each time they are added to the xiiTaskSystem.

Reimplemented from xiiTask.


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