7 #ifndef CROSSCOMPILERGLSL_OUTPUTGLSLBASE_H_
8 #define CROSSCOMPILERGLSL_OUTPUTGLSLBASE_H_
27 void writeTriplet(
Visit visit,
const char* preStr,
const char* inStr,
const char* postStr);
55 bool structDeclared(
const TStructure* structure)
const;
56 void declareStruct(
const TStructure* structure);
59 bool mDeclaringVariables;
64 typedef std::set<TString> DeclaredStructs;
65 DeclaredStructs mDeclaredStructs;
79 #endif // CROSSCOMPILERGLSL_OUTPUTGLSLBASE_H_
TInfoSinkBase & objSink()
void writeVariableType(const TType &type)
GLint GLenum GLsizei GLsizei GLsizei GLint GLenum GLenum type
TOutputGLSLBase(TInfoSinkBase &objSink, ShArrayIndexClampingStrategy clampingStrategy, ShHashFunction64 hashFunction, NameMap &nameMap, TSymbolTable &symbolTable)
khronos_uint64_t(* ShHashFunction64)(const char *, size_t)
TString hashVariableName(const TString &name)
std::map< TPersistString, TPersistString > NameMap
virtual bool visitSelection(Visit visit, TIntermSelection *node)
EGLImageKHR EGLint * name
TString hashFunctionName(const TString &mangled_name)
virtual bool visitAggregate(Visit visit, TIntermAggregate *node)
ShArrayIndexClampingStrategy
TString getTypeName(const TType &type)
virtual void visitConstantUnion(TIntermConstantUnion *node)
void visitCodeBlock(TIntermNode *node)
TString hashName(const TString &name)
virtual void visitSymbol(TIntermSymbol *node)
void writeFunctionParameters(const TIntermSequence &args)
virtual bool visitLoop(Visit visit, TIntermLoop *node)
std::basic_string< char, std::char_traits< char >, TStringAllocator > TString
virtual bool visitBranch(Visit visit, TIntermBranch *node)
void writeTriplet(Visit visit, const char *preStr, const char *inStr, const char *postStr)
virtual bool visitBinary(Visit visit, TIntermBinary *node)
virtual bool writeVariablePrecision(TPrecision precision)=0
GLenum GLint GLint * precision
const ConstantUnion * writeConstantUnion(const TType &type, const ConstantUnion *pConstUnion)
virtual bool visitUnary(Visit visit, TIntermUnary *node)