diff options
author | Daniel Wilhelm <daniel@wili.li> | 2014-04-18 17:08:06 +0200 |
---|---|---|
committer | Daniel Wilhelm <daniel@wili.li> | 2014-04-18 17:08:06 +0200 |
commit | fbe76102e941b9f1edaf236788e42678f05fdf9a (patch) | |
tree | f5f538316019fa89be8dc478103490c3a826f3ac /shared/fileIO.h | |
parent | 3.8 (diff) | |
download | FreeFileSync-fbe76102e941b9f1edaf236788e42678f05fdf9a.tar.gz FreeFileSync-fbe76102e941b9f1edaf236788e42678f05fdf9a.tar.bz2 FreeFileSync-fbe76102e941b9f1edaf236788e42678f05fdf9a.zip |
3.9
Diffstat (limited to 'shared/fileIO.h')
-rw-r--r-- | shared/fileIO.h | 98 |
1 files changed, 0 insertions, 98 deletions
diff --git a/shared/fileIO.h b/shared/fileIO.h deleted file mode 100644 index a04d8a0e..00000000 --- a/shared/fileIO.h +++ /dev/null @@ -1,98 +0,0 @@ -// ************************************************************************** -// * This file is part of the FreeFileSync project. It is distributed under * -// * GNU General Public License: http://www.gnu.org/licenses/gpl.html * -// * Copyright (C) 2008-2010 ZenJu (zhnmju123 AT gmx.de) * -// ************************************************************************** -// -#ifndef FILEIO_H_INCLUDED -#define FILEIO_H_INCLUDED - -#include <wx/stream.h> - -#ifdef FFS_WIN -#include <wx/msw/wrapwin.h> //includes "windows.h" -#elif defined FFS_LINUX -#include <cstdio> -#endif - -#include "zstring.h" -#include "fileError.h" - -namespace FreeFileSync -{ -//file IO optimized for sequential read/write accesses + better error reporting + long path support - -class FileInput -{ -public: - FileInput(const Zstring& filename); //throw FileError() - ~FileInput(); - - size_t read(void* buffer, size_t bytesToRead); //returns actual number of bytes read; throw FileError() - bool eof(); //end of file reached - -private: -#ifdef FFS_WIN - HANDLE fileHandle; - bool eofReached; -#elif defined FFS_LINUX - FILE* fileHandle; -#endif - const Zstring filename_; -}; - - -class FileOutput -{ -public: - FileOutput(const Zstring& filename); //throw FileError() - ~FileOutput(); - - void write(const void* buffer, size_t bytesToWrite); //throw FileError() - void close(); //close file stream -private: -#ifdef FFS_WIN - HANDLE fileHandle; -#elif defined FFS_LINUX - FILE* fileHandle; -#endif - const Zstring filename_; -}; - - -//############# wxWidgets stream adapter ############# -// can be used as base classes (have virtual destructors) -class FileInputStream : public wxInputStream -{ -public: - FileInputStream(const Zstring& filename) : //throw FileError() - fileObj(filename) {} - -private: - virtual size_t OnSysRead(void* buffer, size_t bufsize) //throw FileError() - { - return fileObj.read(buffer, bufsize); - } - - FileInput fileObj; -}; - - -class FileOutputStream : public wxOutputStream -{ -public: - FileOutputStream(const Zstring& filename) : //throw FileError() - fileObj(filename) {} - -private: - virtual size_t OnSysWrite(const void* buffer, size_t bufsize) //throw FileError() - { - fileObj.write(buffer, bufsize); - return bufsize; - } - - FileOutput fileObj; -}; -} - -#endif // FILEIO_H_INCLUDED |