705d60dabef7384c98efbdb276492f6c80401180290db6bac2852b6c89d937169ad684babb3c28e52de7eccfbc3a31b2fa73e8b739c7230cfb17aca63df671 565 B

1234567891011121314151617181920
  1. #ifndef FS_EVENTS_H
  2. #define FS_EVENTS_H
  3. #include <CoreServices/CoreServices.h>
  4. #include "../Backend.hh"
  5. class FSEventsBackend : public Backend {
  6. public:
  7. void start() override;
  8. ~FSEventsBackend();
  9. void writeSnapshot(WatcherRef watcher, std::string *snapshotPath) override;
  10. void getEventsSince(WatcherRef watcher, std::string *snapshotPath) override;
  11. void subscribe(WatcherRef watcher) override;
  12. void unsubscribe(WatcherRef watcher) override;
  13. private:
  14. void startStream(WatcherRef watcher, FSEventStreamEventId id);
  15. CFRunLoopRef mRunLoop;
  16. };
  17. #endif