(Discussion/Proposals) Consistency regarding annotations of header-implemented functions (#316)

* Open discussion

* Move annotations of header-implemented functions back to `.h` files

* Adjust `README.md`

* Relocate annotation

* linter

* Comment markers in headers only, rename script, update github actions

* type hint compat

* Rename github action, better argparse for linter

* Type hints, working test for byname ignore

* Move annotation

* CI rename and enable warnfail, enforce mode always on

* Two step linting

* or one step

* continue on error

* two jobs instead

* Fixes

---------

Co-authored-by: disinvite <disinvite@users.noreply.github.com>
This commit is contained in:
Christian Semmler
2023-12-12 14:27:17 -05:00
committed by GitHub
parent 4dd0d60dec
commit 3b155bfe38
73 changed files with 838 additions and 650 deletions

View File

@@ -25,10 +25,6 @@ public:
return !strcmp(name, LegoActionControlPresenter::ClassName()) || MxMediaPresenter::IsA(name);
}
// TODO: Find proper compilation unit to put this
// SYNTHETIC: LEGO1 0x1000d1d0
// LegoActionControlPresenter::`scalar deleting destructor'
virtual void ReadyTickle() override; // vtable+0x18
virtual void RepeatingTickle() override; // vtable+0x24
virtual void ParseExtra() override; // vtable+0x30
@@ -41,4 +37,7 @@ private:
undefined4 m_unk0x64; // 0x64
};
// SYNTHETIC: LEGO1 0x1000d1d0
// LegoActionControlPresenter::`scalar deleting destructor'
#endif // LEGOACTIONCONTROLPRESENTER_H

View File

@@ -7,9 +7,6 @@
DECOMP_SIZE_ASSERT(LegoEntity, 0x68)
// FUNCTION: LEGO1 0x10001090
// LegoEntity::SetWorldSpeed
// FUNCTION: LEGO1 0x1000c290
LegoEntity::~LegoEntity()
{

View File

@@ -38,14 +38,15 @@ public:
virtual void SetROI(LegoROI* p_roi, MxBool p_bool1, MxBool p_bool2); // vtable+0x24
virtual void SetWorldTransform(Vector3Impl& p_loc, Vector3Impl& p_dir, Vector3Impl& p_up); // vtable+0x28
virtual void ResetWorldTransform(MxBool p_inVehicle); // vtable+0x2c
virtual void SetWorldSpeed(MxFloat p_worldSpeed) { m_worldSpeed = p_worldSpeed; } // vtable+0x30
virtual void VTable0x34(); // vtable+0x34
virtual void VTable0x38(); // vtable+0x38
virtual void VTable0x3c(); // vtable+0x3c
virtual void VTable0x40(); // vtable+0x40
virtual void VTable0x44(); // vtable+0x44
virtual void VTable0x48(); // vtable+0x48
virtual void VTable0x4c(); // vtable+0x4c
// FUNCTION: LEGO1 0x10001090
virtual void SetWorldSpeed(MxFloat p_worldSpeed) { m_worldSpeed = p_worldSpeed; } // vtable+0x30
virtual void VTable0x34(); // vtable+0x34
virtual void VTable0x38(); // vtable+0x38
virtual void VTable0x3c(); // vtable+0x3c
virtual void VTable0x40(); // vtable+0x40
virtual void VTable0x44(); // vtable+0x44
virtual void VTable0x48(); // vtable+0x48
virtual void VTable0x4c(); // vtable+0x4c
protected:
void Init();

View File

@@ -56,27 +56,6 @@ MxResult LegoInputManager::Create(HWND p_hwnd)
return SUCCESS;
}
// TEMPLATE: LEGO1 0x1005bb80
// MxCollection<LegoEventNotificationParam>::Compare
// TEMPLATE: LEGO1 0x1005bc30
// MxCollection<LegoEventNotificationParam>::Destroy
// TEMPLATE: LEGO1 0x1005bc80
// MxList<LegoEventNotificationParam>::~MxList<LegoEventNotificationParam>
// SYNTHETIC: LEGO1 0x1005bd50
// MxCollection<LegoEventNotificationParam>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1005bdc0
// MxList<LegoEventNotificationParam>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1005beb0
// LegoEventQueue::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1005bf70
// MxQueue<LegoEventNotificationParam>::`scalar deleting destructor'
// FUNCTION: LEGO1 0x1005bfe0
void LegoInputManager::Destroy()
{
@@ -292,6 +271,3 @@ void LegoInputManager::KillTimer()
::KillTimer(omni->GetWindowHandle(), m_timer);
}
}
// TEMPLATE: LEGO1 0x1005d010
// MxListEntry<LegoEventNotificationParam>::GetValue

View File

@@ -90,4 +90,28 @@ public:
MxBool m_unk0x336;
};
// TEMPLATE: LEGO1 0x1005bb80
// MxCollection<LegoEventNotificationParam>::Compare
// TEMPLATE: LEGO1 0x1005bc30
// MxCollection<LegoEventNotificationParam>::Destroy
// TEMPLATE: LEGO1 0x1005bc80
// MxList<LegoEventNotificationParam>::~MxList<LegoEventNotificationParam>
// SYNTHETIC: LEGO1 0x1005bd50
// MxCollection<LegoEventNotificationParam>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1005bdc0
// MxList<LegoEventNotificationParam>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1005beb0
// LegoEventQueue::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1005bf70
// MxQueue<LegoEventNotificationParam>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x1005d010
// MxListEntry<LegoEventNotificationParam>::GetValue
#endif // LEGOINPUTMANAGER_H

View File

@@ -11,32 +11,8 @@ MxS8 LegoPathControllerList::Compare(LegoPathController* p_a, LegoPathController
return p_a == p_b ? 0 : p_a < p_b ? -1 : 1;
}
// TEMPLATE: LEGO1 0x1001d230
// MxCollection<LegoPathController *>::Compare
// TEMPLATE: LEGO1 0x1001d240
// MxList<LegoPathController *>::MxList<LegoPathController *>
// TEMPLATE: LEGO1 0x1001d2d0
// MxCollection<LegoPathController *>::~MxCollection<LegoPathController *>
// TEMPLATE: LEGO1 0x1001d320
// MxCollection<LegoPathController *>::Destroy
// TEMPLATE: LEGO1 0x1001d330
// MxList<LegoPathController *>::~MxList<LegoPathController *>
// FUNCTION: LEGO1 0x1001d3c0
void LegoPathControllerList::Destroy(LegoPathController* p_controller)
{
delete p_controller;
}
// SYNTHETIC: LEGO1 0x1001d490
// MxCollection<LegoPathController *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001d500
// MxList<LegoPathController *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001d5b0
// MxPtrList<LegoPathController>::`scalar deleting destructor'

View File

