mirror of
https://github.com/isledecomp/isle-portable.git
synced 2025-05-05 18:53:38 -04:00
implement LegoInputManager register and unregister (#496)
* implement LegoInputManager::Create * Fixes * Add annotation * Add size assert * push changes * Add size assert * Order annotations --------- Co-authored-by: Christian Semmler <mail@csemmler.com>
This commit is contained in:
parent
159e27baba
commit
d4cb8677b8
2 changed files with 46 additions and 6 deletions
LEGO1/lego/legoomni
|
@ -48,6 +48,19 @@ public:
|
||||||
LegoNotifyList(MxBool p_ownership = FALSE) : MxPtrList<MxCore>(p_ownership) {}
|
LegoNotifyList(MxBool p_ownership = FALSE) : MxPtrList<MxCore>(p_ownership) {}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// VTABLE: LEGO1 0x100d6ac0
|
||||||
|
// class MxListCursor<MxCore *>
|
||||||
|
|
||||||
|
// VTABLE: LEGO1 0x100d6ad8
|
||||||
|
// class MxPtrListCursor<MxCore>
|
||||||
|
|
||||||
|
// VTABLE: LEGO1 0x100d6aa8
|
||||||
|
// SIZE 0x10
|
||||||
|
class LegoNotifyListCursor : public MxPtrListCursor<MxCore> {
|
||||||
|
public:
|
||||||
|
LegoNotifyListCursor(LegoNotifyList* p_list) : MxPtrListCursor<MxCore>(p_list) {}
|
||||||
|
};
|
||||||
|
|
||||||
// VTABLE: LEGO1 0x100d8760
|
// VTABLE: LEGO1 0x100d8760
|
||||||
// SIZE 0x338
|
// SIZE 0x338
|
||||||
class LegoInputManager : public MxPresenter {
|
class LegoInputManager : public MxPresenter {
|
||||||
|
@ -157,6 +170,24 @@ private:
|
||||||
// SYNTHETIC: LEGO1 0x10028b30
|
// SYNTHETIC: LEGO1 0x10028b30
|
||||||
// MxPtrList<MxCore>::`scalar deleting destructor'
|
// MxPtrList<MxCore>::`scalar deleting destructor'
|
||||||
|
|
||||||
|
// SYNTHETIC: LEGO1 0x10028fd0
|
||||||
|
// LegoNotifyListCursor::`scalar deleting destructor'
|
||||||
|
|
||||||
|
// TEMPLATE: LEGO1 0x10029040
|
||||||
|
// MxPtrListCursor<MxCore>::~MxPtrListCursor<MxCore>
|
||||||
|
|
||||||
|
// SYNTHETIC: LEGO1 0x10029090
|
||||||
|
// MxListCursor<MxCore *>::`scalar deleting destructor'
|
||||||
|
|
||||||
|
// SYNTHETIC: LEGO1 0x10029100
|
||||||
|
// MxPtrListCursor<MxCore>::`scalar deleting destructor'
|
||||||
|
|
||||||
|
// TEMPLATE: LEGO1 0x10029170
|
||||||
|
// MxListCursor<MxCore *>::~MxListCursor<MxCore *>
|
||||||
|
|
||||||
|
// TEMPLATE: LEGO1 0x100291c0
|
||||||
|
// LegoNotifyListCursor::~LegoNotifyListCursor
|
||||||
|
|
||||||
// TEMPLATE: LEGO1 0x1005bb80
|
// TEMPLATE: LEGO1 0x1005bb80
|
||||||
// MxCollection<LegoEventNotificationParam>::Compare
|
// MxCollection<LegoEventNotificationParam>::Compare
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,7 @@
|
||||||
|
|
||||||
DECOMP_SIZE_ASSERT(LegoInputManager, 0x338)
|
DECOMP_SIZE_ASSERT(LegoInputManager, 0x338)
|
||||||
DECOMP_SIZE_ASSERT(LegoNotifyList, 0x18)
|
DECOMP_SIZE_ASSERT(LegoNotifyList, 0x18)
|
||||||
|
DECOMP_SIZE_ASSERT(LegoNotifyListCursor, 0x10)
|
||||||
DECOMP_SIZE_ASSERT(LegoEventQueue, 0x18)
|
DECOMP_SIZE_ASSERT(LegoEventQueue, 0x18)
|
||||||
|
|
||||||
// GLOBAL: LEGO1 0x100f31b0
|
// GLOBAL: LEGO1 0x100f31b0
|
||||||
|
@ -211,16 +212,24 @@ MxResult LegoInputManager::GetJoystickState(
|
||||||
return FAILURE;
|
return FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
// STUB: LEGO1 0x1005c470
|
// FUNCTION: LEGO1 0x1005c470
|
||||||
void LegoInputManager::Register(MxCore*)
|
void LegoInputManager::Register(MxCore* p_notify)
|
||||||
{
|
{
|
||||||
// TODO
|
MxAutoLocker lock(&m_criticalSection);
|
||||||
|
|
||||||
|
LegoNotifyListCursor cursor(m_keyboardNotifyList);
|
||||||
|
if (!cursor.Find(p_notify))
|
||||||
|
m_keyboardNotifyList->Append(p_notify);
|
||||||
}
|
}
|
||||||
|
|
||||||
// STUB: LEGO1 0x1005c5c0
|
// FUNCTION: LEGO1 0x1005c5c0
|
||||||
void LegoInputManager::UnRegister(MxCore*)
|
void LegoInputManager::UnRegister(MxCore* p_notify)
|
||||||
{
|
{
|
||||||
// TODO
|
MxAutoLocker lock(&m_criticalSection);
|
||||||
|
|
||||||
|
LegoNotifyListCursor cursor(m_keyboardNotifyList);
|
||||||
|
if (cursor.Find(p_notify))
|
||||||
|
cursor.Detach();
|
||||||
}
|
}
|
||||||
|
|
||||||
// FUNCTION: LEGO1 0x1005c700
|
// FUNCTION: LEGO1 0x1005c700
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue