Go to the documentation of this file.
27 #ifndef _ShaderProgramWriterGLSLES_
28 #define _ShaderProgramWriterGLSLES_
void discoverFunctionDependencies(const FunctionInvocation &invoc, FunctionVector &depVector)
Search within a function body for non-builtin functions that a given function invocation depends on.
ShaderProgramWriterGLSLESFactory()
static String TargetLanguage
void writeProgramDependencies(std::ostream &os, Program *program)
Write the program dependencies.
GpuConstTypeToStringMap::const_iterator GpuConstTypeToStringMapIterator
void writeInputParameters(std::ostream &os, Function *function, GpuProgramType gpuType)
Write the input params of the function.
map< GpuConstantType, const char * >::type GpuConstTypeToStringMap
virtual ProgramWriter * create(void)
FunctionVector::const_iterator FunctionVectorIterator
virtual ~GLSLESProgramWriter()
Class destructor.
vector< String >::type StringVector
void writeOutParameters(std::ostream &os, Function *function, GpuProgramType gpuType)
Write the output params of the function.
FunctionMap mFunctionCacheMap
virtual void writeSourceCode(std::ostream &os, Program *program)
GLSLESProgramWriter()
Class constructor.
FunctionMap::const_iterator FunctionMapIterator
String processOperand(Operand op, GpuProgramType gpuType)
map< FunctionInvocation, String >::type FunctionMap
Base class interface for shader program writers.
FunctionInvocation * createInvocationFromString(const String &input)
Create a FunctionInvocation object from a string taken out of a shader library.
virtual void cacheDependencyFunctions(const String &libName)
Cache functions of a dependency.
GpuProgramType
Enumerates the types of programs which can run on the GPU.
map< Parameter::Semantic, const char * >::type ParamSemanticToStringMap
vector< FunctionInvocation >::type FunctionVector
GLSL ES target language writer implementation.
A class that represents a shader based program.
map< Parameter::Content, const char * >::type ParamContentToStringMap
StringMap mCachedFunctionLibraries
A class that represents function invocation code from shader based program function.
void writeLocalParameter(std::ostream &os, ParameterPtr parameter)
Write a local parameter.
StringVector mFragInputParams
A class that represents a function operand (its the combination of a parameter the in/out semantic an...
virtual ~ShaderProgramWriterGLSLESFactory()
void initializeStringMaps()
Initialize string maps.
map< String, String >::type StringMap
Interface definition for factories of ShaderProgramWriter.
virtual const String & getTargetLanguage() const
virtual const String & getTargetLanguage(void) const
StringMap mInputToGLStatesMap
A class that represents a shader based program function.
ParamContentToStringMap mContentToPerVertexAttributes
ParamSemanticToStringMap mParamSemanticMap
GpuConstTypeToStringMap mGpuConstTypeMap
GLSL ES program writer factory implementation.
bool isBasicType(String &type)
Check if a string matches one of the GLSL ES basic types.
Copyright © 2012 Torus Knot Software Ltd

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.