isle-portable/LEGO1/mxsoundpresenter.h
Joshua Peisach af0e38176c
MxSoundPresenter (#227)
* MxSoundPresenter

Destructor, destroy, function adding itself to the sound manager and vtable38.

* Fix virtual function declarations

---------

Co-authored-by: Christian Semmler <mail@csemmler.com>
2023-10-22 00:41:05 +02:00

33 lines
751 B
C++

#ifndef MXSOUNDPRESENTER_H
#define MXSOUNDPRESENTER_H
#include "mxaudiopresenter.h"
#include "mxomni.h"
// VTABLE 0x100d4b08
class MxSoundPresenter : public MxAudioPresenter
{
public:
virtual ~MxSoundPresenter() override;
// OFFSET: LEGO1 0x1000d4a0
inline virtual const char *ClassName() const // vtable+0x0c
{
// 0x100f07a0
return "MxSoundPresenter";
};
// OFFSET: LEGO1 0x1000d4b0
inline virtual MxBool IsA(const char *name) const // vtable+0x10
{
return !strcmp(name, MxSoundPresenter::ClassName()) || MxAudioPresenter::IsA(name);
};
virtual MxResult AddToManager() override; // vtable+0x34
virtual void Destroy() override; // vtable+0x38
private:
void Destroy(MxBool);
};
#endif // MXSOUNDPRESENTER_H