1#pragma once
2
3#include <basis/seadTypes.h>
4#include <container/seadBuffer.h>
5
6#include "Project/FileEntryBase.h"
7
8namespace sead {
9class ArchiveRes;
10class FileDevice;
11} // namespace sead
12
13namespace al {
14class IAudioResourceLoader;
15class SoundItemEntry;
16
17class SoundItemHolder {
18public:
19 SoundItemHolder();
20 // TODO: unknown parameter name
21 SoundItemEntry* addNewLoadRequestEntry(u32 itemId, u32 unknown,
22 IAudioResourceLoader* resourceLoader);
23 SoundItemEntry* tryFindEntry(u32 itemId, IAudioResourceLoader* resourceLoader);
24 void waitLoadDoneAll();
25 void clearEntry();
26
27private:
28 sead::Buffer<SoundItemEntry> mSoundItemEntries;
29 s32 mSize = 0;
30};
31
32} // namespace al
33