1#pragma once
2
3#include <basis/seadTypes.h>
4
5namespace al {
6
7class SaveDataDirector {
8public:
9 SaveDataDirector(u32 workBufferSize, s32 threadPriority);
10
11 void threadFunc();
12 void initCheckSaveData();
13 bool requestInitSaveDir(const char*, u32, u32);
14 bool initSaveDirSync(const char*, u32, u32);
15 bool requestFormat(s32, s32);
16 bool formatSync(s32, s32);
17 bool requestRead(const char*, u32, u32);
18 bool readSync(const char*, u32, u32);
19 bool requestWrite(const char*, u32, u32, bool);
20 bool requestFlush();
21 bool writeSync(const char*, u32, u32);
22 bool updateSequence();
23 bool isDoneSequence() const;
24 u8* getWorkBuffer();
25 s32 getResult();
26
27private:
28 void* _0[0xa8 / 8];
29};
30
31static_assert(sizeof(SaveDataDirector) == 0xa8);
32
33} // namespace al
34