@@ -23,4 +23,28 @@ public:
// VTABLE: LEGO1 0x100d6398
// class MxList<LegoPathController *>
// TEMPLATE: LEGO1 0x1001d230
// MxCollection<LegoPathController *>::Compare
// TEMPLATE: LEGO1 0x1001d240
// MxList<LegoPathController *>::MxList<LegoPathController *>
// TEMPLATE: LEGO1 0x1001d2d0
// MxCollection<LegoPathController *>::~MxCollection<LegoPathController *>
// TEMPLATE: LEGO1 0x1001d320
// MxCollection<LegoPathController *>::Destroy
// TEMPLATE: LEGO1 0x1001d330
// MxList<LegoPathController *>::~MxList<LegoPathController *>
// SYNTHETIC: LEGO1 0x1001d490
// MxCollection<LegoPathController *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001d500
// MxList<LegoPathController *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001d5b0
// MxPtrList<LegoPathController>::`scalar deleting destructor'
#endif // LEGOPATHCONTROLLERLIST_H

View File

@@ -67,24 +67,6 @@ MxResult LegoWorld::SetAsCurrentWorld(MxDSObject& p_dsObject)
return SUCCESS;
}
// SYNTHETIC: LEGO1 0x1001eed0
// MxPresenterListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x1001ef40
// MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter>
// SYNTHETIC: LEGO1 0x1001ef90
// MxListCursor<MxPresenter *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001f000
// MxPtrListCursor<MxPresenter>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x1001f070
// MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *>
// FUNCTION: LEGO1 0x1001f0c0
// MxPresenterListCursor::~MxPresenterListCursor
// FUNCTION: LEGO1 0x1001f5e0
MxLong LegoWorld::Notify(MxParam& p_param)
{

View File

@@ -55,4 +55,22 @@ void FUN_10015820(MxU32 p_unk1, MxU32 p_unk2);
void FUN_10015910(MxU32 p_unk1);
void SetIsWorldActive(MxBool p_isWorldActive);
// SYNTHETIC: LEGO1 0x1001eed0
// MxPresenterListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x1001ef40
// MxPtrListCursor<MxPresenter>::~MxPtrListCursor<MxPresenter>
// SYNTHETIC: LEGO1 0x1001ef90
// MxListCursor<MxPresenter *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001f000
// MxPtrListCursor<MxPresenter>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x1001f070
// MxListCursor<MxPresenter *>::~MxListCursor<MxPresenter *>
// FUNCTION: LEGO1 0x1001f0c0
// MxPresenterListCursor::~MxPresenterListCursor
#endif // LEGOWORLD_H

View File

@@ -8,29 +8,8 @@ MxS8 LegoWorldList::Compare(LegoWorld* p_a, LegoWorld* p_b)
return p_a == p_b ? 0 : p_a < p_b ? -1 : 1;
}
// TEMPLATE: LEGO1 0x100598f0
// MxCollection<LegoWorld *>::Compare
// TEMPLATE: LEGO1 0x10059900
// MxCollection<LegoWorld *>::~MxCollection<LegoWorld *>
// TEMPLATE: LEGO1 0x10059950
// MxCollection<LegoWorld *>::Destroy
// TEMPLATE: LEGO1 0x10059960
// MxList<LegoWorld *>::~MxList<LegoWorld *>
// FUNCTION: LEGO1 0x100599f0
void LegoWorldList::Destroy(LegoWorld* p_world)
{
delete p_world;
}
// SYNTHETIC: LEGO1 0x10059ac0
// MxCollection<LegoWorld *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x10059b30
// MxList<LegoWorld *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x10059be0
// MxPtrList<LegoWorld>::`scalar deleting destructor'

View File

@@ -24,4 +24,25 @@ public:
static void Destroy(LegoWorld*);
};
// TEMPLATE: LEGO1 0x100598f0
// MxCollection<LegoWorld *>::Compare
// TEMPLATE: LEGO1 0x10059900
// MxCollection<LegoWorld *>::~MxCollection<LegoWorld *>
// TEMPLATE: LEGO1 0x10059950
// MxCollection<LegoWorld *>::Destroy
// TEMPLATE: LEGO1 0x10059960
// MxList<LegoWorld *>::~MxList<LegoWorld *>
// SYNTHETIC: LEGO1 0x10059ac0
// MxCollection<LegoWorld *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x10059b30
// MxList<LegoWorld *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x10059be0
// MxPtrList<LegoWorld>::`scalar deleting destructor'
#endif // LEGOWORLDLIST_H

View File

@@ -14,6 +14,3 @@ MxNotificationParam* MxEndActionNotificationParam::Clone()
{
return new MxEndActionNotificationParam(c_notificationEndAction, this->m_sender, this->m_action, this->m_realloc);
}
// SYNTHETIC: LEGO1 0x100513a0
// MxEndActionNotificationParam::`scalar deleting destructor'

View File

@@ -67,4 +67,7 @@ public:
virtual MxNotificationParam* Clone() override; // vtable+0x4
};
// SYNTHETIC: LEGO1 0x100513a0
// MxEndActionNotificationParam::`scalar deleting destructor'
#endif

View File

