summaryrefslogtreecommitdiff
path: root/libs/gui/IGraphicBufferAlloc.cpp
diff options
context:
space:
mode:
author Craig Donner <cdonner@google.com> 2016-10-21 15:23:44 -0700
committer Craig Donner <cdonner@google.com> 2016-11-11 11:35:06 -0800
commit6ebc46a7c01b22bc19d3c00b493f8d930b15b43a (patch)
tree6f68e8f1cf2ccde71eece4a037c8e32b4f0cd0b2 /libs/gui/IGraphicBufferAlloc.cpp
parentcd7dedbe69f8c90d351b97b1acea2bb3635b68ca (diff)
Add layered buffer support to libui and libgui.
Bug: 31686534 Test: manual Change-Id: Ia40270701467f4b785660324cad883e7da08989a
Diffstat (limited to 'libs/gui/IGraphicBufferAlloc.cpp')
-rw-r--r--libs/gui/IGraphicBufferAlloc.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/libs/gui/IGraphicBufferAlloc.cpp b/libs/gui/IGraphicBufferAlloc.cpp
index 2fb380ccd1..a3d3b74c6b 100644
--- a/libs/gui/IGraphicBufferAlloc.cpp
+++ b/libs/gui/IGraphicBufferAlloc.cpp
@@ -45,13 +45,14 @@ public:
virtual ~BpGraphicBufferAlloc();
virtual sp<GraphicBuffer> createGraphicBuffer(uint32_t width,
- uint32_t height, PixelFormat format, uint32_t usage,
- std::string requestorName, status_t* error) {
+ uint32_t height, PixelFormat format, uint32_t layerCount,
+ uint32_t usage, std::string requestorName, status_t* error) {
Parcel data, reply;
data.writeInterfaceToken(IGraphicBufferAlloc::getInterfaceDescriptor());
data.writeUint32(width);
data.writeUint32(height);
data.writeInt32(static_cast<int32_t>(format));
+ data.writeUint32(layerCount);
data.writeUint32(usage);
if (requestorName.empty()) {
requestorName += "[PID ";
@@ -106,12 +107,13 @@ status_t BnGraphicBufferAlloc::onTransact(
uint32_t width = data.readUint32();
uint32_t height = data.readUint32();
PixelFormat format = static_cast<PixelFormat>(data.readInt32());
+ uint32_t layerCount = data.readUint32();
uint32_t usage = data.readUint32();
status_t error = NO_ERROR;
std::string requestorName;
data.readUtf8FromUtf16(&requestorName);
sp<GraphicBuffer> result = createGraphicBuffer(width, height,
- format, usage, requestorName, &error);
+ format, layerCount, usage, requestorName, &error);
reply->writeInt32(error);
if (result != 0) {
reply->write(*result);