Remove DLL expor decls

This commit is contained in:
Christian Semmler 2024-01-24 20:00:59 -05:00
parent 01991d1843
commit 5f430d7389
44 changed files with 135 additions and 149 deletions

View File

@ -384,8 +384,6 @@ if (ISLE_BUILD_APP)
ISLE/define.cpp ISLE/define.cpp
) )
target_compile_definitions(isle PRIVATE ISLE_APP)
# Use internal DirectX 5 if required # Use internal DirectX 5 if required
target_link_libraries(isle PRIVATE $<$<BOOL:${ISLE_USE_DX5}>:DirectX5::DirectX5>) target_link_libraries(isle PRIVATE $<$<BOOL:${ISLE_USE_DX5}>:DirectX5::DirectX5>)

View File

@ -32,7 +32,7 @@ class LegoAnimationManager : public MxCore {
void FUN_1005f720(undefined4); void FUN_1005f720(undefined4);
void FUN_10064670(MxBool); void FUN_10064670(MxBool);
__declspec(dllexport) static void configureLegoAnimationManager(MxS32 p_legoAnimationManagerConfig); static void configureLegoAnimationManager(MxS32 p_legoAnimationManagerConfig);
// SYNTHETIC: LEGO1 0x1005ed10 // SYNTHETIC: LEGO1 0x1005ed10
// LegoAnimationManager::`scalar deleting destructor' // LegoAnimationManager::`scalar deleting destructor'

View File

@ -7,7 +7,7 @@
// SIZE 0x30 // SIZE 0x30
class LegoBackgroundColor : public MxVariable { class LegoBackgroundColor : public MxVariable {
public: public:
__declspec(dllexport) LegoBackgroundColor(const char* p_key, const char* p_value); LegoBackgroundColor(const char* p_key, const char* p_value);
virtual void SetValue(const char* p_colorString) override; virtual void SetValue(const char* p_colorString) override;
private: private:

View File

@ -19,7 +19,7 @@ class LegoBuildingManager : public MxCore {
return "LegoBuildingManager"; return "LegoBuildingManager";
} }
__declspec(dllexport) static void configureLegoBuildingManager(MxS32); static void configureLegoBuildingManager(MxS32);
void FUN_1002fa00(); void FUN_1002fa00();

View File

@ -19,12 +19,8 @@ class LegoEntity : public MxEntity {
// Inlined at 0x100853f7 // Inlined at 0x100853f7
inline LegoEntity() { Init(); } inline LegoEntity() { Init(); }
#ifdef ISLE_APP
__declspec(dllexport) virtual ~LegoEntity() override;
#else
// FUNCTION: LEGO1 0x1000c290 // FUNCTION: LEGO1 0x1000c290
__declspec(dllexport) virtual ~LegoEntity() override { Destroy(TRUE); } virtual ~LegoEntity() override { Destroy(TRUE); }
#endif
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4 virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4

View File

@ -20,13 +20,13 @@ struct ColorStringStruct {
// SIZE 0x430 // SIZE 0x430
class LegoGameState { class LegoGameState {
public: public:
__declspec(dllexport) LegoGameState(); LegoGameState();
__declspec(dllexport) ~LegoGameState(); ~LegoGameState();
__declspec(dllexport) MxResult Load(MxULong); MxResult Load(MxULong);
__declspec(dllexport) MxResult Save(MxULong); MxResult Save(MxULong);
__declspec(dllexport) void SerializePlayersInfo(MxS16); void SerializePlayersInfo(MxS16);
__declspec(dllexport) void SerializeScoreHistory(MxS16 p_flags); void SerializeScoreHistory(MxS16 p_flags);
__declspec(dllexport) void SetSavePath(char*); void SetSavePath(char*);
LegoState* GetState(const char* p_stateName); LegoState* GetState(const char* p_stateName);
LegoState* CreateState(const char* p_stateName); LegoState* CreateState(const char* p_stateName);

View File

@ -32,9 +32,9 @@ class LegoInputManager : public MxPresenter {
LegoInputManager(); LegoInputManager();
virtual ~LegoInputManager() override; virtual ~LegoInputManager() override;
__declspec(dllexport) void QueueEvent(NotificationId p_id, MxU8 p_modifier, MxLong p_x, MxLong p_y, MxU8 p_key); void QueueEvent(NotificationId p_id, MxU8 p_modifier, MxLong p_x, MxLong p_y, MxU8 p_key);
__declspec(dllexport) void Register(MxCore*); void Register(MxCore*);
__declspec(dllexport) void UnRegister(MxCore*); void UnRegister(MxCore*);
virtual MxResult Tickle() override; // vtable+0x8 virtual MxResult Tickle() override; // vtable+0x8

View File

@ -9,7 +9,7 @@ class AutoROI;
// SIZE 0x6c (discovered through inline constructor at 0x10009ae6) // SIZE 0x6c (discovered through inline constructor at 0x10009ae6)
class LegoModelPresenter : public MxVideoPresenter { class LegoModelPresenter : public MxVideoPresenter {
public: public:
__declspec(dllexport) static void configureLegoModelPresenter(MxS32 p_modelPresenterConfig); static void configureLegoModelPresenter(MxS32 p_modelPresenterConfig);
// FUNCTION: LEGO1 0x1000ccb0 // FUNCTION: LEGO1 0x1000ccb0
inline const char* ClassName() const override // vtable+0xc inline const char* ClassName() const override // vtable+0xc

View File

@ -9,7 +9,7 @@
// SIZE 0x70 // SIZE 0x70
class LegoNavController : public MxCore { class LegoNavController : public MxCore {
public: public:
__declspec(dllexport) static void GetDefaults( static void GetDefaults(
int* p_mouseDeadzone, int* p_mouseDeadzone,
float* p_movementMaxSpeed, float* p_movementMaxSpeed,
float* p_turnMaxSpeed, float* p_turnMaxSpeed,
@ -22,7 +22,7 @@ class LegoNavController : public MxCore {
float* p_rotationSensitivity, float* p_rotationSensitivity,
MxBool* p_turnUseVelocity MxBool* p_turnUseVelocity
); );
__declspec(dllexport) static void SetDefaults( static void SetDefaults(
int p_mouseDeadzone, int p_mouseDeadzone,
float p_movementMaxSpeed, float p_movementMaxSpeed,
float p_turnMaxSpeed, float p_turnMaxSpeed,

View File

@ -68,11 +68,11 @@ class LegoOmni : public MxOmni {
c_clearScreen = 0x04 c_clearScreen = 0x04
}; };
__declspec(dllexport) void CreateBackgroundAudio(); void CreateBackgroundAudio();
__declspec(dllexport) void RemoveWorld(const MxAtomId&, MxLong); void RemoveWorld(const MxAtomId&, MxLong);
__declspec(dllexport) static int GetCurrPathInfo(LegoPathBoundary**, MxS32&); static int GetCurrPathInfo(LegoPathBoundary**, MxS32&);
__declspec(dllexport) static void CreateInstance(); static void CreateInstance();
__declspec(dllexport) static LegoOmni* GetInstance(); static LegoOmni* GetInstance();
LegoOmni(); LegoOmni();
virtual ~LegoOmni(); // vtable+00 virtual ~LegoOmni(); // vtable+00
@ -153,16 +153,16 @@ class LegoOmni : public MxOmni {
MxBool m_unk0x13c; // 0x13c MxBool m_unk0x13c; // 0x13c
}; };
__declspec(dllexport) MxBackgroundAudioManager* BackgroundAudioManager(); MxBackgroundAudioManager* BackgroundAudioManager();
__declspec(dllexport) LegoGameState* GameState(); LegoGameState* GameState();
__declspec(dllexport) const char* GetNoCD_SourceName(); const char* GetNoCD_SourceName();
__declspec(dllexport) LegoInputManager* InputManager(); LegoInputManager* InputManager();
__declspec(dllexport) LegoOmni* Lego(); LegoOmni* Lego();
__declspec(dllexport) LegoEntity* PickEntity(MxLong, MxLong); LegoEntity* PickEntity(MxLong, MxLong);
__declspec(dllexport) LegoROI* PickROI(MxLong, MxLong); LegoROI* PickROI(MxLong, MxLong);
__declspec(dllexport) LegoSoundManager* SoundManager(); LegoSoundManager* SoundManager();
__declspec(dllexport) MxTransitionManager* TransitionManager(); MxTransitionManager* TransitionManager();
__declspec(dllexport) LegoVideoManager* VideoManager(); LegoVideoManager* VideoManager();
LegoAnimationManager* AnimationManager(); LegoAnimationManager* AnimationManager();
LegoBuildingManager* BuildingManager(); LegoBuildingManager* BuildingManager();

View File

@ -24,7 +24,7 @@ class LegoPartPresenter : public MxMediaPresenter {
virtual MxResult AddToManager() override; // vtable+0x34 virtual MxResult AddToManager() override; // vtable+0x34
virtual void Destroy() override; // vtable+0x38 virtual void Destroy() override; // vtable+0x38
__declspec(dllexport) static void configureLegoPartPresenter(MxS32, MxS32); static void configureLegoPartPresenter(MxS32, MxS32);
// SYNTHETIC: LEGO1 0x1000d060 // SYNTHETIC: LEGO1 0x1000d060
// LegoPartPresenter::`scalar deleting destructor' // LegoPartPresenter::`scalar deleting destructor'

View File

@ -19,11 +19,11 @@ class LegoVideoManager : public MxVideoManager {
LegoVideoManager(); LegoVideoManager();
virtual ~LegoVideoManager() override; virtual ~LegoVideoManager() override;
__declspec(dllexport) int EnableRMDevice(); int EnableRMDevice();
__declspec(dllexport) int DisableRMDevice(); int DisableRMDevice();
void EnableFullScreenMovie(MxBool p_enable); void EnableFullScreenMovie(MxBool p_enable);
__declspec(dllexport) void EnableFullScreenMovie(MxBool p_enable, MxBool p_scale); void EnableFullScreenMovie(MxBool p_enable, MxBool p_scale);
__declspec(dllexport) void MoveCursor(MxS32 p_cursorX, MxS32 p_cursorY); void MoveCursor(MxS32 p_cursorX, MxS32 p_cursorY);
virtual MxResult Tickle() override; // vtable+0x8 virtual MxResult Tickle() override; // vtable+0x8
virtual void Destroy() override; // vtable+0x18 virtual void Destroy() override; // vtable+0x18

View File

@ -22,8 +22,8 @@ typedef set<MxPresenter*, PresenterSetCompare> MxPresenterSet;
// SIZE 0xf8 // SIZE 0xf8
class LegoWorld : public LegoEntity { class LegoWorld : public LegoEntity {
public: public:
__declspec(dllexport) LegoWorld(); LegoWorld();
__declspec(dllexport) virtual ~LegoWorld() override; // vtable+0x0 virtual ~LegoWorld() override; // vtable+0x0
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4 virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4
virtual MxResult Tickle() override; // vtable+0x8 virtual MxResult Tickle() override; // vtable+0x8

View File

@ -10,7 +10,7 @@ class LegoWorldPresenter : public LegoEntityPresenter {
LegoWorldPresenter(); LegoWorldPresenter();
virtual ~LegoWorldPresenter() override; // vtable+0x0 virtual ~LegoWorldPresenter() override; // vtable+0x0
__declspec(dllexport) static void configureLegoWorldPresenter(MxS32 p_legoWorldPresenterQuality); static void configureLegoWorldPresenter(MxS32 p_legoWorldPresenterQuality);
// FUNCTION: LEGO1 0x10066630 // FUNCTION: LEGO1 0x10066630
inline virtual const char* ClassName() const override // vtable+0x0c inline virtual const char* ClassName() const override // vtable+0x0c

View File

@ -39,7 +39,7 @@ class MxBackgroundAudioManager : public MxCore {
void FUN_1007ef40(); void FUN_1007ef40();
void FadeInOrFadeOut(); void FadeInOrFadeOut();
__declspec(dllexport) void Enable(MxBool p_enable); void Enable(MxBool p_enable);
virtual MxResult Create(MxAtomId& p_script, MxU32 p_frequencyMS); virtual MxResult Create(MxAtomId& p_script, MxU32 p_frequencyMS);
void Stop(); void Stop();

View File

@ -13,7 +13,7 @@ class MxTransitionManager : public MxCore {
MxTransitionManager(); MxTransitionManager();
virtual ~MxTransitionManager() override; // vtable+0x0 virtual ~MxTransitionManager() override; // vtable+0x0
__declspec(dllexport) void SetWaitIndicator(MxVideoPresenter* p_waitIndicator); void SetWaitIndicator(MxVideoPresenter* p_waitIndicator);
virtual MxResult Tickle(); // vtable+0x8 virtual MxResult Tickle(); // vtable+0x8

View File

@ -23,8 +23,8 @@ class LegoROI : public ViewROI {
// Note: Actually part of parent class (doesn't exist yet) // Note: Actually part of parent class (doesn't exist yet)
virtual void UpdateWorldBoundingVolumes() override; // vtable+0x18 virtual void UpdateWorldBoundingVolumes() override; // vtable+0x18
__declspec(dllexport) void SetDisplayBB(int p_displayBB); void SetDisplayBB(int p_displayBB);
__declspec(dllexport) static void configureLegoROI(int p_roi); static void configureLegoROI(int p_roi);
static void SetSomeHandlerFunction(ROIHandler p_func); static void SetSomeHandlerFunction(ROIHandler p_func);
static unsigned char CallTheHandlerFunction( static unsigned char CallTheHandlerFunction(

View File

@ -1,7 +1,7 @@
#include <windows.h> #include <windows.h>
// FUNCTION: LEGO1 0x10091ee0 // FUNCTION: LEGO1 0x10091ee0
__declspec(dllexport) BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{ {
return TRUE; return TRUE;
} }

View File

@ -34,9 +34,9 @@ class MxDirectDraw {
void* m_unk0x178; // 0x178 void* m_unk0x178; // 0x178
}; };
__declspec(dllexport) int FlipToGDISurface(); int FlipToGDISurface();
__declspec(dllexport) static int GetPrimaryBitDepth(); static int GetPrimaryBitDepth();
__declspec(dllexport) int Pause(int); int Pause(int);
MxDirectDraw(); MxDirectDraw();
virtual ~MxDirectDraw(); virtual ~MxDirectDraw();

View File

@ -14,9 +14,9 @@ enum LookupMode {
// SIZE 0x04 // SIZE 0x04
class MxAtomId { class MxAtomId {
public: public:
__declspec(dllexport) MxAtomId(const char*, LookupMode); MxAtomId(const char*, LookupMode);
__declspec(dllexport) MxAtomId& operator=(const MxAtomId& p_atomId); MxAtomId& operator=(const MxAtomId& p_atomId);
__declspec(dllexport) ~MxAtomId(); ~MxAtomId();
MxAtomId() { this->m_internal = 0; } MxAtomId() { this->m_internal = 0; }

View File

@ -34,14 +34,14 @@ struct MxBITMAPINFO {
// VTABLE: LEGO1 0x100dc7b0 // VTABLE: LEGO1 0x100dc7b0
class MxBitmap : public MxCore { class MxBitmap : public MxCore {
public: public:
__declspec(dllexport) MxBitmap(); MxBitmap();
__declspec(dllexport) virtual ~MxBitmap(); // vtable+00 virtual ~MxBitmap(); // vtable+00
virtual MxResult ImportBitmap(MxBitmap* p_bitmap); // vtable+14 virtual MxResult ImportBitmap(MxBitmap* p_bitmap); // vtable+14
virtual MxResult ImportBitmapInfo(MxBITMAPINFO* p_info); // vtable+18 virtual MxResult ImportBitmapInfo(MxBITMAPINFO* p_info); // vtable+18
virtual MxResult SetSize(MxS32 p_width, MxS32 p_height, MxPalette* p_palette, MxBool); // vtable+1c virtual MxResult SetSize(MxS32 p_width, MxS32 p_height, MxPalette* p_palette, MxBool); // vtable+1c
virtual MxResult LoadFile(HANDLE p_handle); // vtable+20 virtual MxResult LoadFile(HANDLE p_handle); // vtable+20
__declspec(dllexport) virtual MxLong Read(const char* p_filename); // vtable+24 virtual MxLong Read(const char* p_filename); // vtable+24
// FUNCTION: LEGO1 0x1004e0d0 // FUNCTION: LEGO1 0x1004e0d0
virtual int VTable0x28(int) { return -1; }; // vtable+28 virtual int VTable0x28(int) { return -1; }; // vtable+28
@ -63,10 +63,10 @@ class MxBitmap : public MxCore {
MxS32 p_bottom, MxS32 p_bottom,
MxS32 p_width, MxS32 p_width,
MxS32 p_height MxS32 p_height
); // vtable+30 ); // vtable+30
__declspec(dllexport) virtual MxPalette* CreatePalette(); // vtable+34 virtual MxPalette* CreatePalette(); // vtable+34
virtual void ImportPalette(MxPalette* p_palette); // vtable+38 virtual void ImportPalette(MxPalette* p_palette); // vtable+38
virtual MxResult SetBitDepth(MxBool); // vtable+3c virtual MxResult SetBitDepth(MxBool); // vtable+3c
virtual MxResult StretchBits( virtual MxResult StretchBits(
HDC p_hdc, HDC p_hdc,
MxS32 p_xSrc, MxS32 p_xSrc,

View File

@ -12,9 +12,9 @@ class MxParam;
// SIZE 0x8 // SIZE 0x8
class MxCore { class MxCore {
public: public:
__declspec(dllexport) MxCore(); MxCore();
__declspec(dllexport) virtual ~MxCore(); // vtable+00 virtual ~MxCore(); // vtable+00
__declspec(dllexport) virtual MxLong Notify(MxParam& p_param); // vtable+04 virtual MxLong Notify(MxParam& p_param); // vtable+04
// FUNCTION: LEGO1 0x10001f70 // FUNCTION: LEGO1 0x10001f70
virtual MxResult Tickle() { return SUCCESS; }; // vtable+08 virtual MxResult Tickle() { return SUCCESS; }; // vtable+08

View File

@ -6,9 +6,9 @@
// SIZE 0x1c // SIZE 0x1c
class MxCriticalSection { class MxCriticalSection {
public: public:
__declspec(dllexport) MxCriticalSection(); MxCriticalSection();
__declspec(dllexport) ~MxCriticalSection(); ~MxCriticalSection();
__declspec(dllexport) static void SetDoMutex(); static void SetDoMutex();
void Enter(); void Enter();
void Leave(); void Leave();

View File

@ -24,8 +24,8 @@ class MxDSAction : public MxDSObject {
c_bit11 = 0x400, c_bit11 = 0x400,
}; };
__declspec(dllexport) MxDSAction(); MxDSAction();
__declspec(dllexport) virtual ~MxDSAction(); virtual ~MxDSAction();
void CopyFrom(MxDSAction& p_dsAction); void CopyFrom(MxDSAction& p_dsAction);
MxDSAction& operator=(MxDSAction& p_dsAction); MxDSAction& operator=(MxDSAction& p_dsAction);

View File

@ -11,8 +11,8 @@
// VTABLE: LEGO1 0x100dc890 // VTABLE: LEGO1 0x100dc890
class MxDSFile : public MxDSSource { class MxDSFile : public MxDSSource {
public: public:
__declspec(dllexport) MxDSFile(const char* p_filename, MxULong p_skipReadingChunks); MxDSFile(const char* p_filename, MxULong p_skipReadingChunks);
__declspec(dllexport) virtual ~MxDSFile(); // vtable+0x0 virtual ~MxDSFile(); // vtable+0x0
// FUNCTION: LEGO1 0x100c0120 // FUNCTION: LEGO1 0x100c0120
inline virtual const char* ClassName() const override // vtable+0x0c inline virtual const char* ClassName() const override // vtable+0x0c
@ -27,12 +27,12 @@ class MxDSFile : public MxDSSource {
return !strcmp(p_name, MxDSFile::ClassName()) || MxDSSource::IsA(p_name); return !strcmp(p_name, MxDSFile::ClassName()) || MxDSSource::IsA(p_name);
} }
__declspec(dllexport) virtual MxLong Open(MxULong); // vtable+0x14 virtual MxLong Open(MxULong); // vtable+0x14
__declspec(dllexport) virtual MxLong Close(); // vtable+0x18 virtual MxLong Close(); // vtable+0x18
__declspec(dllexport) virtual MxResult Read(unsigned char*, MxULong); // vtable+0x20 virtual MxResult Read(unsigned char*, MxULong); // vtable+0x20
__declspec(dllexport) virtual MxLong Seek(MxLong, int); // vtable+0x24 virtual MxLong Seek(MxLong, int); // vtable+0x24
__declspec(dllexport) virtual MxULong GetBufferSize(); // vtable+0x28 virtual MxULong GetBufferSize(); // vtable+0x28
__declspec(dllexport) virtual MxULong GetStreamBuffersNum(); // vtable+0x2c virtual MxULong GetStreamBuffersNum(); // vtable+0x2c
inline void SetFileName(const char* p_filename) { m_filename = p_filename; } inline void SetFileName(const char* p_filename) { m_filename = p_filename; }

View File

@ -32,7 +32,7 @@ class MxDSObject : public MxCore {
void CopyFrom(MxDSObject& p_dsObject); void CopyFrom(MxDSObject& p_dsObject);
MxDSObject& operator=(MxDSObject& p_dsObject); MxDSObject& operator=(MxDSObject& p_dsObject);
__declspec(dllexport) void SetObjectName(const char* p_objectName); void SetObjectName(const char* p_objectName);
void SetSourceName(const char* p_sourceName); void SetSourceName(const char* p_sourceName);
// FUNCTION: LEGO1 0x100bf730 // FUNCTION: LEGO1 0x100bf730

View File

@ -12,7 +12,7 @@
class MXIOINFO { class MXIOINFO {
public: public:
MXIOINFO(); MXIOINFO();
__declspec(dllexport) ~MXIOINFO(); ~MXIOINFO();
MxU16 Open(const char*, MxULong); MxU16 Open(const char*, MxULong);
MxU16 Close(MxLong); MxU16 Close(MxLong);

View File

@ -28,14 +28,14 @@ class MxStreamController;
// SIZE 0x68 // SIZE 0x68
class MxOmni : public MxCore { class MxOmni : public MxCore {
public: public:
__declspec(dllexport) static void DestroyInstance(); static void DestroyInstance();
__declspec(dllexport) static const char* GetCD(); static const char* GetCD();
__declspec(dllexport) static const char* GetHD(); static const char* GetHD();
__declspec(dllexport) static MxOmni* GetInstance(); static MxOmni* GetInstance();
__declspec(dllexport) static MxBool IsSound3D(); static MxBool IsSound3D();
__declspec(dllexport) static void SetCD(const char* p_cd); static void SetCD(const char* p_cd);
__declspec(dllexport) static void SetHD(const char* p_hd); static void SetHD(const char* p_hd);
__declspec(dllexport) static void SetSound3D(MxBool p_use3dSound); static void SetSound3D(MxBool p_use3dSound);
MxOmni(); MxOmni();
virtual ~MxOmni() override; virtual ~MxOmni() override;
@ -96,15 +96,15 @@ class MxOmni : public MxCore {
MxBool m_timerRunning; // 0x64 MxBool m_timerRunning; // 0x64
}; };
__declspec(dllexport) MxTickleManager* TickleManager(); MxTickleManager* TickleManager();
__declspec(dllexport) MxTimer* Timer(); MxTimer* Timer();
__declspec(dllexport) MxStreamer* Streamer(); MxStreamer* Streamer();
__declspec(dllexport) MxSoundManager* MSoundManager(); MxSoundManager* MSoundManager();
__declspec(dllexport) MxVariableTable* VariableTable(); MxVariableTable* VariableTable();
__declspec(dllexport) MxMusicManager* MusicManager(); MxMusicManager* MusicManager();
__declspec(dllexport) MxEventManager* EventManager(); MxEventManager* EventManager();
__declspec(dllexport) MxResult Start(MxDSAction*); MxResult Start(MxDSAction*);
__declspec(dllexport) MxNotificationManager* NotificationManager(); MxNotificationManager* NotificationManager();
MxVideoManager* MVideoManager(); MxVideoManager* MVideoManager();
MxAtomIdCounterSet* AtomIdCounterSet(); MxAtomIdCounterSet* AtomIdCounterSet();

View File

@ -21,7 +21,7 @@ class MxOmniCreateFlags {
c_createStreamer = 0x04 c_createStreamer = 0x04
}; };
__declspec(dllexport) MxOmniCreateFlags(); MxOmniCreateFlags();
inline const MxBool CreateObjectFactory() const { return this->m_flags1 & c_createObjectFactory; } inline const MxBool CreateObjectFactory() const { return this->m_flags1 & c_createObjectFactory; }
inline const MxBool CreateVariableTable() const { return this->m_flags1 & c_createVariableTable; } inline const MxBool CreateVariableTable() const { return this->m_flags1 & c_createVariableTable; }

View File

@ -11,7 +11,7 @@
// VTABLE: LEGO1 0x100dc218 // VTABLE: LEGO1 0x100dc218
class MxOmniCreateParam : public MxParam { class MxOmniCreateParam : public MxParam {
public: public:
__declspec(dllexport) MxOmniCreateParam( MxOmniCreateParam(
const char* p_mediaPath, const char* p_mediaPath,
struct HWND__* p_windowHandle, struct HWND__* p_windowHandle,
MxVideoParam& p_vparam, MxVideoParam& p_vparam,

View File

@ -10,8 +10,8 @@
// SIZE 0x414 // SIZE 0x414
class MxPalette : public MxCore { class MxPalette : public MxCore {
public: public:
__declspec(dllexport) MxBool operator==(MxPalette& p_other); MxBool operator==(MxPalette& p_other);
__declspec(dllexport) void Detach(); void Detach();
MxPalette(); MxPalette();
MxPalette(const RGBQUAD*); MxPalette(const RGBQUAD*);

View File

@ -28,14 +28,10 @@ class MxPresenter : public MxCore {
MxPresenter() { Init(); } MxPresenter() { Init(); }
#ifdef ISLE_APP
__declspec(dllexport) virtual ~MxPresenter() override; // vtable+0x00
#else
// FUNCTION: LEGO1 0x1000bf00 // FUNCTION: LEGO1 0x1000bf00
__declspec(dllexport) virtual ~MxPresenter() override{}; // vtable+0x00 virtual ~MxPresenter() override{}; // vtable+0x00
#endif
__declspec(dllexport) virtual MxResult Tickle() override; // vtable+0x08 virtual MxResult Tickle() override; // vtable+0x08
// FUNCTION: LEGO1 0x1000bfe0 // FUNCTION: LEGO1 0x1000bfe0
inline virtual const char* ClassName() const override // vtable+0xc inline virtual const char* ClassName() const override // vtable+0xc
@ -73,14 +69,10 @@ class MxPresenter : public MxCore {
virtual void Unk5Tickle() { ProgressTickleState(e_done); }; // vtable+0x28 virtual void Unk5Tickle() { ProgressTickleState(e_done); }; // vtable+0x28
protected: protected:
#ifdef ISLE_APP
__declspec(dllexport) virtual void DoneTickle(); // vtable+0x2c
#else
// FUNCTION: LEGO1 0x1000bee0 // FUNCTION: LEGO1 0x1000bee0
__declspec(dllexport) virtual void DoneTickle() { ProgressTickleState(e_idle); }; // vtable+0x2c virtual void DoneTickle() { ProgressTickleState(e_idle); }; // vtable+0x2c
#endif
__declspec(dllexport) virtual void ParseExtra(); // vtable+0x30 virtual void ParseExtra(); // vtable+0x30
inline void ProgressTickleState(TickleState p_tickleState) inline void ProgressTickleState(TickleState p_tickleState)
{ {
@ -95,8 +87,8 @@ class MxPresenter : public MxCore {
// FUNCTION: LEGO1 0x1000bf80 // FUNCTION: LEGO1 0x1000bf80
virtual void Destroy() { Init(); }; // vtable+0x38 virtual void Destroy() { Init(); }; // vtable+0x38
__declspec(dllexport) virtual MxResult StartAction(MxStreamController*, MxDSAction*); // vtable+0x3c virtual MxResult StartAction(MxStreamController*, MxDSAction*); // vtable+0x3c
__declspec(dllexport) virtual void EndAction(); // vtable+0x40 virtual void EndAction(); // vtable+0x40
// FUNCTION: LEGO1 0x1000bf90 // FUNCTION: LEGO1 0x1000bf90
virtual void SetTickleState(TickleState p_tickleState) { ProgressTickleState(p_tickleState); } // vtable+0x44 virtual void SetTickleState(TickleState p_tickleState) { ProgressTickleState(p_tickleState); } // vtable+0x44
@ -113,7 +105,7 @@ class MxPresenter : public MxCore {
// FUNCTION: LEGO1 0x1000bfd0 // FUNCTION: LEGO1 0x1000bfd0
virtual MxBool IsHit(MxS32 p_x, MxS32 p_y) { return FALSE; }; // vtable+0x50 virtual MxBool IsHit(MxS32 p_x, MxS32 p_y) { return FALSE; }; // vtable+0x50
__declspec(dllexport) virtual void Enable(MxBool p_enable); // vtable+0x54 virtual void Enable(MxBool p_enable); // vtable+0x54
MxEntity* CreateEntity(const char* p_name); MxEntity* CreateEntity(const char* p_name);
void SendToCompositePresenter(MxOmni*); void SendToCompositePresenter(MxOmni*);
@ -133,7 +125,7 @@ class MxPresenter : public MxCore {
// MxPresenter::`scalar deleting destructor' // MxPresenter::`scalar deleting destructor'
protected: protected:
__declspec(dllexport) void Init(); void Init();
TickleState m_currentTickleState; // 0x8 TickleState m_currentTickleState; // 0x8
MxU32 m_previousTickleStates; // 0x0c MxU32 m_previousTickleStates; // 0x0c

View File

@ -5,8 +5,8 @@
class MxScheduler { class MxScheduler {
public: public:
__declspec(dllexport) static MxScheduler* GetInstance(); static MxScheduler* GetInstance();
__declspec(dllexport) void StartMultiTasking(MxULong); void StartMultiTasking(MxULong);
}; };
#endif // MXSCHEDULER_H #endif // MXSCHEDULER_H

View File

@ -78,8 +78,8 @@ class MxStreamer : public MxCore {
MxStreamer(); MxStreamer();
virtual ~MxStreamer() override; // vtable+0x0 virtual ~MxStreamer() override; // vtable+0x0
__declspec(dllexport) MxStreamController* Open(const char* p_name, MxU16 p_openMode); MxStreamController* Open(const char* p_name, MxU16 p_openMode);
__declspec(dllexport) MxLong Close(const char* p_name); MxLong Close(const char* p_name);
virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4 virtual MxLong Notify(MxParam& p_param) override; // vtable+0x4

View File

@ -7,9 +7,9 @@
// SIZE 0x10 // SIZE 0x10
class MxString : public MxCore { class MxString : public MxCore {
public: public:
__declspec(dllexport) MxString(const MxString& p_str); MxString(const MxString& p_str);
__declspec(dllexport) virtual ~MxString(); virtual ~MxString();
__declspec(dllexport) const MxString& operator=(const char* p_data); const MxString& operator=(const char* p_data);
MxString(); MxString();
MxString(const char*); MxString(const char*);

View File

@ -12,7 +12,7 @@ class MxTimer : public MxCore {
void Start(); void Start();
void Stop(); void Stop();
__declspec(dllexport) MxLong GetRealTime(); MxLong GetRealTime();
inline MxLong GetTime() inline MxLong GetTime()
{ {

View File

@ -69,10 +69,10 @@ MxBool GetRectIntersection(
MxS32* p_height MxS32* p_height
); );
__declspec(dllexport) void MakeSourceName(char*, const char*); void MakeSourceName(char*, const char*);
__declspec(dllexport) void SetOmniUserMessage(void (*)(const char*, int)); void SetOmniUserMessage(void (*)(const char*, int));
void FUN_100b7220(MxDSAction* p_action, MxU32 p_newFlags, MxBool p_setFlags); void FUN_100b7220(MxDSAction* p_action, MxU32 p_newFlags, MxBool p_setFlags);
__declspec(dllexport) MxDSObject* CreateStreamObject(MxDSFile*, MxS16); MxDSObject* CreateStreamObject(MxDSFile*, MxS16);
MxBool KeyValueStringParse(char*, const char*, const char*); MxBool KeyValueStringParse(char*, const char*, const char*);

View File

@ -10,9 +10,9 @@
class MxVariableTable : public MxHashTable<MxVariable*> { class MxVariableTable : public MxHashTable<MxVariable*> {
public: public:
MxVariableTable() { m_customDestructor = Destroy; } MxVariableTable() { m_customDestructor = Destroy; }
__declspec(dllexport) void SetVariable(const char* p_key, const char* p_value); void SetVariable(const char* p_key, const char* p_value);
__declspec(dllexport) void SetVariable(MxVariable* p_var); void SetVariable(MxVariable* p_var);
__declspec(dllexport) const char* GetVariable(const char* p_key); const char* GetVariable(const char* p_key);
static void Destroy(MxVariable* p_obj) { p_obj->Destroy(); } static void Destroy(MxVariable* p_obj) { p_obj->Destroy(); }

View File

@ -30,8 +30,8 @@ class MxVideoManager : public MxMediaManager {
); // vtable+0x28 ); // vtable+0x28
virtual MxResult Create(MxVideoParam& p_videoParam, MxU32 p_frequencyMS, MxBool p_createThread); // vtable+0x2c virtual MxResult Create(MxVideoParam& p_videoParam, MxU32 p_frequencyMS, MxBool p_createThread); // vtable+0x2c
__declspec(dllexport) void InvalidateRect(MxRect32&); void InvalidateRect(MxRect32&);
__declspec(dllexport) virtual MxResult RealizePalette(MxPalette*); // vtable+0x30 virtual MxResult RealizePalette(MxPalette*); // vtable+0x30
virtual void UpdateView(MxU32 p_x, MxU32 p_y, MxU32 p_width, MxU32 p_height); // vtable+0x34 virtual void UpdateView(MxU32 p_x, MxU32 p_y, MxU32 p_width, MxU32 p_height); // vtable+0x34
MxResult Init(); MxResult Init();

View File

@ -13,13 +13,13 @@
// SIZE 0x24 // SIZE 0x24
class MxVideoParam { class MxVideoParam {
public: public:
__declspec(dllexport) MxVideoParam(); MxVideoParam();
__declspec(dllexport) MxVideoParam(MxVideoParam& p_videoParam); MxVideoParam(MxVideoParam& p_videoParam);
__declspec(dllexport) __declspec(dllexport)
MxVideoParam(MxRect32& p_rect, MxPalette* p_palette, MxULong p_backBuffers, MxVideoParamFlags& p_flags); MxVideoParam(MxRect32& p_rect, MxPalette* p_palette, MxULong p_backBuffers, MxVideoParamFlags& p_flags);
__declspec(dllexport) MxVideoParam& operator=(const MxVideoParam& p_videoParam); MxVideoParam& operator=(const MxVideoParam& p_videoParam);
__declspec(dllexport) ~MxVideoParam(); ~MxVideoParam();
__declspec(dllexport) void SetDeviceName(char* p_deviceId); void SetDeviceName(char* p_deviceId);
inline MxVideoParamFlags& Flags() { return m_flags; } inline MxVideoParamFlags& Flags() { return m_flags; }

View File

@ -7,7 +7,7 @@
class MxVideoParamFlags { class MxVideoParamFlags {
public: public:
__declspec(dllexport) MxVideoParamFlags(); MxVideoParamFlags();
inline void SetFullScreen(BOOL p_e) { m_flags1.m_bit0 = p_e; } inline void SetFullScreen(BOOL p_e) { m_flags1.m_bit0 = p_e; }
inline void SetFlipSurfaces(BOOL p_e) { m_flags1.m_bit1 = p_e; } inline void SetFlipSurfaces(BOOL p_e) { m_flags1.m_bit1 = p_e; }

View File

@ -3,11 +3,11 @@
class RealtimeView { class RealtimeView {
public: public:
__declspec(dllexport) static float GetPartsThreshold(); static float GetPartsThreshold();
__declspec(dllexport) static float GetUserMaxLOD(); static float GetUserMaxLOD();
__declspec(dllexport) static void SetPartsThreshold(float); static void SetPartsThreshold(float);
static void UpdateMaxLOD(); static void UpdateMaxLOD();
__declspec(dllexport) static void SetUserMaxLOD(float); static void SetUserMaxLOD(float);
}; };
#endif // REALTIMEVIEW_H #endif // REALTIMEVIEW_H

View File

@ -10,7 +10,7 @@ class ViewManager {
ViewManager(Tgl::Renderer* pRenderer, Tgl::Group* scene, const OrientableROI* point_of_view); ViewManager(Tgl::Renderer* pRenderer, Tgl::Group* scene, const OrientableROI* point_of_view);
virtual ~ViewManager(); virtual ~ViewManager();
__declspec(dllexport) void RemoveAll(ViewROI*); void RemoveAll(ViewROI*);
void SetPOVSource(const OrientableROI* point_of_view); void SetPOVSource(const OrientableROI* point_of_view);
void SetResolution(int width, int height); void SetResolution(int width, int height);

View File

@ -109,9 +109,9 @@ Classes should be annotated using the `SIZE` marker to indicate their size. If y
// SIZE 0x1c // SIZE 0x1c
class MxCriticalSection { class MxCriticalSection {
public: public:
__declspec(dllexport) MxCriticalSection(); MxCriticalSection();
__declspec(dllexport) ~MxCriticalSection(); ~MxCriticalSection();
__declspec(dllexport) static void SetDoMutex(); static void SetDoMutex();
``` ```
## Member variables (**WIP**) ## Member variables (**WIP**)