24 #ifndef PXR_IMAGING_HD_EXT_COMP_PRIMVAR_BUFFER_SOURCE_H
25 #define PXR_IMAGING_HD_EXT_COMP_PRIMVAR_BUFFER_SOURCE_H
40 std::shared_ptr<HdExtCompCpuComputation>;
56 const TfToken &sourceOutputName,
76 virtual bool Resolve()
override;
80 virtual void const *
GetData()
const override;
97 template <
class HashState>
99 HdExtCompPrimvarBufferSource
const &);
103 size_t _sourceOutputIdx;
105 void const *_rawDataPtr;
107 HdExtCompPrimvarBufferSource() =
delete;
108 HdExtCompPrimvarBufferSource(
const HdExtCompPrimvarBufferSource &)
110 HdExtCompPrimvarBufferSource &operator = (
111 const HdExtCompPrimvarBufferSource &)
117 #endif // PXR_IMAGING_HD_EXT_COMP_PRIMVAR_BUFFER_SOURCE_H
virtual HD_API bool _CheckValid() const override
Returns true if the binding to the source computation was successful.
virtual HD_API size_t GetNumElements() const override
Returns a count of the number of elements.
virtual HD_API void GetBufferSpecs(HdBufferSpecVector *specs) const override
Adds this Primvar's buffer description to the buffer spec vector.
virtual HD_API ~HdExtCompPrimvarBufferSource()=default
virtual HD_API TfToken const & GetName() const override
Returns the name of the primvar.
virtual HD_API void const * GetData() const override
Returns a raw pointer to the primvar data.
friend void TfHashAppend(HashState &h, HdExtCompPrimvarBufferSource const &)
GLsizei GLsizei GLchar * source
std::vector< struct HdBufferSpec > HdBufferSpecVector
virtual HD_API HdTupleType GetTupleType() const override
Returns the tuple data format of the primvar data.
GLfloat GLfloat GLfloat GLfloat h
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
virtual HD_API bool Resolve() override
Extracts the primvar from the source computation.
#define PXR_NAMESPACE_CLOSE_SCOPE
virtual HD_API size_t ComputeHash() const override
Computes and returns a hash value for the underlying data.