isle-portable/LEGO1/mxmediamanager.h

35 lines
850 B
C
Raw Normal View History

2023-08-28 06:01:45 -04:00
#ifndef MXMEDIAMANGER_H
#define MXMEDIAMANGER_H
#include "mxcore.h"
#include "mxcriticalsection.h"
#include "mxthread.h"
#include "mxpresenterlist.h"
2023-08-28 06:01:45 -04:00
#include "mxtypes.h"
// VTABLE 0x100dc6b0
// SIZE 0x2c
2023-08-28 06:01:45 -04:00
class MxMediaManager : public MxCore
{
public:
MxMediaManager();
virtual ~MxMediaManager() override;
virtual MxResult Tickle() override; // vtable+08
virtual MxResult InitPresenters(); // vtable+14
virtual void Destroy(); // vtable+18
virtual void AddPresenter(MxPresenter &p_presenter); // vtable+1c
virtual void RemovePresenter(MxPresenter &p_presenter); // vtable+20
virtual void StopPresenters(); // vtable+24
2023-08-28 06:01:45 -04:00
MxResult Init();
void TerminateThread(MxBool p_reinit);
2023-08-28 06:01:45 -04:00
protected:
MxPresenterList *m_presenters;
MxThread *m_thread; // 0xc
2023-08-28 06:01:45 -04:00
MxCriticalSection m_criticalSection; // 0x10
};
#endif // MXMEDIAMANGER_H