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_DRAW_QUAD_H_ | 5 #ifndef CC_QUADS_DRAW_QUAD_H_ |
6 #define CC_QUADS_DRAW_QUAD_H_ | 6 #define CC_QUADS_DRAW_QUAD_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 | 9 |
10 #include "base/callback.h" | 10 #include "base/callback.h" |
11 #include "cc/base/cc_export.h" | 11 #include "cc/base/cc_export.h" |
12 #include "cc/base/resource_id.h" | 12 #include "cc/base/resource_id.h" |
13 #include "cc/quads/shared_quad_state.h" | 13 #include "cc/quads/shared_quad_state.h" |
14 | 14 |
15 namespace base { | 15 namespace base { |
16 namespace trace_event { | 16 namespace trace_event { |
17 class TracedValue; | 17 class TracedValue; |
18 } | 18 } |
19 class Value; | |
20 class DictionaryValue; | |
21 } | 19 } |
22 | 20 |
23 namespace cc { | 21 namespace cc { |
24 | 22 |
25 // DrawQuad is a bag of data used for drawing a quad. Because different | 23 // DrawQuad is a bag of data used for drawing a quad. Because different |
26 // materials need different bits of per-quad data to render, classes that derive | 24 // materials need different bits of per-quad data to render, classes that derive |
27 // from DrawQuad store additional data in their derived instance. The Material | 25 // from DrawQuad store additional data in their derived instance. The Material |
28 // enum is used to "safely" downcast to the derived class. | 26 // enum is used to "safely" downcast to the derived class. |
29 // Note: quads contain rects and sizes, which live in different spaces. There is | 27 // Note: quads contain rects and sizes, which live in different spaces. There is |
30 // the "content space", which is the arbitrary space in which the quad's | 28 // the "content space", which is the arbitrary space in which the quad's |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
144 const gfx::Rect& rect, | 142 const gfx::Rect& rect, |
145 const gfx::Rect& opaque_rect, | 143 const gfx::Rect& opaque_rect, |
146 const gfx::Rect& visible_rect, | 144 const gfx::Rect& visible_rect, |
147 bool needs_blending); | 145 bool needs_blending); |
148 virtual void ExtendValue(base::trace_event::TracedValue* value) const = 0; | 146 virtual void ExtendValue(base::trace_event::TracedValue* value) const = 0; |
149 }; | 147 }; |
150 | 148 |
151 } // namespace cc | 149 } // namespace cc |
152 | 150 |
153 #endif // CC_QUADS_DRAW_QUAD_H_ | 151 #endif // CC_QUADS_DRAW_QUAD_H_ |
OLD | NEW |