summaryrefslogtreecommitdiffstats
path: root/services/surfaceflinger/MonitoredProducer.h
diff options
context:
space:
mode:
authorDan Stoza <stoza@google.com>2014-03-28 15:25:31 -0700
committerDan Stoza <stoza@google.com>2014-04-15 10:27:25 -0700
commitd9822a3843017444364899afc3c23fb5be6b9cb9 (patch)
tree563f14d7526d30eebe5913d66ed150609c2796eb /services/surfaceflinger/MonitoredProducer.h
parent7f605bd4c09e2b086e69751491e25e98f4a0eb98 (diff)
downloadframeworks_native-d9822a3843017444364899afc3c23fb5be6b9cb9.zip
frameworks_native-d9822a3843017444364899afc3c23fb5be6b9cb9.tar.gz
frameworks_native-d9822a3843017444364899afc3c23fb5be6b9cb9.tar.bz2
BufferQueueProducer: add detachNextBuffer
Adds a new method, IGBP::detachNextBuffer, that effectively does dequeue + request + detach in a single call, but does not need to know anything about the dequeued buffer, and will not block on dequeue. This is mostly for the upcoming StreamSplitter to use in its onBufferReleased callback. Change-Id: Ie88a69de109003acebaa486a5b44c8a455726550
Diffstat (limited to 'services/surfaceflinger/MonitoredProducer.h')
-rw-r--r--services/surfaceflinger/MonitoredProducer.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/services/surfaceflinger/MonitoredProducer.h b/services/surfaceflinger/MonitoredProducer.h
index 1e6431e..f034e39 100644
--- a/services/surfaceflinger/MonitoredProducer.h
+++ b/services/surfaceflinger/MonitoredProducer.h
@@ -39,6 +39,8 @@ public:
virtual status_t dequeueBuffer(int* slot, sp<Fence>* fence, bool async,
uint32_t w, uint32_t h, uint32_t format, uint32_t usage);
virtual status_t detachBuffer(int slot);
+ virtual status_t detachNextBuffer(sp<GraphicBuffer>* outBuffer,
+ sp<Fence>* outFence);
virtual status_t attachBuffer(int* outSlot,
const sp<GraphicBuffer>& buffer);
virtual status_t queueBuffer(int slot, const QueueBufferInput& input,