From 2a9fc493dfdba67108e4335bb1fe931bc1e2a025 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Fri, 1 Mar 2013 13:42:57 -0800 Subject: rework screenshot API and implementation - SurfaceFlinger now supports to take a screenshot directly into an IGraphicBufferProducer - reimplement the IMemoryHeap screenshot on top of the above - reimplement LayerScreenshot such that its BufferQueue is directly used as the destination of the screenshot. LayerScreenshot is now a thin wrapper around Layer Bug: 6940974 Change-Id: I69a2096b44b91acbb99eba16f83a9c78d94e0d10 --- include/gui/SurfaceComposerClient.h | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'include/gui/SurfaceComposerClient.h') diff --git a/include/gui/SurfaceComposerClient.h b/include/gui/SurfaceComposerClient.h index 9e4d6fc301..38c931d230 100644 --- a/include/gui/SurfaceComposerClient.h +++ b/include/gui/SurfaceComposerClient.h @@ -156,10 +156,19 @@ private: class ScreenshotClient { +public: + static status_t capture( + const sp& display, + const sp& producer, + uint32_t reqWidth, uint32_t reqHeight, + uint32_t minLayerZ, uint32_t maxLayerZ); + +private: sp mHeap; uint32_t mWidth; uint32_t mHeight; PixelFormat mFormat; + public: ScreenshotClient(); -- cgit v1.2.3-59-g8ed1b