24 #ifndef PXR_IMAGING_HD_ST_VOLUME_SHADER_KEY_H
25 #define PXR_IMAGING_HD_ST_VOLUME_SHADER_KEY_H
28 #include "pxr/imaging/hd/version.h"
29 #include "pxr/imaging/hd/enums.h"
30 #include "pxr/imaging/hdSt/geometricShader.h"
31 #include "pxr/imaging/hdSt/shaderKey.h"
32 #include "pxr/base/tf/token.h"
34 PXR_NAMESPACE_OPEN_SCOPE
36 struct HdSt_VolumeShaderKey :
public HdSt_ShaderKey
38 HdSt_VolumeShaderKey();
39 ~HdSt_VolumeShaderKey();
41 TfToken const &GetGlslfxFilename()
const override {
return glslfx; }
42 TfToken const *GetVS()
const override {
return VS; }
43 TfToken const *GetFS()
const override {
return FS; }
45 HdSt_GeometricShader::PrimitiveType GetPrimitiveType()
const override {
46 return HdSt_GeometricShader::PrimitiveType::PRIM_VOLUME;
55 PXR_NAMESPACE_CLOSE_SCOPE
57 #endif // HDST_VOLUME_SHADER_KEY
Token for efficient comparison, assignment, and hashing of known strings.