Loading...
Searching...
No Matches
copyComputation.h
1//
2// Copyright 2016 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_IMAGING_HD_ST_COPY_COMPUTATION_H
8#define PXR_IMAGING_HD_ST_COPY_COMPUTATION_H
9
10#include "pxr/pxr.h"
11#include "pxr/imaging/hdSt/api.h"
12#include "pxr/imaging/hdSt/computation.h"
13
14#include "pxr/base/tf/token.h"
15
16PXR_NAMESPACE_OPEN_SCOPE
17
18
25{
26public:
27 HDST_API
28 HdStCopyComputationGPU(HdBufferArrayRangeSharedPtr const &src,
29 TfToken const &name);
30
31 HDST_API
32 void Execute(HdBufferArrayRangeSharedPtr const &range,
33 HdResourceRegistry *resourceRegistry) override;
34
35 HDST_API
36 int GetNumOutputElements() const override;
37
38 HDST_API
39 void GetBufferSpecs(HdBufferSpecVector *specs) const override;
40
41private:
42 HdBufferArrayRangeSharedPtr _src;
43 TfToken _name;
44};
45
46
47PXR_NAMESPACE_CLOSE_SCOPE
48
49#endif // HDST_COMPUTATION_H
A central registry for resources.
An interface class for GPU computation.
Definition: computation.h:36
A GPU computation which transfers a vbo range specified by src and name to the given range.
HDST_API void GetBufferSpecs(HdBufferSpecVector *specs) const override
Add the buffer spec for this computation into given bufferspec vector.
HDST_API int GetNumOutputElements() const override
Returns the size of its destination buffer (located by range argument of Execute()).
Token for efficient comparison, assignment, and hashing of known strings.
Definition: token.h:71
TfToken class for efficient string referencing and hashing, plus conversions to and from stl string c...