Lely core libraries  2.2.5
fd_loop.h
Go to the documentation of this file.
1 
22 #ifndef LELY_IO2_POSIX_FD_LOOP_H_
23 #define LELY_IO2_POSIX_FD_LOOP_H_
24 
25 #include <lely/ev/exec.h>
26 #include <lely/io2/posix/poll.h>
27 
29 typedef struct io_fd_loop io_fd_loop_t;
30 
31 #ifdef __cplusplus
32 extern "C" {
33 #endif
34 
35 void *io_fd_loop_alloc(void);
36 void io_fd_loop_free(void *ptr);
37 io_fd_loop_t *io_fd_loop_init(io_fd_loop_t *loop, io_poll_t *poll);
38 void io_fd_loop_fini(io_fd_loop_t *loop);
39 
50 
53 
56 
59 
61 int io_fd_loop_get_fd(const io_fd_loop_t *loop);
62 
69 void io_fd_loop_stop(io_fd_loop_t *loop);
70 
73 
76 
86 size_t io_fd_loop_run(io_fd_loop_t *loop);
87 
88 
89 size_t io_fd_loop_run_one(io_fd_loop_t *loop);
90 
91 #ifdef __cplusplus
92 }
93 #endif
94 
95 #endif // !LELY_IO2_POSIX_FD_LOOP_H_
const struct ev_poll_vtbl *const ev_poll_t
The abstract polling interface.
Definition: poll.h:32
This header file is part of the event library; it contains the abstract task executor interface.
void io_fd_loop_restart(io_fd_loop_t *loop)
Restarts a file descriptor event loop.
Definition: fd_loop.c:313
void io_fd_loop_destroy(io_fd_loop_t *loop)
Destroys a file descriptor event loop.
Definition: fd_loop.c:251
void io_fd_loop_stop(io_fd_loop_t *loop)
Stops the file descriptor event loop.
Definition: fd_loop.c:284
int io_fd_loop_get_fd(const io_fd_loop_t *loop)
Returns the file descriptor corresponding to the event loop.
Definition: fd_loop.c:276
io_fd_loop_t * io_fd_loop_create(io_poll_t *poll)
Creates a new file descriptor event loop.
Definition: fd_loop.c:224
ev_poll_t * io_fd_loop_get_poll(const io_fd_loop_t *loop)
Returns a pointer to the polling instance used by the event loop.
Definition: fd_loop.c:260
ev_exec_t * io_fd_loop_get_exec(const io_fd_loop_t *loop)
Returns a pointer to the executor corresponding to the event loop.
Definition: fd_loop.c:268
int io_fd_loop_stopped(io_fd_loop_t *loop)
Returns 1 if the file descriptor event loop is stopped, and 0 if not.
Definition: fd_loop.c:299
size_t io_fd_loop_run(io_fd_loop_t *loop)
Equivalent to.
Definition: fd_loop.c:328
const struct ev_exec_vtbl *const ev_exec_t
An abstract task executor.
Definition: ev.h:29
This header file is part of the I/O library; it contains the I/O polling declarations for POSIX platf...
An I/O polling interface.
Definition: poll.c:48
A file descriptor event loop.
Definition: fd_loop.c:80
io_poll_t * poll
A pointer to the I/O polling instance used to monitor the event loop.
Definition: fd_loop.c:84