24 #ifndef PXR_IMAGING_HD_ST_DRAW_ITEM_H
25 #define PXR_IMAGING_HD_ST_DRAW_ITEM_H
28 #include "pxr/imaging/hdSt/api.h"
29 #include "pxr/imaging/hd/drawItem.h"
31 PXR_NAMESPACE_OPEN_SCOPE
33 using HdSt_GeometricShaderSharedPtr = std::shared_ptr<class HdSt_GeometricShader>;
34 using HdStShaderCodeSharedPtr = std::shared_ptr<class HdStShaderCode>;
39 HF_MALLOC_TAG_NEW(
"new HdStDrawItem");
42 HdStDrawItem(HdRprimSharedData
const *sharedData);
45 ~HdStDrawItem()
override;
47 void SetGeometricShader(HdSt_GeometricShaderSharedPtr
const &shader) {
48 _geometricShader = shader;
51 HdSt_GeometricShaderSharedPtr
const &GetGeometricShader()
const {
52 return _geometricShader;
55 HdStShaderCodeSharedPtr
const &GetMaterialShader()
const {
56 return _materialShader;
59 void SetMaterialShader(HdStShaderCodeSharedPtr
const &shader) {
60 _materialShader = shader;
68 HdSt_GeometricShaderSharedPtr _geometricShader;
69 HdStShaderCodeSharedPtr _materialShader;
73 PXR_NAMESPACE_CLOSE_SCOPE
75 #endif //PXR_IMAGING_HD_ST_DRAW_ITEM_H
virtual HD_API size_t _GetElementOffsetsHash() const
Allows derived classes to return a hash of the element offsets of the underlying BARs they manage...
A draw item is a light-weight representation of an HdRprim's resources and material to be used for re...
virtual HD_API size_t _GetBufferArraysHash() const
Allows derived classes to return a hash of the versions of buffers they manage.