@@ -17,33 +17,12 @@ MxBool MxCompositePresenter::VTable0x64(undefined4 p_unknown)
return TRUE;
}
// TEMPLATE: LEGO1 0x1004ae90
// list<MxPresenter *,allocator<MxPresenter *> >::_Buynode
// FUNCTION: LEGO1 0x100b60b0
MxCompositePresenter::MxCompositePresenter()
{
NotificationManager()->Register(this);
}
// TEMPLATE: LEGO1 0x100b61a0
// list<MxPresenter *,allocator<MxPresenter *> >::~list<MxPresenter *,allocator<MxPresenter *> >
// FUNCTION: LEGO1 0x100b6210
// MxCompositePresenter::ClassName
// FUNCTION: LEGO1 0x100b6220
// MxCompositePresenter::IsA
// SYNTHETIC: LEGO1 0x100b62d0
// MxCompositePresenter::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100b62f0
// MxCompositePresenterList::~MxCompositePresenterList
// TEMPLATE: LEGO1 0x100b6340
// List<MxPresenter *>::~List<MxPresenter *>
// FUNCTION: LEGO1 0x100b6390
MxCompositePresenter::~MxCompositePresenter()
{

View File

@@ -15,12 +15,14 @@ public:
virtual MxLong Notify(MxParam& p) override; // vtable+0x04
// FUNCTION: LEGO1 0x100b6210
inline virtual const char* ClassName() const override // vtable+0x0c
{
// GLOBAL: LEGO1 0x100f0774
return "MxCompositePresenter";
}
// FUNCTION: LEGO1 0x100b6220
inline virtual MxBool IsA(const char* name) const override // vtable+0x10
{
return !strcmp(name, MxCompositePresenter::ClassName()) || MxPresenter::IsA(name);
@@ -40,4 +42,19 @@ private:
MxCompositePresenterList m_list; // 0x40
};
// TEMPLATE: LEGO1 0x1004ae90
// list<MxPresenter *,allocator<MxPresenter *> >::_Buynode
// TEMPLATE: LEGO1 0x100b61a0
// list<MxPresenter *,allocator<MxPresenter *> >::~list<MxPresenter *,allocator<MxPresenter *> >
// SYNTHETIC: LEGO1 0x100b62d0
// MxCompositePresenter::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100b62f0
// MxCompositePresenterList::~MxCompositePresenterList
// TEMPLATE: LEGO1 0x100b6340
// List<MxPresenter *>::~List<MxPresenter *>
#endif // MXCOMPOSITEPRESENTER_H

View File

@@ -8,13 +8,6 @@
class MxParam;
// TODO: Find proper compilation unit to put these
// FUNCTION: LEGO1 0x100140d0
// MxCore::IsA
// FUNCTION: LEGO1 0x100144c0
// MxCore::ClassName
// VTABLE: LEGO1 0x100dc0f8
// SIZE 0x8
class MxCore {
@@ -24,12 +17,14 @@ public:
__declspec(dllexport) virtual MxLong Notify(MxParam& p); // vtable+04
virtual MxResult Tickle(); // vtable+08
// FUNCTION: LEGO1 0x100144c0
inline virtual const char* ClassName() const // vtable+0c
{
// GLOBAL: LEGO1 0x100f007c
return "MxCore";
}
// FUNCTION: LEGO1 0x100140d0
inline virtual MxBool IsA(const char* name) const // vtable+10
{
return !strcmp(name, MxCore::ClassName());

View File

@@ -13,18 +13,6 @@ MxDiskStreamController::MxDiskStreamController()
m_unk8c = 0;
}
// TEMPLATE: LEGO1 0x100c7330
// list<MxDSAction *,allocator<MxDSAction *> >::_Buynode
// TEMPLATE: LEGO1 0x100c7420
// list<MxDSBuffer *,allocator<MxDSBuffer *> >::~list<MxDSBuffer *,allocator<MxDSBuffer *> >
// TEMPLATE: LEGO1 0x100c7490
// list<MxDSBuffer *,allocator<MxDSBuffer *> >::_Buynode
// TEMPLATE: LEGO1 0x100c74e0
// List<MxDSBuffer *>::~List<MxDSBuffer *>
// STUB: LEGO1 0x100c7530
MxDiskStreamController::~MxDiskStreamController()
{

View File

@@ -50,4 +50,16 @@ private:
undefined m_unkc4; // 0xc4
};
// TEMPLATE: LEGO1 0x100c7330
// list<MxDSAction *,allocator<MxDSAction *> >::_Buynode
// TEMPLATE: LEGO1 0x100c7420
// list<MxDSBuffer *,allocator<MxDSBuffer *> >::~list<MxDSBuffer *,allocator<MxDSBuffer *> >
// TEMPLATE: LEGO1 0x100c7490
// list<MxDSBuffer *,allocator<MxDSBuffer *> >::_Buynode
// TEMPLATE: LEGO1 0x100c74e0
// List<MxDSBuffer *>::~List<MxDSBuffer *>
#endif // MXDISKSTREAMCONTROLLER_H

View File

@@ -17,18 +17,3 @@ void MxDSActionList::Destroy(MxDSAction* p_action)
if (p_action)
delete p_action;
}
// TEMPLATE: LEGO1 0x100c9cc0
// MxCollection<MxDSAction *>::Compare
// TEMPLATE: LEGO1 0x100c9d20
// MxCollection<MxDSAction *>::Destroy
// TEMPLATE: LEGO1 0x100c9d30
// MxList<MxDSAction *>::~MxList<MxDSAction *>
// SYNTHETIC: LEGO1 0x100c9e30
// MxCollection<MxDSAction *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c9ea0
// MxList<MxDSAction *>::`scalar deleting destructor'

View File

@@ -35,4 +35,19 @@ public:
MxDSActionListCursor(MxDSActionList* p_list) : MxListCursor<MxDSAction*>(p_list){};
};
// TEMPLATE: LEGO1 0x100c9cc0
// MxCollection<MxDSAction *>::Compare
// TEMPLATE: LEGO1 0x100c9d20
// MxCollection<MxDSAction *>::Destroy
// TEMPLATE: LEGO1 0x100c9d30
// MxList<MxDSAction *>::~MxList<MxDSAction *>
// SYNTHETIC: LEGO1 0x100c9e30
// MxCollection<MxDSAction *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c9ea0
// MxList<MxDSAction *>::`scalar deleting destructor'
#endif // MXDSACTIONLIST_H

View File

@@ -2,19 +2,6 @@
DECOMP_SIZE_ASSERT(MxDSMultiAction, 0x9c)
// TODO: Should be moved later
// SYNTHETIC: LEGO1 0x1004ad10
// MxDSActionListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x1004ad80
// MxListCursor<MxDSAction *>::~MxListCursor<MxDSAction *>
// SYNTHETIC: LEGO1 0x1004add0
// MxListCursor<MxDSAction *>::`scalar deleting destructor'
// FUNCTION: LEGO1 0x1004ae40
// MxDSActionListCursor::~MxDSActionListCursor
// FUNCTION: LEGO1 0x100c9b90
MxDSMultiAction::MxDSMultiAction()
{

View File

@@ -43,4 +43,16 @@ protected:
MxDSActionList* m_actions; // 0x98
};
// SYNTHETIC: LEGO1 0x1004ad10
// MxDSActionListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x1004ad80
// MxListCursor<MxDSAction *>::~MxListCursor<MxDSAction *>
// SYNTHETIC: LEGO1 0x1004add0
// MxListCursor<MxDSAction *>::`scalar deleting destructor'
// FUNCTION: LEGO1 0x1004ae40
// MxDSActionListCursor::~MxDSActionListCursor
#endif // MXDSMULTIACTION_H

View File

