OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ui/gl/gl_gl_api_implementation.h" | 5 #include "ui/gl/gl_gl_api_implementation.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
230 orig_fn.glDrawArraysFn = fn.glDrawArraysFn; | 230 orig_fn.glDrawArraysFn = fn.glDrawArraysFn; |
231 fn.glDrawArraysFn = NullDrawDrawArraysFn; | 231 fn.glDrawArraysFn = NullDrawDrawArraysFn; |
232 | 232 |
233 DCHECK(orig_fn.glDrawElementsFn == NULL); | 233 DCHECK(orig_fn.glDrawElementsFn == NULL); |
234 orig_fn.glDrawElementsFn = fn.glDrawElementsFn; | 234 orig_fn.glDrawElementsFn = fn.glDrawElementsFn; |
235 fn.glDrawElementsFn = NullDrawDrawElementsFn; | 235 fn.glDrawElementsFn = NullDrawDrawElementsFn; |
236 | 236 |
237 null_draw_bindings_enabled = true; | 237 null_draw_bindings_enabled = true; |
238 } | 238 } |
239 | 239 |
| 240 bool DriverGL::HasInitializedNullDrawBindings() { |
| 241 return orig_fn.glClearFn != NULL && orig_fn.glDrawArraysFn != NULL && |
| 242 orig_fn.glDrawElementsFn != NULL; |
| 243 } |
| 244 |
240 bool DriverGL::SetNullDrawBindingsEnabled(bool enabled) { | 245 bool DriverGL::SetNullDrawBindingsEnabled(bool enabled) { |
241 DCHECK(orig_fn.glClearFn != NULL); | 246 DCHECK(orig_fn.glClearFn != NULL); |
242 DCHECK(orig_fn.glDrawArraysFn != NULL); | 247 DCHECK(orig_fn.glDrawArraysFn != NULL); |
243 DCHECK(orig_fn.glDrawElementsFn != NULL); | 248 DCHECK(orig_fn.glDrawElementsFn != NULL); |
244 | 249 |
245 bool before = null_draw_bindings_enabled; | 250 bool before = null_draw_bindings_enabled; |
246 null_draw_bindings_enabled = enabled; | 251 null_draw_bindings_enabled = enabled; |
247 return before; | 252 return before; |
248 } | 253 } |
249 | 254 |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
283 } | 288 } |
284 | 289 |
285 void InitializeDebugGLBindingsGL() { | 290 void InitializeDebugGLBindingsGL() { |
286 g_driver_gl.InitializeDebugBindings(); | 291 g_driver_gl.InitializeDebugBindings(); |
287 } | 292 } |
288 | 293 |
289 void InitializeNullDrawGLBindingsGL() { | 294 void InitializeNullDrawGLBindingsGL() { |
290 g_driver_gl.InitializeNullDrawBindings(); | 295 g_driver_gl.InitializeNullDrawBindings(); |
291 } | 296 } |
292 | 297 |
| 298 bool HasInitializedNullDrawGLBindingsGL() { |
| 299 return g_driver_gl.HasInitializedNullDrawBindings(); |
| 300 } |
| 301 |
293 bool SetNullDrawGLBindingsEnabledGL(bool enabled) { | 302 bool SetNullDrawGLBindingsEnabledGL(bool enabled) { |
294 return g_driver_gl.SetNullDrawBindingsEnabled(enabled); | 303 return g_driver_gl.SetNullDrawBindingsEnabled(enabled); |
295 } | 304 } |
296 | 305 |
297 void ClearGLBindingsGL() { | 306 void ClearGLBindingsGL() { |
298 if (g_real_gl) { | 307 if (g_real_gl) { |
299 delete g_real_gl; | 308 delete g_real_gl; |
300 g_real_gl = NULL; | 309 g_real_gl = NULL; |
301 } | 310 } |
302 if (g_trace_gl) { | 311 if (g_trace_gl) { |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
430 const GLubyte* VirtualGLApi::glGetStringFn(GLenum name) { | 439 const GLubyte* VirtualGLApi::glGetStringFn(GLenum name) { |
431 switch (name) { | 440 switch (name) { |
432 case GL_EXTENSIONS: | 441 case GL_EXTENSIONS: |
433 return reinterpret_cast<const GLubyte*>(extensions_.c_str()); | 442 return reinterpret_cast<const GLubyte*>(extensions_.c_str()); |
434 default: | 443 default: |
435 return driver_->fn.glGetStringFn(name); | 444 return driver_->fn.glGetStringFn(name); |
436 } | 445 } |
437 } | 446 } |
438 | 447 |
439 } // namespace gfx | 448 } // namespace gfx |
OLD | NEW |