7 #ifndef PXR_IMAGING_HD_EXT_COMPUTATION_H 8 #define PXR_IMAGING_HD_EXT_COMPUTATION_H 11 #include "pxr/imaging/hd/api.h" 12 #include "pxr/imaging/hd/sceneDelegate.h" 13 #include "pxr/imaging/hd/sprim.h" 15 PXR_NAMESPACE_OPEN_SCOPE
78 HdDirtyBits *dirtyBits)
override;
84 size_t GetDispatchCount()
const;
87 size_t GetElementCount()
const {
return _elementCount; }
91 return _sceneInputNames;
98 HdExtComputationInputDescriptorVector
const &
99 GetComputationInputs()
const {
100 return _computationInputs;
104 HdExtComputationOutputDescriptorVector
const &
105 GetComputationOutputs()
const {
106 return _computationOutputs;
110 const std::string& GetGpuKernelSource()
const {
115 bool IsInputAggregation()
const;
122 HdDirtyBits *dirtyBits);
125 static bool _IsEnabledSharedExtComputationData();
128 size_t _dispatchCount;
129 size_t _elementCount;
131 HdExtComputationInputDescriptorVector _computationInputs;
132 HdExtComputationOutputDescriptorVector _computationOutputs;
142 PXR_NAMESPACE_CLOSE_SCOPE
144 #endif // PXR_IMAGING_HD_EXT_COMPUTATION_H Hydra Representation of a Client defined computation.
The HdRenderParam is an opaque (to core Hydra) handle, to an object that is obtained from the render ...
HD_API void Sync(HdSceneDelegate *sceneDelegate, HdRenderParam *renderParam, HdDirtyBits *dirtyBits) override
Synchronizes state from the delegate to this object.
Token for efficient comparison, assignment, and hashing of known strings.
std::string const & GetString() const
Return the string that this token represents.
HD_API HdDirtyBits GetInitialDirtyBitsMask() const override
Returns the minimal set of dirty bits to place in the change tracker for use in the first sync of thi...
Adapter class providing data exchange with the client scene graph.
The list of outputs changed.
std::vector< TfToken > TfTokenVector
Convenience types.
A path value used to locate objects in layers or scenegraphs.
DirtyBits
Change tracking.
Sprim (state prim) is a base class of managing state for non-drawable scene entity (e....
The number of kernel invocations to execute changed.
A computation input changed value.
The compute kernel binding changed.
The number of elements in the output arrays changed.
A scene input changed value.
The list of inputs or input bindings changed.