@@ -6,10 +6,6 @@
#include "mxcore.h"
#include "mxdstypes.h"
// TODO: Find proper compilation unit to put this
// FUNCTION: LEGO1 0x10005530
// MxDSObject::SetAtomId
// VTABLE: LEGO1 0x100dc868
// SIZE 0x2c
class MxDSObject : public MxCore {
@@ -61,4 +57,10 @@ private:
MxDSObject* DeserializeDSObjectDispatch(char**, MxS16);
// FUNCTION: ISLE 0x401c40
// MxDSObject::SetAtomId
// FUNCTION: LEGO1 0x10005530
// MxDSObject::SetAtomId
#endif // MXDSOBJECT_H

View File

@@ -33,18 +33,6 @@ void MxDSSelectAction::CopyFrom(MxDSSelectAction& p_dsSelectAction)
this->m_unk0xac->Append(string);
}
// SYNTHETIC: LEGO1 0x100cbbd0
// MxStringListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100cbc40
// MxListCursor<MxString>::~MxListCursor<MxString>
// SYNTHETIC: LEGO1 0x100cbc90
// MxListCursor<MxString>::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100cbd00
// MxStringListCursor::~MxStringListCursor
// FUNCTION: LEGO1 0x100cbd50
MxDSSelectAction& MxDSSelectAction::operator=(MxDSSelectAction& p_dsSelectAction)
{
@@ -142,6 +130,3 @@ void MxDSSelectAction::Deserialize(char** p_source, MxS16 p_unk24)
*p_source += extraFlag;
}
// TEMPLATE: LEGO1 0x100cc450
// MxListEntry<MxString>::GetValue

View File

@@ -37,4 +37,19 @@ private:
MxStringList* m_unk0xac;
};
// SYNTHETIC: LEGO1 0x100cbbd0
// MxStringListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100cbc40
// MxListCursor<MxString>::~MxListCursor<MxString>
// SYNTHETIC: LEGO1 0x100cbc90
// MxListCursor<MxString>::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100cbd00
// MxStringListCursor::~MxStringListCursor
// TEMPLATE: LEGO1 0x100cc450
// MxListEntry<MxString>::GetValue
#endif // MXDSSELECTACTION_H

View File

@@ -7,15 +7,6 @@
DECOMP_SIZE_ASSERT(MxLoopingMIDIPresenter, 0x58);
// FUNCTION: LEGO1 0x100b1830
// MxLoopingMIDIPresenter::ClassName
// FUNCTION: LEGO1 0x100b1840
// MxLoopingMIDIPresenter::IsA
// SYNTHETIC: LEGO1 0x100b19c0
// MxLoopingMIDIPresenter::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100c2a80
void MxLoopingMIDIPresenter::StreamingTickle()
{

View File

@@ -7,12 +7,14 @@
// SIZE 0x58
class MxLoopingMIDIPresenter : public MxMIDIPresenter {
public:
// FUNCTION: LEGO1 0x100b1830
inline virtual const char* ClassName() const override // vtable+0xc
{
// GLOBAL: LEGO1 0x10101de0
return "MxLoopingMIDIPresenter";
}
// FUNCTION: LEGO1 0x100b1840
inline virtual MxBool IsA(const char* name) const override // vtable+0x10
{
return !strcmp(name, MxLoopingMIDIPresenter::ClassName()) || MxMIDIPresenter::IsA(name);
@@ -23,4 +25,7 @@ public:
virtual MxResult PutData() override; // vtable+0x4c
};
// SYNTHETIC: LEGO1 0x100b19c0
// MxLoopingMIDIPresenter::`scalar deleting destructor'
#endif // MXLOOPINGMIDIPRESENTER_H

View File

@@ -21,19 +21,6 @@ void MxMediaPresenter::Destroy()
Destroy(FALSE);
}
// TODO: These probably belong in another class
// SYNTHETIC: LEGO1 0x100b46e0
// MxStreamChunkListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100b4750
// MxListCursor<MxStreamChunk *>::~MxListCursor<MxStreamChunk *>
// SYNTHETIC: LEGO1 0x100b47a0
// MxListCursor<MxStreamChunk *>::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100b4810
// MxStreamChunkListCursor::~MxStreamChunkListCursor
// FUNCTION: LEGO1 0x100b54e0
void MxMediaPresenter::Init()
{

View File

@@ -49,4 +49,16 @@ protected:
MxStreamChunk* NextChunk();
};
// SYNTHETIC: LEGO1 0x100b46e0
// MxStreamChunkListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100b4750
// MxListCursor<MxStreamChunk *>::~MxListCursor<MxStreamChunk *>
// SYNTHETIC: LEGO1 0x100b47a0
// MxListCursor<MxStreamChunk *>::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100b4810
// MxStreamChunkListCursor::~MxStreamChunkListCursor
#endif // MXMEDIAPRESENTER_H

View File

@@ -10,27 +10,3 @@ MxS8 MxPresenterList::Compare(MxPresenter* p_a, MxPresenter* p_b)
{
return p_a == p_b ? 0 : p_a < p_b ? -1 : 1;
}
// TEMPLATE: LEGO1 0x1001cd20
// MxCollection<MxPresenter *>::Compare
// TEMPLATE: LEGO1 0x1001cd30
// MxCollection<MxPresenter *>::Destroy
// TEMPLATE: LEGO1 0x1001cd40
// MxList<MxPresenter *>::MxList<MxPresenter *>
// TEMPLATE: LEGO1 0x1001cdd0
// MxCollection<MxPresenter *>::~MxCollection<MxPresenter *>
// TEMPLATE: LEGO1 0x1001ce20
// MxList<MxPresenter *>::~MxList<MxPresenter *>
// SYNTHETIC: LEGO1 0x1001cf70
// MxCollection<MxPresenter *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001cfe0
// MxList<MxPresenter *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001d090
// MxPtrList<MxPresenter>::`scalar deleting destructor'

View File

@@ -33,4 +33,28 @@ public:
// VTABLE: LEGO1 0x100d6368
// class MxList<MxPresenter *>
// TEMPLATE: LEGO1 0x1001cd20
// MxCollection<MxPresenter *>::Compare
// TEMPLATE: LEGO1 0x1001cd30
// MxCollection<MxPresenter *>::Destroy
// TEMPLATE: LEGO1 0x1001cd40
// MxList<MxPresenter *>::MxList<MxPresenter *>
// TEMPLATE: LEGO1 0x1001cdd0
// MxCollection<MxPresenter *>::~MxCollection<MxPresenter *>
// TEMPLATE: LEGO1 0x1001ce20
// MxList<MxPresenter *>::~MxList<MxPresenter *>
// SYNTHETIC: LEGO1 0x1001cf70
// MxCollection<MxPresenter *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001cfe0
// MxList<MxPresenter *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x1001d090
// MxPtrList<MxPresenter>::`scalar deleting destructor'
#endif // MXPRESENTERLIST_H

View File

@@ -86,24 +86,6 @@ void MxRegion::vtable18(MxRect32& p_rect)
m_rect.UpdateBounds(p_rect);
}
// SYNTHETIC: LEGO1 0x100c3be0
// MxRegionListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c3c50
// MxPtrListCursor<MxRegionTopBottom>::~MxPtrListCursor<MxRegionTopBottom>
// SYNTHETIC: LEGO1 0x100c3ca0
// MxListCursor<MxRegionTopBottom *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c3d10
// MxPtrListCursor<MxRegionTopBottom>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c3d80
// MxListCursor<MxRegionTopBottom *>::~MxListCursor<MxRegionTopBottom *>
// FUNCTION: LEGO1 0x100c3dd0
// MxRegionListCursor::~MxRegionListCursor
// FUNCTION: LEGO1 0x100c3e20
MxBool MxRegion::vtable1c(MxRect32& p_rect)
{
@@ -123,21 +105,6 @@ MxBool MxRegion::vtable1c(MxRect32& p_rect)
return FALSE;
}
// SYNTHETIC: LEGO1 0x100c4790
// MxRegionLeftRightListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c4800
// MxPtrListCursor<MxRegionLeftRight>::~MxPtrListCursor<MxRegionLeftRight>
// SYNTHETIC: LEGO1 0x100c4850
// MxListCursor<MxRegionLeftRight *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c48c0
// MxPtrListCursor<MxRegionLeftRight>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c4930
// MxListCursor<MxRegionLeftRight *>::~MxListCursor<MxRegionLeftRight *>
// FUNCTION: LEGO1 0x100c4c90
MxRegionTopBottom::MxRegionTopBottom(MxS32 p_top, MxS32 p_bottom)
{
@@ -200,15 +167,6 @@ void MxRegionTopBottom::FUN_100c5280(MxS32 p_left, MxS32 p_right)
}
}
// TEMPLATE: LEGO1 0x100c54f0
// MxListCursor<MxRegionLeftRight *>::MxListCursor<MxRegionLeftRight *>
// FUNCTION: LEGO1 0x100c5560
// MxRegionLeftRightListCursor::~MxRegionLeftRightListCursor
// TEMPLATE: LEGO1 0x100c55b0
// MxListCursor<MxRegionLeftRight *>::operator=
// FUNCTION: LEGO1 0x100c55d0
MxRegionTopBottom* MxRegionTopBottom::Clone()
{

View File

@@ -2,12 +2,6 @@
#include "mxregion.h"
// TEMPLATE: LEGO1 0x100c32e0
// MxCollection<MxRegionTopBottom *>::Compare
// TEMPLATE: LEGO1 0x100c3340
// MxCollection<MxRegionTopBottom *>::Destroy
// FUNCTION: LEGO1 0x100c33e0
void MxRegionList::Destroy(MxRegionTopBottom* p_topBottom)
{
@@ -18,47 +12,8 @@ void MxRegionList::Destroy(MxRegionTopBottom* p_topBottom)
}
}
// SYNTHETIC: LEGO1 0x100c34d0
// MxCollection<MxRegionTopBottom *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c3540
// MxList<MxRegionTopBottom *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c35f0
// MxPtrList<MxRegionTopBottom>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c4d80
// MxCollection<MxRegionLeftRight *>::Compare
// TEMPLATE: LEGO1 0x100c4de0
// MxCollection<MxRegionLeftRight *>::Destroy
// FUNCTION: LEGO1 0x100c4e80
void MxRegionLeftRightList::Destroy(MxRegionLeftRight* p_leftRight)
{
delete p_leftRight;
}
// SYNTHETIC: LEGO1 0x100c4f50
// MxCollection<MxRegionLeftRight *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c4fc0
// MxList<MxRegionLeftRight *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c5070
// MxPtrList<MxRegionLeftRight>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c54f0
// MxListCursor<MxRegionLeftRight *>::MxListCursor<MxRegionLeftRight *>
// TEMPLATE: LEGO1 0x100c58c0
// MxList<MxRegionLeftRight *>::_InsertEntry
// TEMPLATE: LEGO1 0x100c5970
// MxList<MxRegionTopBottom *>::_InsertEntry
// TEMPLATE: LEGO1 0x100c5a20
// MxListEntry<MxRegionTopBottom *>::MxListEntry<MxRegionTopBottom *>
// TEMPLATE: LEGO1 0x100c5a40
// MxList<MxRegionLeftRight *>::_DeleteEntry

