* @since 2.0
*
* The %Timer class can activate the timer and notify the listeners.
- * Once the target goes into sleep mode, Timer does not work properly because the main loop gets stopped.
- * You can use Alarm on behalf of Timer for sleep mode.
+ * It supports the relative time and provides both repeatable and non-repeatable timers.
+ * Because %Timer is handled in an event-driven way, when the main loop gets blocked, even if the time is expired, the listener cannot get notified.
+ * Once the target goes into the sleep mode, %Timer does not work properly because the main loop gets stopped.
+ * You can use Alarm on behalf of the %Timer for the sleep mode.
* For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/base/timer.htm">Timer</a>.
* The following example demonstrates how to use the %Timer class.
*
* @param[in] listener The event listener
* @exception E_SUCCESS The method is successful.
* @exception E_OUT_OF_MEMORY The memory is insufficient.
- * @exception E_SYSTEM A system error has occurred.
+ * @exception E_SYSTEM A system error has occurred.
*/
result Construct(ITimerEventListener& listener);
/**
* Starts the timer.
*
- * @if OSPCOMPACT
+ * @if OSPCOMPAT
* @brief <i> [Compatibility] </i>
* @endif
*
* @since 2.0
*
- * @if OSPCOMPACT
- * @compatibility This method has compatibility issues with %Tizen API versions @b prior @b to @b 2.1. @n
- * For more information, see @ref CompTimerStartPage "here".
+ * @if OSPCOMPAT
+ * @compatibility This method has compatibility issues with Tizen API versions @b prior @b to @b 2.1. @n
+ * For more information, see @ref CompTimerStartPage "here".
* @endif
*
- * @return An error code
- * @param[in] timeout A timeout interval in milliseconds
- * @exception E_SUCCESS The method is successful.
- * @exception E_INVALID_ARG The specified input parameter is invalid.
- * @exception E_SYSTEM A system error has occurred.
- * @remarks Once it has been started, it cannot be started again until it expires. @n
- * You must cancel it if you want to re-start the timer.
- * @see Cancel()
+ * @return An error code
+ * @param[in] timeout The timeout interval in milliseconds
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_INVALID_ARG The specified input parameter is invalid.
+ * @exception E_INVALID_STATE The timer cannot start as it is in an invalid state.
+ * @exception E_SYSTEM A system error has occurred.
+ * @remarks Once the timer has been started, it cannot be started again until it has expired.
+ * @see Cancel()
*/
result Start(int timeout);
/**
- * @page CompTimerStartPage Compatibility for Start(int timeout)
- * @section CompTimerStartPageIssueSection Issues
- * Implementation of this method in %Tizen API versions prior to 2.1 has the following issue: @n
- * -# The method returns E_INVALID_ARG if timeout is equal to zero.
- *
- * @section CompTimerStartPageSolutionSection Resolutions
- * The issue mentioned above is resolved in %Tizen API version 2.1, and it is recommended to use %Tizen API version 2.1 or above.
- * -# In case of zero, Timer sets timeout to the best-effort minimum interval without returning E_INVALID_ARG.
- */
+ * @page CompTimerStartPage Compatibility for Start(int timeout)
+ * @section CompTimerStartPageIssueSection Issues
+ * Implementation of this method in Tizen API versions prior to 2.1 has the following issue: @n
+ * -# The method returns @c E_INVALID_ARG if timeout is equal to zero.
+ *
+ * @section CompTimerStartPageSolutionSection Resolutions
+ * The issue mentioned above is resolved in Tizen API version 2.1, and it is recommended to use Tizen API version 2.1 or above.
+ * -# In case of zero, %Timer sets the timeout to the best possible minimum interval without returning @c E_INVALID_ARG.
+ */
/**
* Starts the timer. @n
- * The timer is expired repeatedly until it is canceled.
+ * The timer expires repeatedly until it is cancelled.
*
* @since 2.0
*
- * @return An error code
- * @param[in] interval A timeout interval in milliseconds
- * @exception E_SUCCESS The method is successful.
- * @exception E_INVALID_ARG The specified input parameter is invalid.
- * @exception E_SYSTEM A system error has occurred.
- * @remarks To stop timer expiration or restart a timer, the timer must be canceled.
- * @see Cancel()
+ * @return An error code
+ * @param[in] interval The timeout interval in milliseconds
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_INVALID_ARG The specified input parameter is invalid.
+ * @exception E_INVALID_STATE The timer cannot start as it is in an invalid state.
+ * @exception E_SYSTEM A system error has occurred.
+ * @remarks To stop the timer expiration or restart the timer, the timer must be cancelled.
+ * @see Cancel()
*/
result StartAsRepeatable(int interval);
* @since 2.0
*
* @return An error code
- * @exception E_SUCCESS The method is successful.
+ * @exception E_SUCCESS The method is successful.
* @exception E_SYSTEM A system error has occurred.
- * @remarks The timer cannot be canceled if it is not started.
+ * @remarks The started timer can be cancelled when it does not get expired. @n
+ * If the timer has already expired, this method also returns @c E_SUCCESS which causes the same effect as when cancelled normally.
*/
result Cancel(void);