-#ifndef __DALI_INTERNAL_ANIMATION_H__
-#define __DALI_INTERNAL_ANIMATION_H__
+#ifndef DALI_INTERNAL_ANIMATION_H
+#define DALI_INTERNAL_ANIMATION_H
/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2019 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.
class Object;
class Path;
-typedef IntrusivePtr<Animation> AnimationPtr;
-typedef std::vector<AnimationPtr> AnimationContainer;
+using AnimationPtr = IntrusivePtr<Animation>;
+using AnimationContainer = std::vector<AnimationPtr>;
-typedef AnimationContainer::iterator AnimationIter;
-typedef AnimationContainer::const_iterator AnimationConstIter;
+using AnimationIter = AnimationContainer::iterator;
+using AnimationConstIter = AnimationContainer::const_iterator;
/**
* Animation is a proxy for a SceneGraph::Animation object.
BETWEEN ///< Animating BETWEEN key-frames
};
- typedef Dali::Animation::EndAction EndAction;
- typedef Dali::Animation::Interpolation Interpolation;
+ using EndAction = Dali::Animation::EndAction;
+ using Interpolation = Dali::Animation::Interpolation;
/**
* Create a new Animation object.
/**
* A reference counted object may only be deleted by calling Unreference()
*/
- virtual ~Animation();
+ ~Animation() override;
private:
Animation::Type animatorType;
};
+ enum class Notify
+ {
+ USE_CURRENT_VALUE, ///< Set the current value for the property
+ USE_TARGET_VALUE, ///< Set the animator's target value for the property
+ FORCE_CURRENT_VALUE, ///< Set the current value for the property even if the end action is to discard
+ };
+
private:
/**
/**
* Notifies all the objects whose properties are being animated.
+ * @param[in] notifyValueType Whether we should set the current or target value
*/
- void NotifyObjects();
+ void NotifyObjects( Notify notifyValueType );
/**
* Sends message to SceneGraph with final progress value
Dali::Animation::AnimationSignalType mProgressReachedSignal;
- typedef OwnerContainer< AnimatorConnectorBase* > AnimatorConnectorContainer;
+ using AnimatorConnectorContainer = OwnerContainer<AnimatorConnectorBase*>;
AnimatorConnectorContainer mConnectors; ///< Owned by the Animation
- typedef std::vector< ConnectorTargetValues > ConnectorTargetValuesContainer;
+ using ConnectorTargetValuesContainer = std::vector<ConnectorTargetValues>;
ConnectorTargetValuesContainer mConnectorTargetValues; //< Used to store animating property target value information
Vector2 mPlayRange;
} // namespace Dali
-#endif // __DALI_INTERNAL_ANIMATION_H__
+#endif // DALI_INTERNAL_ANIMATION_H