26 #ifndef FSW_KQUEUE_MONITOR_H 
   27 #  define FSW_KQUEUE_MONITOR_H 
   32 #  include <sys/stat.h> 
   33 #  include <sys/event.h> 
   41   struct kqueue_monitor_load;
 
   79     void initialize_kqueue();
 
   80     void terminate_kqueue();
 
   81     bool scan(
const std::string& path, 
bool is_root_path = 
true);
 
   82     bool add_watch(
const std::string& path, 
const struct stat& fd_stat);
 
   83     bool is_path_watched(
const std::string& path) 
const;
 
   84     void remove_deleted();
 
   85     void rescan_pending();
 
   86     void scan_root_paths();
 
   87     int wait_for_events(
const std::vector<struct kevent>& changes,
 
   88                         std::vector<struct kevent>& event_list);
 
   89     void process_events(
const std::vector<struct kevent>& changes,
 
   90                         const std::vector<struct kevent>& event_list,
 
   95     kqueue_monitor_load *load;
 
void * context
Pointer to context data that will be passed to the monitor::callback. 
Definition: monitor.hpp:553
 
Base class of all monitors. 
Definition: monitor.hpp:146
 
Main namespace of libfswatch. 
Definition: event.cpp:23
 
Header of the fsw::monitor class. 
 
virtual ~kqueue_monitor()
Destroys an instance of this class. 
 
void run()
Executes the monitor loop. 
 
Definition: cmonitor.h:47
 
kqueue_monitor(std::vector< std::string > paths, FSW_EVENT_CALLBACK *callback, void *context=nullptr)
Constructs an instance of this class. 
 
Solaris/Illumos monitor. 
Definition: kqueue_monitor.hpp:48
 
std::vector< std::string > paths
List of paths to watch. 
Definition: monitor.hpp:533
 
FSW_EVENT_CALLBACK * callback
Callback to which change events should be notified. 
Definition: monitor.hpp:548
 
void FSW_EVENT_CALLBACK(const std::vector< event > &, void *)
Function definition of an event callback. 
Definition: monitor.hpp:60