X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fpublic-api%2Fimages%2Fpixel-data.h;h=0fb96db6a75e7b851b16d3375a43073f0c9dbff3;hb=adae31cf70bdeed19789edc694d4baaf2fc67f21;hp=03fefc6e0300511f1ad055018944fbf4562b4070;hpb=0741b58e8e53e8ea7b897c2e21aac6b4da733192;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/public-api/images/pixel-data.h b/dali/public-api/images/pixel-data.h index 03fefc6..0fb96db 100644 --- a/dali/public-api/images/pixel-data.h +++ b/dali/public-api/images/pixel-data.h @@ -2,7 +2,7 @@ #define DALI_PIXEL_DATA_H /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2022 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -77,6 +77,26 @@ public: ReleaseFunction releaseFunction); /** + * @brief Creates a PixelData object. + * + * @SINCE_2_1.10 + * @param[in] buffer The raw pixel data + * @param[in] bufferSize The size of the buffer in bytes + * @param[in] width Buffer width in pixels + * @param[in] height Buffer height in pixels + * @param[in] stride Buffer stride in pixels, 0 means the buffer is tightly packed + * @param[in] pixelFormat The pixel format + * @param[in] releaseFunction The function used to release the memory + * @return A handle to the PixelData + */ + static PixelData New(uint8_t* buffer, + uint32_t bufferSize, + uint32_t width, + uint32_t height, + uint32_t stride, + Pixel::Format pixelFormat, + ReleaseFunction releaseFunction); + /** * @brief Creates an empty handle. * Use PixelData::New() to create an initialized object. * @@ -114,7 +134,7 @@ public: * @SINCE_1_9.22 * @param[in] rhs A reference to the moved handle */ - PixelData(PixelData&& rhs); + PixelData(PixelData&& rhs) noexcept; /** * @brief Move assignment operator. @@ -123,7 +143,7 @@ public: * @param[in] rhs A reference to the moved handle * @return A reference to this handle */ - PixelData& operator=(PixelData&& rhs); + PixelData& operator=(PixelData&& rhs) noexcept; /** * @brief Gets the width of the buffer in pixels. @@ -149,6 +169,19 @@ public: */ Pixel::Format GetPixelFormat() const; + /** + * @brief Gets the stride of the buffer in pixels. + * + * @SINCE_2_1.10 + * @return The stride of the buffer in pixels. 0 means the buffer is tightly packed. + */ + uint32_t GetStride() const; + + /** + * Class method to get the total currently allocated size of pixel buffers + */ + static uint32_t GetTotalAllocatedSize(); + public: /** * @brief The constructor. @@ -162,6 +195,6 @@ public: /** * @} */ -} //namespace Dali +} // namespace Dali #endif // DALI_PIXEL_DATA_H