Chromium Code Reviews| OLD | NEW |
|---|---|
| 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/trees/layer_tree_host_impl.h" | 5 #include "cc/trees/layer_tree_host_impl.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
| 10 #include "base/debug/trace_event.h" | 10 #include "base/debug/trace_event.h" |
| (...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 135 time_source_->SetClient(this); | 135 time_source_->SetClient(this); |
| 136 } | 136 } |
| 137 | 137 |
| 138 LayerTreeHostImpl* layer_tree_host_impl_; | 138 LayerTreeHostImpl* layer_tree_host_impl_; |
| 139 scoped_refptr<DelayBasedTimeSource> time_source_; | 139 scoped_refptr<DelayBasedTimeSource> time_source_; |
| 140 | 140 |
| 141 DISALLOW_COPY_AND_ASSIGN(LayerTreeHostImplTimeSourceAdapter); | 141 DISALLOW_COPY_AND_ASSIGN(LayerTreeHostImplTimeSourceAdapter); |
| 142 }; | 142 }; |
| 143 | 143 |
| 144 LayerTreeHostImpl::FrameData::FrameData() | 144 LayerTreeHostImpl::FrameData::FrameData() |
| 145 : contains_incomplete_tile(false), has_no_damage(false) {} | 145 : contains_incomplete_tile(false), |
| 146 has_no_damage(false), | |
| 147 cannot_append_tile_draw_quads(false) {} | |
| 146 | 148 |
| 147 LayerTreeHostImpl::FrameData::~FrameData() {} | 149 LayerTreeHostImpl::FrameData::~FrameData() {} |
| 148 | 150 |
| 149 scoped_ptr<LayerTreeHostImpl> LayerTreeHostImpl::Create( | 151 scoped_ptr<LayerTreeHostImpl> LayerTreeHostImpl::Create( |
| 150 const LayerTreeSettings& settings, | 152 const LayerTreeSettings& settings, |
| 151 LayerTreeHostImplClient* client, | 153 LayerTreeHostImplClient* client, |
| 152 Proxy* proxy, | 154 Proxy* proxy, |
| 153 RenderingStatsInstrumentation* rendering_stats_instrumentation) { | 155 RenderingStatsInstrumentation* rendering_stats_instrumentation) { |
| 154 return make_scoped_ptr( | 156 return make_scoped_ptr( |
| 155 new LayerTreeHostImpl(settings, | 157 new LayerTreeHostImpl(settings, |
| (...skipping 443 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 599 RenderPass::Id target_render_pass_id = | 601 RenderPass::Id target_render_pass_id = |
| 600 it.target_render_surface_layer()->render_surface()->RenderPassId(); | 602 it.target_render_surface_layer()->render_surface()->RenderPassId(); |
| 601 RenderPass* target_render_pass = | 603 RenderPass* target_render_pass = |
| 602 frame->render_passes_by_id[target_render_pass_id]; | 604 frame->render_passes_by_id[target_render_pass_id]; |
| 603 | 605 |
| 604 bool prevent_occlusion = | 606 bool prevent_occlusion = |
| 605 it.target_render_surface_layer()->HasRequestCopyCallback(); | 607 it.target_render_surface_layer()->HasRequestCopyCallback(); |
| 606 occlusion_tracker.EnterLayer(it, prevent_occlusion); | 608 occlusion_tracker.EnterLayer(it, prevent_occlusion); |
| 607 | 609 |
| 608 AppendQuadsData append_quads_data(target_render_pass->id); | 610 AppendQuadsData append_quads_data(target_render_pass->id); |
| 611 append_quads_data.cannot_append_tile_draw_quads = | |
| 612 frame->cannot_append_tile_draw_quads; | |
| 609 | 613 |
| 610 if (it.represents_target_render_surface()) { | 614 if (it.represents_target_render_surface()) { |
| 611 if (it->HasRequestCopyCallback()) { | 615 if (it->HasRequestCopyCallback()) { |
| 612 have_copy_request = true; | 616 have_copy_request = true; |
| 613 it->TakeRequestCopyCallbacks(&target_render_pass->copy_callbacks); | 617 it->TakeRequestCopyCallbacks(&target_render_pass->copy_callbacks); |
| 614 } | 618 } |
| 615 } else if (it.represents_contributing_render_surface()) { | 619 } else if (it.represents_contributing_render_surface()) { |
| 616 RenderPass::Id contributing_render_pass_id = | 620 RenderPass::Id contributing_render_pass_id = |
| 617 it->render_surface()->RenderPassId(); | 621 it->render_surface()->RenderPassId(); |
| 618 RenderPass* contributing_render_pass = | 622 RenderPass* contributing_render_pass = |
| (...skipping 764 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1383 | 1387 |
| 1384 if (output_surface->capabilities().has_parent_compositor) { | 1388 if (output_surface->capabilities().has_parent_compositor) { |
| 1385 renderer_ = DelegatingRenderer::Create(this, output_surface.get(), | 1389 renderer_ = DelegatingRenderer::Create(this, output_surface.get(), |
| 1386 resource_provider.get()); | 1390 resource_provider.get()); |
| 1387 } else if (output_surface->context3d()) { | 1391 } else if (output_surface->context3d()) { |
| 1388 renderer_ = GLRenderer::Create(this, | 1392 renderer_ = GLRenderer::Create(this, |
| 1389 output_surface.get(), | 1393 output_surface.get(), |
| 1390 resource_provider.get(), | 1394 resource_provider.get(), |
| 1391 settings_.highp_threshold_min); | 1395 settings_.highp_threshold_min); |
| 1392 } else if (output_surface->software_device()) { | 1396 } else if (output_surface->software_device()) { |
| 1397 ResourceProvider* software_resource_provider = NULL; | |
|
kaanb1
2013/04/29 16:56:26
nit: consider s/software_resource_provider/resourc
aelias_OOO_until_Jul13
2013/04/30 07:28:20
Deleted this code anyway.
| |
| 1398 if (!settings().tile_free_software_compositing) | |
| 1399 software_resource_provider = resource_provider.get(); | |
| 1393 renderer_ = SoftwareRenderer::Create(this, | 1400 renderer_ = SoftwareRenderer::Create(this, |
| 1394 output_surface.get(), | 1401 output_surface.get(), |
| 1395 resource_provider.get()); | 1402 software_resource_provider); |
| 1396 } | 1403 } |
| 1397 if (!renderer_) | 1404 if (!renderer_) |
| 1398 return false; | 1405 return false; |
| 1399 | 1406 |
| 1400 resource_provider_ = resource_provider.Pass(); | 1407 resource_provider_ = resource_provider.Pass(); |
| 1401 output_surface_ = output_surface.Pass(); | 1408 output_surface_ = output_surface.Pass(); |
| 1402 | 1409 |
| 1403 if (!visible_) | 1410 if (!visible_) |
| 1404 renderer_->SetVisible(visible_); | 1411 renderer_->SetVisible(visible_); |
| 1405 | 1412 |
| (...skipping 731 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2137 } | 2144 } |
| 2138 | 2145 |
| 2139 void LayerTreeHostImpl::SetDebugState(const LayerTreeDebugState& debug_state) { | 2146 void LayerTreeHostImpl::SetDebugState(const LayerTreeDebugState& debug_state) { |
| 2140 if (debug_state_.continuous_painting != debug_state.continuous_painting) | 2147 if (debug_state_.continuous_painting != debug_state.continuous_painting) |
| 2141 paint_time_counter_->ClearHistory(); | 2148 paint_time_counter_->ClearHistory(); |
| 2142 | 2149 |
| 2143 debug_state_ = debug_state; | 2150 debug_state_ = debug_state; |
| 2144 } | 2151 } |
| 2145 | 2152 |
| 2146 } // namespace cc | 2153 } // namespace cc |
| OLD | NEW |