1 // 2 // Copyright (c) 2014 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 // CompilerImpl.h: Defines the rx::CompilerImpl class, an implementation interface 8 // for the gl::Compiler object. 9 10 #include "common/angleutils.h" 11 #include "GLSLANG/ShaderLang.h" 12 #include "libANGLE/Error.h" 13 14 #ifndef LIBANGLE_RENDERER_COMPILERIMPL_H_ 15 #define LIBANGLE_RENDERER_COMPILERIMPL_H_ 16 17 namespace rx 18 { 19 20 class CompilerImpl : angle::NonCopyable 21 { 22 public: CompilerImpl()23 CompilerImpl() {} ~CompilerImpl()24 virtual ~CompilerImpl() {} 25 26 virtual gl::Error release() = 0; 27 28 // TODO(jmadill): Expose translator built-in resources init method. 29 virtual ShShaderOutput getTranslatorOutputType() const = 0; 30 }; 31 32 } 33 34 #endif // LIBANGLE_RENDERER_COMPILERIMPL_H_ 35