LegoLoadCacheSoundPresenter ctor, dtor, init, destroy

This commit is contained in:
Joshua Peisach 2023-12-25 14:35:32 -05:00
parent 762681a821
commit f260838b7f
No known key found for this signature in database
GPG Key ID: 41C3D4189AFEDB5A
3 changed files with 28 additions and 5 deletions

View File

@ -1,19 +1,30 @@
#include "legoloadcachesoundpresenter.h"
DECOMP_SIZE_ASSERT(LegoLoadCacheSoundPresenter, 0x90)
// FUNCTION: LEGO1 0x10018340
LegoLoadCacheSoundPresenter::LegoLoadCacheSoundPresenter()
{
Init();
}
// STUB: LEGO1 0x10018480
// FUNCTION: LEGO1 0x10018480
LegoLoadCacheSoundPresenter::~LegoLoadCacheSoundPresenter()
{
// TODO
Destroy(TRUE);
}
// STUB: LEGO1 0x100184e0
// FUNCTION: LEGO1 0x100184e0
void LegoLoadCacheSoundPresenter::Init()
{
// TODO
this->m_unk0x70 = 0;
this->m_unk0x78 = 0;
this->m_unk0x7c = 0;
}
// FUNCTION: LEGO1 0x100184f0
void LegoLoadCacheSoundPresenter::Destroy(MxBool p_fromDestructor)
{
delete this->m_unk0x70;
MxWavePresenter::Destroy(p_fromDestructor);
}

View File

@ -1,6 +1,7 @@
#ifndef LEGOLOADCACHESOUNDPRESENTER_H
#define LEGOLOADCACHESOUNDPRESENTER_H
#include "decomp.h"
#include "mxwavepresenter.h"
// VTABLE: LEGO1 0x100d5fa8
@ -19,6 +20,15 @@ class LegoLoadCacheSoundPresenter : public MxWavePresenter {
private:
void Init();
void Destroy(MxBool p_fromDestructor);
// TODO: Types
undefined4* m_unk0x6c;
undefined4* m_unk0x70; // might be a void* as per Destroy function
undefined4 m_unk0x74;
undefined4 m_unk0x78;
undefined m_unk0x7c;
undefined4 m_unk0x7d[4];
};
#endif // LEGOLOADCACHESOUNDPRESENTER_H

View File

@ -50,9 +50,11 @@ class MxWavePresenter : public MxSoundPresenter {
MxU32 m_flags;
};
protected:
void Destroy(MxBool p_fromDestructor);
private:
void Init();
void Destroy(MxBool p_fromDestructor);
MxS8 GetPlayedChunks();
MxBool FUN_100b1ba0();
void WriteToSoundBuffer(void* p_audioPtr, MxU32 p_length);