24 #ifndef PXR_IMAGING_HD_ST_RENDER_PASS_SHADER_H
25 #define PXR_IMAGING_HD_ST_RENDER_PASS_SHADER_H
42 std::shared_ptr<class HdStRenderPassShader>;
45 std::vector<struct HdRenderPassAovBinding>;
67 HdSt_ResourceBinder
const &binder)
override;
70 HdSt_ResourceBinder
const &binder)
override;
104 std::unique_ptr<HioGlslfx> _glslfx;
105 mutable size_t _hash;
106 mutable bool _hashValid;
109 std::map<TfToken, HdStBindingRequest> _customBuffers;
117 HdStRenderPassShader &operator =(
const HdStRenderPassShader &) =
delete;
119 HioGlslfx const * _GetGlslfx()
const override;
125 #endif // PXR_IMAGING_HD_ST_RENDER_PASS_SHADER_H
HDST_API std::string GetSource(TfToken const &shaderStageKey) const override
HDST_API ~HdStRenderPassShader() override
HDST_API void AddBindings(HdStBindingRequestVector *customBindings) override
Add custom bindings (used by codegen)
GLsizei const GLchar *const * string
std::vector< class HdStBindingRequest > HdStBindingRequestVector
HDST_API HdStRenderPassShader()
HDST_API void AddBufferBinding(HdStBindingRequest const &req)
Add a custom binding request for use when this shader executes.
HDST_API void UnbindResources(int program, HdSt_ResourceBinder const &binder) override
Unbinds shader-specific resources.
HDST_API void BindResources(int program, HdSt_ResourceBinder const &binder) override
GLuint const GLchar * name
HDST_API NamedTextureHandleVector const & GetNamedTextureHandles() const override
std::shared_ptr< class HdStRenderPassShader > HdStRenderPassShaderSharedPtr
HDST_API void ClearBufferBindings()
Clear all custom bindings associated with this shader.
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
std::vector< NamedTextureHandle > NamedTextureHandleVector
#define PXR_NAMESPACE_CLOSE_SCOPE
HDST_API ID ComputeHash() const override
HdShader overrides.
HDST_API void RemoveBufferBinding(TfToken const &name)
Remove name from custom binding.
std::vector< HdRenderPassAovBinding > HdRenderPassAovBindingVector
HDST_API void UpdateAovInputTextures(HdRenderPassAovBindingVector const &aovInputBindings, HdRenderIndex *const renderIndex)
HDST_API HdSt_MaterialParamVector const & GetParams() const override
Returns the shader parameters for this shader.
GLbitfield GLuint program
std::vector< class HdSt_MaterialParam > HdSt_MaterialParamVector