diff options
Diffstat (limited to 'src/platform/posix/posix_pollq.h')
| -rw-r--r-- | src/platform/posix/posix_pollq.h | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/platform/posix/posix_pollq.h b/src/platform/posix/posix_pollq.h index e42b120d..9fa7c92e 100644 --- a/src/platform/posix/posix_pollq.h +++ b/src/platform/posix/posix_pollq.h @@ -25,22 +25,26 @@ typedef struct nni_posix_pollq_node nni_posix_pollq_node; typedef struct nni_posix_pollq nni_posix_pollq; struct nni_posix_pollq_node { - nni_posix_pollq *pq; // associated pollq nni_list_node node; // linkage into the pollq list + nni_posix_pollq *pq; // associated pollq int index; // used by the poller impl int armed; // used by the poller impl int fd; // file descriptor to poll int events; // events to watch for int revents; // events received - void * data; // user data - nni_cb cb; // user callback on event + nni_taskq_ent task; + void * data; // user data + nni_cb cb; // user callback on event }; extern nni_posix_pollq *nni_posix_pollq_get(int); -extern int nni_posix_pollq_submit(nni_posix_pollq *, nni_posix_pollq_node *); -extern void nni_posix_pollq_cancel(nni_posix_pollq *, nni_posix_pollq_node *); -extern int nni_posix_pollq_sysinit(void); -extern void nni_posix_pollq_sysfini(void); +extern int nni_posix_pollq_sysinit(void); +extern void nni_posix_pollq_sysfini(void); + +extern int nni_posix_pollq_add(nni_posix_pollq *, nni_posix_pollq_node *); +extern void nni_posix_pollq_remove(nni_posix_pollq_node *); +extern void nni_posix_pollq_arm(nni_posix_pollq_node *, int); +extern void nni_posix_pollq_disarm(nni_posix_pollq_node *, int); #endif // PLATFORM_POSIX |
