diff options
| author | 2016-10-21 15:23:44 -0700 | |
|---|---|---|
| committer | 2016-11-11 11:35:06 -0800 | |
| commit | 6ebc46a7c01b22bc19d3c00b493f8d930b15b43a (patch) | |
| tree | 6f68e8f1cf2ccde71eece4a037c8e32b4f0cd0b2 /include/ui/GraphicBuffer.h | |
| parent | cd7dedbe69f8c90d351b97b1acea2bb3635b68ca (diff) | |
Add layered buffer support to libui and libgui.
Bug: 31686534
Test: manual
Change-Id: Ia40270701467f4b785660324cad883e7da08989a
Diffstat (limited to 'include/ui/GraphicBuffer.h')
| -rw-r--r-- | include/ui/GraphicBuffer.h | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/include/ui/GraphicBuffer.h b/include/ui/GraphicBuffer.h index 3e127a12a5..1bbcee2625 100644 --- a/include/ui/GraphicBuffer.h +++ b/include/ui/GraphicBuffer.h @@ -76,10 +76,15 @@ public: GraphicBuffer(uint32_t inWidth, uint32_t inHeight, PixelFormat inFormat, uint32_t inUsage, std::string requestorName = "<Unknown>"); + // creates w * h buffer with a layer count + GraphicBuffer(uint32_t inWidth, uint32_t inHeight, PixelFormat inFormat, + uint32_t inLayerCount, uint32_t inUsage, + std::string requestorName = "<Unknown>"); + // create a buffer from an existing handle GraphicBuffer(uint32_t inWidth, uint32_t inHeight, PixelFormat inFormat, - uint32_t inUsage, uint32_t inStride, native_handle_t* inHandle, - bool keepOwnership); + uint32_t inLayerCount, uint32_t inUsage, uint32_t inStride, + native_handle_t* inHandle, bool keepOwnership); // create a buffer from an existing ANativeWindowBuffer GraphicBuffer(ANativeWindowBuffer* buffer, bool keepOwnership); @@ -92,6 +97,7 @@ public: uint32_t getStride() const { return static_cast<uint32_t>(stride); } uint32_t getUsage() const { return static_cast<uint32_t>(usage); } PixelFormat getPixelFormat() const { return format; } + uint32_t getLayerCount() const { return static_cast<uint32_t>(layerCount); } Rect getBounds() const { return Rect(width, height); } uint64_t getId() const { return mId; } @@ -101,10 +107,10 @@ public: } status_t reallocate(uint32_t inWidth, uint32_t inHeight, - PixelFormat inFormat, uint32_t inUsage); + PixelFormat inFormat, uint32_t inLayerCount, uint32_t inUsage); bool needsReallocation(uint32_t inWidth, uint32_t inHeight, - PixelFormat inFormat, uint32_t inUsage); + PixelFormat inFormat, uint32_t inLayerCount, uint32_t inUsage); status_t lock(uint32_t inUsage, void** vaddr); status_t lock(uint32_t inUsage, const Rect& rect, void** vaddr); @@ -160,7 +166,7 @@ private: const GraphicBuffer& operator = (const GraphicBuffer& rhs) const; status_t initSize(uint32_t inWidth, uint32_t inHeight, PixelFormat inFormat, - uint32_t inUsage, std::string requestorName); + uint32_t inLayerCount, uint32_t inUsage, std::string requestorName); void free_handle(); |