diff options
Diffstat (limited to 'services/surfaceflinger/Layer.cpp')
-rw-r--r-- | services/surfaceflinger/Layer.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/services/surfaceflinger/Layer.cpp b/services/surfaceflinger/Layer.cpp index 52211c2..7f2ce2b 100644 --- a/services/surfaceflinger/Layer.cpp +++ b/services/surfaceflinger/Layer.cpp @@ -104,6 +104,10 @@ Layer::Layer(SurfaceFlinger* flinger, const sp<Client>& client, // drawing state & current state are identical mDrawingState = mCurrentState; + + nsecs_t displayPeriod = + flinger->getHwComposer().getRefreshPeriod(HWC_DISPLAY_PRIMARY); + mFrameTracker.setDisplayRefreshPeriod(displayPeriod); } void Layer::onFirstRef() @@ -134,6 +138,7 @@ Layer::~Layer() { c->detachLayer(this); } mFlinger->deleteTextureAsync(mTextureName); + mFrameTracker.logAndResetStats(mName); } // --------------------------------------------------------------------------- @@ -1179,6 +1184,10 @@ void Layer::clearStats() { mFrameTracker.clear(); } +void Layer::logFrameStats() { + mFrameTracker.logAndResetStats(mName); +} + // --------------------------------------------------------------------------- Layer::LayerCleaner::LayerCleaner(const sp<SurfaceFlinger>& flinger, |