1 // 2 // Copyright 2002 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_OUTPUTESSL_H_ 8 #define COMPILER_TRANSLATOR_OUTPUTESSL_H_ 9 10 #include "compiler/translator/OutputGLSLBase.h" 11 12 namespace sh 13 { 14 15 class TOutputESSL : public TOutputGLSLBase 16 { 17 public: 18 TOutputESSL(TInfoSinkBase &objSink, 19 ShArrayIndexClampingStrategy clampingStrategy, 20 ShHashFunction64 hashFunction, 21 NameMap &nameMap, 22 TSymbolTable *symbolTable, 23 sh::GLenum shaderType, 24 int shaderVersion, 25 bool forceHighp, 26 ShCompileOptions compileOptions); 27 28 protected: 29 bool writeVariablePrecision(TPrecision precision) override; 30 ImmutableString translateTextureFunction(const ImmutableString &name, 31 const ShCompileOptions &option) override; 32 33 private: 34 bool mForceHighp; 35 }; 36 37 } // namespace sh 38 39 #endif // COMPILER_TRANSLATOR_OUTPUTESSL_H_ 40