Chromium Code Reviews| Index: cc/surfaces/surface_aggregator.h |
| diff --git a/cc/surfaces/surface_aggregator.h b/cc/surfaces/surface_aggregator.h |
| index fc712845ad6ba5d6566fab09ff412d5e05772043..d5d9f1db56443d24809dd8add86cd6a78d2bc378 100644 |
| --- a/cc/surfaces/surface_aggregator.h |
| +++ b/cc/surfaces/surface_aggregator.h |
| @@ -132,7 +132,7 @@ class CC_SURFACES_EXPORT SurfaceAggregator { |
| // child surfaces. |
| void ProcessAddedAndRemovedSurfaces(); |
| - void PropagateCopyRequestPasses(); |
| + void PropagatePasses(base::flat_set<RenderPassId>* passes); |
| int ChildIdForSurface(Surface* surface); |
| gfx::Rect DamageRectForSurface(const Surface* surface, |
| @@ -186,6 +186,8 @@ class CC_SURFACES_EXPORT SurfaceAggregator { |
| // This is the pass list for the aggregated frame. |
| RenderPassList* dest_pass_list_; |
| + // This maps pass id to itself. |
| + base::flat_map<RenderPassId, RenderPass*> passes_id_map; |
|
vmpstr
2017/07/13 18:01:03
nit: id_to_render_pass_map_
wutao
2017/07/14 00:02:53
Done.
|
| // This is the set of aggregated pass ids that are affected by filters that |
| // move pixels. |
| @@ -195,6 +197,11 @@ class CC_SURFACES_EXPORT SurfaceAggregator { |
| // should not have their damage rects clipped to the root damage rect. |
| base::flat_set<RenderPassId> copy_request_passes_; |
| + // This is the set of aggregated pass ids that are drawn by force render |
| + // surface, so should not have their damage rects clipped to the root damage |
| + // rect. |
| + base::flat_set<RenderPassId> cache_render_surface_passes_; |
|
vmpstr
2017/07/13 18:01:03
nit: cached
wutao
2017/07/14 00:02:53
Done.
|
| + |
| // This maps each aggregated pass id to the set of (aggregated) pass ids |
| // that its RenderPassDrawQuads depend on |
| base::flat_map<RenderPassId, base::flat_set<RenderPassId>> |
| @@ -207,6 +214,10 @@ class CC_SURFACES_EXPORT SurfaceAggregator { |
| // This is valid during Aggregate after PrewalkTree is called. |
| bool has_copy_requests_; |
| + // True if the frame that's currently being aggregated has force render |
| + // surface. This is valid during Aggregate after PrewalkTree is called. |
| + bool has_cache_render_surfaces_; |
|
vmpstr
2017/07/13 18:01:03
nit: cached
wutao
2017/07/14 00:02:53
Done.
|
| + |
| // Tracks UMA stats for SurfaceDrawQuads during a call to Aggregate(). |
| SurfaceDrawQuadUmaStats uma_stats_; |