diff options
| author | 2019-10-31 21:11:44 +0000 | |
|---|---|---|
| committer | 2019-10-31 21:11:44 +0000 | |
| commit | fc32b21744509a059a60148343d2041600cb6067 (patch) | |
| tree | d80b571a468b96cba1c22656b125283f37de3d9d | |
| parent | a6a6ee5e1acd97b9f4abccb7b0684286356c33b2 (diff) | |
| parent | 7dbf76d53626e356b17f21852fe305eaeb162cbe (diff) | |
Merge "Add implementation for onFrameDetached and onFrameCancelled"
| -rw-r--r-- | services/surfaceflinger/BufferQueueLayer.cpp | 17 | ||||
| -rw-r--r-- | services/surfaceflinger/BufferQueueLayer.h | 2 |
2 files changed, 17 insertions, 2 deletions
diff --git a/services/surfaceflinger/BufferQueueLayer.cpp b/services/surfaceflinger/BufferQueueLayer.cpp index c24cdaa617..dc61e498df 100644 --- a/services/surfaceflinger/BufferQueueLayer.cpp +++ b/services/surfaceflinger/BufferQueueLayer.cpp @@ -374,13 +374,26 @@ void BufferQueueLayer::latchPerFrameState( void BufferQueueLayer::onFrameDequeued(const uint64_t bufferId) { const int32_t layerID = getSequence(); + mFlinger->mFrameTracer->traceNewLayer(layerID, getName().c_str()); mFlinger->mFrameTracer->traceTimestamp(layerID, bufferId, FrameTracer::UNSPECIFIED_FRAME_NUMBER, - systemTime(), FrameTracer::FrameEvent::DEQUEUE, 3000); + systemTime(), FrameTracer::FrameEvent::DEQUEUE); } -void BufferQueueLayer::onFrameAvailable(const BufferItem& item) { +void BufferQueueLayer::onFrameDetached(const uint64_t bufferId) { const int32_t layerID = getSequence(); mFlinger->mFrameTracer->traceNewLayer(layerID, getName().c_str()); + mFlinger->mFrameTracer->traceTimestamp(layerID, bufferId, FrameTracer::UNSPECIFIED_FRAME_NUMBER, + systemTime(), FrameTracer::FrameEvent::DETACH); +} + +void BufferQueueLayer::onFrameCancelled(const uint64_t bufferId) { + const int32_t layerID = getSequence(); + mFlinger->mFrameTracer->traceTimestamp(layerID, bufferId, FrameTracer::UNSPECIFIED_FRAME_NUMBER, + systemTime(), FrameTracer::FrameEvent::CANCEL); +} + +void BufferQueueLayer::onFrameAvailable(const BufferItem& item) { + const int32_t layerID = getSequence(); mFlinger->mFrameTracer->traceTimestamp(layerID, item.mGraphicBuffer->getId(), item.mFrameNumber, systemTime(), FrameTracer::FrameEvent::QUEUE); diff --git a/services/surfaceflinger/BufferQueueLayer.h b/services/surfaceflinger/BufferQueueLayer.h index 95e0b106d4..1b1fccd392 100644 --- a/services/surfaceflinger/BufferQueueLayer.h +++ b/services/surfaceflinger/BufferQueueLayer.h @@ -94,6 +94,8 @@ protected: void onFrameReplaced(const BufferItem& item) override; void onSidebandStreamChanged() override; void onFrameDequeued(const uint64_t bufferId) override; + void onFrameDetached(const uint64_t bufferId) override; + void onFrameCancelled(const uint64_t bufferId) override; // ----------------------------------------------------------------------- public: |