summaryrefslogtreecommitdiff
path: root/lib/common/IOStream.h
diff options
context:
space:
mode:
authorReinhard Tartler <siretart@tauware.de>2009-04-02 13:58:11 +0200
committerReinhard Tartler <siretart@tauware.de>2009-04-02 13:58:11 +0200
commita84d45498bd861c9225080232948a99c2e317bb8 (patch)
tree8f1f5fb7bf7ffbf6f24cf4a4fd6888a235dbcc08 /lib/common/IOStream.h
parent25db897553a0db0f912602b375029e724f51556e (diff)
Import upstream version 0.11~rc3~r2491
Diffstat (limited to 'lib/common/IOStream.h')
-rw-r--r--lib/common/IOStream.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/common/IOStream.h b/lib/common/IOStream.h
index 042ccca4..0b1cedd3 100644
--- a/lib/common/IOStream.h
+++ b/lib/common/IOStream.h
@@ -22,9 +22,13 @@ class IOStream
{
public:
IOStream();
- IOStream(const IOStream &rToCopy);
virtual ~IOStream();
-
+
+private:
+ IOStream(const IOStream &rToCopy); /* forbidden */
+ IOStream& operator=(const IOStream &rToCopy); /* forbidden */
+
+public:
enum
{
TimeOutInfinite = -1,
@@ -44,6 +48,7 @@ public:
virtual int Read(void *pBuffer, int NBytes, int Timeout = IOStream::TimeOutInfinite) = 0;
virtual pos_type BytesLeftToRead(); // may return IOStream::SizeOfStreamUnknown (and will for most stream types)
virtual void Write(const void *pBuffer, int NBytes) = 0;
+ virtual void Write(const char *pBuffer);
virtual void WriteAllBuffered();
virtual pos_type GetPosition() const;
virtual void Seek(pos_type Offset, int SeekType);
@@ -57,6 +62,7 @@ public:
// Utility functions
bool ReadFullBuffer(void *pBuffer, int NBytes, int *pNBytesRead, int Timeout = IOStream::TimeOutInfinite);
bool CopyStreamTo(IOStream &rCopyTo, int Timeout = IOStream::TimeOutInfinite, int BufferSize = 1024);
+ void Flush(int Timeout = IOStream::TimeOutInfinite);
static int ConvertSeekTypeToOSWhence(int SeekType);
};