Chromium Code Reviews| Index: cc/surfaces/surface_aggregator.h |
| diff --git a/cc/surfaces/surface_aggregator.h b/cc/surfaces/surface_aggregator.h |
| index 738aeec2a0bc003aa6ed5859f440cdc2049a0e25..689bc9fc7c9facb56fddc54f176f89d5ea8c5e48 100644 |
| --- a/cc/surfaces/surface_aggregator.h |
| +++ b/cc/surfaces/surface_aggregator.h |
| @@ -60,6 +60,15 @@ class CC_SURFACES_EXPORT SurfaceAggregator { |
| gfx::Rect rect; |
| }; |
| + struct PrewalkResult { |
| + PrewalkResult(); |
|
danakj
2015/11/16 21:45:46
do you need a non-default constructor/destructor h
|
| + ~PrewalkResult(); |
| + bool has_copy_requests; |
|
danakj
2015/11/16 21:45:46
could you just = false here instead of constructor
|
| + // This is the set of Surfaces that were referenced by another Surface, but |
| + // not included in a SurfaceDrawQuad. |
| + std::set<SurfaceId> undrawn_surfaces; |
| + }; |
| + |
| ClipData CalculateClipRect(const ClipData& surface_clip, |
| const ClipData& quad_clip, |
| const gfx::Transform& target_transform); |
| @@ -83,7 +92,8 @@ class CC_SURFACES_EXPORT SurfaceAggregator { |
| const ClipData& clip_rect, |
| RenderPass* dest_pass, |
| SurfaceId surface_id); |
| - gfx::Rect PrewalkTree(SurfaceId surface_id); |
| + gfx::Rect PrewalkTree(SurfaceId surface_id, PrewalkResult* result); |
| + void CopyUnreferencedSurfaces(PrewalkResult* prewalk); |
| void CopyPasses(const DelegatedFrameData* frame_data, Surface* surface); |
| // Remove Surfaces that were referenced before but aren't currently |