Xenomai
3.1
|
Functions | |
void | rtdm_event_init (rtdm_event_t *event, unsigned long pending) |
Initialise an event More... | |
void | rtdm_event_destroy (rtdm_event_t *event) |
Destroy an event More... | |
void | rtdm_event_pulse (rtdm_event_t *event) |
Signal an event occurrence to currently listening waiters More... | |
void | rtdm_event_signal (rtdm_event_t *event) |
Signal an event occurrence More... | |
int | rtdm_event_wait (rtdm_event_t *event) |
Wait on event occurrence More... | |
int | rtdm_event_timedwait (rtdm_event_t *event, nanosecs_rel_t timeout, rtdm_toseq_t *timeout_seq) |
Wait on event occurrence with timeout More... | |
void | rtdm_event_clear (rtdm_event_t *event) |
Clear event state More... | |
int | rtdm_event_select (rtdm_event_t *event, rtdm_selector_t *selector, enum rtdm_selecttype type, unsigned int fd_index) |
Bind a selector to an event More... | |
void rtdm_event_clear | ( | rtdm_event_t * | event | ) |
Clear event state
[in,out] | event | Event handle as returned by rtdm_event_init() |
void rtdm_event_destroy | ( | rtdm_event_t * | event | ) |
Destroy an event
[in,out] | event | Event handle as returned by rtdm_event_init() |
void rtdm_event_init | ( | rtdm_event_t * | event, |
unsigned long | pending | ||
) |
Initialise an event
[in,out] | event | Event handle |
[in] | pending | Non-zero if event shall be initialised as set, 0 otherwise |
void rtdm_event_pulse | ( | rtdm_event_t * | event | ) |
Signal an event occurrence to currently listening waiters
This function wakes up all current waiters of the given event, but it does not change the event state. Subsequently callers of rtdm_event_wait() or rtdm_event_timedwait() will therefore be blocked first.
[in,out] | event | Event handle as returned by rtdm_event_init() |
int rtdm_event_select | ( | rtdm_event_t * | event, |
rtdm_selector_t * | selector, | ||
enum rtdm_selecttype | type, | ||
unsigned int | fd_index | ||
) |
Bind a selector to an event
This functions binds the given selector to an event so that the former is notified when the event state changes. Typically the select binding handler will invoke this service.
[in,out] | event | Event handle as returned by rtdm_event_init() |
[in,out] | selector | Selector as passed to the select binding handler |
[in] | type | Type of the bound event as passed to the select binding handler |
[in] | fd_index | File descriptor index as passed to the select binding handler |
void rtdm_event_signal | ( | rtdm_event_t * | event | ) |
Signal an event occurrence
This function sets the given event and wakes up all current waiters. If no waiter is presently registered, the next call to rtdm_event_wait() or rtdm_event_timedwait() will return immediately.
[in,out] | event | Event handle as returned by rtdm_event_init() |
int rtdm_event_timedwait | ( | rtdm_event_t * | event, |
nanosecs_rel_t | timeout, | ||
rtdm_toseq_t * | timeout_seq | ||
) |
Wait on event occurrence with timeout
This function waits or tests for the occurence of the given event, taking the provided timeout into account. On successful return, the event is reset.
[in,out] | event | Event handle as returned by rtdm_event_init() |
[in] | timeout | Relative timeout in nanoseconds, see RTDM_TIMEOUT_xxx for special values |
[in,out] | timeout_seq | Handle of a timeout sequence as returned by rtdm_toseq_init() or NULL |
int rtdm_event_wait | ( | rtdm_event_t * | event | ) |
Wait on event occurrence
This is the light-weight version of rtdm_event_timedwait(), implying an infinite timeout.
[in,out] | event | Event handle as returned by rtdm_event_init() |