aboutsummaryrefslogtreecommitdiff
path: root/Src/nsv/nsvplay/IDataReader.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/nsv/nsvplay/IDataReader.h')
-rw-r--r--Src/nsv/nsvplay/IDataReader.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/Src/nsv/nsvplay/IDataReader.h b/Src/nsv/nsvplay/IDataReader.h
new file mode 100644
index 00000000..1ae234bf
--- /dev/null
+++ b/Src/nsv/nsvplay/IDataReader.h
@@ -0,0 +1,21 @@
+#ifndef NULLSOFT_NSV_NSVPLAY_IDATAREADER_H
+#define NULLSOFT_NSV_NSVPLAY_IDATAREADER_H
+
+#include <stddef.h>
+#include <bfc/platform/types.h>
+
+class IDataReader
+{
+public:
+ virtual ~IDataReader() { }
+ virtual size_t read(char *buf, size_t len)=0; // returns bytes read
+ virtual bool iseof()=0;
+ virtual char *geterror()=0;
+ virtual char *gettitle() { return 0; }
+ virtual char *getheader(char *header_name) { return 0; }
+ virtual bool canseek() { return 0; }
+ virtual int seek(uint64_t newpos) { return 1; }
+ virtual uint64_t getsize() { return ~0; }
+};
+
+#endif \ No newline at end of file