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