Files
tp/include/JSystem/JAudio2/JAUBankTable.h
T

59 lines
1.5 KiB
C++
Raw Normal View History

2021-03-28 22:49:05 +02:00
#ifndef JAUBANKTABLE_H
#define JAUBANKTABLE_H
2024-10-23 19:25:13 -04:00
#include "JSystem/JAudio2/JASBankList.h"
#include "JSystem/JAudio2/JASGadget.h"
2023-01-01 18:00:01 -07:00
#include "JSystem/JSupport/JSUList.h"
2021-03-28 22:49:05 +02:00
2023-09-15 05:20:09 -07:00
class JASBank;
2024-04-12 00:10:30 -06:00
/**
* @ingroup jsystem-jaudio
*
*/
2024-10-23 19:25:13 -04:00
class JAUBankTable : public JASBankList {
2023-09-15 05:20:09 -07:00
public:
JAUBankTable(u32 param_0, JASBank** param_1, u32 param_2) : mBankPtrTable(param_1, param_2) {
field_0xc = param_0;
}
2025-11-30 14:23:42 -08:00
const JASBank* getBank(u32 bank) const { return mBankPtrTable.get(bank); }
2025-06-21 13:47:24 +03:00
JASBank* getBank(u32 bank) { return mBankPtrTable.get(bank); }
2023-09-15 05:20:09 -07:00
void registBank(u32 param_0, JASBank* param_1) { mBankPtrTable.set(param_0, param_1); }
2023-01-01 18:00:01 -07:00
/* 0x4 */ JASPtrTable<JASBank> mBankPtrTable;
2023-09-15 05:20:09 -07:00
/* 0xC */ u32 field_0xc;
};
2024-04-12 00:10:30 -06:00
/**
* @ingroup jsystem-jaudio
*
*/
2023-09-15 05:20:09 -07:00
class JAUBankTableLink : public JSULink<JAUBankTable>, public JAUBankTable {
public:
JAUBankTableLink(u32 param_0, JASBank** param_1, u32 param_2) : JSULink<JAUBankTable>(this), JAUBankTable(param_0, param_1, param_2) {}
2023-01-01 18:00:01 -07:00
};
2024-04-12 00:10:30 -06:00
/**
* @ingroup jsystem-jaudio
*
*/
2023-01-01 18:00:01 -07:00
struct JAUBankTableDictionary : JSUList<JAUBankTable> {
2025-11-30 14:23:42 -08:00
void appendBankTable(JSULink<JAUBankTable>*);
2023-01-01 18:00:01 -07:00
};
class JASWaveBank;
2024-04-12 00:10:30 -06:00
/**
* @ingroup jsystem-jaudio
*
*/
class JAUWaveBankTable : private JASPtrArray<JASWaveBank,255> {
public:
JASWaveBank* getWaveBank(u32 index) { return get(index); }
JASWaveBank* getWaveBank(u32 index) const { return get(index); }
void registWaveBank(u32 index, JASWaveBank* bank) { set(index, bank); }
};
2021-03-28 22:49:05 +02:00
#endif /* JAUBANKTABLE_H */