aboutsummaryrefslogtreecommitdiff
path: root/backends/ps2/fileio.h
diff options
context:
space:
mode:
authorRobert Göffringmann2005-05-05 03:06:32 +0000
committerRobert Göffringmann2005-05-05 03:06:32 +0000
commit4120ae9921cfb135777a4fb25e98545a7038e7aa (patch)
tree129eea6e1f132b726c92dc653a6e828185703f2e /backends/ps2/fileio.h
parent38c9a40c22c9017b4e43b1c5670ba569da94dee8 (diff)
downloadscummvm-rg350-4120ae9921cfb135777a4fb25e98545a7038e7aa.tar.gz
scummvm-rg350-4120ae9921cfb135777a4fb25e98545a7038e7aa.tar.bz2
scummvm-rg350-4120ae9921cfb135777a4fb25e98545a7038e7aa.zip
various PS2 system changes
svn-id: r17912
Diffstat (limited to 'backends/ps2/fileio.h')
-rw-r--r--backends/ps2/fileio.h47
1 files changed, 30 insertions, 17 deletions
diff --git a/backends/ps2/fileio.h b/backends/ps2/fileio.h
index 8b9fd431fd..fc10ad8bd8 100644
--- a/backends/ps2/fileio.h
+++ b/backends/ps2/fileio.h
@@ -24,30 +24,44 @@
#include "scummsys.h"
-class AccessFio {
+class Ps2File {
public:
- AccessFio(void);
- virtual ~AccessFio(void);
- virtual bool open(const char *name, int mode);
- virtual void read(void *dest, uint32 size);
- virtual void write(const void *src, uint32 size);
- virtual int seek(int32 offset, int whence);
- virtual int32 sync(void);
- virtual bool poll(void);
- virtual bool fioAvail(void);
-protected:
- int _handle;
+ Ps2File(int64 cacheId);
+ virtual ~Ps2File(void);
+ virtual bool open(const char *name) = 0;
+ virtual uint32 read(void *dest, uint32 len) = 0;
+ virtual uint32 write(const void *src, uint32 len) = 0;
+ virtual uint32 tell(void) = 0;
+ virtual uint32 size(void) = 0;
+ virtual int seek(int32 offset, int origin) = 0;
+ virtual bool eof(void) = 0;
+ int64 _cacheId;
+private:
};
-class File;
+class Ps2SmushFile : public Ps2File {
+public:
+ Ps2SmushFile(int64 cacheId);
+ virtual ~Ps2SmushFile(void);
+ virtual bool open(const char *name);
+ virtual uint32 read(void *dest, uint32 len);
+ virtual uint32 write(const void *src, uint32 len);
+ virtual uint32 tell(void);
+ virtual uint32 size(void);
+ virtual int seek(int32 offset, int origin);
+ virtual bool eof(void);
+private:
+ uint32 _filePos, _fileSize;
+ int _id;
+};
FILE *ps2_fopen(const char *fname, const char *mode);
int ps2_fclose(FILE *stream);
int ps2_fflush(FILE *stream);
int ps2_fseek(FILE *stream, long offset, int origin);
-long ps2_ftell(FILE *stream);
+uint32 ps2_ftell(FILE *stream);
int ps2_feof(FILE *stream);
-long ps2_fsize(FILE *stream);
+uint32 ps2_fsize(FILE *stream);
size_t ps2_fread(void *buf, size_t r, size_t n, FILE *stream);
int ps2_fgetc(FILE *stream);
@@ -58,6 +72,5 @@ int ps2_fputc(int c, FILE *stream);
int ps2_fputs(const char *s, FILE *stream);
int ps2_fprintf(FILE *pOut, const char *zFormat, ...);
-AccessFio *fetchHandle(File *file);
-
#endif // __PS2FILE_IO__
+