HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
VOP_CodeVexResolver.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: VOP_CodeVexResolver.h ( VEX Library, C++)
7  *
8  * COMMENTS: A class with virtual functions for getting VEX code from
9  * Vop networks.
10  */
11 
12 #ifndef __VOP_CodeVexResolver__
13 #define __VOP_CodeVexResolver__
14 
15 #include "VOP_API.h"
16 #include <VEX/VEX_VexResolver.h>
17 
19 {
20 public:
22  virtual ~VOP_CodeVexResolver();
23 
24 protected:
25  virtual bool canResolveCode(const char *shader);
26  virtual bool supportedByMantra(const char *shader);
27  virtual bool resolveVflCode(const char *shader, std::ostream &os,
28  VEX_CodeGenFlags flags, int context_type);
29  virtual bool resolveVexCode(const char *shader, std::ostream &os,
30  VEX_CodeGenFlags flags, int context_type,
31  bool &is_pure_compiled_out,
32  VEX_ErrorLog &errors);
33  virtual bool resolveCacheVexCode(const char *shader,
34  int context_type,
35  VEX_ErrorLog &errors);
36  virtual bool resolveAddDependency(const char *shader,
37  DEP_MicroNode *depnode);
38  virtual bool resolveDependencies(const char *shader,
39  UT_StringArray &shader_deps,
40  int context_type);
41  virtual int resolveCodeTimeStamp(const char *shader,
42  int context_type);
43  virtual bool resolveVexContext(const char *shader, UT_String &ctx,
44  int requested_context_type);
45  virtual bool resolveCanonicalPath(const char *shader,
46  UT_String &canonical_shader);
47  virtual bool resolveAlias(const char *alias,
48  UT_String &shader);
49 };
50 
51 #endif
52 
virtual bool resolveAddDependency(const char *shader, DEP_MicroNode *depmicronode)=0
virtual bool resolveVflCode(const char *shader, std::ostream &os, VEX_CodeGenFlags code_flags, int context_type)=0
virtual bool resolveVexCode(const char *shader, std::ostream &os, VEX_CodeGenFlags code_flags, int context_type, bool &is_pure_compiled_out, VEX_ErrorLog &errors)=0
See comments for getVexCode().
virtual bool resolveAlias(const char *alias, UT_String &shader)=0
GLbitfield flags
Definition: glcorearb.h:1595
virtual bool resolveCanonicalPath(const char *shader, UT_String &canonical_shader)=0
#define VOP_API
Definition: VOP_API.h:10
virtual int resolveCodeTimeStamp(const char *shader, int context_type)=0
virtual bool supportedByMantra(const char *shader)=0
GLuint shader
Definition: glcorearb.h:784
virtual bool resolveVexContext(const char *shader, UT_String &ctx, int requested_context_type)=0
VEX_CodeGenFlags
VEX code generation flags when calling VEX_VexResolver::getVflCode.
Definition: VEX_VexTypes.h:137
virtual bool resolveCacheVexCode(const char *shader, int context_type, VEX_ErrorLog &errors)=0
virtual bool canResolveCode(const char *shader)=0
virtual bool resolveDependencies(const char *shader, UT_StringArray &shader_deps, int context_type)=0