X-Git-Url: http://git.tdb.fi/?p=libs%2Fcore.git;a=blobdiff_plain;f=source%2Fio%2Fseekable.h;h=1fc3f89ed58576fd73c1b68527b51f80133c1f1d;hp=cabb9dcdfc7ffc50b979163e447443fdd100e3e2;hb=3f7aa81d9212811b323d89949adcccda212cbed3;hpb=86e0004bd195bc7f7478cf736871339bddf38127 diff --git a/source/io/seekable.h b/source/io/seekable.h index cabb9dc..1fc3f89 100644 --- a/source/io/seekable.h +++ b/source/io/seekable.h @@ -1,11 +1,16 @@ #ifndef MSP_IO_SEEKABLE_H_ #define MSP_IO_SEEKABLE_H_ +#include #include "base.h" namespace Msp { namespace IO { +class Handle; + +typedef Int64 SeekOffset; + enum SeekType { S_BEG, @@ -13,8 +18,6 @@ enum SeekType S_END }; -int sys_seek_type(SeekType); - class Seekable: public Base { @@ -23,12 +26,15 @@ protected: public: /** Changes the read/write offset. Returns the new offset. */ - virtual unsigned seek(int, SeekType) = 0; + virtual SeekOffset seek(SeekOffset, SeekType) = 0; /** Returns the current read/write offset. */ - virtual unsigned tell() const = 0; + virtual SeekOffset tell() const = 0; }; + +SeekOffset sys_seek(Handle &, SeekOffset, SeekType); + } // namespace IO } // namespace Msp