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 // This file contains the GLES2Decoder class. | 5 // This file contains the GLES2Decoder class. |
6 | 6 |
7 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ | 7 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ |
8 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ | 8 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ |
9 | 9 |
10 #include <stdint.h> | 10 #include <stdint.h> |
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
152 const gfx::Size& offscreen_size, | 152 const gfx::Size& offscreen_size, |
153 const DisallowedFeatures& disallowed_features, | 153 const DisallowedFeatures& disallowed_features, |
154 const std::vector<int32_t>& attribs) = 0; | 154 const std::vector<int32_t>& attribs) = 0; |
155 | 155 |
156 // Destroys the graphics context. | 156 // Destroys the graphics context. |
157 virtual void Destroy(bool have_context) = 0; | 157 virtual void Destroy(bool have_context) = 0; |
158 | 158 |
159 // Set the surface associated with the default FBO. | 159 // Set the surface associated with the default FBO. |
160 virtual void SetSurface(const scoped_refptr<gfx::GLSurface>& surface) = 0; | 160 virtual void SetSurface(const scoped_refptr<gfx::GLSurface>& surface) = 0; |
161 | 161 |
| 162 // Releases the surface associated with the GL context. |
| 163 // The decoder should not be used until a new surface is set. |
| 164 virtual void ReleaseSurface() = 0; |
| 165 |
162 virtual void ProduceFrontBuffer(const Mailbox& mailbox) = 0; | 166 virtual void ProduceFrontBuffer(const Mailbox& mailbox) = 0; |
163 | 167 |
164 // Resize an offscreen frame buffer. | 168 // Resize an offscreen frame buffer. |
165 virtual bool ResizeOffscreenFrameBuffer(const gfx::Size& size) = 0; | 169 virtual bool ResizeOffscreenFrameBuffer(const gfx::Size& size) = 0; |
166 | 170 |
167 // Make this decoder's GL context current. | 171 // Make this decoder's GL context current. |
168 virtual bool MakeCurrent() = 0; | 172 virtual bool MakeCurrent() = 0; |
169 | 173 |
170 // Gets the GLES2 Util which holds info. | 174 // Gets the GLES2 Util which holds info. |
171 virtual GLES2Util* GetGLES2Util() = 0; | 175 virtual GLES2Util* GetGLES2Util() = 0; |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
301 bool log_commands_; | 305 bool log_commands_; |
302 bool unsafe_es3_apis_enabled_; | 306 bool unsafe_es3_apis_enabled_; |
303 bool force_shader_name_hashing_for_test_; | 307 bool force_shader_name_hashing_for_test_; |
304 DISALLOW_COPY_AND_ASSIGN(GLES2Decoder); | 308 DISALLOW_COPY_AND_ASSIGN(GLES2Decoder); |
305 }; | 309 }; |
306 | 310 |
307 } // namespace gles2 | 311 } // namespace gles2 |
308 } // namespace gpu | 312 } // namespace gpu |
309 | 313 |
310 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ | 314 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_H_ |
OLD | NEW |