libgui: Prepare for IGBC::BufferItem removal
Switches some dependencies from IGraphicBufferConsumer::BufferItem to
android::BufferItem and adds some methods to facilitate incrementally
changing client code to do the same.
Change-Id: I699ed0a6837076867ca756b28d1ffb2238f7a0d9
diff --git a/libs/gui/GLConsumer.cpp b/libs/gui/GLConsumer.cpp
index 21bb4c4..d256ae5 100644
--- a/libs/gui/GLConsumer.cpp
+++ b/libs/gui/GLConsumer.cpp
@@ -29,6 +29,7 @@
#include <hardware/hardware.h>
+#include <gui/BufferItem.h>
#include <gui/GLConsumer.h>
#include <gui/IGraphicBufferAlloc.h>
#include <gui/ISurfaceComposer.h>
@@ -210,7 +211,7 @@
return err;
}
- BufferQueue::BufferItem item;
+ BufferItem item;
// Acquire the next buffer.
// In asynchronous mode the list is guaranteed to be one buffer
@@ -342,7 +343,7 @@
return sReleasedTexImageBuffer;
}
-status_t GLConsumer::acquireBufferLocked(BufferQueue::BufferItem *item,
+status_t GLConsumer::acquireBufferLocked(BufferItem *item,
nsecs_t presentWhen) {
status_t err = ConsumerBase::acquireBufferLocked(item, presentWhen);
if (err != NO_ERROR) {
@@ -360,6 +361,17 @@
return NO_ERROR;
}
+status_t GLConsumer::acquireBufferLocked(BufferQueue::BufferItem *outItem,
+ nsecs_t presentWhen) {
+ BufferItem item;
+ status_t result = acquireBufferLocked(&item, presentWhen);
+ if (result != NO_ERROR) {
+ return result;
+ }
+ *outItem = item;
+ return NO_ERROR;
+}
+
status_t GLConsumer::releaseBufferLocked(int buf,
sp<GraphicBuffer> graphicBuffer,
EGLDisplay display, EGLSyncKHR eglFence) {