ReactOS  0.4.15-dev-1397-g19779b3
CDirectoryWatcher.h
Go to the documentation of this file.
1 /*
2  * PROJECT: shell32
3  * LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
4  * PURPOSE: Shell change notification
5  * COPYRIGHT: Copyright 2020 Katayama Hirofumi MZ (katayama.hirofumi.mz@gmail.com)
6  */
7 #pragma once
8 
9 #include "CDirectoryList.h"
10 
11 // NOTE: Regard to asynchronous procedure call (APC), please see:
12 // https://docs.microsoft.com/en-us/windows/win32/api/synchapi/nf-synchapi-sleepex
13 
15 {
16 public:
19 
20  static CDirectoryWatcher *Create(LPCWSTR pszDirectoryPath, BOOL fSubTree);
21  static void RequestAllWatchersTermination();
23 
24  BOOL IsDead() const;
26  void QuitWatching();
29  void ReadCompletion(DWORD dwErrorCode, DWORD dwNumberOfBytesTransfered);
30 
31 protected:
36 
38  void ProcessNotification();
39  CDirectoryWatcher(LPCWSTR pszDirectoryPath, BOOL fSubTree);
40 };
WCHAR m_szDirectoryPath[MAX_PATH]
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
unsigned int BOOL
Definition: ntddk_ex.h:94
static void RequestAllWatchersTermination()
static CDirectoryWatcher * Create(LPCWSTR pszDirectoryPath, BOOL fSubTree)
__wchar_t WCHAR
Definition: xmlstorage.h:180
#define MAX_PATH
Definition: compat.h:34
unsigned long DWORD
Definition: ntddk_ex.h:95
CDirectoryWatcher(LPCWSTR pszDirectoryPath, BOOL fSubTree)
CDirectoryList m_dir_list
void ReadCompletion(DWORD dwErrorCode, DWORD dwNumberOfBytesTransfered)