49 #include <ACG/Config/ACGDefines.hh> 50 #include <ACG/GL/ShaderGenerator.hh> 103 return _mods ? getProgram(_desc, *_mods) : getProgram(_desc);
130 const char* _tessControlShaderFile,
131 const char* _tessEvalShaderFile,
132 const char* _geometryShaderFile,
133 const char* _fragmentShaderFile,
134 QStringList* _macros = 0,
bool _verbose =
true);
147 GLSL::Program* getProgram(
const char* _vertexShaderFile,
const char* _fragmentShaderFile, QStringList* _macros = 0,
bool _verbose =
true);
160 GLSL::Program* getComputeProgram(
const char* _computeShaderFile, QStringList* _macros = 0,
bool _verbose =
true);
172 bool getTimeCheck(){
return timeCheck_;}
177 void setDebugOutputDir(
const char* _outputDir);
185 std::vector<unsigned int> mods;
189 QString strVertexTemplate;
190 QString strTessControlTemplate;
191 QString strTessEvaluationTemplate;
192 QString strGeometryTemplate;
193 QString strFragmentTemplate;
195 QDateTime vertexFileLastMod;
196 QDateTime tessControlFileLastMod;
197 QDateTime tessEvaluationFileLastMod;
198 QDateTime geometryFileLastMod;
199 QDateTime fragmentFileLastMod;
211 typedef std::list<std::pair<CacheEntry, GLSL::Program*> > CacheList;
Namespace providing different geometric functions concerning angles.
void setTimeCheck(bool _on)
enable or disable checking of the time step of each file
QString dbgOutputDir_
output directory for shaders in dynamic cache
CacheList cacheComputeShaders_
cache for static compute shaders
CacheList cacheStatic_
cache containing static shaders loaded from files (separate from dynamic cache to reduce access time)...
This namespace contains all the classes and functions for handling GLSL shader and program objects...
CacheList cache_
cache containing dynamic shaders from ShaderProgGenerator
GLSL::Program * getProgram(const ShaderGenDesc *_desc, const std::vector< unsigned int > *_mods)
Query a dynamically generated program from cache.