#include "compiler/translator/tree_ops/DeclarePerVertexBlocks.h"
#include "compiler/translator/Compiler.h"
#include "compiler/translator/ImmutableStringBuilder.h"
#include "compiler/translator/StaticType.h"
#include "compiler/translator/SymbolTable.h"
#include "compiler/translator/tree_util/IntermNode_util.h"
#include "compiler/translator/tree_util/IntermTraverse.h"
#include "compiler/translator/tree_util/ReplaceVariable.h"
namespace sh
{
namespace
{
PerVertexMemberFlags;
int GetPerVertexFieldIndex(const TQualifier qualifier, const ImmutableString &name)
{ … }
class InspectPerVertexBuiltInsTraverser : public TIntermTraverser
{ … };
class DeclarePerVertexBlocksTraverser : public TIntermTraverser
{ … };
void AddPerVertexDecl(TIntermBlock *root, const TVariable *variable)
{ … }
}
bool DeclarePerVertexBlocks(TCompiler *compiler,
TIntermBlock *root,
TSymbolTable *symbolTable,
const TVariable **inputPerVertexOut,
const TVariable **outputPerVertexOut)
{ … }
}