Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(191)

Side by Side Diff: cc/layers/render_surface_impl.cc

Issue 404563005: Make RenderPass::Id an isolated class (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: one more case in mojo Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « cc/layers/render_surface_impl.h ('k') | cc/layers/render_surface_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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 #include "cc/layers/render_surface_impl.h" 5 #include "cc/layers/render_surface_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/strings/stringprintf.h" 10 #include "base/strings/stringprintf.h"
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 static_cast<DelegatedRendererLayerImpl*>(layer); 100 static_cast<DelegatedRendererLayerImpl*>(layer);
101 contributing_delegated_render_pass_layer_list_.push_back( 101 contributing_delegated_render_pass_layer_list_.push_back(
102 delegated_renderer_layer); 102 delegated_renderer_layer);
103 } 103 }
104 104
105 void RenderSurfaceImpl::ClearLayerLists() { 105 void RenderSurfaceImpl::ClearLayerLists() {
106 layer_list_.clear(); 106 layer_list_.clear();
107 contributing_delegated_render_pass_layer_list_.clear(); 107 contributing_delegated_render_pass_layer_list_.clear();
108 } 108 }
109 109
110 RenderPass::Id RenderSurfaceImpl::RenderPassId() { 110 RenderPassId RenderSurfaceImpl::GetRenderPassId() {
111 int layer_id = owning_layer_->id(); 111 int layer_id = owning_layer_->id();
112 int sub_id = 0; 112 int sub_id = 0;
113 DCHECK_GT(layer_id, 0); 113 DCHECK_GT(layer_id, 0);
114 return RenderPass::Id(layer_id, sub_id); 114 return RenderPassId(layer_id, sub_id);
115 } 115 }
116 116
117 void RenderSurfaceImpl::AppendRenderPasses(RenderPassSink* pass_sink) { 117 void RenderSurfaceImpl::AppendRenderPasses(RenderPassSink* pass_sink) {
118 for (size_t i = 0; 118 for (size_t i = 0;
119 i < contributing_delegated_render_pass_layer_list_.size(); 119 i < contributing_delegated_render_pass_layer_list_.size();
120 ++i) { 120 ++i) {
121 DelegatedRendererLayerImpl* delegated_renderer_layer = 121 DelegatedRendererLayerImpl* delegated_renderer_layer =
122 contributing_delegated_render_pass_layer_list_[i]; 122 contributing_delegated_render_pass_layer_list_[i];
123 delegated_renderer_layer->AppendContributingRenderPasses(pass_sink); 123 delegated_renderer_layer->AppendContributingRenderPasses(pass_sink);
124 } 124 }
125 125
126 scoped_ptr<RenderPass> pass = RenderPass::Create(layer_list_.size()); 126 scoped_ptr<RenderPass> pass = RenderPass::Create(layer_list_.size());
127 pass->SetNew(RenderPassId(), 127 pass->SetNew(GetRenderPassId(),
128 content_rect_, 128 content_rect_,
129 gfx::IntersectRects(content_rect_, 129 gfx::IntersectRects(content_rect_,
130 damage_tracker_->current_damage_rect()), 130 damage_tracker_->current_damage_rect()),
131 screen_space_transform_); 131 screen_space_transform_);
132 pass_sink->AppendRenderPass(pass.Pass()); 132 pass_sink->AppendRenderPass(pass.Pass());
133 } 133 }
134 134
135 void RenderSurfaceImpl::AppendQuads( 135 void RenderSurfaceImpl::AppendQuads(
136 RenderPass* render_pass, 136 RenderPass* render_pass,
137 const OcclusionTracker<LayerImpl>& occlusion_tracker, 137 const OcclusionTracker<LayerImpl>& occlusion_tracker,
138 AppendQuadsData* append_quads_data, 138 AppendQuadsData* append_quads_data,
139 bool for_replica, 139 bool for_replica,
140 RenderPass::Id render_pass_id) { 140 RenderPassId render_pass_id) {
141 DCHECK(!for_replica || owning_layer_->has_replica()); 141 DCHECK(!for_replica || owning_layer_->has_replica());
142 142
143 const gfx::Transform& draw_transform = 143 const gfx::Transform& draw_transform =
144 for_replica ? replica_draw_transform_ : draw_transform_; 144 for_replica ? replica_draw_transform_ : draw_transform_;
145 gfx::Rect visible_content_rect = 145 gfx::Rect visible_content_rect =
146 occlusion_tracker.UnoccludedContributingSurfaceContentRect( 146 occlusion_tracker.UnoccludedContributingSurfaceContentRect(
147 content_rect_, draw_transform); 147 content_rect_, draw_transform);
148 if (visible_content_rect.IsEmpty()) 148 if (visible_content_rect.IsEmpty())
149 return; 149 return;
150 150
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
231 visible_content_rect, 231 visible_content_rect,
232 render_pass_id, 232 render_pass_id,
233 mask_resource_id, 233 mask_resource_id,
234 mask_uv_rect, 234 mask_uv_rect,
235 owning_layer_->filters(), 235 owning_layer_->filters(),
236 owning_layer_to_target_scale, 236 owning_layer_to_target_scale,
237 owning_layer_->background_filters()); 237 owning_layer_->background_filters());
238 } 238 }
239 239
240 } // namespace cc 240 } // namespace cc
OLDNEW
« no previous file with comments | « cc/layers/render_surface_impl.h ('k') | cc/layers/render_surface_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698