15#include "PollerFd.hpp"
16#include <dfx-utilities/FileSystem.hpp>
43 using Callback = std::move_only_function<void (fs::path, uint32_t)>;
Macros to implement the Private State (PIMPL-like) idiom with value semantics.
#define DFX_PRIVATE_STATE(Class, logger)
Declare a private implementation state for a class.
Definition PrivateState.hpp:52
#define DFX_PRIVATE_STATE_DECLARE_RULE_OF_5(Class)
Declare Rule-of-5 special member functions using the private state pattern.
Definition PrivateState.hpp:82
void rmWatch(int idx) noexcept
Removes a previously added watch.
static std::vector< std::string > maskToString(uint32_t mask)
Converts an inotify mask to a list of human-readable flag names.
int addWatch(fs::path const &path, uint32_t mask, Callback cb)
Adds an inotify watch for path with the provided mask.
InotifyWatcher(Poller &poller)
Constructs an inotify watcher and registers its FD into poller.
std::move_only_function< void(fs::path, uint32_t)> Callback
Callback invoked when a watched path produces an inotify event.
Definition InotifyWatcher.hpp:43
Abstract interface for FD-based event polling.
Definition Poller.hpp:37
Definition SocketClient.hpp:23