Zephyr Project API 4.0.0
A Scalable Open Source RTOS
|
Generic struct for handling network timeouts. More...
#include <net_timeout.h>
Data Fields | |
sys_snode_t | node |
Used to link multiple timeouts that share a common timer infrastructure. | |
uint32_t | timer_start |
Time at which the timer was last set. | |
uint32_t | timer_timeout |
Portion of remaining timeout that does not exceed NET_TIMEOUT_MAX_VALUE. | |
uint32_t | wrap_counter |
Timer wrap count. | |
Generic struct for handling network timeouts.
Except for the linking node, all access to state from these objects must go through the defined API.
sys_snode_t net_timeout::node |
Used to link multiple timeouts that share a common timer infrastructure.
For examples a set of related timers may use a single delayed work structure, which is always scheduled at the shortest time to a timeout event.
uint32_t net_timeout::timer_start |
Time at which the timer was last set.
This usually corresponds to the low 32 bits of k_uptime_get().
uint32_t net_timeout::timer_timeout |
Portion of remaining timeout that does not exceed NET_TIMEOUT_MAX_VALUE.
This value is updated in parallel with timer_start and wrap_counter by net_timeout_evaluate().
uint32_t net_timeout::wrap_counter |
Timer wrap count.
This tracks multiples of NET_TIMEOUT_MAX_VALUE milliseconds that have yet to pass. It is also updated along with timer_start and wrap_counter by net_timeout_evaluate().