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 ContextState class. | 5 // This file contains the ContextState class. |
6 | 6 |
7 #ifndef GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_H_ | 7 #ifndef GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_H_ |
8 #define GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_H_ | 8 #define GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_H_ |
9 | 9 |
10 #include <vector> | 10 #include <vector> |
11 #include "base/logging.h" | 11 #include "base/logging.h" |
12 #include "base/memory/scoped_ptr.h" | 12 #include "base/memory/scoped_ptr.h" |
13 #include "gpu/command_buffer/service/gl_utils.h" | 13 #include "gpu/command_buffer/service/gl_utils.h" |
14 #include "gpu/command_buffer/service/query_manager.h" | 14 #include "gpu/command_buffer/service/query_manager.h" |
15 #include "gpu/command_buffer/service/texture_manager.h" | 15 #include "gpu/command_buffer/service/texture_manager.h" |
| 16 #include "gpu/command_buffer/service/valuebuffer_manager.h" |
16 #include "gpu/command_buffer/service/vertex_attrib_manager.h" | 17 #include "gpu/command_buffer/service/vertex_attrib_manager.h" |
17 #include "gpu/command_buffer/service/vertex_array_manager.h" | 18 #include "gpu/command_buffer/service/vertex_array_manager.h" |
18 #include "gpu/gpu_export.h" | 19 #include "gpu/gpu_export.h" |
19 | 20 |
20 namespace gpu { | 21 namespace gpu { |
21 namespace gles2 { | 22 namespace gles2 { |
22 | 23 |
23 class Buffer; | 24 class Buffer; |
24 class ErrorState; | 25 class ErrorState; |
25 class ErrorStateClient; | 26 class ErrorStateClient; |
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
193 scoped_refptr<VertexAttribManager> vertex_attrib_manager; | 194 scoped_refptr<VertexAttribManager> vertex_attrib_manager; |
194 scoped_refptr<VertexAttribManager> default_vertex_attrib_manager; | 195 scoped_refptr<VertexAttribManager> default_vertex_attrib_manager; |
195 | 196 |
196 // The program in use by glUseProgram | 197 // The program in use by glUseProgram |
197 scoped_refptr<Program> current_program; | 198 scoped_refptr<Program> current_program; |
198 | 199 |
199 // The currently bound renderbuffer | 200 // The currently bound renderbuffer |
200 scoped_refptr<Renderbuffer> bound_renderbuffer; | 201 scoped_refptr<Renderbuffer> bound_renderbuffer; |
201 bool bound_renderbuffer_valid; | 202 bool bound_renderbuffer_valid; |
202 | 203 |
| 204 // The currently bound valuebuffer |
| 205 scoped_refptr<Valuebuffer> bound_valuebuffer; |
| 206 |
203 // A map of of target -> Query for current queries | 207 // A map of of target -> Query for current queries |
204 typedef std::map<GLuint, scoped_refptr<QueryManager::Query> > QueryMap; | 208 typedef std::map<GLuint, scoped_refptr<QueryManager::Query> > QueryMap; |
205 QueryMap current_queries; | 209 QueryMap current_queries; |
206 | 210 |
207 bool pack_reverse_row_order; | 211 bool pack_reverse_row_order; |
208 bool ignore_cached_state; | 212 bool ignore_cached_state; |
209 | 213 |
210 mutable bool fbo_binding_for_scissor_workaround_dirty_; | 214 mutable bool fbo_binding_for_scissor_workaround_dirty_; |
211 FeatureInfo* feature_info_; | 215 FeatureInfo* feature_info_; |
212 | 216 |
213 private: | 217 private: |
214 scoped_ptr<ErrorState> error_state_; | 218 scoped_ptr<ErrorState> error_state_; |
215 }; | 219 }; |
216 | 220 |
217 } // namespace gles2 | 221 } // namespace gles2 |
218 } // namespace gpu | 222 } // namespace gpu |
219 | 223 |
220 #endif // GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_H_ | 224 #endif // GPU_COMMAND_BUFFER_SERVICE_CONTEXT_STATE_H_ |
221 | 225 |
OLD | NEW |