Index: src/libchcore/TLocalFilesystem.h =================================================================== diff -u -N -r16df8fcf9d5b3317338aece64762771419beaf4a -r6103ac74583f2136b821dc67515ed8469abd8155 --- src/libchcore/TLocalFilesystem.h (.../TLocalFilesystem.h) (revision 16df8fcf9d5b3317338aece64762771419beaf4a) +++ src/libchcore/TLocalFilesystem.h (.../TLocalFilesystem.h) (revision 6103ac74583f2136b821dc67515ed8469abd8155) @@ -37,6 +37,7 @@ class TLocalFilesystemFile; class TSimpleDataBuffer; class TFileTime; +class TOverlappedDataBuffer; class LIBCHCORE_API TLocalFilesystem { @@ -108,6 +109,9 @@ class LIBCHCORE_API TLocalFilesystemFile { public: + static const unsigned int MaxSectorSize = 4096; + +public: ~TLocalFilesystemFile(); bool OpenExistingForReading(const TSmartPath& pathFile, bool bNoBuffering); @@ -117,8 +121,8 @@ bool SetFilePointer(long long llNewPos, DWORD dwMoveMethod); bool SetEndOfFile(); - bool ReadFile(TSimpleDataBuffer& rBuffer, DWORD dwToRead, DWORD& rdwBytesRead); - bool WriteFile(TSimpleDataBuffer& rBuffer, DWORD dwToWrite, DWORD& rdwBytesWritten); + bool ReadFile(TOverlappedDataBuffer& rBuffer); + bool WriteFile(TOverlappedDataBuffer& rBuffer); bool IsOpen() const { return m_hFile != INVALID_HANDLE_VALUE; } unsigned long long GetFileSize() const; @@ -131,6 +135,7 @@ private: TSmartPath m_pathFile; HANDLE m_hFile; + bool m_bNoBuffering; friend class TLocalFilesystem; };