View File

@@ -68,4 +68,88 @@ public:
MxRegionLeftRightListCursor(MxRegionLeftRightList* p_list) : MxPtrListCursor<MxRegionLeftRight>(p_list){};
};
// TEMPLATE: LEGO1 0x100c32e0
// MxCollection<MxRegionTopBottom *>::Compare
// TEMPLATE: LEGO1 0x100c3340
// MxCollection<MxRegionTopBottom *>::Destroy
// SYNTHETIC: LEGO1 0x100c34d0
// MxCollection<MxRegionTopBottom *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c3540
// MxList<MxRegionTopBottom *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c35f0
// MxPtrList<MxRegionTopBottom>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c3be0
// MxRegionListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c3c50
// MxPtrListCursor<MxRegionTopBottom>::~MxPtrListCursor<MxRegionTopBottom>
// SYNTHETIC: LEGO1 0x100c3ca0
// MxListCursor<MxRegionTopBottom *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c3d10
// MxPtrListCursor<MxRegionTopBottom>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c3d80
// MxListCursor<MxRegionTopBottom *>::~MxListCursor<MxRegionTopBottom *>
// FUNCTION: LEGO1 0x100c3dd0
// MxRegionListCursor::~MxRegionListCursor
// SYNTHETIC: LEGO1 0x100c4790
// MxRegionLeftRightListCursor::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c4800
// MxPtrListCursor<MxRegionLeftRight>::~MxPtrListCursor<MxRegionLeftRight>
// SYNTHETIC: LEGO1 0x100c4850
// MxListCursor<MxRegionLeftRight *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c48c0
// MxPtrListCursor<MxRegionLeftRight>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c4930
// MxListCursor<MxRegionLeftRight *>::~MxListCursor<MxRegionLeftRight *>
// TEMPLATE: LEGO1 0x100c4d80
// MxCollection<MxRegionLeftRight *>::Compare
// TEMPLATE: LEGO1 0x100c4de0
// MxCollection<MxRegionLeftRight *>::Destroy
// SYNTHETIC: LEGO1 0x100c4f50
// MxCollection<MxRegionLeftRight *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c4fc0
// MxList<MxRegionLeftRight *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100c5070
// MxPtrList<MxRegionLeftRight>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100c54f0
// MxListCursor<MxRegionLeftRight *>::MxListCursor<MxRegionLeftRight *>
// FUNCTION: LEGO1 0x100c5560
// MxRegionLeftRightListCursor::~MxRegionLeftRightListCursor
// TEMPLATE: LEGO1 0x100c55b0
// MxListCursor<MxRegionLeftRight *>::operator=
// TEMPLATE: LEGO1 0x100c58c0
// MxList<MxRegionLeftRight *>::_InsertEntry
// TEMPLATE: LEGO1 0x100c5970
// MxList<MxRegionTopBottom *>::_InsertEntry
// TEMPLATE: LEGO1 0x100c5a20
// MxListEntry<MxRegionTopBottom *>::MxListEntry<MxRegionTopBottom *>
// TEMPLATE: LEGO1 0x100c5a40
// MxList<MxRegionLeftRight *>::_DeleteEntry
#endif // MXREGIONLIST_H

