|
RTI Connext DDS Micro
Version 2.4.11
|
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. |