X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali-scene3d%2Fpublic-api%2Floader%2Fanimation-definition.cpp;h=d9ee5dd6efc5bc9361fc8ae9691b9b76c9e08085;hb=2116ad7b1ce51093a891ca6b3e83419b0b5b79dd;hp=c201314238f39e45ef1240def6be2c5b9143ea62;hpb=9660fccbe1c9b4a902a236eeb5b2988b94c64c1d;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/dali-scene3d/public-api/loader/animation-definition.cpp b/dali-scene3d/public-api/loader/animation-definition.cpp index c201314..d9ee5dd 100644 --- a/dali-scene3d/public-api/loader/animation-definition.cpp +++ b/dali-scene3d/public-api/loader/animation-definition.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2022 Samsung Electronics Co., Ltd. + * Copyright (c) 2023 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. @@ -14,13 +14,11 @@ * limitations under the License. * */ -#include "dali-scene3d/public-api/loader/animation-definition.h" -namespace Dali -{ -namespace Scene3D -{ -namespace Loader +// CLASS HEADER +#include + +namespace Dali::Scene3D::Loader { const float AnimationDefinition::DEFAULT_DURATION_SECONDS = 1.f; const float AnimationDefinition::MIN_DURATION_SECONDS = 1e-2f; @@ -47,6 +45,20 @@ AnimationDefinition::AnimationDefinition(AnimationDefinition&& other) { } +AnimationDefinition& AnimationDefinition::operator=(AnimationDefinition&& other) +{ + AnimationDefinition tmp(std::move(other)); + mName = std::move(tmp.mName); + mDuration = tmp.mDuration; + mLoopCount = tmp.mLoopCount; + mDisconnectAction = tmp.mDisconnectAction; + mEndAction = tmp.mEndAction; + mSpeedFactor = tmp.mSpeedFactor; + mPlayRange = tmp.mPlayRange; + mProperties.swap(tmp.mProperties); + return *this; +} + void AnimationDefinition::Animate(Animation& animation, AnimatedProperty::GetActor getActor) { DALI_ASSERT_ALWAYS(animation); @@ -71,20 +83,103 @@ Animation AnimationDefinition::ReAnimate(AnimatedProperty::GetActor getActor) return animation; } -AnimationDefinition& AnimationDefinition::operator=(AnimationDefinition&& other) +void AnimationDefinition::SetName(const std::string& name) { - AnimationDefinition tmp(std::move(other)); - mName = std::move(tmp.mName); - mDuration = tmp.mDuration; - mLoopCount = tmp.mLoopCount; - mDisconnectAction = tmp.mDisconnectAction; - mEndAction = tmp.mEndAction; - mSpeedFactor = tmp.mSpeedFactor; - mPlayRange = tmp.mPlayRange; - mProperties.swap(tmp.mProperties); - return *this; + mName = name; +} + +const std::string& AnimationDefinition::GetName() const +{ + return mName; +} + +void AnimationDefinition::SetDuration(float duration) +{ + mDuration = duration; +} + +float AnimationDefinition::GetDuration() const +{ + return mDuration; +} + +void AnimationDefinition::SetLoopCount(int32_t loopCount) +{ + mLoopCount = loopCount; +} + +int AnimationDefinition::GetLoopCount() const +{ + return mLoopCount; +} + +void AnimationDefinition::SetDisconnectAction(Animation::EndAction disconnectAction) +{ + mDisconnectAction = disconnectAction; +} + +Animation::EndAction AnimationDefinition::GetDisconnectAction() const +{ + return mDisconnectAction; +} + +void AnimationDefinition::SetEndAction(Animation::EndAction endAction) +{ + mEndAction = endAction; +} + +Animation::EndAction AnimationDefinition::GetEndAction() const +{ + return mEndAction; +} + +void AnimationDefinition::SetSpeedFactor(float speedFactor) +{ + mSpeedFactor = speedFactor; +} + +float AnimationDefinition::GetSpeedFactor() const +{ + return mSpeedFactor; +} + +void AnimationDefinition::SetPlayRange(const Vector2& playRange) +{ + mPlayRange = playRange; +} + +Vector2 AnimationDefinition::GetPlayRange() const +{ + return mPlayRange; +} + +void AnimationDefinition::ReserveSize(uint32_t size) +{ + mProperties.reserve(size); +} + +uint32_t AnimationDefinition::GetPropertyCount() const +{ + return static_cast(mProperties.size()); +} + +void AnimationDefinition::SetProperty(uint32_t index, AnimatedProperty&& property) +{ + if(mProperties.size() <= index) + { + mProperties.resize(index + 1); + } + mProperties[index] = std::move(property); +} + +AnimatedProperty& AnimationDefinition::GetPropertyAt(uint32_t index) +{ + return mProperties[index]; +} + +const AnimatedProperty& AnimationDefinition::GetPropertyAt(uint32_t index) const +{ + return mProperties[index]; } -} // namespace Loader -} // namespace Scene3D -} // namespace Dali +} // namespace Dali::Scene3D::Loader