Path: blob/main_old/src/compiler/translator/CollectVariables.h
1693 views
//1// Copyright 2002 The ANGLE Project Authors. All rights reserved.2// Use of this source code is governed by a BSD-style license that can be3// found in the LICENSE file.4//5// CollectVariables.h: Collect lists of shader interface variables based on the AST.67#ifndef COMPILER_TRANSLATOR_COLLECTVARIABLES_H_8#define COMPILER_TRANSLATOR_COLLECTVARIABLES_H_910#include <GLSLANG/ShaderLang.h>1112#include "compiler/translator/ExtensionBehavior.h"1314namespace sh15{1617class TIntermBlock;18class TSymbolTable;1920void CollectVariables(TIntermBlock *root,21std::vector<ShaderVariable> *attributes,22std::vector<ShaderVariable> *outputVariables,23std::vector<ShaderVariable> *uniforms,24std::vector<ShaderVariable> *inputVaryings,25std::vector<ShaderVariable> *outputVaryings,26std::vector<ShaderVariable> *sharedVariables,27std::vector<InterfaceBlock> *uniformBlocks,28std::vector<InterfaceBlock> *shaderStorageBlocks,29ShHashFunction64 hashFunction,30TSymbolTable *symbolTable,31GLenum shaderType,32const TExtensionBehavior &extensionBehavior,33const ShBuiltInResources &resources,34int tessControlShaderOutputVertices);35} // namespace sh3637#endif // COMPILER_TRANSLATOR_COLLECTVARIABLES_H_383940