6 #ifndef _INC_cFileChangeWatch_H
7 #define _INC_cFileChangeWatch_H
12 #include "../GrayLibBase.h"
42 #elif defined(__linux__)
61 return (INT_PTR)(HANDLE)m_hWatch;
85 void removeAllFileChangeWatches0();
102 void removeAllFileChangeWatches();
103 bool hasFileChangeWatch(
const FILECHAR_t* pszDir)
const;
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
INT32 HRESULT
_WIN32 style error codes. INT32
Definition: SysTypes.h:465
Definition: cFileChangeWatch.h:33
cFileChangeElem(cStringF sDir, FILE_CHANGE_TYPE eType, HANDLE hWatch)
Definition: cFileChangeWatch.h:48
cStringF get_Name() const
Definition: cFileChangeWatch.h:55
HASHCODE_t get_HashCode() const noexcept
Definition: cFileChangeWatch.h:59
Definition: cFileChangeWatch.h:66
bool isValidFileChangeWatch() const noexcept
Definition: cFileChangeWatch.h:96
UNITTEST_FRIEND(cFileChangeWatch)
cArraySortName< cFileChangeElem > m_aWatches
FindFirstChangeNotification. can use WaitForMultipleObjects() etc on this.
Definition: cFileChangeWatch.h:79
bool IsEmpty() const noexcept
Definition: cArray.h:145
Definition: cArraySortRef.h:60
Definition: cArraySortRef.h:199
Definition: cOSHandle.h:59
Definition: cRefPtr.h:225
FILE_CHANGE_TYPE
Definition: cFileChangeWatch.h:21
@ FILE_CHANGE_1
check just this file or directory for changes, 1 handle. any subdirectories with changes are ignored.
Definition: cFileChangeWatch.h:24
@ FILE_CHANGE_RECURSIVE
list any/all changed sub directories under this. recursive handles.
Definition: cFileChangeWatch.h:29
INT32 TIMESYSD_t
Time delta. signed milli-Seconds Span. cTimeSys::k_DMAX, cTimeSys::k_INF = MAILSLOT_WAIT_FOREVER.
Definition: cTimeSys.h:28
char FILECHAR_t
a UTF8 char in a file name. like TCHAR
Definition: FileName.h:22
UINT_PTR HASHCODE_t
could hold a pointer converted to a number? maybe 64 or 32 bit ? same as size_t.
Definition: GrayCore.h:116