summaryrefslogtreecommitdiff
path: root/lib/common/FileStream.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/common/FileStream.h')
-rw-r--r--lib/common/FileStream.h21
1 files changed, 13 insertions, 8 deletions
diff --git a/lib/common/FileStream.h b/lib/common/FileStream.h
index 721bf3dd..7c4118cd 100644
--- a/lib/common/FileStream.h
+++ b/lib/common/FileStream.h
@@ -31,13 +31,17 @@
class FileStream : public IOStream
{
public:
- FileStream(const char *Filename,
-#ifdef WIN32
+ FileStream(const std::string& rFilename,
int flags = (O_RDONLY | O_BINARY),
-#else
- int flags = O_RDONLY,
-#endif
int mode = (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH));
+
+ // Ensure that const char * name doesn't end up as a handle
+ // on Windows!
+
+ FileStream(const char *pFilename,
+ int flags = (O_RDONLY | O_BINARY),
+ int mode = (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH));
+
FileStream(tOSFileHandle FileDescriptor);
virtual ~FileStream();
@@ -52,15 +56,16 @@ public:
virtual bool StreamDataLeft();
virtual bool StreamClosed();
+ bool CompareWith(IOStream& rOther, int Timeout = IOStream::TimeOutInfinite);
+
private:
tOSFileHandle mOSFileHandle;
bool mIsEOF;
FileStream(const FileStream &rToCopy) { /* do not call */ }
+ void AfterOpen();
-#ifdef WIN32
// for debugging..
- std::string fileName;
-#endif
+ std::string mFileName;
};