CPU Alpha Masking for Animated Image Visual
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / visuals / animated-image / image-cache.h
index 19a8f52..65f39df 100644 (file)
@@ -61,16 +61,18 @@ public:
    * @param[in] textureManager The texture manager
    * @param[in] urlList List of urls to cache
    * @param[in] observer FrameReady observer
    * @param[in] textureManager The texture manager
    * @param[in] urlList List of urls to cache
    * @param[in] observer FrameReady observer
+   * @param[in] maskingData    Masking data to be applied.
    * @param[in] batchSize The size of a batch to load
    * @param[in] batchSize The size of a batch to load
-   * @param[in] interval Time interval(ms) between each frame 
+   * @param[in] interval Time interval(ms) between each frame
    *
    * This will start loading textures immediately, according to the
    * batch and cache sizes. The cache is as large as the number of urls.
    */
    *
    * This will start loading textures immediately, according to the
    * batch and cache sizes. The cache is as large as the number of urls.
    */
-  ImageCache(TextureManager&                 textureManager,
-             ImageCache::FrameReadyObserver& observer,
-             uint32_t                        batchSize,
-             uint32_t                        interval);
+  ImageCache(TextureManager&                     textureManager,
+             TextureManager::MaskingDataPointer& maskingData,
+             ImageCache::FrameReadyObserver&     observer,
+             uint32_t                            batchSize,
+             uint32_t                            interval);
 
   virtual ~ImageCache();
 
 
   virtual ~ImageCache();
 
@@ -132,18 +134,21 @@ private:
    */
   void TextureManagerDestroyed() final;
 
    */
   void TextureManagerDestroyed() final;
 
+  void AllocateMaskData();
+
 protected:
 protected:
-  TextureManager&           mTextureManager;
-  FrameReadyObserver&       mObserver;
-  uint32_t                  mBatchSize;
-  uint32_t                  mInterval;
-  TextureManager::LoadState mLoadState;
-  bool                      mRequestingLoad : 1;
-  bool                      mTextureManagerAlive : 1;
+  TextureManager&                     mTextureManager;
+  FrameReadyObserver&                 mObserver;
+  TextureManager::MaskingDataPointer& mMaskingData;
+  uint32_t                            mBatchSize;
+  uint32_t                            mInterval;
+  TextureManager::LoadState           mLoadState;
+  bool                                mRequestingLoad : 1;
+  bool                                mTextureManagerAlive : 1;
 };
 
 };
 
-} //namespace Internal
-} //namespace Toolkit
-} //namespace Dali
+} // namespace Internal
+} // namespace Toolkit
+} // namespace Dali
 
 #endif // DALI_TOOLKIT_INTERNAL_IMAGE_CACHE_H
 
 #endif // DALI_TOOLKIT_INTERNAL_IMAGE_CACHE_H