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 #ifndef UI_GL_GL_CONTEXT_H_ | 5 #ifndef UI_GL_GL_CONTEXT_H_ |
6 #define UI_GL_GL_CONTEXT_H_ | 6 #define UI_GL_GL_CONTEXT_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
11 | 11 |
12 #include "base/cancelable_callback.h" | 12 #include "base/cancelable_callback.h" |
13 #include "base/macros.h" | 13 #include "base/macros.h" |
14 #include "base/memory/ref_counted.h" | 14 #include "base/memory/ref_counted.h" |
15 #include "base/synchronization/cancellation_flag.h" | 15 #include "base/synchronization/cancellation_flag.h" |
| 16 #include "ui/gl/gl_export.h" |
16 #include "ui/gl/gl_share_group.h" | 17 #include "ui/gl/gl_share_group.h" |
17 #include "ui/gl/gl_state_restorer.h" | 18 #include "ui/gl/gl_state_restorer.h" |
18 #include "ui/gl/gpu_preference.h" | 19 #include "ui/gl/gpu_preference.h" |
19 | 20 |
20 namespace gl { | 21 namespace gl { |
21 class YUVToRGBConverter; | 22 class YUVToRGBConverter; |
22 } // namespace gl | 23 } // namespace gl |
23 | 24 |
24 namespace gpu { | 25 namespace gpu { |
25 class GLContextVirtual; | 26 class GLContextVirtual; |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
95 | 96 |
96 // Returns version info of the underlying GL context. The context must be | 97 // Returns version info of the underlying GL context. The context must be |
97 // current. | 98 // current. |
98 const GLVersionInfo* GetVersionInfo(); | 99 const GLVersionInfo* GetVersionInfo(); |
99 | 100 |
100 GLShareGroup* share_group(); | 101 GLShareGroup* share_group(); |
101 | 102 |
102 // Create a GL context that is compatible with the given surface. | 103 // Create a GL context that is compatible with the given surface. |
103 // |share_group|, if non-NULL, is a group of contexts which the | 104 // |share_group|, if non-NULL, is a group of contexts which the |
104 // internally created OpenGL context shares textures and other resources. | 105 // internally created OpenGL context shares textures and other resources. |
| 106 // DEPRECATED(kylechar): Use gl::init::CreateGLContext from gl_factory.h. |
105 static scoped_refptr<GLContext> CreateGLContext( | 107 static scoped_refptr<GLContext> CreateGLContext( |
106 GLShareGroup* share_group, | 108 GLShareGroup* share_group, |
107 GLSurface* compatible_surface, | 109 GLSurface* compatible_surface, |
108 GpuPreference gpu_preference); | 110 GpuPreference gpu_preference); |
109 | 111 |
110 static bool LosesAllContextsOnContextLost(); | 112 static bool LosesAllContextsOnContextLost(); |
111 | 113 |
112 // Returns the last GLContext made current, virtual or real. | 114 // Returns the last GLContext made current, virtual or real. |
113 static GLContext* GetCurrent(); | 115 static GLContext* GetCurrent(); |
114 | 116 |
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
192 void SetCurrent(GLSurface* surface) override; | 194 void SetCurrent(GLSurface* surface) override; |
193 | 195 |
194 private: | 196 private: |
195 std::unique_ptr<gfx::GPUTiming> gpu_timing_; | 197 std::unique_ptr<gfx::GPUTiming> gpu_timing_; |
196 DISALLOW_COPY_AND_ASSIGN(GLContextReal); | 198 DISALLOW_COPY_AND_ASSIGN(GLContextReal); |
197 }; | 199 }; |
198 | 200 |
199 } // namespace gfx | 201 } // namespace gfx |
200 | 202 |
201 #endif // UI_GL_GL_CONTEXT_H_ | 203 #endif // UI_GL_GL_CONTEXT_H_ |
OLD | NEW |