View File

@@ -15,9 +15,6 @@ MxSoundManager::MxSoundManager()
Init();
}
// SYNTHETIC: LEGO1 0x100ae7b0
// MxSoundManager::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100ae7d0
MxSoundManager::~MxSoundManager()
{

View File

@@ -34,4 +34,7 @@ private:
undefined m_unk38[4];
};
// SYNTHETIC: LEGO1 0x100ae7b0
// MxSoundManager::`scalar deleting destructor'
#endif // MXSOUNDMANAGER_H

View File

@@ -13,24 +13,12 @@ DECOMP_SIZE_ASSERT(MxStillPresenter, 0x6c);
// GLOBAL: LEGO1 0x10101eb0
const char* g_strBMP_ISMAP = "BMP_ISMAP";
// FUNCTION: LEGO1 0x10043550
// MxStillPresenter::~MxStillPresenter
// FUNCTION: LEGO1 0x100435b0
void MxStillPresenter::Destroy()
{
Destroy(FALSE);
}
// FUNCTION: LEGO1 0x100435c0
// MxStillPresenter::ClassName
// FUNCTION: LEGO1 0x100435d0
// MxStillPresenter::IsA
// SYNTHETIC: LEGO1 0x100436e0
// MxStillPresenter::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100b9c70
void MxStillPresenter::Destroy(MxBool p_fromDestructor)
{

View File

@@ -9,14 +9,17 @@
class MxStillPresenter : public MxVideoPresenter {
public:
MxStillPresenter() { m_bitmapInfo = NULL; }
// FUNCTION: LEGO1 0x10043550
virtual ~MxStillPresenter() override { Destroy(TRUE); }; // vtable+0x00
// FUNCTION: LEGO1 0x100435c0
inline virtual const char* ClassName() const override // vtable+0xc
{
// GLOBAL: LEGO1 0x100f0184
return "MxStillPresenter";
}
// FUNCTION: LEGO1 0x100435d0
inline virtual MxBool IsA(const char* name) const override // vtable+0x10
{
return !strcmp(name, MxStillPresenter::ClassName()) || MxVideoPresenter::IsA(name);
@@ -43,4 +46,7 @@ private:
MxBITMAPINFO* m_bitmapInfo; // 0x68
};
// SYNTHETIC: LEGO1 0x100436e0
// MxStillPresenter::`scalar deleting destructor'
#endif // MXSTILLPRESENTER_H

View File

@@ -17,18 +17,3 @@ void MxStreamChunkList::Destroy(MxStreamChunk* p_chunk)
if (p_chunk)
delete p_chunk;
}
// TEMPLATE: LEGO1 0x100b5930
// MxCollection<MxStreamChunk *>::Compare
// TEMPLATE: LEGO1 0x100b5990
// MxCollection<MxStreamChunk *>::Destroy
// TEMPLATE: LEGO1 0x100b59a0
// MxList<MxStreamChunk *>::~MxList<MxStreamChunk *>
// SYNTHETIC: LEGO1 0x100b5aa0
// MxCollection<MxStreamChunk *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100b5b10
// MxList<MxStreamChunk *>::`scalar deleting destructor'

View File

@@ -32,4 +32,19 @@ public:
// VTABLE: LEGO1 0x100dc528
// class MxListCursor<MxStreamChunk *>
// TEMPLATE: LEGO1 0x100b5930
// MxCollection<MxStreamChunk *>::Compare
// TEMPLATE: LEGO1 0x100b5990
// MxCollection<MxStreamChunk *>::Destroy
// TEMPLATE: LEGO1 0x100b59a0
// MxList<MxStreamChunk *>::~MxList<MxStreamChunk *>
// SYNTHETIC: LEGO1 0x100b5aa0
// MxCollection<MxStreamChunk *>::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100b5b10
// MxList<MxStreamChunk *>::`scalar deleting destructor'
#endif // MXSTREAMCHUNKLIST_H

View File

@@ -34,50 +34,6 @@ MxStreamController::MxStreamController()
m_action0x60 = NULL;
}
// TEMPLATE: LEGO1 0x100c0d60
// list<MxDSAction *,allocator<MxDSAction *> >::~list<MxDSAction *,allocator<MxDSAction *> >
// TEMPLATE: LEGO1 0x100c0dd0
// list<MxDSSubscriber *,allocator<MxDSSubscriber *> >::~list<MxDSSubscriber *,allocator<MxDSSubscriber *> >
// TEMPLATE: LEGO1 0x100c0e40
// list<MxDSSubscriber *,allocator<MxDSSubscriber *> >::_Buynode
// clang-format off
// TEMPLATE: LEGO1 0x100c0e70
// list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >::~list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >
// clang-format on
// TEMPLATE: LEGO1 0x100c0ee0
// list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >::_Buynode
// FUNCTION: LEGO1 0x100c0fc0
// MxStreamListMxDSSubscriber::~MxStreamListMxDSSubscriber
// FUNCTION: LEGO1 0x100c1010
// MxStreamListMxDSAction::~MxStreamListMxDSAction
// FUNCTION: LEGO1 0x100c1060
// MxStreamListMxNextActionDataStart::~MxStreamListMxNextActionDataStart
// TEMPLATE: LEGO1 0x100c10b0
// MxStreamList<MxDSSubscriber *>::~MxStreamList<MxDSSubscriber *>
// TEMPLATE: LEGO1 0x100c1100
// MxStreamList<MxDSAction *>::~MxStreamList<MxDSAction *>
// TEMPLATE: LEGO1 0x100c1150
// MxStreamList<MxNextActionDataStart *>::~MxStreamList<MxNextActionDataStart *>
// TEMPLATE: LEGO1 0x100c11a0
// List<MxDSSubscriber *>::~List<MxDSSubscriber *>
// TEMPLATE: LEGO1 0x100c11f0
// List<MxDSAction *>::~List<MxDSAction *>
// TEMPLATE: LEGO1 0x100c1240
// List<MxNextActionDataStart *>::~List<MxNextActionDataStart *>
// STUB: LEGO1 0x100c1290
MxStreamController::~MxStreamController()
{

View File

@@ -60,4 +60,48 @@ protected:
MxDSAction* m_action0x60; // 0x60
};
// TEMPLATE: LEGO1 0x100c0d60
// list<MxDSAction *,allocator<MxDSAction *> >::~list<MxDSAction *,allocator<MxDSAction *> >
// TEMPLATE: LEGO1 0x100c0dd0
// list<MxDSSubscriber *,allocator<MxDSSubscriber *> >::~list<MxDSSubscriber *,allocator<MxDSSubscriber *> >
// TEMPLATE: LEGO1 0x100c0e40
// list<MxDSSubscriber *,allocator<MxDSSubscriber *> >::_Buynode
// clang-format off
// TEMPLATE: LEGO1 0x100c0e70
// list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >::~list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >
// clang-format on
// TEMPLATE: LEGO1 0x100c0ee0
// list<MxNextActionDataStart *,allocator<MxNextActionDataStart *> >::_Buynode
// FUNCTION: LEGO1 0x100c0fc0
// MxStreamListMxDSSubscriber::~MxStreamListMxDSSubscriber
// FUNCTION: LEGO1 0x100c1010
// MxStreamListMxDSAction::~MxStreamListMxDSAction
// FUNCTION: LEGO1 0x100c1060
// MxStreamListMxNextActionDataStart::~MxStreamListMxNextActionDataStart
// TEMPLATE: LEGO1 0x100c10b0
// MxStreamList<MxDSSubscriber *>::~MxStreamList<MxDSSubscriber *>
// TEMPLATE: LEGO1 0x100c1100
// MxStreamList<MxDSAction *>::~MxStreamList<MxDSAction *>
// TEMPLATE: LEGO1 0x100c1150
// MxStreamList<MxNextActionDataStart *>::~MxStreamList<MxNextActionDataStart *>
// TEMPLATE: LEGO1 0x100c11a0
// List<MxDSSubscriber *>::~List<MxDSSubscriber *>
// TEMPLATE: LEGO1 0x100c11f0
// List<MxDSAction *>::~List<MxDSAction *>
// TEMPLATE: LEGO1 0x100c1240
// List<MxNextActionDataStart *>::~List<MxNextActionDataStart *>
#endif // MXSTREAMCONTROLLER_H

