blob: 98c4b9e400feeaca6683d2e0097a6aa3002eade9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
#pragma once
#include <basis/seadTypes.h>
#include <heap/seadDisposer.h>
#include "KingSystem/Utils/Types.h"
namespace ksys::snd {
class SoundResource {
SEAD_SINGLETON_DISPOSER(SoundResource)
SoundResource() = default;
virtual ~SoundResource();
public:
void init(sead::Heap* heap, sead::Heap* debug_heap, bool extra_large);
sead::Heap* getSoundDebugHeap() const { return mSoundDebugHeap; }
private:
sead::Heap* mSoundResourceHeap = nullptr;
sead::Heap* _30 = nullptr; // TODO find out what this does
sead::Heap* mSoundDebugHeap = nullptr;
};
KSYS_CHECK_SIZE_NX150(SoundResource, 0x40);
enum class AudioChannelType {
Mono = 1,
Stereo = 2,
_5_1ch = 6,
Other = -1 // TODO: does Other have a definite value?
};
// FIXME: incomplete
struct SoundMgr {
SEAD_SINGLETON_DISPOSER(SoundMgr)
virtual ~SoundMgr();
public:
u8 _28[0x248];
AudioChannelType mAudioChannelType;
};
} // namespace ksys::snd
|