28 #ifndef CMSIS_PLUS_RTOS_OS_EVFLAGS_H_ 29 #define CMSIS_PLUS_RTOS_OS_EVFLAGS_H_ 33 #if defined(__cplusplus) 47 #pragma GCC diagnostic push 48 #pragma GCC diagnostic ignored "-Wpadded" 305 #if !defined(OS_USE_RTOS_PORT_EVENT_FLAGS) 310 #if defined(OS_USE_RTOS_PORT_EVENT_FLAGS) 311 friend class port::event_flags;
312 os_evflags_port_data_t port_;
330 #pragma GCC diagnostic pop static const attributes initializer
Default event flags initialiser.
Priority ordered list of threads.
Ask for flags to be cleared after read.
Base class for attributes.
bool waiting(void)
Check if there are threads waiting.
constexpr attributes()
Construct an event flags attributes object instance.
Internal event flags implementation.
result_t timed_wait(flags::mask_t mask, clock::duration_t timeout, flags::mask_t *oflags=nullptr, flags::mode_t mode=flags::mode::all|flags::mode::clear)
Timed wait for event flags.
const char * name(void) const
Get object name.
Base class for named system objects.
port::clock::duration_t duration_t
Type of variables holding clock durations.
Return when all flags are set.
~attributes()=default
Destruct the event flags attributes object instance.
Synchronised event flags.
event_flags(const attributes &attr=initializer)
Construct an event flags object instance.
result_t wait(flags::mask_t mask, flags::mask_t *oflags, flags::mode_t mode=flags::mode::all|flags::mode::clear)
Wait for event flags.
~event_flags()
Destruct the event flags object instance.
uint32_t mask_t
Type of variables holding flags masks.
result_t try_wait(flags::mask_t mask, flags::mask_t *oflags=nullptr, flags::mode_t mode=flags::mode::all|flags::mode::clear)
Try to wait for event flags.
result_t clear(flags::mask_t mask, flags::mask_t *oflags=nullptr)
Clear event flags.
uint32_t mode_t
Type of variables holding flags modes.
uint32_t result_t
Type of values returned by RTOS functions.
attributes & operator=(const attributes &)=default
bool operator==(const event_flags &rhs) const
Compare event flags.