7 #ifndef PXR_EXEC_EXEC_SYSTEM_H
8 #define PXR_EXEC_EXEC_SYSTEM_H
26 class Exec_RequestTracker;
32 template <
typename>
class TfSpan;
57 ExecSystem&
operator=(
const ExecSystem &) =
delete;
108 bool _HasPendingRecompilation()
const;
114 void _InvalidateAll();
118 void _InvalidateDisconnectedInputs();
126 void _InvalidateMetadataValues(
127 TfSpan<
const std::pair<SdfPath, TfToken>> invalidObjects);
133 void _InvalidateUnknownValues();
138 std::unique_ptr<Exec_Program> _program;
139 std::unique_ptr<Exec_Runtime> _runtime;
141 std::unique_ptr<Exec_RequestTracker> _requestTracker;
GT_API const UT_StringHolder time
ExecSystem & operator=(const ExecSystem &)=delete
EXEC_API void _Compile(TfSpan< const ExecValueKey > valueKeys)
Compiles outputs for the value keys in the request.
#define PXR_NAMESPACE_OPEN_SCOPE
EXEC_API std::unique_ptr< VdfExecutorInterface > _ComputeWithOverrides(const VdfSchedule &schedule, const VdfRequest &computeRequest, ExecValueOverrideVector &&valueOverrides)
Contains a specification of how to execute a particular VdfNetwork.
Utility class with various diagnostic functions for ExecSystem.
EXEC_API void _Compute(const VdfSchedule &schedule, const VdfRequest &computeRequest)
Class to hold on to an externally owned output and a mask.
EXEC_API void _ParallelForEachRequest(TfFunctionRef< void(Exec_RequestImpl &)> f) const
EXEC_API ExecSystem(EsfStage &&stage)
Construct an exec system for computing values on stage.
#define PXR_NAMESPACE_CLOSE_SCOPE
EXEC_API void _ChangeTime(const EfTime &time)
Abstract base class for classes that execute a VdfNetwork to compute a requested set of values...
std::vector< ExecValueOverride > ExecValueOverrideVector