20#pragma clang diagnostic ignored "-Wc++98-compat"
38 assert(port::interrupts::is_priority_valid ());
44 if (oflags !=
nullptr)
46 *oflags = flags_mask_;
49#pragma GCC diagnostic push
51#pragma clang diagnostic ignored "-Wdeprecated-volatile"
52#elif defined(__GNUC__)
53#pragma GCC diagnostic ignored "-Wvolatile"
56#pragma GCC diagnostic pop
72 if (oflags !=
nullptr)
74 *oflags = flags_mask_;
89 if (oflags !=
nullptr)
91 *oflags = (flags_mask_ &
mask);
96#pragma GCC diagnostic push
98#pragma clang diagnostic ignored "-Wdeprecated-volatile"
99#elif defined(__GNUC__)
100#pragma GCC diagnostic ignored "-Wvolatile"
103 flags_mask_ &= ~mask;
104#pragma GCC diagnostic pop
127 ret = flags_mask_ &
mask;
130#pragma GCC diagnostic push
131#if defined(__clang__)
132#pragma clang diagnostic ignored "-Wdeprecated-volatile"
133#elif defined(__GNUC__)
134#pragma GCC diagnostic ignored "-Wvolatile"
137 flags_mask_ &= ~mask;
138#pragma GCC diagnostic pop
157 if (oflags !=
nullptr)
159 *oflags = flags_mask_;
162#pragma GCC diagnostic push
163#if defined(__clang__)
164#pragma clang diagnostic ignored "-Wdeprecated-volatile"
165#elif defined(__GNUC__)
166#pragma GCC diagnostic ignored "-Wvolatile"
169 flags_mask_ &= ~mask;
170#pragma GCC diagnostic pop
result_t raise(flags::mask_t mask, flags::mask_t *oflags)
Raise event flags.
flags::mask_t get(flags::mask_t mask, flags::mode_t mode)
Get (and possibly clear) event flags.
bool check_raised(flags::mask_t mask, flags::mask_t *oflags, flags::mode_t mode)
Check if expected flags are raised.
result_t clear(flags::mask_t mask, flags::mask_t *oflags)
Clear event flags.
flags::mask_t mask(void)
Get the flags mask.
Interrupts critical section RAII helper.
@ all
Return when all flags are set.
@ clear
Ask for flags to be cleared after read.
@ any
Return when at least one flag is set.
@ any
Special mask to represent any flag.
uint32_t mode_t
Type of variables holding flags modes.
uint32_t mask_t
Type of variables holding flags masks.
@ ok
Function completed; no errors or events occurred.
uint32_t result_t
Type of values returned by RTOS functions.
#define os_assert_err(__e, __er)
Assert or return an error.
Single file µOS++ RTOS definitions.