![]() |
Zephyr API 4.4.99
A Scalable Open Source RTOS
|
Poll Event. More...
#include <kernel.h>
Data Fields | |
| uint32_t | tag:8 |
| optional user-specified tag, opaque, untouched by the API | |
| uint32_t | type:_POLL_NUM_TYPES |
| bitfield of event types (bitwise-ORed K_POLL_TYPE_xxx values) | |
| uint32_t | state:_POLL_NUM_STATES |
| bitfield of event states (bitwise-ORed K_POLL_STATE_xxx values) | |
| uint32_t | mode:1 |
| mode of operation, from enum k_poll_modes | |
| uint32_t | unused:(32 - (0 + 8 + _POLL_NUM_TYPES + _POLL_NUM_STATES + 1 )) |
| unused bits in 32-bit word | |
| union { | |
| void * obj | |
| void * typed_K_POLL_TYPE_IGNORE | |
| struct k_poll_signal * signal | |
| struct k_poll_signal * typed_K_POLL_TYPE_SIGNAL | |
| struct k_sem * sem | |
| struct k_sem * typed_K_POLL_TYPE_SEM_AVAILABLE | |
| struct k_fifo * fifo | |
| struct k_fifo * typed_K_POLL_TYPE_FIFO_DATA_AVAILABLE | |
| struct k_queue * queue | |
| struct k_queue * typed_K_POLL_TYPE_DATA_AVAILABLE | |
| struct k_msgq * msgq | |
| struct k_msgq * typed_K_POLL_TYPE_MSGQ_DATA_AVAILABLE | |
| struct k_pipe * pipe | |
| struct k_pipe * typed_K_POLL_TYPE_PIPE_DATA_AVAILABLE | |
| }; | |
| per-type data | |
Poll Event.
| union { ... } k_poll_event |
per-type data
| struct k_fifo* k_poll_event::fifo |
| uint32_t k_poll_event::mode |
mode of operation, from enum k_poll_modes
| struct k_msgq* k_poll_event::msgq |
| void* k_poll_event::obj |
| struct k_pipe* k_poll_event::pipe |
| struct k_queue* k_poll_event::queue |
| struct k_sem* k_poll_event::sem |
| struct k_poll_signal* k_poll_event::signal |
| uint32_t k_poll_event::state |
bitfield of event states (bitwise-ORed K_POLL_STATE_xxx values)
| uint32_t k_poll_event::tag |
optional user-specified tag, opaque, untouched by the API
| uint32_t k_poll_event::type |
bitfield of event types (bitwise-ORed K_POLL_TYPE_xxx values)
| struct k_queue * k_poll_event::typed_K_POLL_TYPE_DATA_AVAILABLE |
| struct k_fifo * k_poll_event::typed_K_POLL_TYPE_FIFO_DATA_AVAILABLE |
| void * k_poll_event::typed_K_POLL_TYPE_IGNORE |
| struct k_msgq * k_poll_event::typed_K_POLL_TYPE_MSGQ_DATA_AVAILABLE |
| struct k_pipe * k_poll_event::typed_K_POLL_TYPE_PIPE_DATA_AVAILABLE |
| struct k_sem * k_poll_event::typed_K_POLL_TYPE_SEM_AVAILABLE |
| struct k_poll_signal * k_poll_event::typed_K_POLL_TYPE_SIGNAL |
| uint32_t k_poll_event::unused |
unused bits in 32-bit word