OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 CC_OUTPUT_DYNAMIC_GEOMETRY_BINDING_H_ | 5 #ifndef CC_OUTPUT_DYNAMIC_GEOMETRY_BINDING_H_ |
6 #define CC_OUTPUT_DYNAMIC_GEOMETRY_BINDING_H_ | 6 #define CC_OUTPUT_DYNAMIC_GEOMETRY_BINDING_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "cc/output/geometry_binding.h" | 9 #include "cc/output/geometry_binding.h" |
10 | 10 |
| 11 namespace gfx { |
| 12 class QuadF; |
| 13 } |
| 14 |
11 namespace cc { | 15 namespace cc { |
12 | 16 |
13 class DynamicGeometryBinding { | 17 class DynamicGeometryBinding { |
14 public: | 18 public: |
15 explicit DynamicGeometryBinding(gpu::gles2::GLES2Interface* gl); | 19 explicit DynamicGeometryBinding(gpu::gles2::GLES2Interface* gl); |
16 void PrepareForDraw(); | 20 void PrepareForDraw(); |
17 void InitializeCustomQuad(const gfx::QuadF& quad); | 21 void InitializeCustomQuad(const gfx::QuadF& quad); |
18 void InitializeCustomQuadWithUVs(const gfx::QuadF& quad, const float uv[8]); | 22 void InitializeCustomQuadWithUVs(const gfx::QuadF& quad, const float uv[8]); |
19 | 23 |
20 private: | 24 private: |
21 gpu::gles2::GLES2Interface* gl_; | 25 gpu::gles2::GLES2Interface* gl_; |
22 | 26 |
23 GLuint quad_vertices_vbo_; | 27 GLuint quad_vertices_vbo_; |
24 GLuint quad_elements_vbo_; | 28 GLuint quad_elements_vbo_; |
25 | 29 |
26 DISALLOW_COPY_AND_ASSIGN(DynamicGeometryBinding); | 30 DISALLOW_COPY_AND_ASSIGN(DynamicGeometryBinding); |
27 }; | 31 }; |
28 | 32 |
29 } // namespace cc | 33 } // namespace cc |
30 | 34 |
31 #endif // CC_OUTPUT_DYNAMIC_GEOMETRY_BINDING_H_ | 35 #endif // CC_OUTPUT_DYNAMIC_GEOMETRY_BINDING_H_ |
OLD | NEW |