[dali_2.3.24] Merge branch 'devel/master'
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / texture-manager / texture-upload-observer.h
index 211cad7..3685a55 100644 (file)
@@ -2,7 +2,7 @@
 #define DALI_TOOLKIT_INTERNAL_TEXTURE_UPLOAD_OBSERVER_H
 
 /*
- * Copyright (c) 2022 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2023 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.
@@ -44,25 +44,28 @@ public:
 
   enum class ReturnType
   {
-    TEXTURE = 0,
-    PIXEL_BUFFER
+    PIXEL_BUFFER = 0,
+    TEXTURE,
+    ANIMATED_IMAGE_TEXTURE
   };
 
   struct TextureInformation
   {
-    TextureInformation(ReturnType returnType, int32_t textureId, TextureSet textureSet, bool useAtlasing, const Vector4& atlasRect, bool preMultiplied);
-    TextureInformation(ReturnType returnType, Devel::PixelBuffer pixelBuffer, const std::string& url, bool preMultiplied);
+    TextureInformation(const ReturnType returnType, const int32_t textureId, TextureSet textureSet, const bool preMultiplied);
+    TextureInformation(const ReturnType returnType, const int32_t textureId, TextureSet textureSet, const std::string& url, const bool preMultiplied);
+    TextureInformation(const ReturnType returnType, Devel::PixelBuffer pixelBuffer, const std::string& url, const bool preMultiplied);
+    TextureInformation(const ReturnType returnType, const int32_t textureId, TextureSet textureSet, const uint32_t frameCount, const uint32_t interval, const bool preMultiplied);
 
     TextureInformation();
 
     ReturnType         returnType;    ///< Returned Texture type.
     int32_t            textureId;     ///< The textureId of the loaded texture in the TextureManager
     TextureSet         textureSet;    ///< The TextureSet containing the Texture
-    bool               useAtlasing;   ///< True if atlasing was used (note: this may be different to what was requested)
-    const Vector4&     atlasRect;     ///< If using atlasing, this is the rectangle within the atlas to use.
     bool               preMultiplied; ///< True if the image had pre-multiplied alpha applied
     Devel::PixelBuffer pixelBuffer;   ///< The PixelBuffer of the loaded image.
     std::string_view   url;           ///< The url address of the loaded image.
+    uint32_t           frameCount{0}; ///< The frameCount of the animated image
+    uint32_t           interval{0};   ///< Time interval between currently loaded frame and next frame.
   };
 
 public: