mirror of
https://github.com/zeldaret/ss
synced 2026-05-24 07:10:53 -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
46 lines
883 B
C++
46 lines
883 B
C++
#ifndef EGG_AUDIO_HEAP_MANAGER_H
|
|
#define EGG_AUDIO_HEAP_MANAGER_H
|
|
|
|
#include "egg/core/eggAllocator.h"
|
|
#include "nw4r/snd/snd_SoundHeap.h"
|
|
|
|
namespace EGG {
|
|
|
|
class SoundMessageQueue {
|
|
public:
|
|
SoundMessageQueue() {
|
|
OSInitMessageQueue(&mQueue, mBuffer, 4);
|
|
}
|
|
|
|
OSMessageQueue mQueue;
|
|
OSMessage mBuffer[4];
|
|
};
|
|
|
|
class SoundHeapMgr {
|
|
public:
|
|
~SoundHeapMgr() {
|
|
destroySoundHeap();
|
|
}
|
|
virtual bool loadState(s32 id) {}
|
|
virtual int getCurrentLevel() {}
|
|
virtual void stateProc() {}
|
|
|
|
void createSoundHeap(Allocator *allocator, u32 size);
|
|
void destroySoundHeap();
|
|
|
|
nw4r::snd::SoundHeap *getSoundHeap() {
|
|
return &mSoundHeap;
|
|
}
|
|
|
|
private:
|
|
nw4r::snd::SoundHeap mSoundHeap;
|
|
u8 unk[0x68 - 0x38];
|
|
SoundMessageQueue mQueue1;
|
|
SoundMessageQueue mQueue2;
|
|
SoundMessageQueue mQueue3;
|
|
};
|
|
|
|
} // namespace EGG
|
|
|
|
#endif
|