| 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> |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 140 // Returns the GL renderer string. The context must be current. | 140 // Returns the GL renderer string. The context must be current. |
| 141 virtual std::string GetGLRenderer(); | 141 virtual std::string GetGLRenderer(); |
| 142 | 142 |
| 143 // Returns a helper structure to convert YUV textures to RGB textures. | 143 // Returns a helper structure to convert YUV textures to RGB textures. |
| 144 virtual YUVToRGBConverter* GetYUVToRGBConverter(); | 144 virtual YUVToRGBConverter* GetYUVToRGBConverter(); |
| 145 | 145 |
| 146 // Get the CurrentGL object for this context containing the driver, version | 146 // Get the CurrentGL object for this context containing the driver, version |
| 147 // and API. | 147 // and API. |
| 148 CurrentGL* GetCurrentGL(); | 148 CurrentGL* GetCurrentGL(); |
| 149 | 149 |
| 150 // Reinitialize the dynamic bindings of this context. Needed when the driver |
| 151 // may be exposing different extensions compared to when it was initialized. |
| 152 void ReinitializeDynamicBindings(); |
| 153 |
| 150 protected: | 154 protected: |
| 151 virtual ~GLContext(); | 155 virtual ~GLContext(); |
| 152 | 156 |
| 153 // Create the GLApi for this context using the provided driver. Creates a | 157 // Create the GLApi for this context using the provided driver. Creates a |
| 154 // RealGLApi by default. | 158 // RealGLApi by default. |
| 155 virtual GLApi* CreateGLApi(DriverGL* driver); | 159 virtual GLApi* CreateGLApi(DriverGL* driver); |
| 156 | 160 |
| 157 // Will release the current context when going out of scope, unless canceled. | 161 // Will release the current context when going out of scope, unless canceled. |
| 158 class ScopedReleaseCurrent { | 162 class ScopedReleaseCurrent { |
| 159 public: | 163 public: |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 230 // scoped_refptr containing the initialized GLContext or nullptr if | 234 // scoped_refptr containing the initialized GLContext or nullptr if |
| 231 // initialization fails. | 235 // initialization fails. |
| 232 GL_EXPORT scoped_refptr<GLContext> InitializeGLContext( | 236 GL_EXPORT scoped_refptr<GLContext> InitializeGLContext( |
| 233 scoped_refptr<GLContext> context, | 237 scoped_refptr<GLContext> context, |
| 234 GLSurface* compatible_surface, | 238 GLSurface* compatible_surface, |
| 235 const GLContextAttribs& attribs); | 239 const GLContextAttribs& attribs); |
| 236 | 240 |
| 237 } // namespace gl | 241 } // namespace gl |
| 238 | 242 |
| 239 #endif // UI_GL_GL_CONTEXT_H_ | 243 #endif // UI_GL_GL_CONTEXT_H_ |
| OLD | NEW |