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

Side by Side Diff: cc/trees/layer_tree_host_impl.cc

Issue 2716733007: cc: Rename LayerImpl::render_surface to GetRenderSurface (Closed)
Patch Set: Created 3 years, 10 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/trees/layer_tree_host_common_unittest.cc ('k') | cc/trees/layer_tree_host_impl_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/trees/layer_tree_host_impl.h" 5 #include "cc/trees/layer_tree_host_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <algorithm> 10 #include <algorithm>
(...skipping 675 matching lines...) Expand 10 before | Expand all | Expand 10 after
686 void LayerTreeHostImpl::TrackDamageForAllSurfaces( 686 void LayerTreeHostImpl::TrackDamageForAllSurfaces(
687 const LayerImplList& render_surface_layer_list) { 687 const LayerImplList& render_surface_layer_list) {
688 // For now, we use damage tracking to compute a global scissor. To do this, we 688 // For now, we use damage tracking to compute a global scissor. To do this, we
689 // must compute all damage tracking before drawing anything, so that we know 689 // must compute all damage tracking before drawing anything, so that we know
690 // the root damage rect. The root damage rect is then used to scissor each 690 // the root damage rect. The root damage rect is then used to scissor each
691 // surface. 691 // surface.
692 size_t render_surface_layer_list_size = render_surface_layer_list.size(); 692 size_t render_surface_layer_list_size = render_surface_layer_list.size();
693 for (size_t i = 0; i < render_surface_layer_list_size; ++i) { 693 for (size_t i = 0; i < render_surface_layer_list_size; ++i) {
694 size_t surface_index = render_surface_layer_list_size - 1 - i; 694 size_t surface_index = render_surface_layer_list_size - 1 - i;
695 LayerImpl* render_surface_layer = render_surface_layer_list[surface_index]; 695 LayerImpl* render_surface_layer = render_surface_layer_list[surface_index];
696 RenderSurfaceImpl* render_surface = render_surface_layer->render_surface(); 696 RenderSurfaceImpl* render_surface =
697 render_surface_layer->GetRenderSurface();
697 DCHECK(render_surface); 698 DCHECK(render_surface);
698 render_surface->damage_tracker()->UpdateDamageTrackingState( 699 render_surface->damage_tracker()->UpdateDamageTrackingState(
699 render_surface->layer_list(), render_surface, 700 render_surface->layer_list(), render_surface,
700 render_surface->SurfacePropertyChangedOnlyFromDescendant(), 701 render_surface->SurfacePropertyChangedOnlyFromDescendant(),
701 render_surface->content_rect(), render_surface->MaskLayer(), 702 render_surface->content_rect(), render_surface->MaskLayer(),
702 render_surface->Filters()); 703 render_surface->Filters());
703 } 704 }
704 } 705 }
705 706
706 void LayerTreeHostImpl::FrameData::AsValueInto( 707 void LayerTreeHostImpl::FrameData::AsValueInto(
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
825 static_cast<uint64_t>(frame->render_surface_layer_list->size()), 826 static_cast<uint64_t>(frame->render_surface_layer_list->size()),
826 "RequiresHighResToDraw", RequiresHighResToDraw()); 827 "RequiresHighResToDraw", RequiresHighResToDraw());
827 828
828 // Create the render passes in dependency order. 829 // Create the render passes in dependency order.
829 size_t render_surface_layer_list_size = 830 size_t render_surface_layer_list_size =
830 frame->render_surface_layer_list->size(); 831 frame->render_surface_layer_list->size();
831 for (size_t i = 0; i < render_surface_layer_list_size; ++i) { 832 for (size_t i = 0; i < render_surface_layer_list_size; ++i) {
832 size_t surface_index = render_surface_layer_list_size - 1 - i; 833 size_t surface_index = render_surface_layer_list_size - 1 - i;
833 LayerImpl* render_surface_layer = 834 LayerImpl* render_surface_layer =
834 (*frame->render_surface_layer_list)[surface_index]; 835 (*frame->render_surface_layer_list)[surface_index];
835 RenderSurfaceImpl* render_surface = render_surface_layer->render_surface(); 836 RenderSurfaceImpl* render_surface =
837 render_surface_layer->GetRenderSurface();
836 838
837 bool should_draw_into_render_pass = 839 bool should_draw_into_render_pass =
838 active_tree_->IsRootLayer(render_surface_layer) || 840 active_tree_->IsRootLayer(render_surface_layer) ||
839 render_surface->contributes_to_drawn_surface() || 841 render_surface->contributes_to_drawn_surface() ||
840 render_surface->HasCopyRequest(); 842 render_surface->HasCopyRequest();
841 if (should_draw_into_render_pass) 843 if (should_draw_into_render_pass)
842 render_surface->AppendRenderPasses(frame); 844 render_surface->AppendRenderPasses(frame);
843 } 845 }
844 846
845 // Damage rects for non-root passes aren't meaningful, so set them to be 847 // Damage rects for non-root passes aren't meaningful, so set them to be
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
885 int64_t checkerboarded_needs_raster_content_area = 0; 887 int64_t checkerboarded_needs_raster_content_area = 0;
886 bool have_copy_request = 888 bool have_copy_request =
887 active_tree()->property_trees()->effect_tree.HasCopyRequests(); 889 active_tree()->property_trees()->effect_tree.HasCopyRequests();
888 bool have_missing_animated_tiles = false; 890 bool have_missing_animated_tiles = false;
889 891
890 LayerIterator end = LayerIterator::End(frame->render_surface_layer_list); 892 LayerIterator end = LayerIterator::End(frame->render_surface_layer_list);
891 for (LayerIterator it = 893 for (LayerIterator it =
892 LayerIterator::Begin(frame->render_surface_layer_list); 894 LayerIterator::Begin(frame->render_surface_layer_list);
893 it != end; ++it) { 895 it != end; ++it) {
894 auto target_render_pass_id = 896 auto target_render_pass_id =
895 it.target_render_surface_layer()->render_surface()->GetRenderPassId(); 897 it.target_render_surface_layer()->GetRenderSurface()->GetRenderPassId();
896 RenderPass* target_render_pass = 898 RenderPass* target_render_pass =
897 FindRenderPassById(frame->render_passes, target_render_pass_id); 899 FindRenderPassById(frame->render_passes, target_render_pass_id);
898 900
899 AppendQuadsData append_quads_data; 901 AppendQuadsData append_quads_data;
900 902
901 RenderSurfaceImpl* render_surface = it->render_surface(); 903 RenderSurfaceImpl* render_surface = it->GetRenderSurface();
902 if (it.represents_target_render_surface()) { 904 if (it.represents_target_render_surface()) {
903 if (render_surface->HasCopyRequest()) { 905 if (render_surface->HasCopyRequest()) {
904 active_tree() 906 active_tree()
905 ->property_trees() 907 ->property_trees()
906 ->effect_tree.TakeCopyRequestsAndTransformToSurface( 908 ->effect_tree.TakeCopyRequestsAndTransformToSurface(
907 render_surface->EffectTreeIndex(), 909 render_surface->EffectTreeIndex(),
908 &target_render_pass->copy_requests); 910 &target_render_pass->copy_requests);
909 } 911 }
910 } else if (it.represents_contributing_render_surface() && 912 } else if (it.represents_contributing_render_surface() &&
911 render_surface->contributes_to_drawn_surface()) { 913 render_surface->contributes_to_drawn_surface()) {
(...skipping 800 matching lines...) Expand 10 before | Expand all | Expand 10 after
1712 1714
1713 // Clears the list of swap promises after calling DidSwap on each of them to 1715 // Clears the list of swap promises after calling DidSwap on each of them to
1714 // signal that the swap is over. 1716 // signal that the swap is over.
1715 active_tree()->ClearSwapPromises(); 1717 active_tree()->ClearSwapPromises();
1716 1718
1717 // The next frame should start by assuming nothing has changed, and changes 1719 // The next frame should start by assuming nothing has changed, and changes
1718 // are noted as they occur. 1720 // are noted as they occur.
1719 // TODO(boliu): If we did a temporary software renderer frame, propogate the 1721 // TODO(boliu): If we did a temporary software renderer frame, propogate the
1720 // damage forward to the next frame. 1722 // damage forward to the next frame.
1721 for (size_t i = 0; i < frame->render_surface_layer_list->size(); i++) { 1723 for (size_t i = 0; i < frame->render_surface_layer_list->size(); i++) {
1722 auto* surface = (*frame->render_surface_layer_list)[i]->render_surface(); 1724 auto* surface = (*frame->render_surface_layer_list)[i]->GetRenderSurface();
1723 surface->damage_tracker()->DidDrawDamagedArea(); 1725 surface->damage_tracker()->DidDrawDamagedArea();
1724 } 1726 }
1725 active_tree_->ResetAllChangeTracking(); 1727 active_tree_->ResetAllChangeTracking();
1726 1728
1727 active_tree_->set_has_ever_been_drawn(true); 1729 active_tree_->set_has_ever_been_drawn(true);
1728 devtools_instrumentation::DidDrawFrame(id_); 1730 devtools_instrumentation::DidDrawFrame(id_);
1729 benchmark_instrumentation::IssueImplThreadRenderingStatsEvent( 1731 benchmark_instrumentation::IssueImplThreadRenderingStatsEvent(
1730 rendering_stats_instrumentation_->impl_thread_rendering_stats()); 1732 rendering_stats_instrumentation_->impl_thread_rendering_stats());
1731 rendering_stats_instrumentation_->AccumulateAndClearImplThreadStats(); 1733 rendering_stats_instrumentation_->AccumulateAndClearImplThreadStats();
1732 return true; 1734 return true;
(...skipping 2405 matching lines...) Expand 10 before | Expand all | Expand 10 after
4138 worker_context_visibility_ = 4140 worker_context_visibility_ =
4139 worker_context->CacheController()->ClientBecameVisible(); 4141 worker_context->CacheController()->ClientBecameVisible();
4140 } else { 4142 } else {
4141 worker_context->CacheController()->ClientBecameNotVisible( 4143 worker_context->CacheController()->ClientBecameNotVisible(
4142 std::move(worker_context_visibility_)); 4144 std::move(worker_context_visibility_));
4143 } 4145 }
4144 } 4146 }
4145 } 4147 }
4146 4148
4147 } // namespace cc 4149 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_common_unittest.cc ('k') | cc/trees/layer_tree_host_impl_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698