NSMBW-Decomp
A decompilation of New Super Mario Bros. Wii
Loading...
Searching...
No Matches
snd_Bank.h
1#ifndef NW4R_SND_BANK_H
2#define NW4R_SND_BANK_H
3
4/*******************************************************************************
5 * headers
6 */
7
8#include "nw4r/snd/snd_BankFile.h" // BankFileReader
9
10#include "nw4r/NW4RAssert.hpp"
11
12/*******************************************************************************
13 * types
14 */
15
16// forward declarations
17namespace nw4r { namespace snd { namespace detail { class Channel; }}}
18namespace nw4r { namespace snd { namespace detail { struct NoteOnInfo; }}}
19
20/*******************************************************************************
21 * classes and functions
22 */
23
24namespace nw4r { namespace snd { namespace detail
25{
26 // [R89JEL]:/bin/RVL/Debug/mainD.elf:.debug::0x2b0af4
27 class Bank
28 {
29 // methods
30 public:
31 // cdtors
32 Bank(void const *bankData);
33 ~Bank();
34
35 // methods
36 void SetWaveDataAddress(void const *waveData)
37 {
38 // specifically not the header variant
39 NW4RAssertPointerNonnull_Line(50, waveData);
40
41 mWaveDataAddress = waveData;
42 }
43
44 Channel *NoteOn(NoteOnInfo const &noteOnInfo) const;
45
46 // members
47 private:
48 BankFileReader mBankReader; // size 0x0c, offset 0x00
49 void const *mWaveDataAddress; // size 0x04, offset 0x0c
50 }; // size 0x10
51}}} // namespace nw4r::snd::detail
52
53#endif // NW4R_SND_BANK_H