From 7d385ea9c1b7ca1df11dafebb2ba4919fb5b65d6 Mon Sep 17 00:00:00 2001 From: Heeyong Song Date: Mon, 30 Dec 2019 14:13:47 +0900 Subject: [PATCH] (Vector) Add a method to ignore a rendered frame Change-Id: I6f8fdcb4a913e3439b45c13def5f6570a82dda74 --- .../adaptor-framework/vector-animation-renderer-plugin.h | 5 +++++ dali/devel-api/adaptor-framework/vector-animation-renderer.cpp | 5 +++++ dali/devel-api/adaptor-framework/vector-animation-renderer.h | 5 +++++ .../vector-animation/common/vector-animation-renderer-impl.cpp | 5 +++++ .../vector-animation/common/vector-animation-renderer-impl.h | 5 +++++ .../common/vector-animation-renderer-plugin-proxy.cpp | 8 ++++++++ .../common/vector-animation-renderer-plugin-proxy.h | 5 +++++ 7 files changed, 38 insertions(+) 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 c7b0011..d262cfc 100644 --- a/dali/devel-api/adaptor-framework/vector-animation-renderer-plugin.h +++ b/dali/devel-api/adaptor-framework/vector-animation-renderer-plugin.h @@ -129,6 +129,11 @@ public: virtual bool GetMarkerInfo( const std::string& marker, uint32_t& startFrame, uint32_t& endFrame ) const = 0; /** + * @brief Ignores a rendered frame which is not shown yet. + */ + virtual void IgnoreRenderedFrame() = 0; + + /** * @brief Connect to this signal to be notified when the texture upload is completed. * * @return The signal to connect to. diff --git a/dali/devel-api/adaptor-framework/vector-animation-renderer.cpp b/dali/devel-api/adaptor-framework/vector-animation-renderer.cpp index 9cd05ad..d06aac5 100755 --- a/dali/devel-api/adaptor-framework/vector-animation-renderer.cpp +++ b/dali/devel-api/adaptor-framework/vector-animation-renderer.cpp @@ -104,6 +104,11 @@ bool VectorAnimationRenderer::GetMarkerInfo( const std::string& marker, uint32_t return GetImplementation( *this ).GetMarkerInfo( marker, startFrame, endFrame ); } +void VectorAnimationRenderer::IgnoreRenderedFrame() +{ + GetImplementation( *this ).IgnoreRenderedFrame(); +} + VectorAnimationRenderer::UploadCompletedSignalType& VectorAnimationRenderer::UploadCompletedSignal() { return GetImplementation( *this ).UploadCompletedSignal(); diff --git a/dali/devel-api/adaptor-framework/vector-animation-renderer.h b/dali/devel-api/adaptor-framework/vector-animation-renderer.h index 0e2f14a..666f746 100755 --- a/dali/devel-api/adaptor-framework/vector-animation-renderer.h +++ b/dali/devel-api/adaptor-framework/vector-animation-renderer.h @@ -156,6 +156,11 @@ public: */ bool GetMarkerInfo( const std::string& marker, uint32_t& startFrame, uint32_t& endFrame ) const; + /** + * @brief Ignores a rendered frame which is not shown yet. + */ + void IgnoreRenderedFrame(); + public: // Signals /** diff --git a/dali/internal/vector-animation/common/vector-animation-renderer-impl.cpp b/dali/internal/vector-animation/common/vector-animation-renderer-impl.cpp index 1b76ff3..9b1c9da 100644 --- a/dali/internal/vector-animation/common/vector-animation-renderer-impl.cpp +++ b/dali/internal/vector-animation/common/vector-animation-renderer-impl.cpp @@ -110,6 +110,11 @@ bool VectorAnimationRenderer::GetMarkerInfo( const std::string& marker, uint32_t return mPlugin.GetMarkerInfo( marker, startFrame, endFrame ); } +void VectorAnimationRenderer::IgnoreRenderedFrame() +{ + mPlugin.IgnoreRenderedFrame(); +} + Dali::VectorAnimationRenderer::UploadCompletedSignalType& VectorAnimationRenderer::UploadCompletedSignal() { return mPlugin.UploadCompletedSignal(); diff --git a/dali/internal/vector-animation/common/vector-animation-renderer-impl.h b/dali/internal/vector-animation/common/vector-animation-renderer-impl.h index b635683..0d2a428 100755 --- a/dali/internal/vector-animation/common/vector-animation-renderer-impl.h +++ b/dali/internal/vector-animation/common/vector-animation-renderer-impl.h @@ -102,6 +102,11 @@ public: bool GetMarkerInfo( const std::string& marker, uint32_t& startFrame, uint32_t& endFrame ) const; /** + * @copydoc Dali::VectorAnimationRenderer::IgnoreRenderedFrame() + */ + void IgnoreRenderedFrame(); + + /** * @copydoc Dali::VectorAnimationRenderer::UploadCompletedSignal() */ Dali::VectorAnimationRenderer::UploadCompletedSignalType& UploadCompletedSignal(); diff --git a/dali/internal/vector-animation/common/vector-animation-renderer-plugin-proxy.cpp b/dali/internal/vector-animation/common/vector-animation-renderer-plugin-proxy.cpp index 6eae9bf..2a272c4 100644 --- a/dali/internal/vector-animation/common/vector-animation-renderer-plugin-proxy.cpp +++ b/dali/internal/vector-animation/common/vector-animation-renderer-plugin-proxy.cpp @@ -186,6 +186,14 @@ bool VectorAnimationRendererPluginProxy::GetMarkerInfo( const std::string& marke return false; } +void VectorAnimationRendererPluginProxy::IgnoreRenderedFrame() +{ + if( mPlugin ) + { + mPlugin->IgnoreRenderedFrame(); + } +} + VectorAnimationRendererPlugin::UploadCompletedSignalType& VectorAnimationRendererPluginProxy::UploadCompletedSignal() { if( mPlugin ) diff --git a/dali/internal/vector-animation/common/vector-animation-renderer-plugin-proxy.h b/dali/internal/vector-animation/common/vector-animation-renderer-plugin-proxy.h index 1480aca..d63faa3 100644 --- a/dali/internal/vector-animation/common/vector-animation-renderer-plugin-proxy.h +++ b/dali/internal/vector-animation/common/vector-animation-renderer-plugin-proxy.h @@ -98,6 +98,11 @@ public: 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(); -- 2.7.4