mirror of
https://github.com/zeldaret/ss
synced 2026-05-23 15:01:38 -04:00
26af4db82d
* update from dtk-template and start work towards using clangd * include <a> -> "a" * Update build.yml * remove/add non-trivial class in union warning
29 lines
589 B
C++
29 lines
589 B
C++
#ifndef EGG_FILE_H
|
|
#define EGG_FILE_H
|
|
|
|
#include "common.h"
|
|
|
|
namespace EGG {
|
|
|
|
class File {
|
|
public:
|
|
File() : mIsOpen(false) {}
|
|
|
|
public:
|
|
/* vt 0x08 */ virtual ~File() {}
|
|
/* vt 0x0C */ virtual bool open(const char *path) = 0;
|
|
/* vt 0x10 */ virtual void close() = 0;
|
|
/* vt 0x14 */ virtual s32 readData(void *buffer, s32 length, s32 offset) = 0;
|
|
/* vt 0x18 */ virtual s32 writeData(const void *buffer, s32 length, s32 offset) = 0;
|
|
/* vt 0x1C */ virtual u32 getFileSize() const = 0;
|
|
|
|
/* 0x4 */ bool mIsOpen;
|
|
|
|
private:
|
|
u8 pad[3];
|
|
};
|
|
|
|
} // namespace EGG
|
|
|
|
#endif
|