| 
    RTI Connext DDS Micro
    Version 2.4.10
    
   | 
 
Data Structures | |
| struct | OSAPI_TimeoutUserData | 
| User-data passed to timer-handler.  More... | |
| struct | OSAPI_TimerProperty | 
| Timer properies.  More... | |
Macros | |
| #define | OSAPI_TIMER_PERIODIC (0x1) | 
| Create a periodic timer.   | |
| #define | OSAPI_TIMER_ONE_SHOT (0x0) | 
| Create a one-shot timer.   | |
Enumerations | |
| enum | OSAPI_TimeoutOp_t | 
| Action taken by timer module when a timer callback returns.  More... | |
Functions | |
| OSAPI_Timer_T | OSAPI_Timer_new (struct OSAPI_TimerProperty *property, struct OSAPI_Mutex *mutex) | 
| Create a Timer.   | |
| RTI_BOOL | OSAPI_Timer_delete (OSAPI_Timer_T timer) | 
| Delete a Timer.   | |
| RTI_BOOL | OSAPI_Timer_create_timeout (OSAPI_Timer_T timer, OSAPI_TimeoutHandle_T *out_handle, RTI_INT32 timeout_sec, RTI_INT32 timeout_nsec, RTI_INT32 flags, OSAPI_TimeoutFunction_T timeout_handler, struct OSAPI_TimeoutUserData *user_data) | 
| Schedule a timeout.   | |
| RTI_BOOL | OSAPI_Timer_update_timeout (OSAPI_Timer_T timer, OSAPI_TimeoutHandle_T *out_handle, RTI_INT32 timeout_sec, RTI_INT32 timeout_nsec) | 
| Reschedule a timeout.   | |
| RTI_BOOL | OSAPI_Timer_delete_timeout (OSAPI_Timer_T timer, OSAPI_TimeoutHandle_T *handle) | 
| Stop a previously scheduled timeout.   | |
| RTI_BOOL | OSAPI_TimeoutHandle_get_user_data (struct OSAPI_TimeoutUserData *user_data, OSAPI_TimeoutHandle_T *handle) | 
| Get the user_data from a handle.   | |
| #define OSAPI_TIMER_PERIODIC (0x1) | 
Create a periodic timer.
| #define OSAPI_TIMER_ONE_SHOT (0x0) | 
Create a one-shot timer.
| enum OSAPI_TimeoutOp_t | 
Action taken by timer module when a timer callback returns.
| OSAPI_Timer_T OSAPI_Timer_new | ( | struct OSAPI_TimerProperty * | property, | 
| struct OSAPI_Mutex * | mutex | ||
| ) | 
Create a Timer.
Create a new Timer. A Timer can manage multiple timeouts.
Example:
@code 
OSAPI_Timer_t my_timer;
struct OSAPI_TimerProperty timer_property = OSAPI_TimerProperty_INITIALIZER;
timer = OSAPI_Timer_new(&timer_property);
if (timer == NULL) {
    return error;
}
\endcode
The created Timer should be deleted with \ref OSAPI_Timer_delete.
@param[in] property Timer property.
@param[in] mutex Shared mutex.
@return New timer on success, NULL on failure 
| RTI_BOOL OSAPI_Timer_delete | ( | OSAPI_Timer_T | timer | ) | 
Delete a Timer.
Delete a previously created Timer. All timeouts are cancelled.
Example:
@code 
OSAPI_Timer_t my_timer;
......
OSAPI_Timer_delete(my_timer);
if (timer == NULL) {
    return error;
}
\endcode
The created Timer should be deleted with \ref OSAPI_Timer_delete.
@param [in] timer Timer.
\return RTI_TRUE on success, RTI_FALSE on failure
\par MT Safety:
SAFE
| RTI_BOOL OSAPI_Timer_create_timeout | ( | OSAPI_Timer_T | timer, | 
| OSAPI_TimeoutHandle_T * | out_handle, | ||
| RTI_INT32 | timeout_sec, | ||
| RTI_INT32 | timeout_nsec, | ||
| RTI_INT32 | flags, | ||
| OSAPI_TimeoutFunction_T | timeout_handler, | ||
| struct OSAPI_TimeoutUserData * | user_data | ||
| ) | 
Schedule a timeout.
This function schedules a timeout with the specified period. The timeout can either be rescheduled automatically or a new timeout must be created.
Example:
A timeout can cancelled with OSAPI_Timer_delete_timeout or the timeout can be modified with OSAPI_Timer_update_timeout.
| [in] | timer | Timer object. Cannot be NULL. | 
| [out] | out_handle | Reference to the timeout. Cannot be NULL. | 
| [in] | timeout_sec | The number of seconds before timeout | 
| [in] | timeout_nsec | Additional number of nanoseconds before timeout | 
| [in] | flags | Flags OSAPI_TIMER_PERIODIC or OSAPI_TIMER_ONE_SHOT | 
| [in] | timeout_handler | Function to call at timeout. Cannot be NULL. | 
| [in] | user_data | User data associated with the timeout. Can be NULL. | 
| RTI_BOOL OSAPI_Timer_update_timeout | ( | OSAPI_Timer_T | timer, | 
| OSAPI_TimeoutHandle_T * | out_handle, | ||
| RTI_INT32 | timeout_sec, | ||
| RTI_INT32 | timeout_nsec | ||
| ) | 
Reschedule a timeout.
This function reschedules a previously scheduled timeout with the specified period.
Example:
| [in] | timer | Timer object. Cannot be NULL. | 
| [out] | out_handle | Reference to the timeout. Cannot be NULL. | 
| [in] | timeout_sec | The number of seconds before timeout | 
| [in] | timeout_nsec | Additional number of nanoseconds before timeout | 
| RTI_BOOL OSAPI_Timer_delete_timeout | ( | OSAPI_Timer_T | timer, | 
| OSAPI_TimeoutHandle_T * | handle | ||
| ) | 
Stop a previously scheduled timeout.
This function stops a previously scheduled timeout.
Example:
@code 
OSAPI_Timer_t my_timer;
OSAPITimeoutHandle_t my_handle = OSAPITimeoutHandle_t_INITIALIZER;
RTI_BOOL result;
....
result = OSAPI_Timer_stop_timer(my_timer,&my_handle);
if (!result) {
    report error;
}
......
\endcode
@param [in] timer Timer object. Cannot be NULL.
@param [in] handle Reference to the timeout. Cannot be NULL.
\return RTI_TRUE on success, RTI_FALSE on failure
\par MT Safety:
SAFE
| RTI_BOOL OSAPI_TimeoutHandle_get_user_data | ( | struct OSAPI_TimeoutUserData * | user_data, | 
| OSAPI_TimeoutHandle_T * | handle | ||
| ) | 
Get the user_data from a handle.
Example:
| [out] | user_data | User-data associated with handle. Cannot be NULL. | 
| [in] | handle | Timer handle. |