1 //
2 // Copyright (c) 2002-2013 The ANGLE Project Authors. All rights reserved.
3 // Use of this source code is governed by a BSD-style license that can be
4 // found in the LICENSE file.
5 //
6 
7 #ifndef COMPILER_TRANSLATOR_OUTPUTGLSL_H_
8 #define COMPILER_TRANSLATOR_OUTPUTGLSL_H_
9 
10 #include "compiler/translator/OutputGLSLBase.h"
11 
12 namespace sh
13 {
14 
15 class TOutputGLSL : public TOutputGLSLBase
16 {
17   public:
18     TOutputGLSL(TInfoSinkBase &objSink,
19                 ShArrayIndexClampingStrategy clampingStrategy,
20                 ShHashFunction64 hashFunction,
21                 NameMap &nameMap,
22                 TSymbolTable *symbolTable,
23                 sh::GLenum shaderType,
24                 int shaderVersion,
25                 ShShaderOutput output,
26                 ShCompileOptions compileOptions);
27 
28   protected:
29     bool writeVariablePrecision(TPrecision) override;
30     void visitSymbol(TIntermSymbol *node) override;
31     TString translateTextureFunction(const TString &name) override;
32 };
33 
34 }  // namespace sh
35 
36 #endif  // COMPILER_TRANSLATOR_OUTPUTGLSL_H_
37