1#ifndef NOTIFICATOR_H
2#define NOTIFICATOR_H
3
4
5#include <barrelfish/waitset.h>
6#include <barrelfish/barrelfish.h>
7#include <barrelfish/dispatch.h>
8
9
10#include <sys/cdefs.h>
11
12__BEGIN_DECLS
13
14
15typedef bool (*check_notification_fn_type)(void *object);
16
17struct notificator
18{
19    struct notificator *prev, *next;
20    void *object;
21    check_notification_fn_type can_read, can_write;
22    struct waitset_chanstate ready_to_read, ready_to_write;
23};
24
25
26void notificator_init(struct notificator *notificator, void *object,
27    check_notification_fn_type can_read, check_notification_fn_type can_write);
28
29void check_notificators_disabled(dispatcher_handle_t handle);
30
31__END_DECLS
32
33#endif
34