HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
VOP_CodeVexResolver Class Referencefinal

#include <VOP_CodeVexResolver.h>

+ Inheritance diagram for VOP_CodeVexResolver:

Public Member Functions

 VOP_CodeVexResolver ()
 
 ~VOP_CodeVexResolver () override
 

Protected Member Functions

bool canResolveCode (const char *shader) const override
 
bool supportedByMantra (const char *shader) const override
 
bool resolveVflCode (const char *shader, std::ostream &os, VEX_CodeGenFlags flags, int context_type) const override
 
bool resolveVexCode (const char *shader, std::ostream &os, VEX_CodeGenFlags flags, int context_type, bool &is_pure_compiled_out, VEX_ErrorLog &errors) const override
 See comments for getVexCode(). More...
 
bool resolveCacheVexCode (const char *shader, int context_type, VEX_ErrorLog &errors) const override
 
bool resolveAddDependency (const char *shader, DEP_MicroNode *depnode) const override
 
bool resolveDependencies (const char *shader, UT_StringArray &shader_deps, int context_type) const override
 
time_t resolveCodeTimeStamp (const char *shader, int context_type) const override
 
bool resolveVexContext (const char *shader, UT_String &ctx, int requested_context_type) const override
 
bool resolveCanonicalPath (const char *shader, UT_String &canonical_shader) const override
 
bool resolveAlias (const char *alias, UT_String &shader) const override
 
- Protected Member Functions inherited from VEX_VexResolver
 VEX_VexResolver ()
 
virtual ~VEX_VexResolver ()
 

Additional Inherited Members

- Static Public Member Functions inherited from VEX_VexResolver
static bool needsVexResolver (const char *shader)
 
static bool needsVexResolverForMantraOutput (const char *shader)
 
static bool getVflCode (const char *shader, std::ostream &os, VEX_CodeGenFlags code_flags=VEX_CG_DEFAULT, int context_type=0, VEX_ErrorLog *errors=nullptr)
 
static bool getVexCode (const char *shader, std::ostream &os, VEX_CodeGenFlags code_flags=VEX_CG_DEFAULT, int context_type=0, bool *is_pure_compiled_out=nullptr, VEX_ErrorLog *errors=nullptr)
 
static bool getDependencies (const char *shader, UT_StringArray &shader_dependencies, int context_type=0)
 
static bool addDependency (const char *shader, DEP_MicroNode *depmicronode)
 
static time_t getCodeTimeStamp (const char *shader, int context_type=0)
 
static void getEmptyVexCode (const char *shader, std::ostream &os)
 
static bool getVexContext (const char *shader, UT_String &ctx, int requested_context_type=0, VEX_ErrorLog *errors=nullptr)
 
static bool convertToCanonicalPath (const char *shader, UT_String &canonical_shader)
 
static bool convertAlias (const char *alias, UT_String &shader)
 
static bool cacheVexCode (const char *shader, int context_type=0, VEX_ErrorLog *errors=nullptr)
 

Detailed Description

Definition at line 18 of file VOP_CodeVexResolver.h.

Constructor & Destructor Documentation

VOP_CodeVexResolver::VOP_CodeVexResolver ( )
VOP_CodeVexResolver::~VOP_CodeVexResolver ( )
override

Member Function Documentation

bool VOP_CodeVexResolver::canResolveCode ( const char *  shader) const
overrideprotectedvirtual

Implements VEX_VexResolver.

bool VOP_CodeVexResolver::resolveAddDependency ( const char *  shader,
DEP_MicroNode depmicronode 
) const
overrideprotectedvirtual

Marks a given micronode as dependent on our code. It will be dirtied whenever the generating VOPs change.

Implements VEX_VexResolver.

bool VOP_CodeVexResolver::resolveAlias ( const char *  alias,
UT_String shader 
) const
overrideprotectedvirtual

Implements VEX_VexResolver.

bool VOP_CodeVexResolver::resolveCacheVexCode ( const char *  shader,
int  context_type,
VEX_ErrorLog errors 
) const
overrideprotectedvirtual

Implements VEX_VexResolver.

bool VOP_CodeVexResolver::resolveCanonicalPath ( const char *  shader,
UT_String canonical_shader 
) const
overrideprotectedvirtual

Implements VEX_VexResolver.

time_t VOP_CodeVexResolver::resolveCodeTimeStamp ( const char *  shader,
int  context_type 
) const
overrideprotectedvirtual

Implements VEX_VexResolver.

bool VOP_CodeVexResolver::resolveDependencies ( const char *  shader,
UT_StringArray shader_deps,
int  context_type 
) const
overrideprotectedvirtual

Implements VEX_VexResolver.

bool VOP_CodeVexResolver::resolveVexCode ( const char *  shader,
std::ostream &  os,
VEX_CodeGenFlags  code_flags,
int  context_type,
bool &  is_pure_compiled_out,
VEX_ErrorLog errors 
) const
overrideprotectedvirtual

See comments for getVexCode().

Implements VEX_VexResolver.

bool VOP_CodeVexResolver::resolveVexContext ( const char *  shader,
UT_String ctx,
int  requested_context_type 
) const
overrideprotectedvirtual

Implements VEX_VexResolver.

bool VOP_CodeVexResolver::resolveVflCode ( const char *  shader,
std::ostream &  os,
VEX_CodeGenFlags  flags,
int  context_type 
) const
overrideprotectedvirtual

Implements VEX_VexResolver.

bool VOP_CodeVexResolver::supportedByMantra ( const char *  shader) const
overrideprotectedvirtual

Returns true when mantra is able to independently retrieve the VEX shader code without requiring it to be embedded in the ifd.

Implements VEX_VexResolver.


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