#ifndef LEGOPATHBOUNDARY_H #define LEGOPATHBOUNDARY_H #include "geom/legowegedge.h" #include "legoanimpresenter.h" #include "legopathactor.h" #include "mxstl/stlcompat.h" #include "mxtypes.h" struct LegoPathActorSetCompare { MxU32 operator()(const LegoPathActor* p_lhs, const LegoPathActor* p_rhs) const { return (MxS32) p_lhs < (MxS32) p_rhs; } }; struct LegoAnimPresenterSetCompare { MxBool operator()(const LegoAnimPresenter* p_lhs, const LegoAnimPresenter* p_rhs) const { return 0; } }; typedef set LegoPathActorSet; typedef set LegoAnimPresenterSet; // VTABLE: LEGO1 0x100d8618 // SIZE 0x74 class LegoPathBoundary : public LegoWEGEdge { public: LegoPathBoundary(); ~LegoPathBoundary() override; MxResult AddActor(LegoPathActor* p_actor); void FUN_100575b0(Vector3& p_point1, Vector3& p_point2, LegoPathActor* p_actor); MxU32 Intersect(float p_scale, Vector3& p_point1, Vector3& p_point2, Vector3& p_point3, LegoEdge*& p_edge); inline LegoPathActorSet* GetActors() { return &m_actors; } inline LegoAnimPresenterSet* GetPresenters() { return &m_presenters; } // SYNTHETIC: LEGO1 0x10047a80 // LegoPathBoundary::`vector deleting destructor' private: LegoPathActorSet m_actors; // 0x54 LegoAnimPresenterSet m_presenters; // 0x64 }; // clang-format off // TEMPLATE: LEGO1 0x1002bee0 // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::~_Tree >::_Kfn,LegoPathActorSetCompare,allocator >::iterator::_Inc // TEMPLATE: LEGO1 0x1002bff0 // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::erase // TEMPLATE: LEGO1 0x1002c440 // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::find // TEMPLATE: LEGO1 0x1002c4c0 // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::_Copy // TEMPLATE: LEGO1 0x1002c630 // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::_Erase // TEMPLATE: LEGO1 0x1002c670 // set >::~set > // TEMPLATE: LEGO1 0x1002c6c0 // Set::~Set // TEMPLATE: LEGO1 0x1002eb10 // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::_Init // TEMPLATE: LEGO1 0x1002ebc0 // _Tree >::_Kfn,LegoAnimPresenterSetCompare,allocator >::_Min // TEMPLATE: LEGO1 0x10045d80 // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::iterator::_Dec // TEMPLATE: LEGO1 0x10045dd0 // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::_Insert // GLOBAL: LEGO1 0x100f11a4 // _Tree >::_Kfn,LegoPathActorSetCompare,allocator >::_Nil // GLOBAL: LEGO1 0x100f3200 // _Tree >::_Kfn,LegoAnimPresenterSetCompare,allocator >::_Nil // clang-format on #endif // LEGOPATHBOUNDARY_H