7#ifndef PXR_EXEC_VDF_EXECUTOR_FACTORY_H
8#define PXR_EXEC_VDF_EXECUTOR_FACTORY_H
18PXR_NAMESPACE_OPEN_SCOPE
21class VdfSpeculationExecutorBase;
31 typename ChildExecutorType,
32 typename SpeculationExecutorType
34class VdfExecutorFactory :
public VdfExecutorFactoryBase
41 virtual std::unique_ptr<VdfExecutorInterface>
42 ManufactureChildExecutor(
44 return std::unique_ptr<VdfExecutorInterface>(
45 new ChildExecutorType(parentExecutor));
51 virtual std::unique_ptr<VdfSpeculationExecutorBase>
52 ManufactureSpeculationExecutor(
55 return std::unique_ptr<VdfSpeculationExecutorBase>(
56 new SpeculationExecutorType(speculationNode, parentExecutor));
63PXR_NAMESPACE_CLOSE_SCOPE
Abstract base class for classes that execute a VdfNetwork to compute a requested set of values.
A node that pulls on a vector of value that are downstream of the current execution position.