Add more components tests to GN build.
[chromium-blink-merge.git] / ui / gl / gl_osmesa_api_implementation.cc
blob6b76413ff2e65759021f1f70a8991f88e9f2199c
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "ui/gl/gl_osmesa_api_implementation.h"
7 namespace gfx {
9 RealOSMESAApi* g_real_osmesa;
11 void InitializeStaticGLBindingsOSMESA() {
12 g_driver_osmesa.InitializeStaticBindings();
13 if (!g_real_osmesa) {
14 g_real_osmesa = new RealOSMESAApi();
16 g_real_osmesa->Initialize(&g_driver_osmesa);
17 g_current_osmesa_context = g_real_osmesa;
18 g_driver_osmesa.InitializeExtensionBindings();
21 void InitializeDebugGLBindingsOSMESA() {
22 g_driver_osmesa.InitializeDebugBindings();
25 void ClearGLBindingsOSMESA() {
26 if (g_real_osmesa) {
27 delete g_real_osmesa;
28 g_real_osmesa = NULL;
30 g_current_osmesa_context = NULL;
31 g_driver_osmesa.ClearBindings();
34 OSMESAApi::OSMESAApi() {
37 OSMESAApi::~OSMESAApi() {
40 OSMESAApiBase::OSMESAApiBase()
41 : driver_(NULL) {
44 OSMESAApiBase::~OSMESAApiBase() {
47 void OSMESAApiBase::InitializeBase(DriverOSMESA* driver) {
48 driver_ = driver;
51 RealOSMESAApi::RealOSMESAApi() {
54 RealOSMESAApi::~RealOSMESAApi() {
57 void RealOSMESAApi::Initialize(DriverOSMESA* driver) {
58 InitializeBase(driver);
61 TraceOSMESAApi::~TraceOSMESAApi() {
64 } // namespace gfx