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

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

Issue 799863004: not for commit/review (thread cost tracker) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years 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_impl.h ('k') | no next file » | 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 <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after
295 CreatePendingTree(); 295 CreatePendingTree();
296 } 296 }
297 297
298 void LayerTreeHostImpl::CommitComplete() { 298 void LayerTreeHostImpl::CommitComplete() {
299 TRACE_EVENT0("cc", "LayerTreeHostImpl::CommitComplete"); 299 TRACE_EVENT0("cc", "LayerTreeHostImpl::CommitComplete");
300 300
301 if (pending_tree_) 301 if (pending_tree_)
302 pending_tree_->ApplyScrollDeltasSinceBeginMainFrame(); 302 pending_tree_->ApplyScrollDeltasSinceBeginMainFrame();
303 sync_tree()->set_needs_update_draw_properties(); 303 sync_tree()->set_needs_update_draw_properties();
304 304
305 frame_timing_cost_tracker_.ResetCost();
306 frame_timing_cost_tracker_.Start(sync_tree()->source_frame_number());
305 if (settings_.impl_side_painting) { 307 if (settings_.impl_side_painting) {
306 // Impl-side painting needs an update immediately post-commit to have the 308 // Impl-side painting needs an update immediately post-commit to have the
307 // opportunity to create tilings. Other paths can call UpdateDrawProperties 309 // opportunity to create tilings. Other paths can call UpdateDrawProperties
308 // more lazily when needed prior to drawing. 310 // more lazily when needed prior to drawing.
309 sync_tree()->UpdateDrawProperties(); 311 sync_tree()->UpdateDrawProperties();
310 // Start working on newly created tiles immediately if needed. 312 // Start working on newly created tiles immediately if needed.
311 if (tile_manager_ && tile_priorities_dirty_) 313 if (tile_manager_ && tile_priorities_dirty_)
312 PrepareTiles(); 314 PrepareTiles();
313 else 315 else
314 NotifyReadyToActivate(); 316 NotifyReadyToActivate();
(...skipping 1516 matching lines...) Expand 10 before | Expand all | Expand 10 after
1831 1833
1832 scoped_ptr<PendingPageScaleAnimation> pending_page_scale_animation = 1834 scoped_ptr<PendingPageScaleAnimation> pending_page_scale_animation =
1833 active_tree_->TakePendingPageScaleAnimation(); 1835 active_tree_->TakePendingPageScaleAnimation();
1834 if (pending_page_scale_animation) { 1836 if (pending_page_scale_animation) {
1835 StartPageScaleAnimation( 1837 StartPageScaleAnimation(
1836 pending_page_scale_animation->target_offset, 1838 pending_page_scale_animation->target_offset,
1837 pending_page_scale_animation->use_anchor, 1839 pending_page_scale_animation->use_anchor,
1838 pending_page_scale_animation->scale, 1840 pending_page_scale_animation->scale,
1839 pending_page_scale_animation->duration); 1841 pending_page_scale_animation->duration);
1840 } 1842 }
1843
1844 // frame_timing_cost_tracker_.GetTotalCost().InSecondsF());
1841 } 1845 }
1842 1846
1843 void LayerTreeHostImpl::SetVisible(bool visible) { 1847 void LayerTreeHostImpl::SetVisible(bool visible) {
1844 DCHECK(proxy_->IsImplThread()); 1848 DCHECK(proxy_->IsImplThread());
1845 1849
1846 if (visible_ == visible) 1850 if (visible_ == visible)
1847 return; 1851 return;
1848 visible_ = visible; 1852 visible_ = visible;
1849 DidVisibilityChange(this, visible_); 1853 DidVisibilityChange(this, visible_);
1850 EnforceManagedMemoryPolicy(ActualManagedMemoryPolicy()); 1854 EnforceManagedMemoryPolicy(ActualManagedMemoryPolicy());
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
1959 1963
1960 base::SingleThreadTaskRunner* task_runner = 1964 base::SingleThreadTaskRunner* task_runner =
1961 proxy_->HasImplThread() ? proxy_->ImplThreadTaskRunner() 1965 proxy_->HasImplThread() ? proxy_->ImplThreadTaskRunner()
1962 : proxy_->MainThreadTaskRunner(); 1966 : proxy_->MainThreadTaskRunner();
1963 DCHECK(task_runner); 1967 DCHECK(task_runner);
1964 size_t scheduled_raster_task_limit = 1968 size_t scheduled_raster_task_limit =
1965 IsSynchronousSingleThreaded() ? std::numeric_limits<size_t>::max() 1969 IsSynchronousSingleThreaded() ? std::numeric_limits<size_t>::max()
1966 : settings_.scheduled_raster_task_limit; 1970 : settings_.scheduled_raster_task_limit;
1967 tile_manager_ = TileManager::Create( 1971 tile_manager_ = TileManager::Create(
1968 this, task_runner, resource_pool_.get(), 1972 this, task_runner, resource_pool_.get(),
1969 tile_task_worker_pool_->AsTileTaskRunner(), scheduled_raster_task_limit); 1973 tile_task_worker_pool_->AsTileTaskRunner(), scheduled_raster_task_limit,
1974 frame_timing_cost_tracker_.GetWorkerThreadCostTracker());
1970 1975
1971 UpdateTileManagerMemoryPolicy(ActualManagedMemoryPolicy()); 1976 UpdateTileManagerMemoryPolicy(ActualManagedMemoryPolicy());
1972 } 1977 }
1973 1978
1974 void LayerTreeHostImpl::CreateResourceAndTileTaskWorkerPool( 1979 void LayerTreeHostImpl::CreateResourceAndTileTaskWorkerPool(
1975 scoped_ptr<TileTaskWorkerPool>* tile_task_worker_pool, 1980 scoped_ptr<TileTaskWorkerPool>* tile_task_worker_pool,
1976 scoped_ptr<ResourcePool>* resource_pool, 1981 scoped_ptr<ResourcePool>* resource_pool,
1977 scoped_ptr<ResourcePool>* staging_resource_pool) { 1982 scoped_ptr<ResourcePool>* staging_resource_pool) {
1978 base::SingleThreadTaskRunner* task_runner = 1983 base::SingleThreadTaskRunner* task_runner =
1979 proxy_->HasImplThread() ? proxy_->ImplThreadTaskRunner() 1984 proxy_->HasImplThread() ? proxy_->ImplThreadTaskRunner()
(...skipping 1497 matching lines...) Expand 10 before | Expand all | Expand 10 after
3477 } 3482 }
3478 3483
3479 void LayerTreeHostImpl::UnregisterPictureLayerImpl(PictureLayerImpl* layer) { 3484 void LayerTreeHostImpl::UnregisterPictureLayerImpl(PictureLayerImpl* layer) {
3480 std::vector<PictureLayerImpl*>::iterator it = 3485 std::vector<PictureLayerImpl*>::iterator it =
3481 std::find(picture_layers_.begin(), picture_layers_.end(), layer); 3486 std::find(picture_layers_.begin(), picture_layers_.end(), layer);
3482 DCHECK(it != picture_layers_.end()); 3487 DCHECK(it != picture_layers_.end());
3483 picture_layers_.erase(it); 3488 picture_layers_.erase(it);
3484 } 3489 }
3485 3490
3486 } // namespace cc 3491 } // namespace cc
OLDNEW
« no previous file with comments | « cc/trees/layer_tree_host_impl.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698