2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5 // Licensed under the Flora License, Version 1.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://floralicense.org/license/
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
19 * @file FUiAnim_VisualElementAnimationTiming.h
20 * @brief This is the header file for the _VisualElementAnimationTiming class.
22 * This header file contains the declarations of the _VisualElementAnimationTiming class.
25 #ifndef _FUI_ANIM_INTERNAL_VISUAL_ELEMENT_ANIMATION_TIMING_H_
26 #define _FUI_ANIM_INTERNAL_VISUAL_ELEMENT_ANIMATION_TIMING_H_
28 #include <FBaseErrorDefine.h>
29 #include <FBaseObject.h>
31 namespace Tizen { namespace Ui { namespace Animations
35 * @class _VisualElementAnimationTiming
36 * @brief This class stores the information of a animation timing.
39 * This class provides animation timing related information.
41 class _VisualElementAnimationTiming
42 : public Tizen::Base::Object
47 // This is the default constructor for this class.
49 _VisualElementAnimationTiming(void);
52 // This is the destructor for this class.
54 virtual ~_VisualElementAnimationTiming(void);
57 * Gets the duration of the animation.
60 * @return The duration of the animation in ms
62 long GetDuration(void) const;
65 * Sets the duration of the animation in ms.
68 * @param[in] duration The duration of the animation in ms
70 void SetDuration(long duration);
73 * Gets the time offset of the animation.
76 * @return The time offset of the animation in ms
78 long GetOffset(void) const;
81 * Sets the time offset of the animation in ms.
84 * @param[in] timeOffset The time offset of the animation in mss
86 void SetOffset(long offset);
89 * Gets the time delay of the animation.
92 * @return The time delay of the animation in ms
94 long GetDelay(void) const;
97 * Sets the time delay of the animation in ms.
100 * @param[in] timeDelay The start time of the animation in ms
102 void SetDelay(long delay);
105 * Gets the repeat count of the animation.
108 * @return The repeat count of the animation
110 long GetRepeatCount(void) const;
113 * Sets the repeat count of the animation.
116 * @param[in] repeatCount The repeat count of the animation
117 * @remarks If repeatCount is 0, the animation will be repeated infinitely.
119 void SetRepeatCount(long repeatCount);
122 * Gets the time scale value of the animation.
125 * @return The time scale value of the animation
127 float GetScaleRatio(void) const;
130 * Sets the time scale value of the animation.
133 * @param[in] scale The time scale of the animation
134 * @remarks If this value is 2.0, then the animation speed is 2 times fast.
136 void SetScaleRatio(float scale);
139 * Checks whether the animation plays backwards after it finishes playing forwards.
142 * @return @c true if the animation plays backwards after it finishes playing forwards @n
143 * @c false, otherwise
145 bool IsAutoReverseEnabled(void) const;
148 * Sets the flag to play backwards after the animation finishes playing forwards.
151 * @param[in] enable Set to @c true to enable auto reverse @n
152 * @c false, otherwise
154 void SetAutoReverseEnabled(bool enable);
158 * This is the default constructor for this class.
160 * @param[in] rhs A pointer to the Object instance which contains this instance.
162 _VisualElementAnimationTiming(const _VisualElementAnimationTiming& rhs);
163 _VisualElementAnimationTiming& operator =(const _VisualElementAnimationTiming& rhs);
175 }; // _VisualElementAnimationTiming
177 }}} // Tizen::Ui::Animations
179 #endif // _FUI_ANIM_INTERNAL_VISUAL_ELEMENT_ANIMATION_TIMING_H_