2023-04-27 22:19:39 -04:00
|
|
|
#ifndef MXOMNI_H
|
|
|
|
#define MXOMNI_H
|
|
|
|
|
2023-06-19 01:36:07 -04:00
|
|
|
#include "mxcriticalsection.h"
|
|
|
|
#include "mxeventmanager.h"
|
|
|
|
#include "mxmusicmanager.h"
|
|
|
|
#include "mxnotificationmanager.h"
|
|
|
|
#include "mxobjectfactory.h"
|
2023-06-13 20:22:42 -04:00
|
|
|
#include "mxomnicreateflags.h"
|
2023-06-19 01:36:07 -04:00
|
|
|
#include "mxomnicreateparam.h"
|
|
|
|
#include "mxresult.h"
|
|
|
|
#include "mxsoundmanager.h"
|
|
|
|
#include "mxstreamer.h"
|
|
|
|
#include "mxticklemanager.h"
|
2023-06-13 20:22:42 -04:00
|
|
|
#include "mxtimer.h"
|
2023-06-19 01:36:07 -04:00
|
|
|
#include "mxvariabletable.h"
|
|
|
|
#include "mxvideomanager.h"
|
2023-06-13 20:22:42 -04:00
|
|
|
|
2023-06-19 01:36:07 -04:00
|
|
|
class MxOmni : public MxCore
|
2023-04-27 22:19:39 -04:00
|
|
|
{
|
|
|
|
public:
|
|
|
|
__declspec(dllexport) static void DestroyInstance();
|
2023-06-13 20:22:42 -04:00
|
|
|
__declspec(dllexport) static const char *GetCD();
|
|
|
|
__declspec(dllexport) static const char *GetHD();
|
|
|
|
__declspec(dllexport) static MxOmni *GetInstance();
|
2023-06-11 21:03:54 -04:00
|
|
|
__declspec(dllexport) static unsigned char IsSound3D();
|
|
|
|
__declspec(dllexport) static void SetCD(const char *s);
|
|
|
|
__declspec(dllexport) static void SetHD(const char *s);
|
|
|
|
__declspec(dllexport) static void SetSound3D(unsigned char);
|
2023-06-13 20:22:42 -04:00
|
|
|
|
2023-06-19 01:36:07 -04:00
|
|
|
virtual ~MxOmni();
|
|
|
|
|
|
|
|
virtual long Notify(MxParam &p); // vtable+04
|
|
|
|
virtual void Init(); // vtable+14
|
|
|
|
virtual MxResult Create(MxOmniCreateParam &p); // vtable+18
|
|
|
|
virtual void Destroy(); // vtable+1c
|
|
|
|
|
|
|
|
MxTimer* GetTimer() const { return this->m_timer; }
|
|
|
|
|
|
|
|
protected:
|
|
|
|
static MxOmni* m_instance;
|
|
|
|
|
|
|
|
MxString m_mediaPath; // 0x8
|
|
|
|
HWND *m_windowHandle; // 0x18;
|
|
|
|
MxObjectFactory *m_objectFactory; // 0x1C
|
|
|
|
MxVariableTable* m_variableTable; //0x20
|
|
|
|
MxTickleManager* m_tickleManager; //0x24
|
|
|
|
MxNotificationManager* m_notificationManager; //0x28
|
|
|
|
MxVideoManager *m_videoManager; //0x2C
|
|
|
|
MxSoundManager* m_soundManager; //0x30
|
|
|
|
MxMusicManager* m_musicManager; //0x34
|
|
|
|
MxEventManager* m_eventManager; //0x38
|
|
|
|
MxTimer* m_timer; //0x3C
|
|
|
|
MxStreamer* m_streamer; //0x40
|
|
|
|
|
2023-06-19 02:19:40 -04:00
|
|
|
int m_unk44; // 0x44
|
2023-06-19 01:36:07 -04:00
|
|
|
|
|
|
|
MxCriticalSection m_criticalsection; // 0x48
|
2023-06-13 20:22:42 -04:00
|
|
|
|
2023-06-19 13:56:53 -04:00
|
|
|
unsigned char m_unk64; // 0x64
|
2023-04-27 22:19:39 -04:00
|
|
|
};
|
|
|
|
|
2023-06-19 04:34:58 -04:00
|
|
|
__declspec(dllexport) MxTimer * Timer();
|
|
|
|
|
2023-04-27 22:19:39 -04:00
|
|
|
#endif // MXOMNI_H
|