fswatch  1.11.2
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
libfswatch.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2014-2015 Enrico M. Crisostomo
3  *
4  * This program is free software; you can redistribute it and/or modify it under
5  * the terms of the GNU General Public License as published by the Free Software
6  * Foundation; either version 3, or (at your option) any later version.
7  *
8  * This program is distributed in the hope that it will be useful, but WITHOUT
9  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
10  * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
11  * details.
12  *
13  * You should have received a copy of the GNU General Public License along with
14  * this program. If not, see <http://www.gnu.org/licenses/>.
15  */
28 #ifndef LIBFSW_H
29 #define LIBFSW_H
30 
31 #include <stdbool.h>
32 #include "libfswatch_types.h"
33 #include "cevent.h"
34 #include "cmonitor.h"
35 #include "cfilter.h"
36 #include "error.h"
37 
38 # ifdef __cplusplus
39 extern "C"
40 {
41 # endif
42 
94 
103 
108  FSW_STATUS fsw_add_path(const FSW_HANDLE handle, const char * path);
109 
113  FSW_STATUS fsw_add_property(const FSW_HANDLE handle, const char * name, const char * value);
114 
119  FSW_STATUS fsw_set_allow_overflow(const FSW_HANDLE handle, const bool allow_overflow);
120 
128  const FSW_CEVENT_CALLBACK callback,
129  void * data);
130 
134  FSW_STATUS fsw_set_latency(const FSW_HANDLE handle, const double latency);
135 
141  FSW_STATUS fsw_set_recursive(const FSW_HANDLE handle, const bool recursive);
142 
147  FSW_STATUS fsw_set_directory_only(const FSW_HANDLE handle, const bool directory_only);
148 
154  const bool follow_symlinks);
155 
162  const fsw_event_type_filter event_type);
163 
171  FSW_STATUS fsw_add_filter(const FSW_HANDLE handle,
172  const fsw_cmonitor_filter filter);
173 
179 
183  FSW_STATUS fsw_stop_monitor(const FSW_HANDLE handle);
184 
189 
194 
198  bool fsw_is_verbose();
199 
203  void fsw_set_verbose(bool verbose);
204 
205 # ifdef __cplusplus
206 }
207 # endif
208 
209 #endif /* LIBFSW_H */
FSW_STATUS fsw_add_filter(const FSW_HANDLE handle, const fsw_cmonitor_filter filter)
Definition: libfswatch.cpp:667
Header of the libfswatch library defining the monitor types.
int FSW_STATUS
Status of a library call.
Definition: libfswatch_types.h:49
FSW_STATUS fsw_add_event_type_filter(const FSW_HANDLE handle, const fsw_event_type_filter event_type)
Definition: libfswatch.cpp:658
FSW_STATUS fsw_stop_monitor(const FSW_HANDLE handle)
Definition: libfswatch.cpp:711
FSW_STATUS fsw_set_callback(const FSW_HANDLE handle, const FSW_CEVENT_CALLBACK callback, void *data)
Definition: libfswatch.cpp:598
FSW_STATUS fsw_start_monitor(const FSW_HANDLE handle)
Definition: libfswatch.cpp:677
FSW_STATUS fsw_destroy_session(const FSW_HANDLE handle)
Definition: libfswatch.cpp:737
Event type filter.
Definition: cfilter.h:55
FSW_STATUS fsw_set_follow_symlinks(const FSW_HANDLE handle, const bool follow_symlinks)
Definition: libfswatch.cpp:649
Error values.
FSW_STATUS fsw_init_library()
Definition: libfswatch.cpp:445
FSW_STATUS fsw_add_path(const FSW_HANDLE handle, const char *path)
Definition: libfswatch.cpp:574
Definition: cfilter.h:44
FSW_STATUS fsw_set_directory_only(const FSW_HANDLE handle, const bool directory_only)
Definition: libfswatch.cpp:640
void(* FSW_CEVENT_CALLBACK)(fsw_cevent const *const events, const unsigned int event_num, void *data)
Definition: cevent.h:136
fsw_monitor_type
Available monitors.
Definition: cmonitor.h:43
Event type manipulation.
bool fsw_is_verbose()
Definition: libfswatch.cpp:787
FSW_STATUS fsw_last_error()
Definition: libfswatch.cpp:782
FSW_HANDLE fsw_init_session(const enum fsw_monitor_type type)
Definition: libfswatch.cpp:527
Header of the libfswatch library containing common types.
FSW_STATUS fsw_set_recursive(const FSW_HANDLE handle, const bool recursive)
Definition: libfswatch.cpp:632
FSW_STATUS fsw_set_latency(const FSW_HANDLE handle, const double latency)
Definition: libfswatch.cpp:621
void fsw_set_verbose(bool verbose)
Definition: libfswatch.cpp:792
FSW_STATUS fsw_add_property(const FSW_HANDLE handle, const char *name, const char *value)
Definition: libfswatch.cpp:585
Header of the libfswatch library functions for filter management.
Definition: libfswatch.cpp:415
FSW_STATUS fsw_set_allow_overflow(const FSW_HANDLE handle, const bool allow_overflow)
Definition: libfswatch.cpp:612