Files
2024-03-05 16:48:54 -05:00

69 lines
2.0 KiB
C++

#ifndef JASWSPARSER_H
#define JASWSPARSER_H
#include "dolphin/types.h"
namespace JASystem {
class TBasicWaveBank;
class TSimpleWaveBank;
namespace WSParser {
struct TCtrl {
/* 0x00 */ u32 mMagic;
/* 0x04 */ u32 mWaveCount;
/* 0x08 */ u32 mCtrlWaveOffsets[1];
};
struct TCtrlGroup {
/* 0x00 */ u32 mMagic;
/* 0x04 */ u8 field_0x4[0x08 - 0x04];
/* 0x08 */ u32 mCtrlGroupCount;
/* 0x0C */ u32 mCtrlSceneOffsets[1];
};
struct TCtrlScene {
/* 0x00 */ u32 mMagic;
/* 0x04 */ u8 field_0x4[0x0C - 0x04];
/* 0x0C */ u32 mCtrlOffset;
};
struct TCtrlWave {
/* 0x00 */ u32 field_0x0;
};
struct THeader {
/* 0x00 */ u8 field_0x0[0x10];
/* 0x10 */ u32 mArchiveBankOffset;
/* 0x14 */ u32 mCtrlGroupOffset;
};
struct TWave {
/* 0x00 */ u8 field_0x0;
/* 0x01 */ u8 field_0x1;
/* 0x02 */ u8 field_0x2;
/* 0x04 */ f32 field_0x4;
/* 0x08 */ u32 mOffset;
/* 0x0C */ u32 field_0xc;
/* 0x10 */ u32 field_0x10;
/* 0x14 */ u32 field_0x14;
/* 0x18 */ u32 field_0x18;
/* 0x1C */ u32 field_0x1c;
/* 0x20 */ s16 field_0x20;
/* 0x22 */ s16 field_0x22;
/* 0x24 */ u8 field_0x24[0x28 - 0x24];
/* 0x28 */ int field_0x28;
};
struct TWaveArchive {
/* 0x00 */ char mFileName[0x74];
/* 0x74 */ u32 mWaveOffsets[1];
};
struct TWaveArchiveBank {
/* 0x00 */ u32 mMagic;
/* 0x04 */ u8 field_0x4[0x08 - 0x04];
/* 0x08 */ u32 mArchiveOffsets[1];
};
u32 getGroupCount(void*);
TBasicWaveBank* createBasicWaveBank(void*);
TSimpleWaveBank* createSimpleWaveBank(void*);
extern u32 sUsedHeapSize;
}
}
#endif /* JASWSPARSER_H */