Add annotations

This commit is contained in:
Christian Semmler 2024-01-26 16:00:29 -05:00
parent b7e155b81f
commit c27e3be863
5 changed files with 55 additions and 15 deletions

View File

@ -92,4 +92,7 @@ class LegoCacheSoundListCursor : public MxPtrListCursor<LegoCacheSound> {
// TEMPLATE: LEGO1 0x10020840
// MxListCursor<LegoCacheSound *>::MxListCursor<LegoCacheSound *>
// TEMPLATE: LEGO1 0x100224e0
// MxList<LegoCacheSound *>::InsertEntry
#endif // MXCORELIST_H

View File

@ -92,4 +92,7 @@ class LegoEntityListCursor : public MxPtrListCursor<LegoEntity> {
// TEMPLATE: LEGO1 0x100207d0
// MxListCursor<LegoEntity *>::MxListCursor<LegoEntity *>
// TEMPLATE: LEGO1 0x10022430
// MxList<LegoEntity *>::InsertEntry
#endif // LEGOENTITYLIST_H

View File

@ -143,8 +143,31 @@ class LegoWorld : public LegoEntity {
// TEMPLATE: LEGO1 0x10020760
// MxListCursor<MxPresenter *>::MxListCursor<MxPresenter *>
// TEMPLATE: LEGO1 0x100208b0
// _Tree<MxPresenter *,MxPresenter *,set<MxPresenter *,PresenterSetCompare,allocator<MxPresenter *> >::_Kfn,PresenterSetCompare,allocator<MxPresenter *> >::insert
// TEMPLATE: LEGO1 0x10020b20
// _Tree<MxPresenter *,MxPresenter *,set<MxPresenter *,PresenterSetCompare,allocator<MxPresenter *> >::_Kfn,PresenterSetCompare,allocator<MxPresenter *> >::iterator::_Dec
// XTEMPLATE: LEGO1 0x10020b70
// TEMPLATE: LEGO1 0x10020bb0
// _Tree<MxPresenter *,MxPresenter *,set<MxPresenter *,PresenterSetCompare,allocator<MxPresenter *> >::_Kfn,PresenterSetCompare,allocator<MxPresenter *> >::_Buynode
// TEMPLATE: LEGO1 0x10020bd0
// _Tree<MxPresenter *,MxPresenter *,set<MxPresenter *,PresenterSetCompare,allocator<MxPresenter *> >::_Kfn,PresenterSetCompare,allocator<MxPresenter *> >::_Insert
// TEMPLATE: LEGO1 0x10020e50
// _Tree<MxPresenter *,MxPresenter *,set<MxPresenter *,PresenterSetCompare,allocator<MxPresenter *> >::_Kfn,PresenterSetCompare,allocator<MxPresenter *> >::_Lrotate
// TEMPLATE: LEGO1 0x10020eb0
// _Tree<MxPresenter *,MxPresenter *,set<MxPresenter *,PresenterSetCompare,allocator<MxPresenter *> >::_Kfn,PresenterSetCompare,allocator<MxPresenter *> >::_Rrotate
// TEMPLATE: LEGO1 0x10022360
// _Construct
// GLOBAL: LEGO1 0x100f11a0
// _Tree<MxPresenter *,MxPresenter *,set<MxPresenter *,PresenterSetCompare,allocator<MxPresenter *>>::_Kfn,PresenterSetCompare,allocator<MxPresenter *> >::_Nil
// _Tree<MxPresenter *,MxPresenter *,set<MxPresenter *,PresenterSetCompare,allocator<MxPresenter *> >::_Kfn,PresenterSetCompare,allocator<MxPresenter *> >::_Nil
// clang-format on
#endif // LEGOWORLD_H

View File

@ -168,37 +168,45 @@ void LegoWorld::Add(MxCore* p_object)
MxPresenterListCursor cursor(&m_controlPresenters);
MxPresenter* presenter = (MxPresenter*) p_object;
if (!cursor.Find(presenter))
m_controlPresenters.Append(presenter);
if (cursor.Find(presenter))
return;
m_controlPresenters.Append(presenter);
}
else if (p_object->IsA("MxEntity")) {
LegoEntityListCursor cursor(m_entityList);
LegoEntity* entity = (LegoEntity*) p_object;
if (!cursor.Find(entity))
m_entityList->Append(entity);
if (cursor.Find(entity))
return;
m_entityList->Append(entity);
}
else if (p_object->IsA("LegoLocomotionAnimPresenter") || p_object->IsA("LegoHideAnimPresenter") || p_object->IsA("LegoLoopingAnimPresenter")) {
MxPresenterListCursor cursor(&m_animPresenters);
MxPresenter* presenter = (MxPresenter*) p_object;
if (!cursor.Find(presenter)) {
presenter->SendToCompositePresenter(Lego());
m_animPresenters.Append(presenter);
if (cursor.Find(presenter))
return;
if (p_object->IsA("LegoHideAnimPresenter"))
m_hideAnimPresenter = (LegoHideAnimPresenter*) presenter;
}
presenter->SendToCompositePresenter(Lego());
m_animPresenters.Append(presenter);
if (p_object->IsA("LegoHideAnimPresenter"))
m_hideAnimPresenter = (LegoHideAnimPresenter*) presenter;
}
else if (p_object->IsA("LegoCacheSound")) {
LegoCacheSoundListCursor cursor(m_cacheSoundList);
LegoCacheSound* sound = (LegoCacheSound*) p_object;
if (!cursor.Find(sound))
m_cacheSoundList->Append(sound);
if (cursor.Find(sound))
return;
m_cacheSoundList->Append(sound);
}
else {
m_set0xa8.insert((MxPresenter*) p_object);
if (m_set0xa8.find((MxPresenter*) p_object) == m_set0xa8.end())
m_set0xa8.insert((MxPresenter*) p_object);
}
if (!m_set0xd0.empty() && p_object->IsA("MxPresenter")) {
@ -206,7 +214,7 @@ void LegoWorld::Add(MxCore* p_object)
if (presenter->IsEnabled()) {
presenter->Enable(FALSE);
m_set0xd0.erase(presenter);
m_set0xd0.insert(presenter);
}
}
}

View File

@ -71,4 +71,7 @@ class MxPresenterListCursor : public MxPtrListCursor<MxPresenter> {
// SYNTHETIC: LEGO1 0x1001d100
// MxPresenterList::~MxPresenterList
// TEMPLATE: LEGO1 0x10022380
// MxList<MxPresenter *>::InsertEntry
#endif // MXPRESENTERLIST_H