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_RESOURCES_PICTURE_LAYER_TILING_H_ | 5 #ifndef CC_RESOURCES_PICTURE_LAYER_TILING_H_ |
6 #define CC_RESOURCES_PICTURE_LAYER_TILING_H_ | 6 #define CC_RESOURCES_PICTURE_LAYER_TILING_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 #include <utility> | 9 #include <utility> |
10 #include <vector> | 10 #include <vector> |
11 | 11 |
12 #include "base/basictypes.h" | 12 #include "base/basictypes.h" |
13 #include "base/containers/hash_tables.h" | 13 #include "base/containers/hash_tables.h" |
14 #include "base/memory/scoped_ptr.h" | 14 #include "base/memory/scoped_ptr.h" |
15 #include "cc/base/cc_export.h" | 15 #include "cc/base/cc_export.h" |
16 #include "cc/base/region.h" | 16 #include "cc/base/region.h" |
17 #include "cc/base/tiling_data.h" | 17 #include "cc/base/tiling_data.h" |
18 #include "cc/resources/tile.h" | 18 #include "cc/resources/tile.h" |
19 #include "cc/resources/tile_priority.h" | 19 #include "cc/resources/tile_priority.h" |
20 #include "cc/trees/occlusion.h" | 20 #include "cc/trees/occlusion.h" |
21 #include "ui/gfx/geometry/rect.h" | 21 #include "ui/gfx/geometry/rect.h" |
22 | 22 |
23 namespace base { | 23 namespace base { |
24 namespace trace_event { | 24 namespace trace_event { |
25 class TracedValue; | 25 class TracedValue; |
26 } | 26 } |
27 | |
28 // TODO(ssid): remove these aliases after the tracing clients are moved to the | |
29 // new trace_event namespace. See crbug.com/451032. ETA: March 2015 | |
30 namespace debug { | |
31 using ::base::trace_event::TracedValue; | |
32 } | 27 } |
33 } // namespace base | |
34 | 28 |
35 namespace cc { | 29 namespace cc { |
36 | 30 |
37 class PictureLayerTiling; | 31 class PictureLayerTiling; |
38 class RasterSource; | 32 class RasterSource; |
39 | 33 |
40 class CC_EXPORT PictureLayerTilingClient { | 34 class CC_EXPORT PictureLayerTilingClient { |
41 public: | 35 public: |
42 // Create a tile at the given content_rect (in the contents scale of the | 36 // Create a tile at the given content_rect (in the contents scale of the |
43 // tiling) This might return null if the client cannot create such a tile. | 37 // tiling) This might return null if the client cannot create such a tile. |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
207 }; | 201 }; |
208 | 202 |
209 void Reset(); | 203 void Reset(); |
210 | 204 |
211 bool ComputeTilePriorityRects(const gfx::Rect& viewport_in_layer_space, | 205 bool ComputeTilePriorityRects(const gfx::Rect& viewport_in_layer_space, |
212 float ideal_contents_scale, | 206 float ideal_contents_scale, |
213 double current_frame_time_in_seconds, | 207 double current_frame_time_in_seconds, |
214 const Occlusion& occlusion_in_layer_space); | 208 const Occlusion& occlusion_in_layer_space); |
215 | 209 |
216 void GetAllTilesForTracing(std::set<const Tile*>* tiles) const; | 210 void GetAllTilesForTracing(std::set<const Tile*>* tiles) const; |
217 void AsValueInto(base::debug::TracedValue* array) const; | 211 void AsValueInto(base::trace_event::TracedValue* array) const; |
218 size_t GPUMemoryUsageInBytes() const; | 212 size_t GPUMemoryUsageInBytes() const; |
219 | 213 |
220 struct RectExpansionCache { | 214 struct RectExpansionCache { |
221 RectExpansionCache(); | 215 RectExpansionCache(); |
222 | 216 |
223 gfx::Rect previous_start; | 217 gfx::Rect previous_start; |
224 gfx::Rect previous_bounds; | 218 gfx::Rect previous_bounds; |
225 gfx::Rect previous_result; | 219 gfx::Rect previous_result; |
226 int64 previous_target; | 220 int64 previous_target; |
227 }; | 221 }; |
(...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
323 | 317 |
324 private: | 318 private: |
325 DISALLOW_ASSIGN(PictureLayerTiling); | 319 DISALLOW_ASSIGN(PictureLayerTiling); |
326 | 320 |
327 RectExpansionCache expansion_cache_; | 321 RectExpansionCache expansion_cache_; |
328 }; | 322 }; |
329 | 323 |
330 } // namespace cc | 324 } // namespace cc |
331 | 325 |
332 #endif // CC_RESOURCES_PICTURE_LAYER_TILING_H_ | 326 #endif // CC_RESOURCES_PICTURE_LAYER_TILING_H_ |
OLD | NEW |