diff options
author | Jamie Gennis <jgennis@google.com> | 2011-02-27 14:10:20 -0800 |
---|---|---|
committer | Jamie Gennis <jgennis@google.com> | 2011-02-28 12:24:40 -0800 |
commit | 96dcc978430f0daf6d73fee96a01779ed537a0ce (patch) | |
tree | 683c5986dd007030e5a98e57aa6c0764d19da51b /include/gui | |
parent | 8e79442c4fdabd2f82d0ed8e23d394816edee495 (diff) | |
download | frameworks_base-96dcc978430f0daf6d73fee96a01779ed537a0ce.zip frameworks_base-96dcc978430f0daf6d73fee96a01779ed537a0ce.tar.gz frameworks_base-96dcc978430f0daf6d73fee96a01779ed537a0ce.tar.bz2 |
Add the MIN_UNDEQUEUED_BUFFERS query to ANW.
This change adds a new query to ANativeWindow for getting the minimum
number of buffers that must be left un-dequeued during the steady-state
operation of the ANativeWindow.
Change-Id: Ie8c461fc26b02ecde02ddb4f95bf763662cf1551
Related-Bug: 3356050
Diffstat (limited to 'include/gui')
-rw-r--r-- | include/gui/SurfaceTexture.h | 3 | ||||
-rw-r--r-- | include/gui/SurfaceTextureClient.h | 25 |
2 files changed, 15 insertions, 13 deletions
diff --git a/include/gui/SurfaceTexture.h b/include/gui/SurfaceTexture.h index 31615d0..9bf38f7 100644 --- a/include/gui/SurfaceTexture.h +++ b/include/gui/SurfaceTexture.h @@ -37,7 +37,8 @@ class IGraphicBufferAlloc; class SurfaceTexture : public BnSurfaceTexture { public: - enum { MIN_BUFFER_SLOTS = 3 }; + enum { MIN_UNDEQUEUED_BUFFERS = 2 }; + enum { MIN_BUFFER_SLOTS = MIN_UNDEQUEUED_BUFFERS + 1 }; enum { NUM_BUFFER_SLOTS = 32 }; struct FrameAvailableListener : public virtual RefBase { diff --git a/include/gui/SurfaceTextureClient.h b/include/gui/SurfaceTextureClient.h index ff2251d..4cdece9 100644 --- a/include/gui/SurfaceTextureClient.h +++ b/include/gui/SurfaceTextureClient.h @@ -40,40 +40,41 @@ private: SurfaceTextureClient(const SurfaceTextureClient& rhs); // ANativeWindow hooks - static int setSwapInterval(ANativeWindow* window, int interval); - static int dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer); static int cancelBuffer(ANativeWindow* window, android_native_buffer_t* buffer); + static int dequeueBuffer(ANativeWindow* window, android_native_buffer_t** buffer); static int lockBuffer(ANativeWindow* window, android_native_buffer_t* buffer); - static int queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer); - static int query(ANativeWindow* window, int what, int* value); static int perform(ANativeWindow* window, int operation, ...); + static int query(ANativeWindow* window, int what, int* value); + static int queueBuffer(ANativeWindow* window, android_native_buffer_t* buffer); + static int setSwapInterval(ANativeWindow* window, int interval); - int setSwapInterval(int interval); + int cancelBuffer(android_native_buffer_t* buffer); int dequeueBuffer(android_native_buffer_t** buffer); int lockBuffer(android_native_buffer_t* buffer); - int queueBuffer(android_native_buffer_t* buffer); - int cancelBuffer(android_native_buffer_t* buffer); - int query(int what, int* value); int perform(int operation, va_list args); + int query(int what, int* value); + int queueBuffer(android_native_buffer_t* buffer); + int setSwapInterval(int interval); - int dispatchSetUsage(va_list args); int dispatchConnect(va_list args); int dispatchDisconnect(va_list args); - int dispatchSetCrop(va_list args); int dispatchSetBufferCount(va_list args); int dispatchSetBuffersGeometry(va_list args); int dispatchSetBuffersTransform(va_list args); + int dispatchSetCrop(va_list args); + int dispatchSetUsage(va_list args); int connect(int api); int disconnect(int api); - int setUsage(uint32_t reqUsage); - int setCrop(Rect const* rect); int setBufferCount(int bufferCount); int setBuffersGeometry(int w, int h, int format); int setBuffersTransform(int transform); + int setCrop(Rect const* rect); + int setUsage(uint32_t reqUsage); void freeAllBuffers(); + enum { MIN_UNDEQUEUED_BUFFERS = SurfaceTexture::MIN_UNDEQUEUED_BUFFERS }; enum { MIN_BUFFER_SLOTS = SurfaceTexture::MIN_BUFFER_SLOTS }; enum { NUM_BUFFER_SLOTS = SurfaceTexture::NUM_BUFFER_SLOTS }; enum { DEFAULT_FORMAT = PIXEL_FORMAT_RGBA_8888 }; |