HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
VdfSpeculationExecutorEngine< typename > Class Template Reference

This class provides an executor engine to the speculation executor. More...

#include <pullBasedExecutorEngine.h>

+ Inheritance diagram for VdfSpeculationExecutorEngine< typename >:

Public Member Functions

 VdfSpeculationExecutorEngine (const VdfSpeculationExecutorBase &speculationExecutor, DataManagerType *dataManager)
 
void RunSchedule (const VdfSchedule &schedule, const VdfRequest &computeRequest, VdfExecutorErrorLogger *errorLogger)
 
template<typename F >
void RunSchedule (const VdfSchedule &schedule, const VdfRequest &computeRequest, VdfExecutorErrorLogger *errorLogger, F &&callback)
 
- Public Member Functions inherited from VdfPullBasedExecutorEngine< DataManagerType >
 VdfPullBasedExecutorEngine (const VdfExecutorInterface &executor, DataManagerType *dataManager)
 
void RunSchedule (const VdfSchedule &schedule, const VdfRequest &computeRequest, VdfExecutorErrorLogger *errorLogger)
 
template<typename F >
void RunSchedule (const VdfSchedule &schedule, const VdfRequest &computeRequest, VdfExecutorErrorLogger *errorLogger, F &&callback)
 

Additional Inherited Members

- Public Types inherited from VdfPullBasedExecutorEngine< DataManagerType >
typedef
VdfSpeculationExecutorEngine
< DataManagerType > 
SpeculationExecutorEngine
 
- Protected Types inherited from VdfPullBasedExecutorEngine< DataManagerType >
enum  _ExecutionStage { ExecutionStageStart, ExecutionStagePreRequisitesDone, ExecutionStageReadsDone, ExecutionStageCompute }
 
typedef DataManagerType::DataHandle _DataHandle
 
- Protected Member Functions inherited from VdfPullBasedExecutorEngine< DataManagerType >
void _ComputeNode (const VdfEvaluationState &state, const VdfNode &node, bool absorbLockedCache=false)
 
bool _PassThroughNode (const VdfSchedule &schedule, const VdfNode &node, bool absorbLockedCache=false)
 
VdfVector_CopyCache (const VdfOutput &toOutput, VdfExecutorBufferData *toBuffer, const VdfOutput &fromOutput, const VdfMask &fromMask) const
 
const VdfExecutorInterface_GetExecutor ()
 
DataManagerType * _GetDataManager ()
 
VdfVector_PassOrCopySourceOutputBuffer (const _DataHandle dataHandle, const VdfOutput &output, const VdfOutput &source, const VdfMask &inputMask, const VdfSchedule &schedule)
 
VdfVector_PassOrCopyBufferInternal (const _DataHandle dataHandle, const VdfOutput &output, const VdfOutput &source, const VdfMask &inputMask, const VdfSchedule &schedule) const
 
void _PrepareReadWriteBuffer (const _DataHandle dataHandle, const VdfInput &input, const VdfMask &mask, const VdfSchedule &schedule)
 
- Static Protected Member Functions inherited from VdfPullBasedExecutorEngine< DataManagerType >
static bool _IsNotPassing (const VdfOutput &output, const VdfSchedule::OutputId &outputId, const VdfSchedule &schedule)
 

Detailed Description

template<typename>
class VdfSpeculationExecutorEngine< typename >

This class provides an executor engine to the speculation executor.

Remarks
This class inherits from VdfPullBasedExecutorEngine only to share code. It is not meant to behave polymorphically.

Definition at line 55 of file pullBasedExecutorEngine.h.

Constructor & Destructor Documentation

template<typename >
VdfSpeculationExecutorEngine< typename >::VdfSpeculationExecutorEngine ( const VdfSpeculationExecutorBase speculationExecutor,
DataManagerType *  dataManager 
)
inline

Constructs an engine used by the speculation executor.

Definition at line 50 of file speculationExecutorEngine.h.

Member Function Documentation

template<typename >
void VdfSpeculationExecutorEngine< typename >::RunSchedule ( const VdfSchedule schedule,
const VdfRequest computeRequest,
VdfExecutorErrorLogger errorLogger 
)
inline

Executes the given schedule with a computeRequest and an optional /p errorLogger.

Definition at line 63 of file speculationExecutorEngine.h.

template<typename DataManagerType >
template<typename F >
void VdfSpeculationExecutorEngine< DataManagerType >::RunSchedule ( const VdfSchedule schedule,
const VdfRequest computeRequest,
VdfExecutorErrorLogger errorLogger,
F &&  callback 
)

Executes the given schedule with a computeRequest and an optional /p errorLogger. Invokes callback after evaluation of each uncached output in the request, and immediatelly after hitting the cache for cached outputs in the request.

Definition at line 172 of file speculationExecutorEngine.h.


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