diff options
| author | 2015-02-19 16:10:43 -0800 | |
|---|---|---|
| committer | 2015-04-07 11:11:43 -0700 | |
| commit | 1c2001efcf56d7f65242249fa4e5833f03a68e37 (patch) | |
| tree | 79227b4adfac5c3aa4d7ef31bcfce17acc42acf0 /libs/gui/GLConsumer.cpp | |
| parent | 2d4cf62a2cdfbfbbca5757eb7dd1498d118bf7c9 (diff) | |
Cherry-pick dataSpace and BufferItem changes
Add dataSpace to buffer queues; remove old format enums.
(cherry picked from commit 82c6bcc9705eabcaf5b9e45bc81867b0e2d61a02)
libgui: Prepare for IGBC::BufferItem removal
(cherry picked from commit cf3834db104e0b052056e3a06d46e3f222f0d372)
SurfaceFlinger: Stop using IGBC::BufferItem
(cherry picked from commit 11611f9be590480d7ea27bf0153558573ddcded2)
Change-Id: Ic2e4770b916d2d1477e5ce98c4b49a0072ea03ff
(cherry picked from commit 6c450101753d0219b151e79007bcded1bfbb058b)
Diffstat (limited to 'libs/gui/GLConsumer.cpp')
| -rw-r--r-- | libs/gui/GLConsumer.cpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/libs/gui/GLConsumer.cpp b/libs/gui/GLConsumer.cpp index a0f68b4c1f..d256ae5389 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 @@ status_t GLConsumer::updateTexImage() { 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 @@ sp<GraphicBuffer> GLConsumer::getDebugTexImageBuffer() { 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 @@ status_t GLConsumer::acquireBufferLocked(BufferQueue::BufferItem *item, 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) { @@ -1023,6 +1035,12 @@ status_t GLConsumer::setDefaultBufferFormat(PixelFormat defaultFormat) { return mConsumer->setDefaultBufferFormat(defaultFormat); } +status_t GLConsumer::setDefaultBufferDataSpace( + android_dataspace defaultDataSpace) { + Mutex::Autolock lock(mMutex); + return mConsumer->setDefaultBufferDataSpace(defaultDataSpace); +} + status_t GLConsumer::setConsumerUsageBits(uint32_t usage) { Mutex::Autolock lock(mMutex); usage |= DEFAULT_USAGE_FLAGS; |