EHS/include/ehs/io/FileMonitor_W32.h

37 lines
590 B
C++

#pragma once
#include "ehs/EHS.h"
#include "BaseFileMonitor.h"
namespace ehs
{
class EHS_LIB_IO FileMonitor final : public BaseFileMonitor
{
private:
Handle hdl;
FILETIME time;
public:
~FileMonitor() override;
FileMonitor();
FileMonitor(Str_8 filePath);
FileMonitor(FileMonitor&& fm) noexcept;
FileMonitor(const FileMonitor& fm);
FileMonitor& operator=(FileMonitor&& fm) noexcept;
FileMonitor& operator=(const FileMonitor& fm);
void Initialize() override;
void Release() override;
UInt_8 Poll() override;
bool IsInitialized() const override;
};
}