X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=lib%2Fwaiter%2Fwaiter.h;h=9a8acf446f0196bd00ecde681cebc1def5b87e58;hp=ff8a5ff22e9193175a71ea70c5070b04c00b888d;hb=2e60c988cb533dbc6c3abc63ae8b295e63dd2c0c;hpb=812761a1f8ff94e4913529840b905360ff843fc4 diff --git a/lib/waiter/waiter.h b/lib/waiter/waiter.h index ff8a5ff..9a8acf4 100644 --- a/lib/waiter/waiter.h +++ b/lib/waiter/waiter.h @@ -4,6 +4,7 @@ #include struct waiter; +struct waitset; enum events { WAIT_IN = POLLIN, @@ -12,12 +13,17 @@ enum events { typedef int (*waiter_cb)(void *); -struct waiter *waiter_register(int fd, int events, +struct waitset *waitset_create(void *ctx); + +struct waiter *waiter_register_io(struct waitset *waitset, int fd, int events, + waiter_cb callback, void *arg); + +struct waiter *waiter_register_timeout(struct waitset *set, int delay_ms, waiter_cb callback, void *arg); void waiter_remove(struct waiter *waiter); -int waiter_poll(void); +int waiter_poll(struct waitset *waitset); #endif /* _WAITER_H */