From: Heeyong Song Date: Thu, 26 Aug 2021 09:48:37 +0000 (+0900) Subject: (Vector) Replace std::chrono::system_clock with chrono::steady_clock X-Git-Tag: dali_2.0.42~8^2 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=8dac52813ed69bbaaf2d077bf168d56301149738;hp=-c (Vector) Replace std::chrono::system_clock with chrono::steady_clock Change-Id: If2cfb975c8796963d38141ae3c1868ee385b40c1 --- 8dac52813ed69bbaaf2d077bf168d56301149738 diff --git a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.cpp b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.cpp index 2f29ac0..75fa62e 100644 --- a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.cpp +++ b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.cpp @@ -524,11 +524,11 @@ uint32_t VectorAnimationTask::GetStoppedFrame(uint32_t startFrame, uint32_t endF VectorAnimationTask::TimePoint VectorAnimationTask::CalculateNextFrameTime(bool renderNow) { - // std::chrono::time_point template has second parameter duration which defaults to the std::chrono::system_clock supported + // std::chrono::time_point template has second parameter duration which defaults to the std::chrono::steady_clock supported // duration. In some C++11 implementations it is a milliseconds duration, so it fails to compile unless mNextFrameStartTime // is casted to use the default duration. mNextFrameStartTime = std::chrono::time_point_cast(mNextFrameStartTime + std::chrono::microseconds(mFrameDurationMicroSeconds)); - auto current = std::chrono::system_clock::now(); + auto current = std::chrono::steady_clock::now(); if(renderNow) { mNextFrameStartTime = current; diff --git a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.h b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.h index c14cc10..3c0b8e3 100644 --- a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.h +++ b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-task.h @@ -47,7 +47,7 @@ class VectorAnimationTask : public RefObject public: using UploadCompletedSignalType = Dali::VectorAnimationRenderer::UploadCompletedSignalType; - using TimePoint = std::chrono::time_point; + using TimePoint = std::chrono::time_point; /** * Flags for re-sending data to the vector animation thread diff --git a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-thread.cpp b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-thread.cpp index a5b1166..97634f6 100644 --- a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-thread.cpp +++ b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-thread.cpp @@ -216,7 +216,7 @@ void VectorAnimationThread::Rasterize() { VectorAnimationTaskPtr nextTask = *it; - auto currentTime = std::chrono::system_clock::now(); + auto currentTime = std::chrono::steady_clock::now(); auto nextFrameTime = nextTask->GetNextFrameTime(); #if defined(DEBUG_ENABLED) @@ -300,7 +300,7 @@ VectorAnimationThread::SleepThread::~SleepThread() Join(); } -void VectorAnimationThread::SleepThread::SleepUntil(std::chrono::time_point timeToSleepUntil) +void VectorAnimationThread::SleepThread::SleepUntil(std::chrono::time_point timeToSleepUntil) { ConditionalWait::ScopedLock lock(mConditionalWait); mSleepTimePoint = timeToSleepUntil; @@ -316,7 +316,7 @@ void VectorAnimationThread::SleepThread::Run() while(!mDestroyThread) { bool needToSleep; - std::chrono::time_point sleepTimePoint; + std::chrono::time_point sleepTimePoint; { ConditionalWait::ScopedLock lock(mConditionalWait); @@ -330,7 +330,7 @@ void VectorAnimationThread::SleepThread::Run() if(needToSleep) { #if defined(DEBUG_ENABLED) - auto sleepDuration = std::chrono::duration_cast(mSleepTimePoint - std::chrono::system_clock::now()); + auto sleepDuration = std::chrono::duration_cast(mSleepTimePoint - std::chrono::steady_clock::now()); DALI_LOG_INFO(gVectorAnimationLogFilter, Debug::Verbose, "VectorAnimationThread::SleepThread::Run: [sleep duration = %lld]\n", sleepDuration.count()); #endif diff --git a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-thread.h b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-thread.h index 86fec43..8190e7b 100644 --- a/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-thread.h +++ b/dali-toolkit/internal/visuals/animated-vector-image/vector-animation-thread.h @@ -139,7 +139,7 @@ private: /** * @brief Sleeps untile the specified time point. */ - void SleepUntil(std::chrono::time_point timeToSleepUntil); + void SleepUntil(std::chrono::time_point timeToSleepUntil); protected: /** @@ -154,7 +154,7 @@ private: private: ConditionalWait mConditionalWait; std::unique_ptr mAwakeCallback; - std::chrono::time_point mSleepTimePoint; + std::chrono::time_point mSleepTimePoint; const Dali::LogFactoryInterface& mLogFactory; bool mNeedToSleep; bool mDestroyThread;