Chromium Code Reviews| Index: components/viz/service/display/surface_aggregator.h |
| diff --git a/components/viz/service/display/surface_aggregator.h b/components/viz/service/display/surface_aggregator.h |
| index 55ef709bc92efc16472dfb89bbb3faa5fcad5e58..517d26d445faed8462aa01c671b9126556fddffd 100644 |
| --- a/components/viz/service/display/surface_aggregator.h |
| +++ b/components/viz/service/display/surface_aggregator.h |
| @@ -137,7 +137,7 @@ class VIZ_SERVICE_EXPORT SurfaceAggregator { |
| // child surfaces. |
| void ProcessAddedAndRemovedSurfaces(); |
| - void PropagateCopyRequestPasses(); |
| + void PropagatePasses(base::flat_set<cc::RenderPassId>* passes); |
|
danakj
2017/07/19 22:52:55
Please give the variable more context in the name
wutao
2017/07/21 05:59:24
Related to the other comments. Do not need this mo
|
| int ChildIdForSurface(cc::Surface* surface); |
| gfx::Rect DamageRectForSurface(const cc::Surface* surface, |
| @@ -191,6 +191,8 @@ class VIZ_SERVICE_EXPORT SurfaceAggregator { |
| // This is the pass list for the aggregated frame. |
| cc::RenderPassList* dest_pass_list_; |
| + // This maps pass id to itself. |
| + base::flat_map<cc::RenderPassId, cc::RenderPass*> id_to_render_pass_map_; |
| // This is the set of aggregated pass ids that are affected by filters that |
| // move pixels. |
| @@ -200,6 +202,11 @@ class VIZ_SERVICE_EXPORT SurfaceAggregator { |
| // should not have their damage rects clipped to the root damage rect. |
| base::flat_set<cc::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<cc::RenderPassId> cached_render_surface_passes_; |
| + |
| // This maps each aggregated pass id to the set of (aggregated) pass ids |
| // that its RenderPassDrawQuads depend on |
| base::flat_map<cc::RenderPassId, base::flat_set<cc::RenderPassId>> |
| @@ -212,6 +219,10 @@ class VIZ_SERVICE_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_cached_render_surfaces_; |
| + |
| // Tracks UMA stats for SurfaceDrawQuads during a call to Aggregate(). |
| SurfaceDrawQuadUmaStats uma_stats_; |