#ifndef STREAM_H #define STREAM_H #include #include namespace Bu { class Stream { public: Stream(); virtual ~Stream(); virtual void close() = 0; virtual size_t read( void *pBuf, size_t nBytes ) = 0; virtual size_t write( const void *pBuf, size_t nBytes ) = 0; virtual long tell() = 0; virtual void seek( long offset ) = 0; virtual void setPos( long pos ) = 0; virtual void setPosEnd( long pos ) = 0; virtual bool isEOS() = 0; virtual bool canRead() = 0; virtual bool canWrite() = 0; virtual bool canSeek() = 0; private: }; } #endif