Add getter for MIDIInitialized, fix virtual function decl

This commit is contained in:
Christian Semmler 2023-10-14 09:18:53 -04:00
parent 6e6307c7b0
commit bc3724680f
3 changed files with 8 additions and 7 deletions

View File

@ -7,7 +7,8 @@
DECOMP_SIZE_ASSERT(MxMIDIPresenter, 0x58); DECOMP_SIZE_ASSERT(MxMIDIPresenter, 0x58);
// OFFSET: LEGO1 0x100c25e0 // OFFSET: LEGO1 0x100c25e0
MxMIDIPresenter::MxMIDIPresenter() { MxMIDIPresenter::MxMIDIPresenter()
{
Init(); Init();
} }
@ -30,9 +31,9 @@ void MxMIDIPresenter::Destroy(MxBool p_fromDestructor)
} }
// OFFSET: LEGO1 0x100c2940 // OFFSET: LEGO1 0x100c2940
void MxMIDIPresenter::EndMIDIAction() void MxMIDIPresenter::DoneTickle()
{ {
if(!MusicManager()->m_MIDIInitialized) { if (!MusicManager()->GetMIDIInitialized()) {
this->EndAction(); this->EndAction();
} }
} }

View File

@ -8,7 +8,7 @@ class MxMIDIPresenter : public MxMusicPresenter
{ {
public: public:
MxMIDIPresenter(); MxMIDIPresenter();
~MxMIDIPresenter(); virtual ~MxMIDIPresenter() override;
// OFFSET: LEGO1 0x100c2650 // OFFSET: LEGO1 0x100c2650
inline virtual const char *ClassName() const override // vtable+0xc inline virtual const char *ClassName() const override // vtable+0xc
@ -23,7 +23,7 @@ class MxMIDIPresenter : public MxMusicPresenter
return !strcmp(name, MxMIDIPresenter::ClassName()) || MxMusicPresenter::IsA(name); return !strcmp(name, MxMIDIPresenter::ClassName()) || MxMusicPresenter::IsA(name);
} }
virtual void EndMIDIAction(); // vtable+0x2a virtual void DoneTickle() override; // vtable+0x2c
private: private:
void Init(); void Init();

View File

@ -16,6 +16,8 @@ class MxMusicManager : public MxAudioManager
virtual void SetVolume(MxS32 p_volume) override; // vtable+2c virtual void SetVolume(MxS32 p_volume) override; // vtable+2c
virtual MxResult StartMIDIThread(MxU32 p_frequencyMS, MxU8 p_noRegister); // vtable+30 virtual MxResult StartMIDIThread(MxU32 p_frequencyMS, MxU8 p_noRegister); // vtable+30
inline MxBool GetMIDIInitialized() { return m_MIDIInitialized; }
private: private:
void Destroy(MxBool p_fromDestructor); void Destroy(MxBool p_fromDestructor);
void DeinitializeMIDI(); void DeinitializeMIDI();
@ -24,9 +26,7 @@ class MxMusicManager : public MxAudioManager
void SetMIDIVolume(); void SetMIDIVolume();
HMIDISTRM m_MIDIStreamH; // 0x30 HMIDISTRM m_MIDIStreamH; // 0x30
public:
MxBool m_MIDIInitialized; // 0x34 MxBool m_MIDIInitialized; // 0x34
private:
undefined4 m_unk38; // 0x38 undefined4 m_unk38; // 0x38
undefined4 m_unk3c; // 0x3c undefined4 m_unk3c; // 0x3c
undefined4 m_unk40; // 0x40 undefined4 m_unk40; // 0x40