L4Re Operating System Framework
Interface and Usage Documentation
|
Timeout queue to be used in l4re server loop. More...
#include <ipc_timeout_queue>
Public Types | |
typedef L4::Ipc_svr::Timeout | Timeout |
Provide a local definition of Timeout for backward compatibility. | |
Public Member Functions | |
l4_kernel_clock_t | next_timeout () const |
Get the time for the next timeout. | |
bool | timeout_expired (l4_kernel_clock_t now) const |
Determine if a timeout has happened. | |
void | handle_expired_timeouts (l4_kernel_clock_t now) |
run the callbacks of expired timeouts | |
void | add (Timeout *timeout, l4_kernel_clock_t time) |
Add a timeout to the queue. | |
void | remove (Timeout *timeout) |
Remove timeout from the queue. | |
Timeout queue to be used in l4re server loop.
Definition at line 65 of file ipc_timeout_queue.
|
inline |
Add a timeout to the queue.
timeout | timeout object to add |
time | the time when the timeout expires |
Definition at line 121 of file ipc_timeout_queue.
References cxx::Bits::Basic_list< POLICY >::begin(), cxx::Bits::Basic_list< POLICY >::end(), and cxx::H_list< T, POLICY >::insert_before().
Referenced by L4::Ipc_svr::Timeout_queue_hooks< HOOKS, BR_MAN >::add_timeout().
|
inline |
run the callbacks of expired timeouts
now | the current time. |
Definition at line 101 of file ipc_timeout_queue.
References cxx::Bits::Basic_list< POLICY >::begin(), cxx::Bits::Basic_list< POLICY >::empty(), cxx::H_list< T, POLICY >::erase(), and L4::Ipc_svr::Timeout::expired().
Referenced by L4::Ipc_svr::Timeout_queue_hooks< HOOKS, BR_MAN >::setup_wait().
|
inline |
Get the time for the next timeout.
Definition at line 75 of file ipc_timeout_queue.
References cxx::Bits::Basic_list< POLICY >::front().
Referenced by L4::Ipc_svr::Timeout_queue_hooks< HOOKS, BR_MAN >::timeout(), and timeout_expired().
|
inline |
Remove timeout from the queue.
timeout | timeout to remove from timeout queue |
Definition at line 136 of file ipc_timeout_queue.
References cxx::H_list< T, POLICY >::remove().
Referenced by L4::Ipc_svr::Timeout_queue_hooks< HOOKS, BR_MAN >::remove_timeout().
|
inline |
Determine if a timeout has happened.
now | The current time. |
true | There is at least one expired timeout in the queue. false No expired timeout in the queue. |
Definition at line 91 of file ipc_timeout_queue.
References next_timeout().
Referenced by L4::Ipc_svr::Timeout_queue_hooks< HOOKS, BR_MAN >::before_reply(), and L4::Ipc_svr::Timeout_queue_hooks< HOOKS, BR_MAN >::setup_wait().