![]() |
Lumiera 0.pre.04
»edit your freedom«
|
#include "vault/gear/job.h"
Interface of the closure for frame rendering jobs.
Hidden behind this interface resides all of the context re-building and invocation mechanics to get the actual calculations going. While the job descriptor, as handled by the scheduler, contains the variable "moving parts", the corresponding job closure represents the execution context of a job and is shared between several jobs within the same segment of the timeline.
This allows us to enqueue simple job-"functions" with the scheduler. By virtue of the JobClosure-pointer, embedded into #lumiera_jobDefinition, the invocation of such a job may re-gain the full context, including the actual ProcNode to pull and further specifics, like the media channel.
Public Member Functions | |
| virtual | ~JobClosure () |
| this is an interface | |
| virtual void | invokeJobOperation (JobParameter parameter)=0 |
| virtual JobKind | getJobKind () const =0 |
| virtual HashVal | hashOfInstance (InvocationInstanceID) const =0 |
| virtual InvocationInstanceID | buildInstanceID (HashVal) const =0 |
| lib::HashVal | hash_value (JobParameter) const |
Public Member Functions inherited from JobFunctor | |
| virtual | ~JobFunctor () |
| this is an interface | |
| virtual std::string | diagnostic () const |
| operator std::string () const | |
|
virtual |
this is an interface
|
pure virtual |
Implemented in SpecialJobFun::SpecialExecutor< FUN >, ActivityDetector::MockJobFunctor, RandomChainCalcFunctor< maxFan >, RandomChainPlanFunctor< maxFan >, NopJobFunctor, ChainFunctor, and RenderInvocation.
Referenced by Activity::invokeFunktor(), and Job::triggerJob().
Here is the caller graph for this function:
|
pure virtual |
Implemented in RenderDrive, NopJobFunctor, ActivityDetector::MockJobFunctor, ChainFunctor, RenderInvocation, and DummyClosure.
Referenced by Job::getKind().
Here is the caller graph for this function:
|
pure virtual |
Implemented in RenderInvocation, NopJobFunctor, DummyClosure, ChainFunctor, and RenderDrive.
Referenced by JobClosure::hash_value().
Here is the caller graph for this function:
|
pure virtual |
Implemented in DummyClosure, RenderDrive, RenderInvocation, NopJobFunctor, and ChainFunctor.
| HashVal hash_value | ( | JobParameter | parameter | ) | const |
Definition at line 110 of file job.cpp.
References hash, and JobClosure::hashOfInstance().
Here is the call graph for this function:
Inheritance diagram for JobClosure:
Collaboration diagram for JobClosure: