// // Copyright 2018 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. // // RendererEGL.h: Renderer class for GL on Android/ChromeOS. Owns an EGL context object. #ifndef LIBANGLE_RENDERER_GL_EGL_RENDEREREGL_H_ #define LIBANGLE_RENDERER_GL_EGL_RENDEREREGL_H_ #include "libANGLE/renderer/gl/RendererGL.h" #include "libANGLE/renderer/gl/egl/egl_utils.h" namespace rx { class DisplayEGL; class RendererEGL : public RendererGL { public: RendererEGL(std::unique_ptr functionsGL, const egl::AttributeMap &attribMap, DisplayEGL *display, EGLContext context, const native_egl::AttributeVector attribs, bool isExternalContext); ~RendererEGL() override; EGLContext getContext() const; WorkerContext *createWorkerContext(std::string *infoLog) override; private: DisplayEGL *mDisplay; EGLContext mContext; const native_egl::AttributeVector mAttribs; const bool mIsExternalContext; }; } // namespace rx #endif // LIBANGLE_RENDERER_GL_EGL_RENDEREREGL_H_