View File

@@ -3,24 +3,3 @@
#include "decomp.h"
DECOMP_SIZE_ASSERT(MxListEntry<MxString>, 0x18)
// TEMPLATE: LEGO1 0x100cb3c0
// MxCollection<MxString>::Compare
// TEMPLATE: LEGO1 0x100cb470
// MxCollection<MxString>::Destroy
// TEMPLATE: LEGO1 0x100cb4c0
// MxList<MxString>::~MxList<MxString>
// TEMPLATE: LEGO1 0x100cbb40
// MxList<MxString>::Append
// TEMPLATE: LEGO1 0x100cc2d0
// MxList<MxString>::_InsertEntry
// TEMPLATE: LEGO1 0x100cc3c0
// MxListEntry<MxString>::MxListEntry<MxString>
// TEMPLATE: LEGO1 0x100cc450
// MxListEntry<MxString>::GetValue

View File

@@ -17,4 +17,25 @@ public:
// VTABLE: LEGO1 0x100dd070
// class MxListCursor<MxString>
// TEMPLATE: LEGO1 0x100cb3c0
// MxCollection<MxString>::Compare
// TEMPLATE: LEGO1 0x100cb470
// MxCollection<MxString>::Destroy
// TEMPLATE: LEGO1 0x100cb4c0
// MxList<MxString>::~MxList<MxString>
// TEMPLATE: LEGO1 0x100cbb40
// MxList<MxString>::Append
// TEMPLATE: LEGO1 0x100cc2d0
// MxList<MxString>::_InsertEntry
// TEMPLATE: LEGO1 0x100cc3c0
// MxListEntry<MxString>::MxListEntry<MxString>
// TEMPLATE: LEGO1 0x100cc450
// MxListEntry<MxString>::GetValue
#endif // MXSTRINGLIST_H

View File

@@ -1,29 +1,5 @@
#include "mxvariabletable.h"
// TEMPLATE: LEGO1 0x100afcd0
// MxCollection<MxVariable *>::Compare
// TEMPLATE: LEGO1 0x100afce0
// MxCollection<MxVariable *>::~MxCollection<MxVariable *>
// TEMPLATE: LEGO1 0x100afd30
// MxCollection<MxVariable *>::Destroy
// SYNTHETIC: LEGO1 0x100afd40
// MxCollection<MxVariable *>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100afdb0
// MxVariableTable::Destroy
// TEMPLATE: LEGO1 0x100afdc0
// MxHashTable<MxVariable *>::Hash
// TEMPLATE: LEGO1 0x100b0bd0
// MxHashTable<MxVariable *>::~MxHashTable<MxVariable *>
// SYNTHETIC: LEGO1 0x100b0ca0
// MxHashTable<MxVariable *>::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100b7330
MxS8 MxVariableTable::Compare(MxVariable* p_var0, MxVariable* p_var1)
{
@@ -88,9 +64,3 @@ const char* MxVariableTable::GetVariable(const char* p_key)
return value;
}
// TEMPLATE: LEGO1 0x100b7ab0
// MxHashTable<MxVariable *>::Resize
// TEMPLATE: LEGO1 0x100b7b80
// MxHashTable<MxVariable *>::_NodeInsert

View File

@@ -26,4 +26,34 @@ public:
// VTABLE: LEGO1 0x100dc1e8
// class MxHashTable<MxVariable *>
// TEMPLATE: LEGO1 0x100afcd0
// MxCollection<MxVariable *>::Compare
// TEMPLATE: LEGO1 0x100afce0
// MxCollection<MxVariable *>::~MxCollection<MxVariable *>
// TEMPLATE: LEGO1 0x100afd30
// MxCollection<MxVariable *>::Destroy
// SYNTHETIC: LEGO1 0x100afd40
// MxCollection<MxVariable *>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100afdb0
// MxVariableTable::Destroy
// TEMPLATE: LEGO1 0x100afdc0
// MxHashTable<MxVariable *>::Hash
// TEMPLATE: LEGO1 0x100b0bd0
// MxHashTable<MxVariable *>::~MxHashTable<MxVariable *>
// SYNTHETIC: LEGO1 0x100b0ca0
// MxHashTable<MxVariable *>::`scalar deleting destructor'
// TEMPLATE: LEGO1 0x100b7ab0
// MxHashTable<MxVariable *>::Resize
// TEMPLATE: LEGO1 0x100b7b80
// MxHashTable<MxVariable *>::_NodeInsert
#endif // MXVARIABLETABLE_H

View File

