diff options
author | Jamie Gennis <jgennis@google.com> | 2010-12-20 11:21:07 -0800 |
---|---|---|
committer | Jamie Gennis <jgennis@google.com> | 2011-01-06 13:12:35 -0800 |
commit | 0a53d5c81b5553d6063b8133492275ce88186978 (patch) | |
tree | dc6573bc4f7011bc5e7be5e6a976f684e52ac061 /include/surfaceflinger | |
parent | 42edf0f8cf8ca85dd5010558ff399e2c9a4c779c (diff) | |
download | frameworks_base-0a53d5c81b5553d6063b8133492275ce88186978.zip frameworks_base-0a53d5c81b5553d6063b8133492275ce88186978.tar.gz frameworks_base-0a53d5c81b5553d6063b8133492275ce88186978.tar.bz2 |
Add the ISurfaceComposer::createGraphicBuffer IPC.
This change adds a new binder method to the ISurfaceComposer interface.
This IPC is intended to allow SurfaceFlinger clients to allocate gralloc
buffers using SurfaceFlinger as a proxy to gralloc.
Change-Id: Ide9fc283aec5da6268ba62cfed0c3319a50b640d
Diffstat (limited to 'include/surfaceflinger')
-rw-r--r-- | include/surfaceflinger/ISurfaceComposer.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/surfaceflinger/ISurfaceComposer.h b/include/surfaceflinger/ISurfaceComposer.h index 693fbfb..1bab7d7 100644 --- a/include/surfaceflinger/ISurfaceComposer.h +++ b/include/surfaceflinger/ISurfaceComposer.h @@ -131,6 +131,13 @@ public: * This is an ASYNCHRONOUS call. */ virtual void signal() const = 0; + + /* Create a new GraphicBuffer for the client to use. SurfaceFlinger will + * not maintain a reference to the GraphicBuffer, so the underlying native + * handle will be freed once the client references are released. + */ + virtual sp<GraphicBuffer> createGraphicBuffer(uint32_t w, uint32_t h, + PixelFormat format, uint32_t usage) const = 0; }; // ---------------------------------------------------------------------------- @@ -144,6 +151,7 @@ public: BOOT_FINISHED = IBinder::FIRST_CALL_TRANSACTION, CREATE_CONNECTION, CREATE_CLIENT_CONNECTION, + CREATE_GRAPHIC_BUFFER, GET_CBLK, OPEN_GLOBAL_TRANSACTION, CLOSE_GLOBAL_TRANSACTION, |