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

#include <RV_VKShaderCompile.h>

+ Inheritance diagram for RV_ShaderAtlas:

Classes

struct  CompiledAtlas
 

Public Member Functions

 RV_ShaderAtlas (const UT_StringRef &shader_atlas_file)
 
 ~RV_ShaderAtlas () override
 
UT_StringHolder getSpirvPath (exint shbits, RE_ShaderType stage)
 
UT_StringHolder getCompiledPath ()
 
- Public Member Functions inherited from RE_ShaderAtlas
 RE_ShaderAtlas (const UT_StringRef &shader_atlas_file)
 
virtual ~RE_ShaderAtlas ()
 
bool loadAtlas (const char *global_defines="")
 
exint getBit (const UT_StringRef &tag) const
 
RE_ShadergetShader (RE_Render *r, exint shbits) const
 
const UT_StringHoldergetFilePath () const
 
const UT_Map< exint,
RE_ShaderHandlePtr > & 
shaders () const
 
const UT_StringMap< exint > & bits () const
 
void printTags (exint tags)
 

Static Public Member Functions

static void writeCompiled (const UT_StringRef &filename, RV_ShaderAtlas &atlas)
 
static bool readCompiled (const UT_StringRef &filename, CompiledAtlas &out)
 

Protected Member Functions

RE_ShaderHandlePtr createShaderImpl (const char *program, const char *defines) override
 
- Protected Member Functions inherited from RE_ShaderAtlas
void applyDefsToMatchingShaders (const UT_StringArray &tag_stack, UT_WorkBuffer &defines)
 
void addShader (const UT_StringArray &tag_stack, const UT_StringArray &tokens, const UT_StringHolder &program, UT_WorkBuffer &defines)
 
bool addShader (exint key, const UT_StringHolder &program, const UT_StringHolder &defines, bool check_for_abs_path)
 
exint registerTokens (const UT_StringArray &tokens)
 

Additional Inherited Members

- Protected Attributes inherited from RE_ShaderAtlas
UT_Map< exint, RE_ShaderHandlePtrmyMap
 
UT_StringMap< exintmyBits
 
int myMaxBit
 
UT_StringHolder myAtlasFile
 
UT_StringHolder myAtlasDir
 
bool myAtlasLoaded
 
bool myAtlasValid
 

Detailed Description

Definition at line 426 of file RV_VKShaderCompile.h.

Constructor & Destructor Documentation

RV_ShaderAtlas::RV_ShaderAtlas ( const UT_StringRef shader_atlas_file)
inline

Definition at line 429 of file RV_VKShaderCompile.h.

RV_ShaderAtlas::~RV_ShaderAtlas ( )
inlineoverride

Definition at line 433 of file RV_VKShaderCompile.h.

Member Function Documentation

RE_ShaderHandlePtr RV_ShaderAtlas::createShaderImpl ( const char *  program,
const char *  defines 
)
overrideprotectedvirtual

Reimplemented from RE_ShaderAtlas.

UT_StringHolder RV_ShaderAtlas::getCompiledPath ( )
UT_StringHolder RV_ShaderAtlas::getSpirvPath ( exint  shbits,
RE_ShaderType  stage 
)
static bool RV_ShaderAtlas::readCompiled ( const UT_StringRef filename,
CompiledAtlas out 
)
static
static void RV_ShaderAtlas::writeCompiled ( const UT_StringRef filename,
RV_ShaderAtlas atlas 
)
static

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