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 GPU_COMMAND_BUFFER_CLIENT_PROGRAM_INFO_MANAGER_H_ | 5 #ifndef GPU_COMMAND_BUFFER_CLIENT_PROGRAM_INFO_MANAGER_H_ |
6 #define GPU_COMMAND_BUFFER_CLIENT_PROGRAM_INFO_MANAGER_H_ | 6 #define GPU_COMMAND_BUFFER_CLIENT_PROGRAM_INFO_MANAGER_H_ |
7 | 7 |
8 #include <GLES3/gl3.h> | 8 #include <GLES3/gl3.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
215 bool cached_es3_uniform_blocks_; | 215 bool cached_es3_uniform_blocks_; |
216 | 216 |
217 uint32_t active_uniform_block_max_name_length_; | 217 uint32_t active_uniform_block_max_name_length_; |
218 | 218 |
219 // Uniform blocks by index. | 219 // Uniform blocks by index. |
220 std::vector<UniformBlock> uniform_blocks_; | 220 std::vector<UniformBlock> uniform_blocks_; |
221 | 221 |
222 bool cached_es3_transform_feedback_varyings_; | 222 bool cached_es3_transform_feedback_varyings_; |
223 | 223 |
224 uint32_t transform_feedback_varying_max_length_; | 224 uint32_t transform_feedback_varying_max_length_; |
| 225 GLenum transform_feedback_buffer_mode_; |
225 | 226 |
226 // TransformFeedback varyings by index. | 227 // TransformFeedback varyings by index. |
227 std::vector<TransformFeedbackVarying> transform_feedback_varyings_; | 228 std::vector<TransformFeedbackVarying> transform_feedback_varyings_; |
228 | 229 |
229 bool cached_es3_uniformsiv_; | 230 bool cached_es3_uniformsiv_; |
230 | 231 |
231 std::vector<UniformES3> uniforms_es3_; | 232 std::vector<UniformES3> uniforms_es3_; |
232 | 233 |
233 base::hash_map<std::string, GLint> frag_data_locations_; | 234 base::hash_map<std::string, GLint> frag_data_locations_; |
234 }; | 235 }; |
235 | 236 |
236 Program* GetProgramInfo( | 237 Program* GetProgramInfo( |
237 GLES2Implementation* gl, GLuint program, ProgramInfoType type); | 238 GLES2Implementation* gl, GLuint program, ProgramInfoType type); |
238 | 239 |
239 typedef base::hash_map<GLuint, Program> ProgramInfoMap; | 240 typedef base::hash_map<GLuint, Program> ProgramInfoMap; |
240 | 241 |
241 ProgramInfoMap program_infos_; | 242 ProgramInfoMap program_infos_; |
242 | 243 |
243 mutable base::Lock lock_; | 244 mutable base::Lock lock_; |
244 }; | 245 }; |
245 | 246 |
246 } // namespace gles2 | 247 } // namespace gles2 |
247 } // namespace gpu | 248 } // namespace gpu |
248 | 249 |
249 #endif // GPU_COMMAND_BUFFER_CLIENT_PROGRAM_INFO_MANAGER_H_ | 250 #endif // GPU_COMMAND_BUFFER_CLIENT_PROGRAM_INFO_MANAGER_H_ |
OLD | NEW |