X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fdevel-api%2Fadaptor-framework%2Fvector-animation-renderer-plugin.h;h=6fa992deaa263369cd1cbb59af5b7020ac6c5125;hb=ecf48b6cac3f1ba42fe47bdba44708a13b484326;hp=bb4ef856703a1f287dc410276d6fbca25918b376;hpb=8ef607fbaa1d6568f765ff1e1d7b30bb8f7d22cb;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git diff --git a/dali/devel-api/adaptor-framework/vector-animation-renderer-plugin.h b/dali/devel-api/adaptor-framework/vector-animation-renderer-plugin.h index bb4ef85..6fa992d 100644 --- a/dali/devel-api/adaptor-framework/vector-animation-renderer-plugin.h +++ b/dali/devel-api/adaptor-framework/vector-animation-renderer-plugin.h @@ -2,7 +2,7 @@ #define DALI_VECTOR_ANIMATION_RENDERER_PLUGIN_H /* - * Copyright (c) 2018 Samsung Electronics Co., Ltd. + * Copyright (c) 2019 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. @@ -22,6 +22,9 @@ #include #include +// INTERNAL INCLUDES +#include + namespace Dali { @@ -34,6 +37,8 @@ class VectorAnimationRendererPlugin { public: + using UploadCompletedSignalType = Dali::VectorAnimationRenderer::UploadCompletedSignalType; + /** * @brief Constructor */ @@ -45,15 +50,18 @@ public: virtual ~VectorAnimationRendererPlugin() {} /** - * @brief Creates a renderer to render an vector animation file. + * @brief Second-phase constructor. * - * @param[in] url The url of an animation file - * @param[in] renderer The renderer used to render the image - * @param[in] width The target image width - * @param[in] height The target image height - * @return True if the renderer is successfully created, false otherwise + * @param[in] url The url of the animation file + */ + virtual bool Initialize( const std::string& url ) = 0; + + /** + * @brief Sets the renderer used to display the result image. + * + * @param[in] renderer The renderer used to display the result image */ - virtual bool CreateRenderer( const std::string& url, Renderer renderer, uint32_t width, uint32_t height ) = 0; + virtual void SetRenderer( Renderer renderer ) = 0; /** * @brief Sets the target image size. @@ -64,30 +72,40 @@ public: virtual void SetSize( uint32_t width, uint32_t height ) = 0; /** - * @brief Starts the rendering. + * @brief Renders the content to the target buffer synchronously. * - * @return True if the renderer is successfully started, false otherwise + * @param[in] frameNumber The frame number to be rendered + * @return True if the rendering success, false otherwise. */ - virtual bool StartRender() = 0; + virtual bool Render( uint32_t frameNumber ) = 0; /** - * @brief Stops the rendering. + * @brief Gets the total number of frames of the file. + * + * @return The total number of frames */ - virtual void StopRender() = 0; + virtual uint32_t GetTotalFrameNumber() const = 0; /** - * @brief Renders the content to the target buffer synchronously. + * @brief Gets the frame rate of the file. * - * @param[in] frameNumber The frame number to be rendered + * @return The frame rate of the file */ - virtual void Render( uint32_t frameNumber ) = 0; + virtual float GetFrameRate() const = 0; /** - * @brief Gets the total number of frames of the file + * @brief Gets the default size of the file,. * - * @return The total number of frames + * @return The default size of the file + */ + virtual void GetDefaultSize( uint32_t& width, uint32_t& height ) const = 0; + + /** + * @brief Connect to this signal to be notified when the texture upload is completed. + * + * @return The signal to connect to. */ - virtual uint32_t GetTotalFrameNumber() = 0; + virtual UploadCompletedSignalType& UploadCompletedSignal() = 0; /** * @brief Function pointer called in adaptor to create a plugin instance.