Add BufferItemConsumer, a simple BufferQueue consumer.
BufferItemConsumer allows for acquiring BufferQueue's BufferItems,
which contain all the data and metadata the BufferQueue has for a
given graphics buffer.
This consumer is useful when direct access to the native buffer_handles
is needed by the client.
Also includes a minor cleanup of CpuConsumer's use of 'virtual'.
Bug: 6243944
Change-Id: If7dc4192b15ac499555f1eda42a85140f2434795
diff --git a/include/gui/CpuConsumer.h b/include/gui/CpuConsumer.h
index 49c90db..807a4b5 100644
--- a/include/gui/CpuConsumer.h
+++ b/include/gui/CpuConsumer.h
@@ -59,6 +59,8 @@
// how many buffers can be locked for user access at the same time.
CpuConsumer(uint32_t maxLockedBuffers);
+ virtual ~CpuConsumer();
+
// set the name of the CpuConsumer that will be used to identify it in
// log messages.
void setName(const String8& name);
@@ -86,7 +88,7 @@
// Maximum number of buffers that can be locked at a time
uint32_t mMaxLockedBuffers;
- void freeBufferLocked(int slotIndex);
+ virtual void freeBufferLocked(int slotIndex);
// Array for tracking pointers passed to the consumer, matching the
// mSlots indexing