#include <JobFunction.h>
Inherits AZ::Job.
Classes | |
| struct | ArgHelper |
| struct | ArgHelper< FunctionType, 0 > |
Public Types | |
| typedef const AZStd::remove_cv< typenameAZStd::remove_reference< Function >::type >::type & | FunctionCRef |
Public Types inherited from AZ::Job | |
| enum | State { STATE_SETUP , STATE_STARTED , STATE_PENDING , STATE_PROCESSING , STATE_SUSPENDED } |
Public Member Functions | |
| AZ_CLASS_ALLOCATOR (JobFunction, ThreadPoolAllocator) | |
| JobFunction (FunctionCRef processFunction, bool isAutoDelete, JobContext *context) | |
| void | Process () override |
| Override to implement your processing. | |
Public Member Functions inherited from AZ::Job | |
| Job (bool isAutoDelete, JobContext *context, bool isCompletion=false, AZ::s8 priority=0) | |
| void | Start () |
| virtual void | Reset (bool isClearDependent) |
| void | SetDependent (Job *dependent) |
| void | SetDependentStarted (Job *dependent) |
| void | SetContinuation (Job *continuationJob) |
| void | StartAsChild (Job *childJob) |
| void | WaitForChildren () |
| bool | IsCancelled () const |
| bool | IsAutoDelete () const |
| bool | IsCompletion () const |
| void | StartAndAssistUntilComplete () |
| void | StartAndWaitForCompletion () |
| JobContext * | GetContext () const |
| Job * | GetDependent () const |
| unsigned int | GetDependentCount () const |
| void | IncrementDependentCount () |
| void | DecrementDependentCount () |
| AZ::s8 | GetPriority () const |
Protected Types | |
| template<class T > | |
| using | FirstArgType = AZStd::function_traits_get_arg_t< T, 0 > |
Protected Member Functions | |
| JobFunction (const JobFunction &)=delete | |
| JobFunction & | operator= (const JobFunction &)=delete |
Protected Member Functions inherited from AZ::Job | |
| void | StoreDependent (Job *job) |
| void | SetDependentChild (Job *dependent) |
| void | IncrementDependentCountAndSetChildFlag () |
| void | SetDependentCountAndFlags (unsigned int countAndFlags) |
| unsigned int | GetDependentCountAndFlags () const |
Protected Attributes | |
| Function | m_function |
Protected Attributes inherited from AZ::Job | |
| JobContext *volatile | m_context |
| AZStd::atomic< unsigned int > | m_dependentCountAndFlags |
| AZStd::atomic< Job * > | m_dependent |
| int | m_state |
A job which uses a templated function (can be AZStd::function, AZStd::delegate, result of AZStd::bind, lambda, reference to a functor, regular function).
The function can either take the owning AZ::Job& as its lone parameter or no parameters at all
|
inlineoverridevirtual |
Override to implement your processing.
Implements AZ::Job.