mirror of
https://github.com/zeldaret/tww.git
synced 2026-05-23 15:01:33 -04:00
48 lines
1.1 KiB
C++
48 lines
1.1 KiB
C++
#ifndef JASWAVEBANK_H
|
|
#define JASWAVEBANK_H
|
|
|
|
#include "dolphin/types.h"
|
|
|
|
class JKRHeap;
|
|
|
|
namespace JASystem {
|
|
class TWaveArc;
|
|
|
|
struct TWaveInfo {
|
|
/* 0x00 */ u8 mBlockType;
|
|
/* 0x01 */ u8 field_0x1;
|
|
/* 0x02 */ u8 field_0x2;
|
|
/* 0x04 */ f32 field_0x4;
|
|
/* 0x08 */ int mWavePtrOffs;
|
|
/* 0x0C */ int field_0xc;
|
|
/* 0x10 */ int field_0x10;
|
|
/* 0x14 */ int mBlockCount;
|
|
/* 0x18 */ int field_0x18;
|
|
/* 0x1C */ int field_0x1c;
|
|
/* 0x20 */ s16 field_0x20;
|
|
/* 0x22 */ s16 field_0x22;
|
|
/* 0x24 */ void* field_0x24;
|
|
/* 0x28 */ int field_0x28;
|
|
};
|
|
|
|
class TWaveHandle {
|
|
public:
|
|
virtual ~TWaveHandle() {}
|
|
virtual const TWaveInfo* getWaveInfo() const = 0;
|
|
virtual const void* getWavePtr() const = 0;
|
|
};
|
|
|
|
class TWaveBank {
|
|
public:
|
|
TWaveBank() {}
|
|
virtual ~TWaveBank() {}
|
|
virtual TWaveHandle* getWaveHandle(u32) const = 0;
|
|
virtual TWaveArc* getWaveArc(int) = 0;
|
|
static JKRHeap* getCurrentHeap();
|
|
|
|
static JKRHeap* sCurrentHeap;
|
|
};
|
|
}
|
|
|
|
#endif /* JASWAVEBANK_H */
|