|  | // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style license that can be | 
|  | // found in the LICENSE file. | 
|  |  | 
|  | #include "ui/gl/gl_egl_api_implementation.h" | 
|  | #include "ui/gl/gl_implementation.h" | 
|  |  | 
|  | namespace gfx { | 
|  |  | 
|  | RealEGLApi* g_real_egl; | 
|  |  | 
|  | void InitializeStaticGLBindingsEGL() { | 
|  | if (!g_real_egl) { | 
|  | g_real_egl = new RealEGLApi(); | 
|  | } | 
|  | g_real_egl->Initialize(&g_driver_egl); | 
|  | g_current_egl_context = g_real_egl; | 
|  | g_driver_egl.InitializeStaticBindings(); | 
|  | } | 
|  |  | 
|  | void InitializeDebugGLBindingsEGL() { | 
|  | g_driver_egl.InitializeDebugBindings(); | 
|  | } | 
|  |  | 
|  | void ClearGLBindingsEGL() { | 
|  | if (g_real_egl) { | 
|  | delete g_real_egl; | 
|  | g_real_egl = NULL; | 
|  | } | 
|  | g_current_egl_context = NULL; | 
|  | g_driver_egl.ClearBindings(); | 
|  | } | 
|  |  | 
|  | EGLApi::EGLApi() { | 
|  | } | 
|  |  | 
|  | EGLApi::~EGLApi() { | 
|  | } | 
|  |  | 
|  | EGLApiBase::EGLApiBase() | 
|  | : driver_(NULL) { | 
|  | } | 
|  |  | 
|  | EGLApiBase::~EGLApiBase() { | 
|  | } | 
|  |  | 
|  | void EGLApiBase::InitializeBase(DriverEGL* driver) { | 
|  | driver_ = driver; | 
|  | } | 
|  |  | 
|  | RealEGLApi::RealEGLApi() { | 
|  | } | 
|  |  | 
|  | RealEGLApi::~RealEGLApi() { | 
|  | } | 
|  |  | 
|  | void RealEGLApi::Initialize(DriverEGL* driver) { | 
|  | InitializeBase(driver); | 
|  | } | 
|  |  | 
|  | TraceEGLApi::~TraceEGLApi() { | 
|  | } | 
|  |  | 
|  | bool GetGLWindowSystemBindingInfoEGL(GLWindowSystemBindingInfo* info) { | 
|  | EGLDisplay display = eglGetCurrentDisplay(); | 
|  | const char* vendor = eglQueryString(display, EGL_VENDOR); | 
|  | const char* version = eglQueryString(display, EGL_VERSION); | 
|  | const char* extensions = eglQueryString(display, EGL_EXTENSIONS); | 
|  | *info = GLWindowSystemBindingInfo(); | 
|  | if (vendor) | 
|  | info->vendor = vendor; | 
|  | if (version) | 
|  | info->version = version; | 
|  | if (extensions) | 
|  | info->extensions = extensions; | 
|  | return true; | 
|  | } | 
|  |  | 
|  | }  // namespace gfx | 
|  |  | 
|  |  |