7#ifndef PXR_EXEC_VDF_EXECUTOR_H
8#define PXR_EXEC_VDF_EXECUTOR_H
23PXR_NAMESPACE_OPEN_SCOPE
36 template <
typename>
class EngineType,
37 typename DataManagerType>
49 using SpeculationEngineType =
50 typename EngineType<T>::SpeculationExecutorEngine;
55 VdfSubExecutor<EngineType, DataManagerType>,
71 virtual const VdfExecutorFactoryBase &
GetFactory() const override final {
81 const VdfRequest &computeRequest,
86 virtual void _ClearData()
override {
87 Base::_dataManager.Clear();
94 static const _Factory _factory;
98 EngineType<DataManagerType> _engine;
103template <
template <
typename>
class EngineType,
typename DataManagerType>
104const typename VdfExecutor<EngineType, DataManagerType>::_Factory
107template <
template <
typename>
class EngineType,
typename DataManagerType>
111 const VdfRequest &computeRequest,
115 if (computeRequest.IsEmpty()) {
122 _engine.RunSchedule(schedule, computeRequest, errorLogger);
125PXR_NAMESPACE_CLOSE_SCOPE
Base class for executors that use a data manager.
A client may instantiate an object of this class and set it in an executor, to collect errors that ma...
Executes a VdfNetwork to compute a requested set of values.
VdfExecutor()
Default constructor.
virtual const VdfExecutorFactoryBase & GetFactory() const override final
Factory construction.
virtual ~VdfExecutor()
Destructor.
Contains a specification of how to execute a particular VdfNetwork.
Executor used in speculation.