Lely core libraries
2.2.5
|
Go to the documentation of this file.
24 #ifndef LELY_IO2_WIN32_POLL_H_
25 #define LELY_IO2_WIN32_POLL_H_
67 #define IO_CP_INIT(func) \
69 (func), { 0, 0, { { 0, 0 } }, NULL } \
72 void *io_poll_alloc(
void);
73 void io_poll_free(
void *ptr);
138 #endif // !LELY_IO2_WIN32_POLL_H_
void io_poll_destroy(io_poll_t *poll)
Destroys an I/O polling interface.
void io_cp_func_t(struct io_cp *cp, size_t nbytes, int errc)
The type of function invoked by an I/O polling instance (through ev_poll_wait()) when an overlapped I...
const struct ev_poll_vtbl *const ev_poll_t
The abstract polling interface.
ev_poll_t * io_poll_get_poll(const io_poll_t *poll)
Returns a pointer to the ev_poll_t instance corresponding to the I/O polling instance.
An I/O polling interface.
io_cp_func_t * func
A pointer to the function to be invoked when the I/O operation completes.
io_ctx_t * io_poll_get_ctx(const io_poll_t *poll)
Returns a pointer to the I/O context with which the I/O polling instance is registered.
int io_poll_register_handle(io_poll_t *poll, HANDLE handle)
Registers a file handle with (the I/O completion port of) an I/O polling instance.
int io_poll_post(io_poll_t *poll, size_t nbytes, struct io_cp *cp)
Posts a completion packet to the I/O completion port of an I/O polling instance.
io_poll_t * io_poll_create(void)
Creates a new I/O polling interface.
OVERLAPPED overlapped
The OVERLAPPED structure submitted to the asynchronous I/O operation.
An I/O completion packet.