namespace Dali
{
+/**
+ * @addtogroup dali_core_object
+ * @{
+ */
namespace Internal DALI_INTERNAL
{
/**
* @brief This represents a condition that can be evaluated on a Property::Value.
+ * @SINCE_1_0.0
*/
class DALI_IMPORT_API PropertyCondition : public BaseHandle
{
/**
* @brief Constructor for condition clause.
+ * @SINCE_1_0.0
*/
PropertyCondition();
/**
* @brief Destructor.
+ * @SINCE_1_0.0
*/
~PropertyCondition();
/**
* @brief This copy constructor is required for (smart) pointer semantics.
*
+ * @SINCE_1_0.0
* @param [in] handle A reference to the copied handle
*/
PropertyCondition( const PropertyCondition& handle );
/**
* @brief This assignment operator is required for (smart) pointer semantics.
*
+ * @SINCE_1_0.0
* @param [in] rhs A reference to the copied handle
* @return A reference to this
*/
/**
* @brief Retrieve the arguments that this condition uses.
*
+ * @SINCE_1_0.0
* @return The arguments used for this condition
*/
std::size_t GetArgumentCount() const;
/**
* @brief Retrieve the arguments that this condition uses.
*
+ * @SINCE_1_0.0
+ * @param[in] index The condition index to get the argument
* @return The arguments used for this condition
* @note The container will only be valid as long PropertyCondition is valid.
*/
* vector2 (the 2D length)
* vector3 (the 3D length)
* vector4 (the 4D length)
+ * @SINCE_1_0.0
* @param[in] arg The argument for the condition
* @return A property condition function object
*/
* vector2 (the 2D length)
* vector3 (the 3D length)
* vector4 (the 4D length)
+ * @SINCE_1_0.0
* @param[in] arg The argument for the condition
* @return A property condition function object
*/
* vector2 (the 2D length)
* vector3 (the 3D length)
* vector4 (the 4D length)
+ * @SINCE_1_0.0
* @param[in] arg0 The first argument for the condition
* @param[in] arg1 The second argument for the condition
* @return A property condition function object
* vector2 (the 2D length)
* vector3 (the 3D length)
* vector4 (the 4D length)
+ * @SINCE_1_0.0
* @param[in] arg0 The first argument for the condition
* @param[in] arg1 The second argument for the condition
* @return A property condition function object
* vector2 (the 2D length)
* vector3 (the 3D length)
* vector4 (the 4D length)
+ * @SINCE_1_0.0
* @param[in] stepAmount The step size required to trigger condition
* @param[in] initialValue The initial value to step from
* @return A property condition function object
* vector2 (the 2D length)
* vector3 (the 3D length)
* vector4 (the 4D length)
+ * @SINCE_1_0.0
* @param[in] steps List of values to receive notifications for as a property crosses them
* @return A property condition function object
*/
DALI_IMPORT_API PropertyCondition VariableStepCondition( const Dali::Vector<float>& steps );
+/**
+ * @}
+ */
} // namespace Dali
#endif // __DALI_PROPERTY_CONDITIONS_H__