25 #ifndef PXR_IMAGING_HGI_SHADERGENERATOR_H
26 #define PXR_IMAGING_HGI_SHADERGENERATOR_H
29 #include "pxr/imaging/hgi/api.h"
30 #include "pxr/imaging/hgi/enums.h"
35 PXR_NAMESPACE_OPEN_SCOPE
52 void Execute(std::ostream &ss);
62 virtual void _Execute(
64 const std::string &originalShaderCode) = 0;
67 const std::string& _GetOriginalShader()
const;
70 HgiShaderStage _GetShaderStage()
const;
73 const std::string& _GetVersion()
const;
76 HgiShaderGenerator() =
delete;
77 HgiShaderGenerator & operator=(
const HgiShaderGenerator&) =
delete;
78 HgiShaderGenerator(
const HgiShaderGenerator&) =
delete;
80 const std::string _version;
81 const std::string _originalShader;
82 const HgiShaderStage _stage;
85 PXR_NAMESPACE_CLOSE_SCOPE
Base class for shader function generation Given a descriptor, converts glslfx domain language to conc...
Describes the properties needed to create a GPU shader function.