Revert "vector-animation: Imeplements rive animation"
[platform/core/uifw/dali-adaptor.git] / dali / internal / vector-animation / common / vector-animation-renderer-plugin-proxy.h
index 2fc4e05..ef4f016 100644 (file)
@@ -2,7 +2,7 @@
 #define DALI_INTERNAL_VECTOR_ANIMATION_RENDERER_PLUGIN_PROXY_H
 
 /*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2021 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.
 
 namespace Dali
 {
-
 namespace Internal
 {
-
 namespace Adaptor
 {
-
 /**
  * Proxy class to dynamically load, use and unload vector animation renderer plugin.
  */
 class VectorAnimationRendererPluginProxy
 {
 public:
-
   /**
    * @brief Constructor
    */
-  VectorAnimationRendererPluginProxy( const std::string& sharedObjectName );
+  VectorAnimationRendererPluginProxy(const std::string& sharedObjectName);
 
   /**
    * @brief Destructor
@@ -48,58 +44,86 @@ public:
   ~VectorAnimationRendererPluginProxy();
 
   /**
-   * @copydoc Dali::VectorAnimationRendererPlugin::CreateRenderer()
+   * @copydoc Dali::VectorAnimationRendererPlugin::Finalize()
    */
-  bool CreateRenderer( const std::string& url, Dali::Renderer renderer, uint32_t width, uint32_t height );
+  void Finalize();
 
   /**
-   * @copydoc Dali::VectorAnimationRendererPlugin::SetSize()
+   * @copydoc Dali::VectorAnimationRendererPlugin::Load()
    */
-  void SetSize( uint32_t width, uint32_t height );
+  bool Load(const std::string& url);
 
   /**
-   * @copydoc Dali::VectorAnimationRendererPlugin::StartRender()
+   * @copydoc Dali::VectorAnimationRendererPlugin::SetRenderer()
    */
-  bool StartRender();
+  void SetRenderer(Dali::Renderer renderer);
 
   /**
-   * @copydoc Dali::VectorAnimationRendererPlugin::StopRender()
+   * @copydoc Dali::VectorAnimationRendererPlugin::SetSize()
    */
-  void StopRender();
+  void SetSize(uint32_t width, uint32_t height);
 
   /**
    * @copydoc Dali::VectorAnimationRendererPlugin::Render()
    */
-  void Render( uint32_t frameNumber );
+  bool Render(uint32_t frameNumber);
 
   /**
    * @copydoc Dali::VectorAnimationRendererPlugin::GetTotalFrameNumber()
    */
-  uint32_t GetTotalFrameNumber();
+  uint32_t GetTotalFrameNumber() const;
+
+  /**
+   * @copydoc Dali::VectorAnimationRendererPlugin::GetFrameRate()
+   */
+  float GetFrameRate() const;
+
+  /**
+   * @copydoc Dali::VectorAnimationRendererPlugin::GetDefaultSize()
+   */
+  void GetDefaultSize(uint32_t& width, uint32_t& height) const;
+
+  /**
+   * @copydoc Dali::VectorAnimationRendererPlugin::GetLayerInfo()
+   */
+  void GetLayerInfo(Property::Map& map) const;
+
+  /**
+   * @copydoc Dali::VectorAnimationRendererPlugin::GetMarkerInfo()
+   */
+  bool GetMarkerInfo(const std::string& marker, uint32_t& startFrame, uint32_t& endFrame) const;
+
+  /**
+   * @copydoc Dali::VectorAnimationRendererPlugin::IgnoreRenderedFrame()
+   */
+  void IgnoreRenderedFrame();
+
+  /**
+   * @copydoc Dali::VectorAnimationRendererPlugin::UploadCompletedSignal()
+   */
+  VectorAnimationRendererPlugin::UploadCompletedSignalType& UploadCompletedSignal();
 
   // Not copyable or movable
-  VectorAnimationRendererPluginProxy( const VectorAnimationRendererPluginProxy& ) = delete; ///< Deleted copy constructor
-  VectorAnimationRendererPluginProxy( VectorAnimationRendererPluginProxy&& ) = delete; ///< Deleted move constructor
-  VectorAnimationRendererPluginProxy& operator=( const VectorAnimationRendererPluginProxy& ) = delete; ///< Deleted copy assignment operator
-  VectorAnimationRendererPluginProxy& operator=( VectorAnimationRendererPluginProxy&& ) = delete; ///< Deleted move assignment operator
+  VectorAnimationRendererPluginProxy(const VectorAnimationRendererPluginProxy&) = delete;            ///< Deleted copy constructor
+  VectorAnimationRendererPluginProxy(VectorAnimationRendererPluginProxy&&)      = delete;            ///< Deleted move constructor
+  VectorAnimationRendererPluginProxy& operator=(const VectorAnimationRendererPluginProxy&) = delete; ///< Deleted copy assignment operator
+  VectorAnimationRendererPluginProxy& operator=(VectorAnimationRendererPluginProxy&&) = delete;      ///< Deleted move assignment operator
 
 private:
-
   /**
    * Dynamically loads the plugin.
    */
   void Initialize();
 
 private:
-
   using CreateVectorAnimationRendererFunction = Dali::VectorAnimationRendererPlugin* (*)();
 
-  std::string                            mSharedObjectName;   ///< Shared object name
-  void*                                  mLibHandle;          ///< Handle for the loaded library
-  Dali::VectorAnimationRendererPlugin*   mPlugin;             ///< Plugin handle
-
-  CreateVectorAnimationRendererFunction  mCreateVectorAnimationRendererPtr;   ///< Function pointer called in adaptor to create a plugin instance
+  std::string                          mSharedObjectName; ///< Shared object name
+  void*                                mLibHandle;        ///< Handle for the loaded library
+  Dali::VectorAnimationRendererPlugin* mPlugin;           ///< Plugin handle
 
+  CreateVectorAnimationRendererFunction                    mCreateVectorAnimationRendererPtr; ///< Function pointer called in adaptor to create a plugin instance
+  VectorAnimationRendererPlugin::UploadCompletedSignalType mDefaultSignal;
 };
 
 } // namespace Adaptor