mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-20 23:01:16 +00:00
commit 1fe03a4a787693616c56f59622bcaae8fd53b30b
Author: ecumber <ecumber05@gmail.com>
Date: Thu Jul 6 21:04:15 2023 -0700
data types
commit 7c8432f88236c42c17998d51e820b5e219f3c326
Author: ecumber <ecumber05@gmail.com>
Date: Thu Jul 6 12:39:13 2023 -0700
Destroy
commit f60eb3923b24bc87bb31ba783676c6a50d48e9b8
Author: ecumber <ecumber05@gmail.com>
Date: Thu Jul 6 12:15:33 2023 -0700
compile fix
commit e2f78d557f223c2552a046470578d154c29e473b
Author: ecumber <ecumber05@gmail.com>
Date: Tue Jul 4 13:37:33 2023 -0700
Timer functions
commit 447e234e6324a5b0958e9e94c5cda53703abada2
Author: ecumber <ecumber05@gmail.com>
Date: Thu Jul 6 02:40:10 2023 -0700
fix
commit 4670fd790b16a15b5797d50bc3cd1f6e2c9e890d
Author: ecumber <ecumber05@gmail.com>
Date: Thu Jul 6 02:39:04 2023 -0700
improvements
commit 7f70bce1eefe550fe6bef193e7ee54948af354b6
Author: ecumber <ecumber05@gmail.com>
Date: Tue Jul 4 03:42:47 2023 -0700
Update legoinputmanager.cpp
commit 0d3433a75d2b20a3fff1da8147ce502b279b1e9c
Author: ecumber <ecumber05@gmail.com>
Date: Tue Jul 4 03:38:32 2023 -0700
Add ReleaseDX
commit 72d27fd402efb37da1ce8c41a3350df66c99db1d
Author: ecumber <ecumber05@gmail.com>
Date: Tue Jul 4 02:27:12 2023 -0700
Update CMakeLists.txt
commit 09626a62f9d2c56a523ca582be95a4dfb29ee188
Author: ecumber <ecumber05@gmail.com>
Date: Mon Jul 3 13:48:46 2023 -0700
Move to new branch
85 lines
3.1 KiB
C++
85 lines
3.1 KiB
C++
#ifndef MXOMNI_H
|
|
#define MXOMNI_H
|
|
|
|
#include "mxcriticalsection.h"
|
|
#include "mxeventmanager.h"
|
|
#include "mxmusicmanager.h"
|
|
#include "mxnotificationmanager.h"
|
|
#include "mxobjectfactory.h"
|
|
#include "mxomnicreateflags.h"
|
|
#include "mxomnicreateparam.h"
|
|
#include "mxsoundmanager.h"
|
|
#include "mxstreamer.h"
|
|
#include "mxticklemanager.h"
|
|
#include "mxtimer.h"
|
|
#include "mxvariabletable.h"
|
|
#include "mxvideomanager.h"
|
|
|
|
// VTABLE 0x100dc168
|
|
// SIZE 0x68
|
|
class MxOmni : public MxCore
|
|
{
|
|
public:
|
|
__declspec(dllexport) static void DestroyInstance();
|
|
__declspec(dllexport) static const char *GetCD();
|
|
__declspec(dllexport) static const char *GetHD();
|
|
__declspec(dllexport) static MxOmni *GetInstance();
|
|
__declspec(dllexport) static MxBool IsSound3D();
|
|
__declspec(dllexport) static void SetCD(const char *p_cd);
|
|
__declspec(dllexport) static void SetHD(const char *p_hd);
|
|
__declspec(dllexport) static void SetSound3D(MxBool p_3dsound);
|
|
|
|
MxOmni();
|
|
virtual ~MxOmni() override;
|
|
|
|
virtual MxLong Notify(MxParam &p); // vtable+04
|
|
virtual void Init(); // vtable+14
|
|
virtual MxResult Create(MxOmniCreateParam &p); // vtable+18
|
|
virtual void Destroy(); // vtable+1c
|
|
static void SetInstance(MxOmni* instance);
|
|
MxObjectFactory* GetObjectFactory() const { return this->m_objectFactory; }
|
|
MxNotificationManager* GetNotificationManager() const { return this->m_notificationManager; }
|
|
MxTickleManager* GetTickleManager() const { return this->m_tickleManager; }
|
|
MxTimer* GetTimer() const { return this->m_timer; }
|
|
MxStreamer* GetStreamer() const { return this->m_streamer; }
|
|
MxSoundManager* GetSoundManager() const { return this->m_soundManager; }
|
|
MxVideoManager* GetVideoManager() const { return this->m_videoManager; }
|
|
MxVariableTable* GetVariableTable() const { return this->m_variableTable; }
|
|
MxMusicManager* GetMusicManager() const { return this->m_musicManager; }
|
|
MxEventManager* GetEventManager() const { return this->m_eventManager; }
|
|
|
|
// FIXME: put this in the correct spot, just a hack for LegoInputManager
|
|
HWND* GetWindowHandle() const { return this->m_windowHandle; }
|
|
protected:
|
|
static MxOmni* g_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
|
|
|
|
int m_unk44; // 0x44
|
|
|
|
MxCriticalSection m_criticalsection; // 0x48
|
|
|
|
unsigned char m_unk64; // 0x64
|
|
};
|
|
__declspec(dllexport) MxTickleManager * TickleManager();
|
|
__declspec(dllexport) MxTimer * Timer();
|
|
__declspec(dllexport) MxStreamer * Streamer();
|
|
__declspec(dllexport) MxSoundManager * MSoundManager();
|
|
__declspec(dllexport) MxVariableTable * VariableTable();
|
|
__declspec(dllexport) MxMusicManager * MusicManager();
|
|
__declspec(dllexport) MxEventManager * EventManager();
|
|
__declspec(dllexport) MxNotificationManager * NotificationManager();
|
|
|
|
#endif // MXOMNI_H
|