summaryrefslogtreecommitdiff
path: root/include/gui/ConsumerBase.h
diff options
context:
space:
mode:
author Jesse Hall <jessehall@google.com> 2014-03-03 15:42:54 -0800
committer Jesse Hall <jessehall@google.com> 2014-03-11 12:23:14 -0700
commit399184a4cd728ea1421fb0bc1722274a29e38f4a (patch)
tree7185bc1ac84eec1afebc221ed91d90b90fa9a7fb /include/gui/ConsumerBase.h
parent05fe2d1cfbf580c04ef1b1f0130b5dccba6dfe33 (diff)
Add sideband streams to BufferQueue and related classes
Sideband streams are essentially a device-specific buffer queue that bypasses the BufferQueue system. They can be used for situations with hard real-time requirements like high-quality TV and video playback with A/V sync. A handle to the stream is provided by the source HAL, and attached to a BufferQueue. The sink HAL can read buffers via the stream handle rather than acquiring individual buffers from the BufferQueue. Change-Id: Ib3f262eddfc520f4bbe3d9b91753ed7dd09d3a9b
Diffstat (limited to 'include/gui/ConsumerBase.h')
-rw-r--r--include/gui/ConsumerBase.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/include/gui/ConsumerBase.h b/include/gui/ConsumerBase.h
index fb21185fd7..100bb260f9 100644
--- a/include/gui/ConsumerBase.h
+++ b/include/gui/ConsumerBase.h
@@ -101,11 +101,14 @@ protected:
// Implementation of the IConsumerListener interface. These
// calls are used to notify the ConsumerBase of asynchronous events in the
- // BufferQueue. These methods should not need to be overridden by derived
- // classes, but if they are overridden the ConsumerBase implementation
- // must be called from the derived class.
+ // BufferQueue. The onFrameAvailable and onBuffersReleased methods should
+ // not need to be overridden by derived classes, but if they are overridden
+ // the ConsumerBase implementation must be called from the derived class.
+ // The ConsumerBase version of onSidebandStreamChanged does nothing and can
+ // be overriden by derived classes if they want the notification.
virtual void onFrameAvailable();
virtual void onBuffersReleased();
+ virtual void onSidebandStreamChanged();
// freeBufferLocked frees up the given buffer slot. If the slot has been
// initialized this will release the reference to the GraphicBuffer in that