*
*/
+// EXTERNAL INCLUDES
+#include <stdint.h> // for uint32_t
+
// INTERNAL INCLUDES
#include <dali/integration-api/bitmap.h> // For Integration::BitmapPtr
#include <dali/public-api/object/ref-object.h>
class BufferImage;
typedef IntrusivePtr<BufferImage> BufferImagePtr;
-class ResourceClient;
-class ResourceManager;
-
/**
* BufferImage represents an image resource that can be added to actors etc.
* Its pixel buffer data is provided by the application developer.
* Notify Dali that the contents of the buffer have changed.
* @param [in] updateArea area that has changed in buffer. An empty rect means the whole buffer has changed.
*/
- void Update (RectArea& updateArea);
+ void Update( const RectArea& updateArea);
/**
* @copydoc Dali::BufferImage::IsDataExternal
return mPixelFormat;
}
- /**
- * @brief Upload pixel data to another resource at an offset
- *
- * @param destId ResourceId of the destination
- * @param xOffset x offset in the destination
- * @param yOffset y offset in the destination
- */
- void UploadBitmap( ResourceId destId, std::size_t xOffset, std::size_t yOffset );
-
-protected: // From Image
- /**
- * @copydoc Dali::Internal::Image::Connect
- */
- virtual void Connect();
-
- /**
- * @copydoc Dali::Internal::Image::Disconnect
- */
- virtual void Disconnect();
-
private:
void SetupBuffer( unsigned int width,
Pixel::Format pixelformat,
unsigned int byteStride );
- void CreateHostBitmap();
-
- void UploadArea( ResourceId destId, const RectArea& area );
+ void UploadArea( const RectArea& area );
void UpdateBufferArea( PixelBuffer* src, PixelBuffer* dest, const RectArea& area );
PixelBuffer* mInternalBuffer; ///< NULL if the data is supplied by an external buffer.
PixelBuffer* mExternalBuffer; ///< NULL if there is no external pixel data (this is never owned by BufferImage).
- ResourceClient* mResourceClient; ///< pointer to the resource client.
uint32_t mBufferSize; ///< size of the pixel buffer.
uint32_t mByteStride; ///< width of the pixel buffer in bytes.
uint32_t mBytesPerPixel; ///< width of a pixel in bytes.