// // Copyright (c) 2002-2011 The ANGLE Project Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // // CollectVariables.h: Collect lists of shader interface variables based on the AST. #ifndef COMPILER_TRANSLATOR_COLLECTVARIABLES_H_ #define COMPILER_TRANSLATOR_COLLECTVARIABLES_H_ #include #include "compiler/translator/ExtensionBehavior.h" namespace sh { class TIntermBlock; class TSymbolTable; void CollectVariables(TIntermBlock *root, std::vector *attributes, std::vector *outputVariables, std::vector *uniforms, std::vector *inputVaryings, std::vector *outputVaryings, std::vector *uniformBlocks, std::vector *shaderStorageBlocks, std::vector *inBlocks, ShHashFunction64 hashFunction, TSymbolTable *symbolTable, int shaderVersion, GLenum shaderType, const TExtensionBehavior &extensionBehavior); } #endif // COMPILER_TRANSLATOR_COLLECTVARIABLES_H_