24 #ifndef LELY_IO2_CO_TIMER_HPP_ 25 #define LELY_IO2_CO_TIMER_HPP_ 43 auto overrun = wait->r.result;
71 virtual void operator()(
int overrun, ::std::error_code ec) noexcept = 0;
77 #endif // !LELY_IO2_CO_TIMER_HPP_ const struct ev_exec_vtbl *const ev_exec_t
An abstract task executor.
virtual void operator()(int overrun, ::std::error_code ec) noexcept=0
The coroutine to be executed once the wait operation completes (or is canceled).
This header file is part of the utilities library; it contains the C++ implementation of stackless co...
A wait operation, suitable for use with an I/O timer, with a stackless coroutine as the completion ta...
The parent class for function objects used as stackless coroutines.
CoTimerWait(ev_exec_t *exec) noexcept
Constructs a wait operation.
ev_exec_t * exec
A pointer to the executor to which the task is (to be) submitted.
CoTimerWait() noexcept
Constructs a wait operation.
#define IO_TIMER_WAIT_INIT(exec, func)
The static initializer for io_timer_wait.
ev::Executor get_executor() const noexcept
Returns the executor to which the completion task is (to be) submitted.
This header file is part of the I/O library; it contains the C++ interface for the abstract timer...
struct ev_task task
The task (to be) submitted upon completion (or cancellation) of the wait operation.
An abstract task executor. This class is a wrapper around ev_exec_t*.
A wait operation suitable for use with an I/O timer.
::std::error_code make_error_code(SdoErrc e) noexcept
Creates an error code corresponding to an SDO abort code.
struct io_timer_wait * io_timer_wait_from_task(struct ev_task *task)
Obtains a pointer to an I/O timer wait operation from a pointer to its completion task...