summaryrefslogtreecommitdiffstats
path: root/include/ui/ISurface.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/ui/ISurface.h')
-rw-r--r--include/ui/ISurface.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/include/ui/ISurface.h b/include/ui/ISurface.h
index 87b320f..2ca0026 100644
--- a/include/ui/ISurface.h
+++ b/include/ui/ISurface.h
@@ -21,11 +21,12 @@
#include <sys/types.h>
#include <utils/Errors.h>
-#include <utils/IInterface.h>
+#include <binder/IInterface.h>
#include <utils/RefBase.h>
#include <ui/PixelFormat.h>
#include <hardware/hardware.h>
+#include <hardware/gralloc.h>
namespace android {
@@ -33,6 +34,7 @@ typedef int32_t SurfaceID;
class IMemoryHeap;
class OverlayRef;
+class GraphicBuffer;
class ISurface : public IInterface
{
@@ -42,11 +44,13 @@ protected:
UNREGISTER_BUFFERS,
POST_BUFFER, // one-way transaction
CREATE_OVERLAY,
+ REQUEST_BUFFER,
};
public:
DECLARE_META_INTERFACE(Surface);
+ virtual sp<GraphicBuffer> requestBuffer(int bufferIdx, int usage) = 0;
class BufferHeap {
public:
@@ -78,9 +82,7 @@ public:
};
virtual status_t registerBuffers(const BufferHeap& buffers) = 0;
-
virtual void postBuffer(ssize_t offset) = 0; // one-way
-
virtual void unregisterBuffers() = 0;
virtual sp<OverlayRef> createOverlay(