SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
FileLoader.hpp
1#pragma once
2
3#include "revolution.h"
4#include "Game/System/ArchiveHolder.hpp"
5#include "Game/System/FileLoaderThread.hpp"
6#include "Game/System/FileHolder.hpp"
7#include "JSystem/JKernel/JKRHeap.hpp"
8#include "JSystem/JKernel/JKRDvdRipper.hpp"
9#include <cstdio>
10
11class JKRArchive;
12
14public:
15 FileLoader();
16
17 void requestLoadToMainRAM(const char *, u8 *, JKRHeap *, JKRDvdRipper::EAllocDirection, bool);
18 void requestMountArchive(const char *, JKRHeap *, bool);
19 bool isLoaded(const char *) const;
20 bool isMountedArchive(const char *) const;
21 void* receiveFile(const char *);
22 JKRMemArchive* receiveArchive(const char *);
23 void receiveAllRequestedFile();
24 JKRMemArchive* createAndAddArchive(void *, JKRHeap *, const char *);
25 void getMountedArchiveAndHeap(const char *, JKRArchive **, JKRHeap **) const;
26 void clearRequestFileInfo(bool);
27 void removeHolderIfIsEqualHeap(JKRHeap *);
28 void removeFile(const char *);
29 bool isNeedToLoad(const char *) const;
30 const RequestFileInfo* getRequestFileInfoConst(const char *) const;
31 RequestFileInfo* addRequest(const char *);
32
33 FileLoaderThread* mLoaderThread; // _0
34 OSMutex mMutex; // _4
35 RequestFileInfo* mRequestFileInfos; // _1C
36 s32 mRequestedFileCount; // _20
37 FileHolder* mFileHolder; // _24
38 ArchiveHolder* mArchiveHolder; // _28
39};