#ifndef foouringhfoo #define foouringhfoo void uring_task_refdump(struct uring_task *task); void uring_task_put(struct cfg *cfg, struct uring_task *task); void uring_task_get(struct cfg *cfg, struct uring_task *task); void uring_task_set_fd(struct uring_task *task, int fd); void uring_task_close_fd(struct cfg *cfg, struct uring_task *task); struct uring_task *uring_parent(struct cfg *cfg); void uring_task_init(struct uring_task *task, const char *name, struct uring_task *parent, void (*free)(struct uring_task *)); void uring_close(struct cfg *cfg, struct uring_task *task, int fd, callback_t callback); void uring_write(struct cfg *cfg, struct uring_task *task, void *buf, size_t len, callback_t callback); void uring_read(struct cfg *cfg, struct uring_task *task, void *buf, size_t len, off_t offset, callback_t callback); void uring_openat(struct cfg *cfg, struct uring_task *task, const char *path, callback_t callback); void uring_sendmsg(struct cfg *cfg, struct uring_task *task, struct msghdr *msg, callback_t callback); void uring_connect(struct cfg *cfg, struct uring_task *task, struct sockaddr_in46 *addr, callback_t callback); void uring_accept(struct cfg *cfg, struct uring_task *task, struct sockaddr_in46 *addr, callback_t callback); void uring_poll(struct cfg *cfg, struct uring_task *task, short poll_mask, callback_t callback); void uring_poll_cancel(struct cfg *cfg, struct uring_task *task); void uring_cancel(struct cfg *cfg, struct uring_task *task); void uring_refdump(struct uring_ev *uev); void uring_init(struct cfg *cfg); void uring_event_loop(struct cfg *cfg); #endif