diff options
author | Jamie Gennis <jgennis@google.com> | 2010-11-02 11:51:32 -0700 |
---|---|---|
committer | Jamie Gennis <jgennis@google.com> | 2010-11-11 14:06:38 -0800 |
commit | 6c925d00e131e40811897e0ddc332d6f5bc83178 (patch) | |
tree | 813fca5b0cff6cdc7e2a6c15a12b3ae777b12d3d /include | |
parent | 0b440fc34da7f53fcec24cc8c907b959218b957d (diff) | |
download | frameworks_base-6c925d00e131e40811897e0ddc332d6f5bc83178.zip frameworks_base-6c925d00e131e40811897e0ddc332d6f5bc83178.tar.gz frameworks_base-6c925d00e131e40811897e0ddc332d6f5bc83178.tar.bz2 |
Implement reducing the buffer count of a Surface.
Change-Id: I7f979c60c06d654aa8265002836277434bc1a64f
Bug: 3095167
Diffstat (limited to 'include')
-rw-r--r-- | include/private/surfaceflinger/SharedBufferStack.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/private/surfaceflinger/SharedBufferStack.h b/include/private/surfaceflinger/SharedBufferStack.h index d6ae5e9..9d589cf 100644 --- a/include/private/surfaceflinger/SharedBufferStack.h +++ b/include/private/surfaceflinger/SharedBufferStack.h @@ -285,6 +285,8 @@ public: uint32_t getTransform(int buffer) const; status_t resize(int newNumBuffers); + status_t grow(int newNumBuffers); + status_t shrink(int newNumBuffers); SharedBufferStack::Statistics getStats() const; @@ -346,6 +348,14 @@ private: int mNumBuffers; BufferList mBufferList; + struct BuffersAvailableCondition : public ConditionBase { + int mNumBuffers; + inline BuffersAvailableCondition(SharedBufferServer* sbs, + int numBuffers); + inline bool operator()() const; + inline const char* name() const { return "BuffersAvailableCondition"; } + }; + struct UnlockUpdate : public UpdateBase { const int lockedBuffer; inline UnlockUpdate(SharedBufferBase* sbb, int lockedBuffer); |