|
libfswatch
1.9.3
|
OS X FSEvents monitor. More...
#include <fsevents_monitor.hpp>
Public Member Functions | |
| fsevents_monitor (std::vector< std::string > paths, FSW_EVENT_CALLBACK *callback, void *context=nullptr) | |
| Constructs an instance of this class. | |
| virtual | ~fsevents_monitor () |
| Destroys an instance of this class. | |
Public Member Functions inherited from fsw::monitor | |
| monitor (std::vector< std::string > paths, FSW_EVENT_CALLBACK *callback, void *context=nullptr) | |
Constructs a monitor watching the specified paths. More... | |
| virtual | ~monitor () |
| Destructs a monitor instance. More... | |
| monitor (const monitor &orig)=delete | |
| This class is not copy constructible. | |
| monitor & | operator= (const monitor &that)=delete |
| This class is not copy assignable. | |
| void | set_property (const std::string &name, const std::string &value) |
| Sets a custom property. More... | |
| void | set_properties (const std::map< std::string, std::string > options) |
| Sets the custom properties. More... | |
| std::string | get_property (std::string name) |
| Gets the value of a property. More... | |
| void | set_latency (double latency) |
| Sets the latency. More... | |
| void | set_fire_idle_event (bool fire_idle_event) |
| Sets the fire idle event flag. More... | |
| void | set_allow_overflow (bool overflow) |
| Notify buffer overflows as change events. More... | |
| void | set_recursive (bool recursive) |
| Recursively scan subdirectories. More... | |
| void | set_directory_only (bool directory_only) |
| Watch directories only. More... | |
| void | add_filter (const monitor_filter &filter) |
| Add a path filter. More... | |
| void | set_filters (const std::vector< monitor_filter > &filters) |
| Set the path filters. More... | |
| void | set_follow_symlinks (bool follow) |
| Follow symlinks. More... | |
| void * | get_context () const |
| Get the pointer to the context data. More... | |
| void | set_context (void *context) |
| Set the context data. More... | |
| void | start () |
| Start the monitor. More... | |
| void | stop () |
| Stop the monitor. More... | |
| bool | is_running () |
| Check whether the monitor is running. More... | |
| void | add_event_type_filter (const fsw_event_type_filter &filter) |
| Add an event type filter. More... | |
| void | set_event_type_filters (const std::vector< fsw_event_type_filter > &filters) |
| Set the event type filters. More... | |
| void | set_watch_access (bool access) |
| Monitor file access. More... | |
Protected Member Functions | |
| void | run () override |
| Executes the monitor loop. More... | |
| void | on_stop () override |
| Execute an implementation-specific stop handler. | |
Protected Member Functions inherited from fsw::monitor | |
| bool | accept_event_type (fsw_event_flag event_type) const |
| Check whether an event should be accepted. More... | |
| bool | accept_path (const std::string &path) const |
| Check whether a path should be accepted. More... | |
| bool | accept_path (const char *path) const |
| Check whether a path should be accepted. More... | |
| void | notify_events (const std::vector< event > &events) const |
| Notify change events. More... | |
| void | notify_overflow (const std::string &path) const |
| Notify an overflow event. More... | |
| std::vector< fsw_event_flag > | filter_flags (const event &evt) const |
| Filter event types. More... | |
Additional Inherited Members | |
Protected Attributes inherited from fsw::monitor | |
| std::vector< std::string > | paths |
| List of paths to watch. More... | |
| std::map< std::string, std::string > | properties |
| Map of custom properties. More... | |
| FSW_EVENT_CALLBACK * | callback |
| Callback to which change events should be notified. More... | |
| void * | context = nullptr |
| Pointer to context data that will be passed to the monitor::callback. | |
| double | latency = 1.0 |
| Latency of the monitor. | |
| bool | fire_idle_event = false |
If true, the monitor will notify an event when idle. More... | |
| bool | allow_overflow = false |
If true, queue overflow events will be notified to the caller, otherwise the monitor will throw a libfsw_exception. | |
| bool | recursive = false |
If true, directories will be scanned recursively. | |
| bool | follow_symlinks = false |
If true, symbolic links are followed. | |
| bool | directory_only = false |
| Flag indicating whether only directories should be monitored. | |
| bool | watch_access = false |
| Flag indicating whether file access should be watched. | |
| bool | running = false |
| Flag indicating whether the monitor is in the running state. | |
| bool | should_stop = false |
| Flag indicating whether the monitor should preemptively stop. | |
| std::mutex | run_mutex |
| Mutex used to serialize access to the monitor state from multiple threads. | |
| std::mutex | notify_mutex |
| Mutex used to serialize access to the notify_events() method. | |
OS X FSEvents monitor.
This monitor is built upon the FSEvents API of the Apple OS X kernel.
|
overrideprotectedvirtual |
Executes the monitor loop.
This call does not return until the monitor is stopped.
Implements fsw::monitor.
1.8.10