Loading...
Searching...
No Matches
simpleExecutor.h
Go to the documentation of this file.
1//
2// Copyright 2025 Pixar
3//
4// Licensed under the terms set forth in the LICENSE.txt file available at
5// https://openusd.org/license.
6//
7#ifndef PXR_EXEC_VDF_SIMPLE_EXECUTOR_H
8#define PXR_EXEC_VDF_SIMPLE_EXECUTOR_H
9
11
12#include "pxr/pxr.h"
13
14#include "pxr/exec/vdf/api.h"
18
19PXR_NAMESPACE_OPEN_SCOPE
20
23class VdfExecutorFactoryBase;
24class VdfSchedule;
25
33class VDF_API_TYPE VdfSimpleExecutor :
35 VdfParallelDataManagerVector,
36 VdfExecutorInterface>
37{
38public:
41 VDF_API
43
46 VDF_API
47 virtual const VdfExecutorFactoryBase &GetFactory() const override final;
48
49protected:
50
54
57 using _DataHandle = typename DataManagerType::DataHandle;
58
64 VDF_API
65 virtual void _Run(
66 const VdfSchedule &schedule,
67 const VdfRequest &computeRequest,
68 VdfExecutorErrorLogger *errorLogger) override;
69
72 VDF_API
73 void _PrepareReadWriteBuffer(
74 VdfExecutorBufferData *bufferData,
75 const VdfInput &input,
76 const VdfMask &mask,
77 const VdfSchedule &schedule);
78
79};
80
82
83PXR_NAMESPACE_CLOSE_SCOPE
84
85#endif
Base class for executors that use a data manager.
This object is responsible for storing the executor buffer data, comprised of the executor cache vect...
A client may instantiate an object of this class and set it in an executor, to collect errors that ma...
A VdfInput is used to connect a VdfNode to one or more VdfNodes' outputs.
Definition: input.h:36
A VdfMask is placed on connections to specify the data flowing through them.
Definition: mask.h:37
This is a data manager for executors that uses data stored in a vector indexed by output ids.
Contains a specification of how to execute a particular VdfNetwork.
Definition: schedule.h:41
Executes a VdfNetwork to compute a requested set of values using depth first search.
typename DataManagerType::DataHandle _DataHandle
The data handle type defined by the data manager.
virtual VDF_API const VdfExecutorFactoryBase & GetFactory() const override final
Factory construction.
virtual VDF_API ~VdfSimpleExecutor()
Destructor.