EntropyEngine::Core::IO::FileWatchManager
EntropyEngine::Core::IO::FileWatchManager
Section titled “EntropyEngine::Core::IO::FileWatchManager”Manager for FileWatch objects using EntropyObject handle stamping. More…
#include <FileWatchManager.h>
Public Functions
Section titled “Public Functions”| Name | |
|---|---|
| ~FileWatchManager() | |
| FileWatchManager & | operator=(const FileWatchManager & ) =delete |
| FileWatchManager & | operator=(FileWatchManager && ) =delete |
| bool | isValid(const FileWatch * watch) const Validates a FileWatch object using handle stamping. |
| void | destroyWatch(FileWatch * watch) Stops a watch and releases the reference. |
| FileWatch * | createWatch(const std::string & path, FileWatchCallback callback, const WatchOptions & options) Creates a new file system watch. |
| FileWatchManager(VirtualFileSystem * vfs) | |
| FileWatchManager(const FileWatchManager & ) =delete | |
| FileWatchManager(FileWatchManager && ) =delete |
Friends
Section titled “Friends”| Name | |
|---|---|
| class | FileWatchListener |
| class | FileWatch |
Detailed Description
Section titled “Detailed Description”class EntropyEngine::Core::IO::FileWatchManager;Manager for FileWatch objects using EntropyObject handle stamping.
FileWatchManager owns the efsw::FileWatcher instance and manages FileWatch objects in slots. When creating a watch, the manager allocates a slot, creates the FileWatch object, and stamps it with handle identity using HandleAccess::set(). This enables generation-based validation.
Thread safety: All public methods are thread-safe via mutex.
Public Functions Documentation
Section titled “Public Functions Documentation”function ~FileWatchManager
Section titled “function ~FileWatchManager”~FileWatchManager()function operator=
Section titled “function operator=”FileWatchManager & operator=( const FileWatchManager &) =deletefunction operator=
Section titled “function operator=”FileWatchManager & operator=( FileWatchManager &&) =deletefunction isValid
Section titled “function isValid”bool isValid( const FileWatch * watch) constValidates a FileWatch object using handle stamping.
Parameters:
- watch Watch to validate
Return: true if watch is valid and still active
function destroyWatch
Section titled “function destroyWatch”void destroyWatch( FileWatch * watch)Stops a watch and releases the reference.
Parameters:
- watch Watch to stop (may be nullptr)
Note: Calls watch->stop() and watch->release()
function createWatch
Section titled “function createWatch”FileWatch * createWatch( const std::string & path, FileWatchCallback callback, const WatchOptions & options)Creates a new file system watch.
Parameters:
- path Directory or file path to watch
- callback Function to call when events occur
- options Watch configuration options
Return: FileWatch* with refcount=1 (caller owns the reference), or nullptr if failed
function FileWatchManager
Section titled “function FileWatchManager”explicit FileWatchManager( VirtualFileSystem * vfs)function FileWatchManager
Section titled “function FileWatchManager”FileWatchManager( const FileWatchManager &) =deletefunction FileWatchManager
Section titled “function FileWatchManager”FileWatchManager( FileWatchManager &&) =deleteFriends
Section titled “Friends”friend FileWatchListener
Section titled “friend FileWatchListener”friend class FileWatchListener( FileWatchListener);friend FileWatch
Section titled “friend FileWatch”friend class FileWatch( FileWatch);Updated on 2026-01-26 at 16:50:32 -0500