1 #ifndef FSMONITOR_IPC_H
2 #define FSMONITOR_IPC_H
5 * Returns true if built-in file system monitor daemon is defined
8 int fsmonitor_ipc__is_supported(void);
11 * Returns the pathname to the IPC named pipe or Unix domain socket
12 * where a `git-fsmonitor--daemon` process will listen. This is a
15 * Returns NULL if the daemon is not supported on this platform.
17 const char *fsmonitor_ipc__get_path(void);
20 * Try to determine whether there is a `git-fsmonitor--daemon` process
21 * listening on the IPC pipe/socket.
23 enum ipc_active_state fsmonitor_ipc__get_state(void);
26 * Connect to a `git-fsmonitor--daemon` process via simple-ipc
27 * and ask for the set of changed files since the given token.
29 * This DOES NOT use the hook interface.
31 * Spawn a daemon process in the background if necessary.
33 * Returns -1 on error; 0 on success.
35 int fsmonitor_ipc__send_query(const char *since_token,
36 struct strbuf *answer);
39 * Connect to a `git-fsmonitor--daemon` process via simple-ipc and
40 * send a command verb. If no daemon is available, we DO NOT try to
43 * Returns -1 on error; 0 on success.
45 int fsmonitor_ipc__send_command(const char *command,
46 struct strbuf *answer);
48 #endif /* FSMONITOR_IPC_H */