1#pragma once
2
3#include <basis/seadTypes.h>
4#include <container/seadBuffer.h>
5#include <prim/seadSafeString.h>
6
7namespace sead {
8class FileDevice;
9class Heap;
10} // namespace sead
11
12namespace al {
13class ArchiveEntry;
14
15class ArchiveHolder {
16public:
17 ArchiveHolder();
18 ArchiveEntry* addNewLoadRequestEntry(const sead::SafeString& fileName, sead::Heap* heap,
19 sead::FileDevice* fileDevice);
20 ArchiveEntry* tryFindEntry(const sead::SafeString& fileName);
21 void waitLoadDoneAll();
22 void clearEntry();
23
24private:
25 sead::Buffer<ArchiveEntry> mArchiveEntries;
26 s32 mSize = 0;
27};
28
29} // namespace al
30