filewatcher.h
来自「游戏编程精粹6第1章 通用编程,对入门的游戏开发者很有帮助.」· C头文件 代码 · 共 42 行
H
42 行
#pragma once
#include <string>
#include <vector>
#define _WIN32_WINNT 0x0501
#include <windows.h>
#include <time.h>
class FileWatcher
{
public:
FileWatcher(const std::string& directoryToWatch);
~FileWatcher();
bool Update();
typedef std::vector< std::string > StringVec;
typedef void (*ChangedFileSetCallback)(const StringVec &);
void InstallChangedFileSetCallback(ChangedFileSetCallback cb) { m_cb = cb; }
private:
bool Listen();
void UpdateReportTiming();
void ReportChangedFile(const std::string& filename);
HANDLE m_directoryHandle;
HANDLE m_notifyEvent;
OVERLAPPED m_overlappedIo;
char *m_notifyResults;
StringVec m_pendingChangedFiles;
__time64_t m_timeOfFirstPendingChange;
bool m_timing;
ChangedFileSetCallback m_cb;
private:
FileWatcher(const FileWatcher&);
FileWatcher& operator =(const FileWatcher&);
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?