mirror of
https://github.com/TwilitRealm/dusklight
synced 2026-06-19 06:27:02 -04:00
Reorganize library code into libs/ (#3119)
* Reorganize files into libs/{dolphin,JSystem,PowerPC_EABI_Support,revolution,TRK_MINNOW_DOLPHIN}
* Update configure.py and project.py for new libs structure
* Refactor `#include <dolphin/x.h>` -> `<x.h>`
* Remove `__REVOLUTION_SDK__` forwards from dolphin
* Fix dolphin/ references in revolution
* Wrap `#include <dolphin.h>` in `!__REVOLUTION_SDK__`
* Always build TRK against dolphin headers
* Resolve revolution SDK header resolution issues
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
#include "JSystem/JSystem.h" // IWYU pragma: keep
|
||||
|
||||
#include "JSystem/JAudio2/JAUSeqCollection.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
|
||||
JAUSeqCollection::JAUSeqCollection() {
|
||||
field_0x8 = NULL;
|
||||
}
|
||||
|
||||
void JAUSeqCollection::init(void const* param_0) {
|
||||
field_0x8 = (const JAUSeqCollectionData*)param_0;
|
||||
if (field_0x8->field_0x0 != 0x53 || field_0x8->field_0x1 != 0x43) {
|
||||
field_0x8 = NULL;
|
||||
return;
|
||||
}
|
||||
|
||||
field_0x0 = field_0x8->field_0x2;
|
||||
field_0xc = field_0x8->field_0x4;
|
||||
field_0x4 = &field_0x8->field_0x8;
|
||||
|
||||
}
|
||||
|
||||
bool JAUSeqCollection::getSeqData(int param_0, int param_1, JAISeqData* param_2) {
|
||||
if (param_0 >= field_0x0) {
|
||||
return false;
|
||||
}
|
||||
u32 r29 = field_0x4[param_0];
|
||||
u32* puVar2 = (u32*)((u8*)field_0x8 + r29);
|
||||
if (param_1 >= puVar2[0]) {
|
||||
return false;
|
||||
}
|
||||
param_2->set((void*)field_0x8, puVar2[param_1 + 1]);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool JAUSeqCollection::getSeqDataRegion(JAISeqDataRegion* param_0) {
|
||||
if (isValid()) {
|
||||
param_0->addr = (u8*)field_0x8;
|
||||
param_0->size = field_0xc;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
JAUSeqDataMgr_SeqCollection::JAUSeqDataMgr_SeqCollection() {
|
||||
user_ = NULL;
|
||||
}
|
||||
|
||||
bool JAUSeqDataMgr_SeqCollection::setSeqDataUser(JAISeqDataUser* param_0) {
|
||||
JUT_ASSERT(60, user_ == NULL);
|
||||
user_ = param_0;
|
||||
return true;
|
||||
}
|
||||
|
||||
int JAUSeqDataMgr_SeqCollection::releaseSeqData() {
|
||||
if (user_) {
|
||||
JAISeqDataRegion region;
|
||||
getSeqDataRegion(®ion);
|
||||
int result = user_->releaseSeqData(region);
|
||||
return result;
|
||||
}
|
||||
return 2;
|
||||
}
|
||||
|
||||
JAUSeqDataMgr_SeqCollection::SeqDataReturnValue JAUSeqDataMgr_SeqCollection::getSeqData(JAISoundID param_0, JAISeqData* param_1) {
|
||||
if (!isValid()) {
|
||||
return SeqDataReturnValue_0;
|
||||
}
|
||||
if (JAUSeqCollection::getSeqData(param_0.id_.info.type.parts.groupID, param_0.id_.info.waveID, param_1)) {
|
||||
return SeqDataReturnValue_2;
|
||||
}
|
||||
return SeqDataReturnValue_0;
|
||||
}
|
||||
|
||||
JAUSeqDataMgr_SeqCollection::~JAUSeqDataMgr_SeqCollection() {}
|
||||
Reference in New Issue
Block a user