OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 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 CC_QUADS_TILE_DRAW_QUAD_H_ | 5 #ifndef CC_QUADS_TILE_DRAW_QUAD_H_ |
6 #define CC_QUADS_TILE_DRAW_QUAD_H_ | 6 #define CC_QUADS_TILE_DRAW_QUAD_H_ |
7 | 7 |
8 #include "cc/quads/content_draw_quad_base.h" | 8 #include "cc/quads/content_draw_quad_base.h" |
9 | 9 |
10 namespace cc { | 10 namespace cc { |
11 | 11 |
12 class CC_EXPORT TileDrawQuad : public ContentDrawQuadBase { | 12 class CC_EXPORT TileDrawQuad : public ContentDrawQuadBase { |
13 public: | 13 public: |
14 TileDrawQuad(); | 14 TileDrawQuad(); |
15 ~TileDrawQuad() override; | 15 ~TileDrawQuad() override; |
16 | 16 |
17 void SetNew(const SharedQuadState* shared_quad_state, | 17 void SetNew(const SharedQuadState* shared_quad_state, |
18 const gfx::Rect& rect, | 18 const gfx::Rect& rect, |
19 const gfx::Rect& opaque_rect, | 19 const gfx::Rect& opaque_rect, |
20 const gfx::Rect& visible_rect, | 20 const gfx::Rect& visible_rect, |
21 unsigned resource_id, | 21 unsigned resource_id, |
| 22 // |tex_coord_rect| contains non-normalized coordinates. |
| 23 // TODO(reveman): Make the use of normalized vs non-normalized |
| 24 // coordinates consistent across all quad types: crbug.com/487370 |
22 const gfx::RectF& tex_coord_rect, | 25 const gfx::RectF& tex_coord_rect, |
23 const gfx::Size& texture_size, | 26 const gfx::Size& texture_size, |
24 bool swizzle_contents, | 27 bool swizzle_contents, |
25 bool nearest_neighbor); | 28 bool nearest_neighbor); |
26 | 29 |
27 void SetAll(const SharedQuadState* shared_quad_state, | 30 void SetAll(const SharedQuadState* shared_quad_state, |
28 const gfx::Rect& rect, | 31 const gfx::Rect& rect, |
29 const gfx::Rect& opaque_rect, | 32 const gfx::Rect& opaque_rect, |
30 const gfx::Rect& visible_rect, | 33 const gfx::Rect& visible_rect, |
31 bool needs_blending, | 34 bool needs_blending, |
32 unsigned resource_id, | 35 unsigned resource_id, |
| 36 // |tex_coord_rect| contains non-normalized coordinates. |
| 37 // TODO(reveman): Make the use of normalized vs non-normalized |
| 38 // coordinates consistent across all quad types: crbug.com/487370 |
33 const gfx::RectF& tex_coord_rect, | 39 const gfx::RectF& tex_coord_rect, |
34 const gfx::Size& texture_size, | 40 const gfx::Size& texture_size, |
35 bool swizzle_contents, | 41 bool swizzle_contents, |
36 bool nearest_neighbor); | 42 bool nearest_neighbor); |
37 | 43 |
38 unsigned resource_id; | 44 unsigned resource_id; |
39 | 45 |
40 void IterateResources(const ResourceIteratorCallback& callback) override; | 46 void IterateResources(const ResourceIteratorCallback& callback) override; |
41 | 47 |
42 static const TileDrawQuad* MaterialCast(const DrawQuad*); | 48 static const TileDrawQuad* MaterialCast(const DrawQuad*); |
43 | 49 |
44 private: | 50 private: |
45 void ExtendValue(base::trace_event::TracedValue* value) const override; | 51 void ExtendValue(base::trace_event::TracedValue* value) const override; |
46 }; | 52 }; |
47 | 53 |
48 } // namespace cc | 54 } // namespace cc |
49 | 55 |
50 #endif // CC_QUADS_TILE_DRAW_QUAD_H_ | 56 #endif // CC_QUADS_TILE_DRAW_QUAD_H_ |
OLD | NEW |