import all functions from lego1 exports

This declares a bunch of classes and functions for us, as well as fixes some declarations that were slightly incorrect (e.g. missing "virtual", etc)
This commit is contained in:
itsmattkc 2023-06-11 18:03:54 -07:00
parent 9520b5a7e9
commit 279d626279
27 changed files with 210 additions and 21 deletions

10
LEGO1/legobackgroundcolor.h Executable file
View file

@ -0,0 +1,10 @@
#ifndef LEGOBACKGROUNDCOLOR_H
#define LEGOBACKGROUNDCOLOR_H
class LegoBackgroundColor
{
public:
__declspec(dllexport) LegoBackgroundColor(const char *, const char *);
};
#endif // LEGOBACKGROUNDCOLOR_H

10
LEGO1/legoentity.h Executable file
View file

@ -0,0 +1,10 @@
#ifndef LEGOENTITY_H
#define LEGOENTITY_H
class LegoEntity
{
public:
__declspec(dllexport) virtual ~LegoEntity();
};
#endif // LEGOENTITY_H

3
LEGO1/legogamestate.h Normal file → Executable file
View file

@ -4,6 +4,9 @@
class LegoGameState class LegoGameState
{ {
public: public:
__declspec(dllexport) LegoGameState();
__declspec(dllexport) ~LegoGameState();
__declspec(dllexport) long Load(unsigned long);
__declspec(dllexport) long Save(unsigned long p); __declspec(dllexport) long Save(unsigned long p);
__declspec(dllexport) void SerializePlayersInfo(short p); __declspec(dllexport) void SerializePlayersInfo(short p);
__declspec(dllexport) void SerializeScoreHistory(short p); __declspec(dllexport) void SerializeScoreHistory(short p);

View file

@ -15,6 +15,8 @@ class LegoInputManager
{ {
public: public:
__declspec(dllexport) void QueueEvent(NotificationId id, unsigned char p2, long p3, long p4, unsigned char p5); __declspec(dllexport) void QueueEvent(NotificationId id, unsigned char p2, long p3, long p4, unsigned char p5);
__declspec(dllexport) void Register(MxCore *);
__declspec(dllexport) void UnRegister(MxCore *);
int m_unk00[0x400]; int m_unk00[0x400];
}; };

11
LEGO1/legonavcontroller.h Executable file
View file

@ -0,0 +1,11 @@
#ifndef LEGONAVCONTROLLER_H
#define LEGONAVCONTROLLER_H
class LegoNavController
{
public:
__declspec(dllexport) static void GetDefaults(int *,float *,float *,float *,float *,float *,float *,float *,float *,float *,unsigned char *);
__declspec(dllexport) static void SetDefaults(int,float,float,float,float,float,float,float,float,float,unsigned char);
};
#endif // LEGONAVCONTROLLER_H

View file

@ -3,6 +3,8 @@
#include "mxbackgroundaudiomanager.h" #include "mxbackgroundaudiomanager.h"
#include "mxdsaction.h" #include "mxdsaction.h"
#include "mxdsfile.h"
#include "mxdsobject.h"
#include "mxomnicreateparam.h" #include "mxomnicreateparam.h"
#include "mxresult.h" #include "mxresult.h"
#include "mxstreamer.h" #include "mxstreamer.h"
@ -11,6 +13,7 @@
#include "mxtransitionmanager.h" #include "mxtransitionmanager.h"
#include "legoanimationmanager.h" #include "legoanimationmanager.h"
#include "legobuildingmanager.h" #include "legobuildingmanager.h"
#include "legoentity.h"
#include "legogamestate.h" #include "legogamestate.h"
#include "legoinputmanager.h" #include "legoinputmanager.h"
#include "legomodelpresenter.h" #include "legomodelpresenter.h"
@ -19,14 +22,18 @@
#include "legoworldpresenter.h" #include "legoworldpresenter.h"
#include "legovideomanager.h" #include "legovideomanager.h"
class MxBackgroundAudioManager; class LegoSoundManager;
class MxEventManager;
class MxMusicManager;
class MxNotificationManager;
class MxSoundManager;
class LegoOmni class LegoOmni
{ {
public: public:
__declspec(dllexport) void CreateBackgroundAudio(); __declspec(dllexport) void CreateBackgroundAudio();
__declspec(dllexport) void RemoveWorld(const MxAtomId &p1, long p2); __declspec(dllexport) void RemoveWorld(const MxAtomId &p1, long p2);
__declspec(dllexport) static int GetCurrPathInfo(class LegoPathBoundary * *,int &);
__declspec(dllexport) static void CreateInstance(); __declspec(dllexport) static void CreateInstance();
__declspec(dllexport) static LegoOmni *GetInstance(); __declspec(dllexport) static LegoOmni *GetInstance();
@ -85,16 +92,28 @@ class LegoOmni
}; };
__declspec(dllexport) LegoOmni *Lego();
__declspec(dllexport) MxBackgroundAudioManager * BackgroundAudioManager(); __declspec(dllexport) MxBackgroundAudioManager * BackgroundAudioManager();
__declspec(dllexport) MxTickleManager *TickleManager(); __declspec(dllexport) MxDSObject * CreateStreamObject(MxDSFile *,short);
__declspec(dllexport) LegoVideoManager *VideoManager(); __declspec(dllexport) MxEventManager * EventManager();
__declspec(dllexport) MxVariableTable *VariableTable();
__declspec(dllexport) LegoGameState * GameState(); __declspec(dllexport) LegoGameState * GameState();
__declspec(dllexport) MxTimer *Timer(); __declspec(dllexport) const char * GetNoCD_SourceName();
__declspec(dllexport) MxStreamer *Streamer();
__declspec(dllexport) LegoInputManager * InputManager(); __declspec(dllexport) LegoInputManager * InputManager();
__declspec(dllexport) LegoOmni * Lego();
__declspec(dllexport) MxSoundManager * MSoundManager();
__declspec(dllexport) void MakeSourceName(char *, const char *);
__declspec(dllexport) MxMusicManager * MusicManager();
__declspec(dllexport) MxNotificationManager * NotificationManager();
__declspec(dllexport) LegoEntity * PickEntity(long,long);
__declspec(dllexport) LegoROI * PickROI(long,long);
__declspec(dllexport) void SetOmniUserMessage(void (*)(const char *,int));
__declspec(dllexport) LegoSoundManager * SoundManager();
__declspec(dllexport) long Start(MxDSAction *);
__declspec(dllexport) MxStreamer * Streamer();
__declspec(dllexport) MxTickleManager * TickleManager();
__declspec(dllexport) MxTimer * Timer();
__declspec(dllexport) MxTransitionManager * TransitionManager(); __declspec(dllexport) MxTransitionManager * TransitionManager();
__declspec(dllexport) MxVariableTable * VariableTable();
__declspec(dllexport) LegoVideoManager * VideoManager();
__declspec(dllexport) long Start(MxDSAction *a); __declspec(dllexport) long Start(MxDSAction *a);

View file

@ -4,6 +4,7 @@
class LegoROI class LegoROI
{ {
public: public:
__declspec(dllexport) void SetDisplayBB(int);
__declspec(dllexport) static void configureLegoROI(int param_1); __declspec(dllexport) static void configureLegoROI(int param_1);
}; };

11
LEGO1/legoworld.h Executable file
View file

@ -0,0 +1,11 @@
#ifndef LEGOWORLD_H
#define LEGOWORLD_H
class LegoWorld
{
public:
__declspec(dllexport) LegoWorld();
__declspec(dllexport) virtual ~LegoWorld();
};
#endif // LEGOWORLD_H

View file

@ -1,9 +1,12 @@
#ifndef MXATOMID_H #ifndef MXATOMID_H
#define MXATOMID_H #define MXATOMID_H
enum LookupMode;
class MxAtomId class MxAtomId
{ {
public: public:
__declspec(dllexport) MxAtomId(const char *, LookupMode);
__declspec(dllexport) MxAtomId &operator=(const MxAtomId &id); __declspec(dllexport) MxAtomId &operator=(const MxAtomId &id);
__declspec(dllexport) ~MxAtomId(); __declspec(dllexport) ~MxAtomId();

View file

@ -4,7 +4,10 @@
class MxBitmap class MxBitmap
{ {
public: public:
__declspec(dllexport) MxPalette *CreatePalette(); __declspec(dllexport) MxBitmap();
__declspec(dllexport) virtual ~MxBitmap();
__declspec(dllexport) virtual MxPalette *CreatePalette();
__declspec(dllexport) virtual long Read(const char *);
}; };
#endif // MXBITMAP_H #endif // MXBITMAP_H

12
LEGO1/mxcriticalsection.h Executable file
View file

@ -0,0 +1,12 @@
#ifndef MXCRITICALSECTION_H
#define MXCRITICALSECTION_H
class MxCriticalSection
{
public:
__declspec(dllexport) MxCriticalSection();
__declspec(dllexport) ~MxCriticalSection();
__declspec(dllexport) static void SetDoMutex();
};
#endif // MXCRITICALSECTION_H

View file

@ -4,7 +4,9 @@
class MxDirectDraw class MxDirectDraw
{ {
public: public:
__declspec(dllexport) int FlipToGDISurface();
__declspec(dllexport) static int GetPrimaryBitDepth(); __declspec(dllexport) static int GetPrimaryBitDepth();
__declspec(dllexport) int Pause(int);
}; };
#endif // MXDIRECTDRAW_H #endif // MXDIRECTDRAW_H

View file

@ -7,8 +7,8 @@ class MxDSAction
{ {
public: public:
__declspec(dllexport) MxDSAction(); __declspec(dllexport) MxDSAction();
__declspec(dllexport) virtual ~MxDSAction();
int m_unk00;
int m_unk04; int m_unk04;
int m_unk08; int m_unk08;
int m_unk0c; int m_unk0c;

9
LEGO1/mxdsfile.h Normal file → Executable file
View file

@ -4,7 +4,14 @@
class MxDSFile class MxDSFile
{ {
public: public:
__declspec(dllexport) long Close(); __declspec(dllexport) MxDSFile(const char *,unsigned long);
__declspec(dllexport) virtual ~MxDSFile();
__declspec(dllexport) virtual long Close();
__declspec(dllexport) virtual unsigned long GetBufferSize();
__declspec(dllexport) virtual unsigned long GetStreamBuffersNum();
__declspec(dllexport) virtual long Open(unsigned long);
__declspec(dllexport) virtual long Read(unsigned char *,unsigned long);
__declspec(dllexport) virtual long Seek(long,int);
}; };
#endif // MXDSFILE_H #endif // MXDSFILE_H

10
LEGO1/mxdsobject.h Executable file
View file

@ -0,0 +1,10 @@
#ifndef MXDSOBJECT_H
#define MXDSOBJECT_H
class MxDSObject
{
public:
__declspec(dllexport) void SetObjectName(const char *);
};
#endif // MXDSOBJECT_H

10
LEGO1/mxioinfo.h Executable file
View file

@ -0,0 +1,10 @@
#ifndef MXIOINFO_H
#define MXIOINFO_H
class MXIOINFO
{
public:
__declspec(dllexport) ~MXIOINFO();
};
#endif // MXIOINFO_H

12
LEGO1/mxomni.h Normal file → Executable file
View file

@ -4,12 +4,14 @@
class MxOmni class MxOmni
{ {
public: public:
__declspec(dllexport) static const char *GetHD();
__declspec(dllexport) static const char *GetCD();
__declspec(dllexport) static void SetHD(const char *s);
__declspec(dllexport) static void SetCD(const char *s);
__declspec(dllexport) static void SetSound3D(unsigned char param_1);
__declspec(dllexport) static void DestroyInstance(); __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 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);
}; };
#endif // MXOMNI_H #endif // MXOMNI_H

View file

@ -4,6 +4,8 @@
class MxPalette class MxPalette
{ {
public: public:
__declspec(dllexport) unsigned char operator==(MxPalette &);
__declspec(dllexport) void Detach();
}; };
#endif // MXPALETTE_H #endif // MXPALETTE_H

18
LEGO1/mxpresenter.h Executable file
View file

@ -0,0 +1,18 @@
#ifndef MXPRESENTER_H
#define MXPRESENTER_H
class MxPresenter
{
protected:
__declspec(dllexport) virtual void DoneTickle();
__declspec(dllexport) void Init();
__declspec(dllexport) virtual void ParseExtra();
public:
__declspec(dllexport) virtual ~MxPresenter();
__declspec(dllexport) virtual void Enable(unsigned char);
__declspec(dllexport) virtual void EndAction();
__declspec(dllexport) virtual long StartAction(MxStreamController *, MxDSAction *);
__declspec(dllexport) virtual long Tickle();
};
#endif // MXPRESENTER_H

11
LEGO1/mxscheduler.h Executable file
View file

@ -0,0 +1,11 @@
#ifndef MXSCHEDULER_H
#define MXSCHEDULER_H
class MxScheduler
{
public:
__declspec(dllexport) static MxScheduler *GetInstance();
__declspec(dllexport) void StartMultiTasking(unsigned long);
};
#endif // MXSCHEDULER_H

View file

@ -6,7 +6,9 @@
class MxString : public MxCore class MxString : public MxCore
{ {
public: public:
__declspec(dllexport) MxString(const MxString &);
__declspec(dllexport) virtual ~MxString(); __declspec(dllexport) virtual ~MxString();
__declspec(dllexport) const MxString &operator=(const char *);
private: private:
char *m_data; char *m_data;

View file

@ -6,7 +6,7 @@ class MxVideoPresenter;
class MxTransitionManager class MxTransitionManager
{ {
public: public:
void SetWaitIndicator(MxVideoPresenter *videoPresenter); __declspec(dllexport) void SetWaitIndicator(MxVideoPresenter *videoPresenter);
}; };
#endif // MXTRANSITIONMANAGER_H #endif // MXTRANSITIONMANAGER_H

View file

@ -1,9 +1,13 @@
#ifndef MXVARIABLETABLE_H #ifndef MXVARIABLETABLE_H
#define MXVARIABLETABLE_H #define MXVARIABLETABLE_H
class MxVariable;
class MxVariableTable class MxVariableTable
{ {
public: public:
__declspec(dllexport) const char * GetVariable(const char *key);
__declspec(dllexport) void SetVariable(MxVariable *var);
__declspec(dllexport) void SetVariable(const char *key, const char *value); __declspec(dllexport) void SetVariable(const char *key, const char *value);
}; };

11
LEGO1/mxvideomanager.h Executable file
View file

@ -0,0 +1,11 @@
#ifndef MXVIDEOMANAGER_H
#define MXVIDEOMANAGER_H
class MxVideoManager
{
public:
__declspec(dllexport) void InvalidateRect(MxRect32 &);
__declspec(dllexport) virtual long RealizePalette(MxPalette *);
};
#endif // MXVIDEOMANAGER_H

View file

@ -10,7 +10,9 @@ class MxVideoParam
{ {
public: public:
__declspec(dllexport) MxVideoParam(); __declspec(dllexport) MxVideoParam();
__declspec(dllexport) MxVideoParam(MxVideoParam &);
__declspec(dllexport) MxVideoParam(MxRect32 &rect, MxPalette *pal, unsigned long p3, MxVideoParamFlags &flags); __declspec(dllexport) MxVideoParam(MxRect32 &rect, MxPalette *pal, unsigned long p3, MxVideoParamFlags &flags);
__declspec(dllexport) MxVideoParam &operator=(const MxVideoParam &);
__declspec(dllexport) ~MxVideoParam(); __declspec(dllexport) ~MxVideoParam();
__declspec(dllexport) void SetDeviceName(char *id); __declspec(dllexport) void SetDeviceName(char *id);

13
LEGO1/realtimeview.h Executable file
View file

@ -0,0 +1,13 @@
#ifndef REALTIMEVIEW_H
#define REALTIMEVIEW_H
class RealtimeView
{
public:
__declspec(dllexport) static float GetPartsThreshold();
__declspec(dllexport) static float GetUserMaxLOD();
__declspec(dllexport) static void SetPartsThreshold(float);
__declspec(dllexport) static void SetUserMaxLOD(float);
};
#endif // REALTIMEVIEW_H

10
LEGO1/viewmanager.h Executable file
View file

@ -0,0 +1,10 @@
#ifndef VIEWMANAGER_H
#define VIEWMANAGER_H
class ViewManager
{
public:
__declspec(dllexport) void RemoveAll(ViewROI *);
};
#endif // VIEWMANAGER_H