Lely core libraries 2.3.4
lely::io::TimerQueue Class Reference

A timer queue. This class is a wrapper around #io_tqueue_t*. More...

#include <tqueue.hpp>

Inheritance diagram for lely::io::TimerQueue:
Collaboration diagram for lely::io::TimerQueue:

Public Member Functions

 TimerQueue (io_timer_t *timer, ev_exec_t *exec=nullptr)
 
 ~TimerQueue ()
 
TimerBase get_timer () const noexcept
 
void submit_wait (io_tqueue_wait &wait) noexcept
 
void submit_wait (const TimerBase::time_point &t, io_tqueue_wait &wait) noexcept
 
void submit_wait (const TimerBase::duration &d, io_tqueue_wait &wait)
 
template<class F >
void submit_wait (const TimerBase::time_point &t, ev_exec_t *exec, F &&f)
 
template<class F >
void submit_wait (const TimerBase::duration &d, ev_exec_t *exec, F &&f)
 
template<class F >
typename::std::enable_if<!::std::is_base_of< io_tqueue_wait, typename::std::decay< F >::type >::value >::type submit_wait (const TimerBase::time_point &t, F &&f)
 
template<class F >
typename::std::enable_if<!::std::is_base_of< io_tqueue_wait, typename::std::decay< F >::type >::value >::type submit_wait (const TimerBase::duration &d, F &&f)
 
bool cancel_wait (struct io_tqueue_wait &wait) noexcept
 
bool abort_wait (struct io_tqueue_wait &wait) noexcept
 
ev::Future< void, int > async_wait (ev_exec_t *exec, const TimerBase::time_point &t, struct io_tqueue_wait **pwait=nullptr)
 
ev::Future< void, int > async_wait (const TimerBase::time_point &t, struct io_tqueue_wait **pwait=nullptr)
 
ev::Future< void, int > async_wait (ev_exec_t *exec, const TimerBase::duration &d, struct io_tqueue_wait **pwait=nullptr)
 
ev::Future< void, int > async_wait (const TimerBase::duration &d, struct io_tqueue_wait **pwait=nullptr)
 
- Public Member Functions inherited from lely::io::Device
ContextBase get_ctx () const noexcept
 
ev::Executor get_executor () const noexcept
 
bool cancel (ev_task &task) noexcept
 
::std::size_t cancel_all () noexcept
 
bool abort (ev_task &task) noexcept
 
::std::size_t abort_all () noexcept
 

Detailed Description

A timer queue. This class is a wrapper around #io_tqueue_t*.

Definition at line 126 of file tqueue.hpp.

Constructor & Destructor Documentation

◆ TimerQueue()

lely::io::TimerQueue::TimerQueue ( io_timer_t timer,
ev_exec_t exec = nullptr 
)
inlineexplicit
See also
io_tqueue_create()

Definition at line 131 of file tqueue.hpp.

◆ ~TimerQueue()

lely::io::TimerQueue::~TimerQueue ( )
inline
See also
io_tqueue_destroy()

Definition at line 157 of file tqueue.hpp.

Member Function Documentation

◆ get_timer()

TimerBase lely::io::TimerQueue::get_timer ( ) const
inlinenoexcept
See also
io_tqueue_get_timer()

Definition at line 163 of file tqueue.hpp.

◆ submit_wait() [1/7]

void lely::io::TimerQueue::submit_wait ( io_tqueue_wait wait)
inlinenoexcept
See also
io_tqueue_wait()

Definition at line 169 of file tqueue.hpp.

◆ submit_wait() [2/7]

void lely::io::TimerQueue::submit_wait ( const TimerBase::time_point &  t,
io_tqueue_wait wait 
)
inlinenoexcept
See also
io_tqueue_wait()

Definition at line 175 of file tqueue.hpp.

◆ submit_wait() [3/7]

void lely::io::TimerQueue::submit_wait ( const TimerBase::duration &  d,
io_tqueue_wait wait 
)
inline
See also
io_tqueue_wait()

Definition at line 182 of file tqueue.hpp.

◆ submit_wait() [4/7]

template<class F >
void lely::io::TimerQueue::submit_wait ( const TimerBase::time_point &  t,
ev_exec_t exec,
F &&  f 
)
inline
See also
io_tqueue_wait()

Definition at line 191 of file tqueue.hpp.

◆ submit_wait() [5/7]

template<class F >
void lely::io::TimerQueue::submit_wait ( const TimerBase::duration &  d,
ev_exec_t exec,
F &&  f 
)
inline
See also
io_tqueue_wait()

Definition at line 198 of file tqueue.hpp.

◆ submit_wait() [6/7]

template<class F >
typename::std::enable_if<!::std::is_base_of< io_tqueue_wait, typename::std::decay< F >::type >::value >::type lely::io::TimerQueue::submit_wait ( const TimerBase::time_point &  t,
F &&  f 
)
inline
See also
io_tqueue_wait()

Definition at line 206 of file tqueue.hpp.

◆ submit_wait() [7/7]

template<class F >
typename::std::enable_if<!::std::is_base_of< io_tqueue_wait, typename::std::decay< F >::type >::value >::type lely::io::TimerQueue::submit_wait ( const TimerBase::duration &  d,
F &&  f 
)
inline
See also
io_tqueue_wait()

Definition at line 214 of file tqueue.hpp.

◆ cancel_wait()

bool lely::io::TimerQueue::cancel_wait ( struct io_tqueue_wait wait)
inlinenoexcept
See also
io_tqueue_cancel_wait()

Definition at line 220 of file tqueue.hpp.

◆ abort_wait()

bool lely::io::TimerQueue::abort_wait ( struct io_tqueue_wait wait)
inlinenoexcept
See also
io_tqueue_abort_wait()

Definition at line 226 of file tqueue.hpp.

◆ async_wait() [1/4]

ev::Future< void, int > lely::io::TimerQueue::async_wait ( ev_exec_t exec,
const TimerBase::time_point &  t,
struct io_tqueue_wait **  pwait = nullptr 
)
inline
See also
io_tqueue_async_wait()

Definition at line 232 of file tqueue.hpp.

◆ async_wait() [2/4]

ev::Future< void, int > lely::io::TimerQueue::async_wait ( const TimerBase::time_point &  t,
struct io_tqueue_wait **  pwait = nullptr 
)
inline
See also
io_tqueue_async_wait()

Definition at line 242 of file tqueue.hpp.

◆ async_wait() [3/4]

ev::Future< void, int > lely::io::TimerQueue::async_wait ( ev_exec_t exec,
const TimerBase::duration &  d,
struct io_tqueue_wait **  pwait = nullptr 
)
inline
See also
io_tqueue_async_wait()

Definition at line 249 of file tqueue.hpp.

◆ async_wait() [4/4]

ev::Future< void, int > lely::io::TimerQueue::async_wait ( const TimerBase::duration &  d,
struct io_tqueue_wait **  pwait = nullptr 
)
inline
See also
io_tqueue_async_wait()

Definition at line 257 of file tqueue.hpp.


The documentation for this class was generated from the following file: