13 #include "swCommonLib/ParameterAnimation/Parameters/DirectPropertyh.h"
28 template<
typename KeyType >
41 virtual bool AddKey ( TimeType time,
const KeyType& value ) = 0;
44 virtual bool AddKey ( TimeType time,
const KeyType& value, InterpolatorType interpolatorType ) = 0;
50 virtual bool UpdateKey ( TimeType time,
const KeyType& newValue ) = 0;
53 virtual bool RemoveKey ( TimeType time ) = 0;
82 template<
typename KeyType,
typename AddressType >
96 virtual void Animate (
Object*
object, TimeType time )
override;
100 virtual bool AddKey ( TimeType time,
const KeyType& value )
override;
102 virtual bool AddKey ( TimeType time,
const KeyType& value, InterpolatorType interpolatorType )
override;
106 virtual bool UpdateKey ( TimeType time,
const KeyType& newValue )
override;
108 virtual bool RemoveKey ( TimeType time )
override;
113 virtual bool ChangeInterpolator ( Size idx, InterpolatorType interpolatorType )
override;
127 template<
template<
typename KeyType >
class AddressType >
130 template<
template<
typename KeyType >
class AddressType >
133 template<
template<
typename KeyType >
class AddressType >
136 #include "Animation.inl"
virtual const Key< KeyType > * GetKey(TimeType time)=0
Return key in given time.
virtual bool AddKey(TimeType time, const KeyType &value) override
Adds key and sets default interpolator.
Definition: Animation.inl:44
Base class for interpolators.
Definition: IInterpolator.h:38
virtual KeySet< KeyType > & GetKeySet()=0
Returns KeySet object.
Base class for timelines.
Definition: TimelineBase.h:26
Interface class for manipulating animation keys.
Definition: Animation.h:29
virtual bool ChangeInterpolator(Size idx, UPtr< Interpolator > &&interpolator)=0
Updates interpolator. Key remains unchanged.
Evaluates animation.
Definition: AnimEvaluator.h:26
Base animation class.
Definition: IAnimation.h:20
virtual bool RemoveKey(TimeType time)=0
Removes key in given time.
virtual const Key< KeyType > * GetKey(TimeType time) override
Return key in given time.
Definition: Animation.inl:108
virtual Interpolator * GetInterpolator(Size idx) override
Gets interpolator under index. You're not owner of this interpolator.
Definition: Animation.inl:100
virtual bool AddKey(TimeType time, const KeyType &value)=0
Adds key and sets default interpolator.
Animation key.
Definition: IInterpolator.h:21
virtual bool RemoveKey(TimeType time) override
Removes key in given time.
Definition: Animation.inl:76
Set of animation keys and interpolators.
Definition: KeySet.h:25
virtual Interpolator * GetInterpolator(Size idx)=0
Gets interpolator under index. You're not owner of this interpolator.
virtual bool UpdateKey(TimeType time, const KeyType &newValue, UPtr< Interpolator > &&interpolator) override
Adds key and sets default interpolator.
Definition: Animation.inl:60
virtual bool UpdateKey(TimeType time, const KeyType &newValue, UPtr< Interpolator > &&interpolator)=0
Udates key given by time. Sets new interpolator.
Definition: Animation.h:83
Base clas for all objects in sleeping wombat libraries.
Definition: Object.h:42
virtual KeySet< KeyType > & GetKeySet() override
Returns KeySet object.
Definition: Animation.inl:116
virtual bool ChangeInterpolator(Size idx, UPtr< Interpolator > &&interpolator) override
Definition: Animation.inl:84