HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RV_ShaderHandle Class Reference

#include <RV_VKShaderCompile.h>

+ Inheritance diagram for RV_ShaderHandle:

Public Member Functions

 RV_ShaderHandle (const char *program_file, bool reg_sh, const char *defines)
 
 ~RV_ShaderHandle () override
 
UT_StringHolder getSpirvPath (RE_ShaderType stage=RE_SHADER_ALL)
 
- Public Member Functions inherited from RE_ShaderHandle
 RE_ShaderHandle (const char *program_file, bool register_shader=true, const char *defines=nullptr, RE_ShaderLanguage lang=RE_SHADER_LANGUAGE_GLSL)
 Create a shader handle using a .prog file. More...
 
 RE_ShaderHandle (const char *program_name, int code_version, const char *files, bool register_shader=true, const char *defines=nullptr, RE_ShaderLanguage lang=RE_SHADER_LANGUAGE_GLSL)
 
 RE_ShaderHandle (const RE_ShaderHandle &handle)
 
virtual ~RE_ShaderHandle ()
 
RE_Shaderoperator-> ()
 
void setProgramDefines (const char *defines)
 Set the defines for the program, overwriting existing ones. More...
 
void appendProgramDefines (const char *defines)
 Add more defines to the defines list. More...
 
void setShaderLanguage (RE_ShaderLanguage lang)
 Default language is GLSL. More...
 
bool isInitialized () const
 
bool isValid (RE_Render *r)
 
bool compile (RE_Render *r, UT_WorkBuffer *msg=nullptr)
 
int getCodeVersion () const
 Returns the GLSL or Cg version that the shader was compiled with. More...
 
RE_ShadergetShader () const
 
void printErrors (std::ostream &os) const
 Prints this shader's errors, warnings and messages. More...
 
const char * getErrors () const
 
const char * getName () const
 Name of the shader (if any) or the .prog pathname. More...
 
const char * getSourceFiles () const
 
const char * getDefines () const
 
UT_UniquePtr< RE_ShadercreateDetachedShader (RE_Render *r, UT_String *errors=nullptr) const
 

Static Public Member Functions

static void initializeDriverInformation ()
 
- Static Public Member Functions inherited from RE_ShaderHandle
static const char * getSystemDefines (RE_Render *r)
 Returns a list of #defines for platform, vendor, driver version. More...
 

Additional Inherited Members

- Static Protected Member Functions inherited from RE_ShaderHandle
static void initializeDriverInformation (RE_Render *r)
 
- Protected Attributes inherited from RE_ShaderHandle
UT_String myName
 
RE_ShaderLanguage myShaderLanguage
 
int myCodeVersion
 
UT_String mySourceFiles
 
UT_String myDefines
 
UT_UniquePtr< RE_ShadermyShader
 
bool myInitFlag
 
UT_String myErrors
 
UT_Lock myLock
 
bool myRegisterFlag
 
- Static Protected Attributes inherited from RE_ShaderHandle
static UT_String theVendorDefines
 

Detailed Description

Definition at line 409 of file RV_VKShaderCompile.h.

Constructor & Destructor Documentation

RV_ShaderHandle::RV_ShaderHandle ( const char *  program_file,
bool  reg_sh,
const char *  defines 
)
inline

Definition at line 412 of file RV_VKShaderCompile.h.

RV_ShaderHandle::~RV_ShaderHandle ( )
inlineoverride

Definition at line 416 of file RV_VKShaderCompile.h.

Member Function Documentation

UT_StringHolder RV_ShaderHandle::getSpirvPath ( RE_ShaderType  stage = RE_SHADER_ALL)
static void RV_ShaderHandle::initializeDriverInformation ( )
static

The documentation for this class was generated from the following file: