#ifndef MSP_IO_SEEKABLE_H_
#define MSP_IO_SEEKABLE_H_
+#include <stdexcept>
+#include <msp/core/inttypes.h>
#include "base.h"
namespace Msp {
class Handle;
-#ifdef MSVC
-typedef __int64 SeekOffset;
-#else
-typedef long long SeekOffset;
-#endif
+typedef Int64 SeekOffset;
enum SeekType
{
};
+class bad_seek: public std::runtime_error
+{
+public:
+ bad_seek(SeekOffset, SeekType);
+ virtual ~bad_seek() throw() { }
+};
+
+
class Seekable: public Base
{
protected: