summaryrefslogtreecommitdiffstats
path: root/cc/layer_tree_host_impl.cc
diff options
context:
space:
mode:
authoregraether@chromium.org <egraether@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-08 19:02:02 +0000
committeregraether@chromium.org <egraether@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-08 19:02:02 +0000
commitd0d12196a9702ddda30a128df619685f86d6bc17 (patch)
treebe5a3d1dceac80bae0d796aeb0dff25123d305f9 /cc/layer_tree_host_impl.cc
parentf6562c1c8b7867b48622b82ad44c84ba50599011 (diff)
downloadchromium_src-d0d12196a9702ddda30a128df619685f86d6bc17.zip
chromium_src-d0d12196a9702ddda30a128df619685f86d6bc17.tar.gz
chromium_src-d0d12196a9702ddda30a128df619685f86d6bc17.tar.bz2
cc: Make recordRenderingStats on TileManager toggleable
This change removes the recordRenderingStats parameter from the TileManager's constructor and adds the method TileManager::SetRecordRenderingStats(). This allows for turning rendering stats collection on and off, which is used in continuous painting mode. BUG=174364 Review URL: https://chromiumcodereview.appspot.com/12223032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181531 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/layer_tree_host_impl.cc')
-rw-r--r--cc/layer_tree_host_impl.cc17
1 files changed, 14 insertions, 3 deletions
diff --git a/cc/layer_tree_host_impl.cc b/cc/layer_tree_host_impl.cc
index 23d3a2e..ba996e1 100644
--- a/cc/layer_tree_host_impl.cc
+++ b/cc/layer_tree_host_impl.cc
@@ -140,7 +140,6 @@ LayerTreeHostImpl::LayerTreeHostImpl(const LayerTreeSettings& settings, LayerTre
, m_shouldBubbleScrolls(false)
, m_wheelScrolling(false)
, m_settings(settings)
- , m_debugState(settings.initialDebugState)
, m_deviceScaleFactor(1)
, m_visible(true)
, m_managedMemoryPolicy(PrioritizedResourceManager::defaultMemoryAllocationLimit(),
@@ -167,6 +166,8 @@ LayerTreeHostImpl::LayerTreeHostImpl(const LayerTreeSettings& settings, LayerTre
if (settings.calculateTopControlsPosition)
m_topControlsManager = TopControlsManager::Create(this, settings.topControlsHeight);
+ setDebugState(settings.initialDebugState);
+
// LTHI always has an active tree.
m_activeTree = LayerTreeImpl::create(this);
}
@@ -1054,8 +1055,10 @@ bool LayerTreeHostImpl::initializeRenderer(scoped_ptr<OutputSurface> outputSurfa
if (!resourceProvider)
return false;
- if (m_settings.implSidePainting)
- m_tileManager.reset(new TileManager(this, resourceProvider.get(), m_settings.numRasterThreads, m_debugState.recordRenderingStats(), m_settings.useCheapnessEstimator));
+ if (m_settings.implSidePainting) {
+ m_tileManager.reset(new TileManager(this, resourceProvider.get(), m_settings.numRasterThreads, m_settings.useCheapnessEstimator));
+ m_tileManager->SetRecordRenderingStats(m_debugState.recordRenderingStats());
+ }
if (outputSurface->Capabilities().has_parent_compositor)
m_renderer = DelegatingRenderer::Create(this, outputSurface.get(), resourceProvider.get());
@@ -1705,6 +1708,14 @@ skia::RefPtr<SkPicture> LayerTreeHostImpl::capturePicture()
return layer ? layer->getPicture() : skia::RefPtr<SkPicture>();
}
+void LayerTreeHostImpl::setDebugState(const LayerTreeDebugState& debugState)
+{
+ m_debugState = debugState;
+
+ if (m_tileManager)
+ m_tileManager->SetRecordRenderingStats(m_debugState.recordRenderingStats());
+}
+
void LayerTreeHostImpl::savePaintTime(const base::TimeDelta& totalPaintTime)
{
m_paintTimeCounter->SavePaintTime(totalPaintTime);