@@ -60,9 +60,6 @@ float Vector2Impl::DotImpl(float* p_a, float* p_b) const
return p_b[0] * p_a[0] + p_b[1] * p_a[1];
}
// FUNCTION: LEGO1 0x10002060
// Vector2Impl::SetData
// FUNCTION: LEGO1 0x10002070
void Vector2Impl::EqualsImpl(float* p_data)
{

View File

@@ -3,10 +3,6 @@
#include <vec.h>
// TODO: Find proper compilation unit to put this
// FUNCTION: LEGO1 0x1000c0f0
// Vector2Impl::Vector2Impl
/*
* A simple array of three floats that can be indexed into.
*/
@@ -64,6 +60,7 @@ public:
// SIZE 0x8
class Vector2Impl {
public:
// FUNCTION: LEGO1 0x1000c0f0
inline Vector2Impl(float* p_data) { this->SetData(p_data); }
// vtable + 0x00 (no virtual destructor)
@@ -76,6 +73,7 @@ public:
virtual void MullVectorImpl(float* p_value) = 0;
virtual void DivScalarImpl(float* p_value) = 0;
virtual float DotImpl(float* p_a, float* p_b) const = 0;
// FUNCTION: LEGO1 0x10002060
virtual void SetData(float* p_data) { this->m_data = p_data; }
// vtable + 0x20

View File

@@ -5,9 +5,6 @@ using namespace TglImpl;
DECOMP_SIZE_ASSERT(Camera, 0x4);
DECOMP_SIZE_ASSERT(CameraImpl, 0x8);
// SYNTHETIC: LEGO1 0x100a2560
// TglImpl::CameraImpl::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100a36f0
void* CameraImpl::ImplementationDataPtr()
{

View File

@@ -4,9 +4,6 @@
using namespace TglImpl;
// SYNTHETIC: LEGO1 0x100a22c0
// TglImpl::DeviceImpl::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100a2bf0
void* DeviceImpl::ImplementationDataPtr()
{

View File

@@ -2,9 +2,6 @@
using namespace TglImpl;
// SYNTHETIC: LEGO1 0x100a2480
// TglImpl::GroupImpl::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100a31d0
void* GroupImpl::ImplementationDataPtr()
{
@@ -109,13 +106,13 @@ Result GroupImpl::Remove(const Mesh* pMesh)
return ResultVal(m_data->DeleteVisual(pMeshImpl->ImplementationData()->groupMesh));
}
// FUNCTION: LEGO1 0x100a34b0 STUB
// STUB: LEGO1 0x100a34b0
Result GroupImpl::RemoveAll()
{
return Error;
}
// FUNCTION: LEGO1 0x100a34c0 STUB
// STUB: LEGO1 0x100a34c0
Result GroupImpl::Unknown()
{
return Error;

View File

@@ -464,4 +464,31 @@ inline D3DRMMATRIX4D* Translate(const FloatMatrix4& tglMatrix4x4, D3DRMMATRIX4D&
return &rD3DRMMatrix4x4;
}
// SYNTHETIC: LEGO1 0x100a16d0
// TglImpl::RendererImpl::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100a22c0
// TglImpl::DeviceImpl::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100a23a0
// TglImpl::ViewImpl::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100a2480
// TglImpl::GroupImpl::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100a2560
// TglImpl::CameraImpl::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100a2640
// TglImpl::LightImpl::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100a2720
// TglImpl::UnkImpl::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100a2800
// TglImpl::TextureImpl::`scalar deleting destructor'
// SYNTHETIC: LEGO1 0x100a3d80
// TglImpl::MeshImpl::`scalar deleting destructor'
} /* namespace TglImpl */

View File

@@ -5,9 +5,6 @@ using namespace TglImpl;
DECOMP_SIZE_ASSERT(Light, 0x4);
DECOMP_SIZE_ASSERT(LightImpl, 0x8);
// SYNTHETIC: LEGO1 0x100a2640
// TglImpl::LightImpl::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100a3770
void* LightImpl::ImplementationDataPtr()
{

View File

@@ -7,9 +7,6 @@ DECOMP_SIZE_ASSERT(D3DRMVERTEX, 0x24);
DECOMP_SIZE_ASSERT(Mesh, 0x4);
DECOMP_SIZE_ASSERT(MeshImpl, 0x8);
// SYNTHETIC: LEGO1 0x100a3d80
// TglImpl::MeshImpl::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100a3ed0
void* MeshImpl::ImplementationDataPtr()
{

View File

@@ -13,9 +13,6 @@ Renderer* Tgl::CreateRenderer()
return renderer;
}
// SYNTHETIC: LEGO1 0x100a16d0
// TglImpl::RendererImpl::`scalar deleting destructor'
// GLOBAL: LEGO1 0x1010103c
IDirect3DRM* g_pD3DRM = NULL;

View File

@@ -86,7 +86,7 @@ void TglD3DRMIMAGE::Destroy()
delete m_image.palette;
}
// FUNCTION: LEGO1 0x100a13e0 STUB
// STUB: LEGO1 0x100a13e0
Result TglD3DRMIMAGE::CreateBuffer(int width, int height, int depth, void* pBuffer, int useBuffer)
{
return Error;
@@ -126,9 +126,6 @@ Result TglD3DRMIMAGE::InitializePalette(int paletteSize, PaletteEntry* pEntries)
return Success;
}
// SYNTHETIC: LEGO1 0x100a2800
// TglImpl::TextureImpl::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100a3c10
Result TextureImpl::SetTexels(int width, int height, int bitsPerTexel, void* pTexels)
{

View File

@@ -5,16 +5,13 @@ using namespace TglImpl;
DECOMP_SIZE_ASSERT(Unk, 0x4);
DECOMP_SIZE_ASSERT(UnkImpl, 0x8);
// SYNTHETIC: LEGO1 0x100a2720
// TglImpl::UnkImpl::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100a3830
void* UnkImpl::ImplementationDataPtr()
{
return reinterpret_cast<void*>(&m_data);
}
// FUNCTION: LEGO1 0x100a3840 STUB
// STUB: LEGO1 0x100a3840
Result UnkImpl::SetMeshData(
unsigned long faceCount,
unsigned long vertexCount,

View File

@@ -119,9 +119,6 @@ inline IDirect3DRMFrame* ViewportGetLightFrame(IDirect3DRMViewport* pViewport)
return ViewportGetData(pViewport)->m_pLightFrame;
}
// SYNTHETIC: LEGO1 0x100a23a0
// TglImpl::ViewImpl::`scalar deleting destructor'
// FUNCTION: LEGO1 0x100a2d80
void* ViewImpl::ImplementationDataPtr()
{

View File

@@ -34,8 +34,6 @@ void ViewROI::UpdateWorldData(const Matrix4Data& parent2world)
}
}
// SYNTHETIC: LEGO1 0x100aa250
// ViewROI::`scalar deleting destructor'
inline ViewROI::~ViewROI()
{
// SetLODList() will decrease refCount of LODList

View File

@@ -44,4 +44,7 @@ protected:
void UpdateWorldData(const Matrix4Data& parent2world);
};
// SYNTHETIC: LEGO1 0x100aa250
// ViewROI::`scalar deleting destructor'
#endif // VIEWROI_H