mirror of https://github.com/zeldaret/tp.git
31 lines
754 B
C++
31 lines
754 B
C++
#ifndef JKRFILE_H
|
|
#define JKRFILE_H
|
|
|
|
#include "JSystem/JKernel/JKRDisposer.h"
|
|
#include "dolphin/types.h"
|
|
|
|
class JKRFile : public JKRDisposer {
|
|
public:
|
|
JKRFile() : mIsAvailable(false) {}
|
|
virtual ~JKRFile() {}
|
|
|
|
s32 read(void*, long, long);
|
|
|
|
bool isAvailable() const { return mIsAvailable; }
|
|
|
|
public:
|
|
/* vt[03] */ virtual bool open(const char*) = 0;
|
|
/* vt[04] */ virtual void close() = 0;
|
|
/* vt[05] */ virtual s32 readData(void*, s32, s32) = 0;
|
|
/* vt[06] */ virtual s32 writeData(const void*, s32, s32) = 0;
|
|
/* vt[07] */ virtual s32 getFileSize() const = 0;
|
|
|
|
protected:
|
|
/* 0x00 */ // vtable
|
|
/* 0x04 */ // JKRDisposer
|
|
/* 0x18 */ bool mIsAvailable;
|
|
/* 0x19 */ u8 field_0x19[3];
|
|
};
|
|
|
|
#endif /* JKRFILE_H */
|