From 98f0c80f1d0b9d3ca19f0b38efcb597ee65d9dc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Mon, 28 Sep 2026 03:39:31 +0200 Subject: [PATCH] The task and thread families are plain ksys:: They link in the same block as the plain-ksys:: Message family. getItemValue and applyScreenFade sit in engine UI TUs, hence ksys::ui. (AI assisted using Claude Fable 5.1 and Claude Opus 5.5) --- data/uking_functions.csv | 494 +++++++++--------- src/Game/Actor/Query/queryHasPorchArrow.cpp | 8 +- src/Game/Actor/Query/queryHasPorchItem.cpp | 4 +- src/Game/UI/uiFadeProgress.cpp | 3 +- src/Game/UI/uiUtils.h | 5 - .../ActorSystem/actActorCreator.cpp | 2 +- src/KingSystem/ActorSystem/actActorCreator.h | 5 +- src/KingSystem/ActorSystem/actActorParam.h | 4 +- .../ActorSystem/actBaseProcCreateTask.cpp | 2 +- .../ActorSystem/actBaseProcCreateTask.h | 18 +- .../actBaseProcCreateTaskSelector.cpp | 6 +- .../actBaseProcCreateTaskSelector.h | 4 +- .../ActorSystem/actBaseProcDeleter.cpp | 12 +- .../ActorSystem/actBaseProcDeleter.h | 15 +- .../ActorSystem/actBaseProcHandle.cpp | 4 +- .../ActorSystem/actBaseProcInitializer.cpp | 20 +- .../ActorSystem/actBaseProcInitializer.h | 16 +- src/KingSystem/ActorSystem/actBaseProcMgr.cpp | 2 +- src/KingSystem/ActorSystem/actBaseProcMgr.h | 4 +- src/KingSystem/Framework/CMakeLists.txt | 4 +- src/KingSystem/Framework/Framework.cpp | 1 - src/KingSystem/Framework/frmFramework.cpp | 1 + .../Framework/{Framework.h => frmFramework.h} | 0 .../Framework/frmWorkerSupportThreadMgr.cpp | 20 +- .../Framework/frmWorkerSupportThreadMgr.h | 16 +- .../Physics/System/physRayCastRequestMgr.h | 2 +- src/KingSystem/Resource/resArchiveWork.cpp | 2 +- src/KingSystem/Resource/resArchiveWork.h | 4 +- src/KingSystem/Resource/resControlTask.cpp | 4 +- src/KingSystem/Resource/resControlTask.h | 14 +- src/KingSystem/Resource/resHandle.cpp | 2 +- src/KingSystem/Resource/resHandle.h | 2 +- src/KingSystem/Resource/resMemoryTask.cpp | 4 +- src/KingSystem/Resource/resMemoryTask.h | 16 +- .../Resource/resResourceMgrTask.cpp | 34 +- src/KingSystem/Resource/resResourceMgrTask.h | 46 +- src/KingSystem/Resource/resUnit.cpp | 8 +- src/KingSystem/Resource/resUnit.h | 14 +- src/KingSystem/System/OverlayArenaSystem.cpp | 8 +- src/KingSystem/System/OverlayArenaSystem.h | 9 +- src/KingSystem/System/ProductReporter.cpp | 2 +- src/KingSystem/System/UIGlue.h | 2 + src/KingSystem/Utils/Thread/Event.cpp | 4 +- src/KingSystem/Utils/Thread/Event.h | 4 +- .../Utils/Thread/GameTaskThread.cpp | 4 +- src/KingSystem/Utils/Thread/GameTaskThread.h | 4 +- .../Utils/Thread/LowPrioThreadMgr.cpp | 4 +- .../Utils/Thread/LowPrioThreadMgr.h | 4 +- src/KingSystem/Utils/Thread/ManagedTask.cpp | 4 +- src/KingSystem/Utils/Thread/ManagedTask.h | 4 +- .../Utils/Thread/ManagedTaskHandle.cpp | 4 +- .../Utils/Thread/ManagedTaskHandle.h | 4 +- .../Utils/Thread/MessageDispatcher.h | 2 +- src/KingSystem/Utils/Thread/Task.cpp | 4 +- src/KingSystem/Utils/Thread/Task.h | 4 +- src/KingSystem/Utils/Thread/TaskData.h | 4 +- src/KingSystem/Utils/Thread/TaskMgr.cpp | 4 +- src/KingSystem/Utils/Thread/TaskMgr.h | 6 +- src/KingSystem/Utils/Thread/TaskQueue.cpp | 4 +- src/KingSystem/Utils/Thread/TaskQueue.h | 4 +- src/KingSystem/Utils/Thread/TaskQueueBase.cpp | 7 +- src/KingSystem/Utils/Thread/TaskQueueBase.h | 4 +- src/KingSystem/Utils/Thread/TaskQueueLock.cpp | 4 +- src/KingSystem/Utils/Thread/TaskQueueLock.h | 4 +- src/KingSystem/Utils/Thread/TaskThread.cpp | 4 +- src/KingSystem/Utils/Thread/TaskThread.h | 4 +- 66 files changed, 465 insertions(+), 477 deletions(-) delete mode 100644 src/KingSystem/Framework/Framework.cpp create mode 100644 src/KingSystem/Framework/frmFramework.cpp rename src/KingSystem/Framework/{Framework.h => frmFramework.h} (100%) diff --git a/data/uking_functions.csv b/data/uking_functions.csv index bb90268e..f8bd60e8 100644 --- a/data/uking_functions.csv +++ b/data/uking_functions.csv @@ -49591,11 +49591,11 @@ Address,Quality,Size,Name 0x00000071007cb614,U,000324,GameSceneTaskMgr::init 0x00000071007cb758,U,000040,GameSceneTaskMgr::invokeInvoker 0x00000071007cb780,U,000172,GameSceneTaskMgr::submitRequest -0x00000071007cb82c,O,000004,_ZN4ksys4util11TaskRequestD2Ev +0x00000071007cb82c,O,000004,_ZN4ksys11TaskRequestD2Ev 0x00000071007cb830,U,000004,j__ZdlPv_350 -0x00000071007cb834,O,000112,_ZNK4ksys4util11TaskRequest27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071007cb8a4,O,000092,_ZNK4ksys4util11TaskRequest18getRuntimeTypeInfoEv -0x00000071007cb900,O,000004,_ZN4ksys4util11TaskRequestD0Ev +0x00000071007cb834,O,000112,_ZNK4ksys11TaskRequest27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071007cb8a4,O,000092,_ZNK4ksys11TaskRequest18getRuntimeTypeInfoEv +0x00000071007cb900,O,000004,_ZN4ksys11TaskRequestD0Ev 0x00000071007cb904,U,000052, 0x00000071007cb938,U,000092, 0x00000071007cb994,U,000056, @@ -57933,17 +57933,17 @@ Address,Quality,Size,Name 0x00000071009ccbf0,U,000204, 0x00000071009cccbc,U,000092, 0x00000071009ccd18,U,000140, -0x00000071009ccda4,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys4util8TaskDataEE9isDerivedEPKNS0_9InterfaceE +0x00000071009ccda4,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys8TaskDataEE9isDerivedEPKNS0_9InterfaceE 0x00000071009cce30,U,000052, 0x00000071009cce64,U,000092, 0x00000071009ccec0,U,000048, 0x00000071009ccef0,U,000092, -0x00000071009ccf4c,O,000008,_ZNK4sead10IDelegate2IPN4ksys4util17TaskPostRunResultERKNS2_18TaskPostRunContextEE9isNoDummyEv -0x00000071009ccf54,U,000008, +0x00000071009ccf4c,O,000008,_ZNK4sead10IDelegate2IPN4ksys17TaskPostRunResultERKNS1_18TaskPostRunContextEE9isNoDummyEv +0x00000071009ccf54,O,000008,_ZNK4sead10IDelegate2IPN4ksys17TaskPostRunResultERKNS1_18TaskPostRunContextEE5cloneEPNS_4HeapE 0x00000071009ccf5c,U,000048, 0x00000071009ccf8c,U,000092, -0x00000071009ccfe8,O,000008,_ZNK4sead10IDelegate1IRKN4ksys4util25TaskRemoveCallbackContextEE9isNoDummyEv -0x00000071009ccff0,O,000008,_ZNK4sead10IDelegate1IRKN4ksys4util25TaskRemoveCallbackContextEE5cloneEPNS_4HeapE +0x00000071009ccfe8,O,000008,_ZNK4sead10IDelegate1IRKN4ksys25TaskRemoveCallbackContextEE9isNoDummyEv +0x00000071009ccff0,O,000008,_ZNK4sead10IDelegate1IRKN4ksys25TaskRemoveCallbackContextEE5cloneEPNS_4HeapE 0x00000071009ccff8,U,000100,ResourceJpg::ctor 0x00000071009cd05c,U,000008, 0x00000071009cd064,U,000036,ResourceJpg::dtorDelete @@ -61146,11 +61146,11 @@ Address,Quality,Size,Name 0x0000007100a6d978,U,000016,uiLowPrioThreadMgr::pause 0x0000007100a6d988,U,000016,uiLowPrioThreadMgr::__auto0 0x0000007100a6d998,U,000016, -0x0000007100a6d9a8,O,000060,_ZN4ksys4util7TaskMgr13makeTaskType_INS0_11ManagedTaskEEEvPPS3_ -0x0000007100a6d9e4,O,000048,_ZN4sead9Delegate1IN4ksys4util7TaskMgrEPPNS2_11ManagedTaskEE6invokeES6_ -0x0000007100a6da14,O,000092,_ZNK4sead9Delegate1IN4ksys4util7TaskMgrEPPNS2_11ManagedTaskEE5cloneEPNS_4HeapE -0x0000007100a6da70,O,000008,_ZNK4sead10IDelegate1IPPN4ksys4util11ManagedTaskEE9isNoDummyEv -0x0000007100a6da78,O,000008,_ZNK4sead10IDelegate1IPPN4ksys4util11ManagedTaskEE5cloneEPNS_4HeapE +0x0000007100a6d9a8,O,000060,_ZN4ksys7TaskMgr13makeTaskType_INS_11ManagedTaskEEEvPPS2_ +0x0000007100a6d9e4,O,000048,_ZN4sead9Delegate1IN4ksys7TaskMgrEPPNS1_11ManagedTaskEE6invokeES5_ +0x0000007100a6da14,O,000092,_ZNK4sead9Delegate1IN4ksys7TaskMgrEPPNS1_11ManagedTaskEE5cloneEPNS_4HeapE +0x0000007100a6da70,O,000008,_ZNK4sead10IDelegate1IPPN4ksys11ManagedTaskEE9isNoDummyEv +0x0000007100a6da78,O,000008,_ZNK4sead10IDelegate1IPPN4ksys11ManagedTaskEE5cloneEPNS_4HeapE 0x0000007100a6da80,U,000008, 0x0000007100a6da88,U,000004,nullsub_5525 0x0000007100a6da8c,U,000004,nullsub_5526 @@ -74662,8 +74662,8 @@ Address,Quality,Size,Name 0x0000007100d5e494,U,000004,nullsub_3781 0x0000007100d5e498,U,000052, 0x0000007100d5e4cc,U,000092, -0x0000007100d5e528,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys4util11ManagedTaskEE9isDerivedEPKNS0_9InterfaceE -0x0000007100d5e5b4,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys4util4TaskEE9isDerivedEPKNS0_9InterfaceE +0x0000007100d5e528,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys11ManagedTaskEE9isDerivedEPKNS0_9InterfaceE +0x0000007100d5e5b4,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys4TaskEE9isDerivedEPKNS0_9InterfaceE 0x0000007100d5e640,U,000052, 0x0000007100d5e674,U,000136,VillagerMgr::ctor 0x0000007100d5e6fc,U,000120,VillagerMgr::dtor @@ -80671,7 +80671,7 @@ Address,Quality,Size,Name 0x0000007100edc34c,U,000028,callCheckWeaponFreeSlotHandlerMaybe 0x0000007100edc368,U,000024,ui::callIncreasePouchNum 0x0000007100edc380,U,000024,ui::checkVacancyItem -0x0000007100edc398,U,000028,_ZN5uking2ui12getItemValueERKN4sead14SafeStringBaseIcEE +0x0000007100edc398,U,000028,_ZN4ksys2ui12getItemValueERKN4sead14SafeStringBaseIcEE 0x0000007100edc3b4,U,000028,_ZN4ksys2ui11getPorchNumERKN4sead14SafeStringBaseIcEE 0x0000007100edc3d0,U,000028, 0x0000007100edc3ec,U,000028, @@ -85291,7 +85291,7 @@ Address,Quality,Size,Name 0x0000007100fe6438,U,000204, 0x0000007100fe6504,U,000092, 0x0000007100fe6560,U,000004,j__ZdlPv_1024 -0x0000007100fe6564,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys4util11TaskRequestEE9isDerivedEPKNS0_9InterfaceE +0x0000007100fe6564,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys11TaskRequestEE9isDerivedEPKNS0_9InterfaceE 0x0000007100fe65f0,U,000052, 0x0000007100fe6624,U,000092, 0x0000007100fe6680,U,000048, @@ -89221,7 +89221,7 @@ Address,Quality,Size,Name 0x00000071010b62c4,U,000340,ui::isFadeDemoOrFadeScreenOpened 0x00000071010b6418,U,000320, 0x00000071010b6558,U,000024, -0x00000071010b6570,U,000200,_ZN5uking2ui15applyScreenFadeEf +0x00000071010b6570,U,000200,_ZN4ksys2ui15applyScreenFadeEf 0x00000071010b6638,U,000376, 0x00000071010b67b0,O,000096,_ZN4ksys7AutoDim18SingletonDisposer_D1Ev 0x00000071010b6810,O,000104,_ZN4ksys7AutoDim18SingletonDisposer_D0Ev @@ -89487,77 +89487,77 @@ Address,Quality,Size,Name 0x00000071010c09e4,O,000008,_ZN4ksys23ActorMessageTransceiver11getReceiverEv 0x00000071010c09ec,O,000204,_ZNK4ksys23ActorMessageTransceiver8Receiver27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE 0x00000071010c0ab8,O,000092,_ZNK4ksys23ActorMessageTransceiver8Receiver18getRuntimeTypeInfoEv -0x00000071010c0b14,O,000032,_ZN4ksys4util5EventC1Ev -0x00000071010c0b34,O,000032,_ZN4ksys4util5EventC1EPN4sead4HeapE -0x00000071010c0b54,O,000036,_ZN4ksys4util5EventC1Eb -0x00000071010c0b78,O,000040,_ZN4ksys4util5EventC1EPN4sead4HeapEb -0x00000071010c0ba0,O,000040,_ZN4ksys4util5EventC1EPN4sead4HeapENS2_9IDisposer14HeapNullOptionEb -0x00000071010c0bc8,O,000020,_ZN4ksys4util5EventD1Ev -0x00000071010c0bdc,O,000052,_ZN4ksys4util5EventD0Ev -0x00000071010c0c10,O,000016,_ZN4ksys4util5Event10initializeEb -0x00000071010c0c20,O,000028,_ZN4ksys4util5Event4waitEv -0x00000071010c0c3c,O,000032,_ZN4ksys4util5Event4waitEN4sead8TickSpanE -0x00000071010c0c5c,O,000052,_ZN4ksys4util5Event9setSignalEv -0x00000071010c0c90,O,000064,_ZN4ksys4util5Event11resetSignalEv -0x00000071010c0cd0,O,000016,_ZNK4ksys4util5Event11isSignalSetEv +0x00000071010c0b14,O,000032,_ZN4ksys5EventC1Ev +0x00000071010c0b34,O,000032,_ZN4ksys5EventC1EPN4sead4HeapE +0x00000071010c0b54,O,000036,_ZN4ksys5EventC1Eb +0x00000071010c0b78,O,000040,_ZN4ksys5EventC1EPN4sead4HeapEb +0x00000071010c0ba0,O,000040,_ZN4ksys5EventC1EPN4sead4HeapENS1_9IDisposer14HeapNullOptionEb +0x00000071010c0bc8,O,000020,_ZN4ksys5EventD1Ev +0x00000071010c0bdc,O,000052,_ZN4ksys5EventD0Ev +0x00000071010c0c10,O,000016,_ZN4ksys5Event10initializeEb +0x00000071010c0c20,O,000028,_ZN4ksys5Event4waitEv +0x00000071010c0c3c,O,000032,_ZN4ksys5Event4waitEN4sead8TickSpanE +0x00000071010c0c5c,O,000052,_ZN4ksys5Event9setSignalEv +0x00000071010c0c90,O,000064,_ZN4ksys5Event11resetSignalEv +0x00000071010c0cd0,O,000016,_ZNK4ksys5Event11isSignalSetEv 0x00000071010c0ce0,U,000032,sinitXXX_0 -0x00000071010c0d00,O,000096,_ZN4ksys4util13TaskQueueBaseC1EPN4sead4HeapE -0x00000071010c0d60,O,000136,_ZN4ksys4util13TaskQueueBaseD1Ev -0x00000071010c0de8,O,000524,_ZN4ksys4util13TaskQueueBase5clearEv -0x00000071010c0ff4,O,000144,_ZN4ksys4util13TaskQueueBaseD0Ev -0x00000071010c1084,O,000308,_ZN4ksys4util13TaskQueueBase4initERKNS1_7InitArgE -0x00000071010c11b8,O,000156,_ZN4ksys4util13TaskQueueBase9addThreadEPNS0_10TaskThreadE -0x00000071010c1254,O,000168,_ZN4ksys4util13TaskQueueBase12removeThreadEPNS0_10TaskThreadE -0x00000071010c12fc,O,000008,_ZNK4ksys4util13TaskQueueBase17getNumActiveTasksEv -0x00000071010c1304,O,000228,_ZNK4ksys4util13TaskQueueBase16countTasksInLaneEt -0x00000071010c13e8,O,000188,_ZNK4ksys4util13TaskQueueBase16areNoThreadsBusyEv -0x00000071010c14a4,O,000208,_ZN4ksys4util13TaskQueueBase19waitForQueueToEmptyEv -0x00000071010c1574,O,000212,_ZN4ksys4util13TaskQueueBase18waitForLaneToEmptyEh -0x00000071010c1648,O,000796,_ZN4ksys4util13TaskQueueBase11cancelTasksEh -0x00000071010c1964,O,000192,_ZNK4ksys4util13TaskQueueBase16isProcessingTaskEh -0x00000071010c1a24,O,000416,_ZN4ksys4util13TaskQueueBase25signalEmptyEventsIfNeededEv -0x00000071010c1bc4,O,000052,_ZN4ksys4util13TaskQueueBase10blockTasksEh -0x00000071010c1bf8,M,000464,_ZN4ksys4util13TaskQueueBase26blockTasksAndReloadThreadsEh -0x00000071010c1dc8,O,000048,_ZN4ksys4util13TaskQueueBase12unblockTasksEh -0x00000071010c1df8,O,000016,_ZN4ksys4util13TaskQueueBase4lockEPNS0_13TaskQueueLockE -0x00000071010c1e08,O,000184,_ZNK4ksys4util13TaskQueueBase16getCurrentThreadEv -0x00000071010c1ec0,O,000052,_ZN4ksys4util13TaskQueueBase16activeTasksBeginEPNS0_13TaskQueueLockE -0x00000071010c1ef4,O,000072,_ZN4ksys4util13TaskQueueBase22activeTasksRobustBeginEPNS0_13TaskQueueLockE -0x00000071010c1f3c,O,000016,_ZNK4ksys4util13TaskQueueBase14activeTasksEndEv -0x00000071010c1f4c,O,000032,_ZNK4ksys4util13TaskQueueBase20activeTasksRobustEndEv -0x00000071010c1f6c,m,000384,_ZN4ksys4util13TaskQueueBase24notifyThreadsForNewTasksEv -0x00000071010c20ec,O,000412,_ZN4ksys4util13TaskQueueBase4pushERKNS1_7PushArgE -0x00000071010c2288,O,000364,_ZN4ksys4util13TaskQueueBase10removeTaskEPNS0_4TaskEb -0x00000071010c23f4,O,000004,_ZNK4ksys4util13TaskQueueBase4lockEv -0x00000071010c23f8,O,000004,_ZNK4ksys4util13TaskQueueBase6unlockEv -0x00000071010c23fc,m,000860,_ZN4ksys4util13TaskQueueBase9fetchTaskEPPNS0_4TaskE -0x00000071010c2758,O,000112,_ZNK4ksys4util13TaskQueueBase27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071010c27c8,O,000092,_ZNK4ksys4util13TaskQueueBase18getRuntimeTypeInfoEv +0x00000071010c0d00,O,000096,_ZN4ksys13TaskQueueBaseC1EPN4sead4HeapE +0x00000071010c0d60,O,000136,_ZN4ksys13TaskQueueBaseD1Ev +0x00000071010c0de8,O,000524,_ZN4ksys13TaskQueueBase5clearEv +0x00000071010c0ff4,O,000144,_ZN4ksys13TaskQueueBaseD0Ev +0x00000071010c1084,O,000308,_ZN4ksys13TaskQueueBase4initERKNS0_7InitArgE +0x00000071010c11b8,O,000156,_ZN4ksys13TaskQueueBase9addThreadEPNS_10TaskThreadE +0x00000071010c1254,O,000168,_ZN4ksys13TaskQueueBase12removeThreadEPNS_10TaskThreadE +0x00000071010c12fc,O,000008,_ZNK4ksys13TaskQueueBase17getNumActiveTasksEv +0x00000071010c1304,O,000228,_ZNK4ksys13TaskQueueBase16countTasksInLaneEt +0x00000071010c13e8,O,000188,_ZNK4ksys13TaskQueueBase16areNoThreadsBusyEv +0x00000071010c14a4,O,000208,_ZN4ksys13TaskQueueBase19waitForQueueToEmptyEv +0x00000071010c1574,O,000212,_ZN4ksys13TaskQueueBase18waitForLaneToEmptyEh +0x00000071010c1648,O,000796,_ZN4ksys13TaskQueueBase11cancelTasksEh +0x00000071010c1964,O,000192,_ZNK4ksys13TaskQueueBase16isProcessingTaskEh +0x00000071010c1a24,O,000416,_ZN4ksys13TaskQueueBase25signalEmptyEventsIfNeededEv +0x00000071010c1bc4,O,000052,_ZN4ksys13TaskQueueBase10blockTasksEh +0x00000071010c1bf8,M,000464,_ZN4ksys13TaskQueueBase26blockTasksAndReloadThreadsEh +0x00000071010c1dc8,O,000048,_ZN4ksys13TaskQueueBase12unblockTasksEh +0x00000071010c1df8,O,000016,_ZN4ksys13TaskQueueBase4lockEPNS_13TaskQueueLockE +0x00000071010c1e08,O,000184,_ZNK4ksys13TaskQueueBase16getCurrentThreadEv +0x00000071010c1ec0,O,000052,_ZN4ksys13TaskQueueBase16activeTasksBeginEPNS_13TaskQueueLockE +0x00000071010c1ef4,O,000072,_ZN4ksys13TaskQueueBase22activeTasksRobustBeginEPNS_13TaskQueueLockE +0x00000071010c1f3c,O,000016,_ZNK4ksys13TaskQueueBase14activeTasksEndEv +0x00000071010c1f4c,O,000032,_ZNK4ksys13TaskQueueBase20activeTasksRobustEndEv +0x00000071010c1f6c,m,000384,_ZN4ksys13TaskQueueBase24notifyThreadsForNewTasksEv +0x00000071010c20ec,O,000412,_ZN4ksys13TaskQueueBase4pushERKNS0_7PushArgE +0x00000071010c2288,O,000364,_ZN4ksys13TaskQueueBase10removeTaskEPNS_4TaskEb +0x00000071010c23f4,O,000004,_ZNK4ksys13TaskQueueBase4lockEv +0x00000071010c23f8,O,000004,_ZNK4ksys13TaskQueueBase6unlockEv +0x00000071010c23fc,m,000860,_ZN4ksys13TaskQueueBase9fetchTaskEPPNS_4TaskE +0x00000071010c2758,O,000112,_ZNK4ksys13TaskQueueBase27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071010c27c8,O,000092,_ZNK4ksys13TaskQueueBase18getRuntimeTypeInfoEv 0x00000071010c2824,U,000100,sinitKsysTaskQueueBase -0x00000071010c2888,O,000020,_ZN4ksys4util13TaskQueueLockC1Ev -0x00000071010c289c,O,000068,_ZN4ksys4util13TaskQueueLockD1Ev -0x00000071010c28e0,O,000068,_ZN4ksys4util13TaskQueueLockD0Ev -0x00000071010c2924,O,000032,_ZN4ksys4util13TaskQueueLock4lockEPNS0_13TaskQueueBaseE -0x00000071010c2944,O,000112,_ZNK4ksys4util13TaskQueueLock27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071010c29b4,O,000092,_ZNK4ksys4util13TaskQueueLock18getRuntimeTypeInfoEv +0x00000071010c2888,O,000020,_ZN4ksys13TaskQueueLockC1Ev +0x00000071010c289c,O,000068,_ZN4ksys13TaskQueueLockD1Ev +0x00000071010c28e0,O,000068,_ZN4ksys13TaskQueueLockD0Ev +0x00000071010c2924,O,000032,_ZN4ksys13TaskQueueLock4lockEPNS_13TaskQueueBaseE +0x00000071010c2944,O,000112,_ZNK4ksys13TaskQueueLock27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071010c29b4,O,000092,_ZNK4ksys13TaskQueueLock18getRuntimeTypeInfoEv 0x00000071010c2a10,O,000008,_ZN5uking3act17PlayerCreateTrace4makeERKN4sead14SafeStringBaseIcEEi 0x00000071010c2a18,O,000004,_ZN5uking3act18PlayerCreateTracer6finishEv 0x00000071010c2a1c,O,000024,_ZN5uking3act22PlayerCreateTraceScopeC1EPNS0_17PlayerCreateTraceERKN4sead14SafeStringBaseIcEES8_i 0x00000071010c2a34,O,000020,_ZN5uking3act22PlayerCreateTraceScopeD1Ev 0x00000071010c2a48,O,000004,_ZN5uking3act22PlayerCreateTraceScopeD0Ev -0x00000071010c2a4c,O,000032,_ZN4ksys4util17ManagedTaskHandleC1Ev -0x00000071010c2a6c,O,000128,_ZN4ksys4util17ManagedTaskHandleD1Ev -0x00000071010c2aec,O,000160,_ZN4ksys4util17ManagedTaskHandle19removeTaskFromQueueEv -0x00000071010c2b8c,O,000108,_ZN4ksys4util17ManagedTaskHandle8finalizeEv -0x00000071010c2bf8,O,000136,_ZN4ksys4util17ManagedTaskHandleD0Ev -0x00000071010c2c80,O,000016,_ZNK4ksys4util17ManagedTaskHandle7hasTaskEv -0x00000071010c2c90,O,000164,_ZN4ksys4util17ManagedTaskHandle4waitEv -0x00000071010c2d34,O,000248,_ZN4ksys4util17ManagedTaskHandle4waitERKN4sead8TickSpanE -0x00000071010c2e2c,O,000032,_ZNK4ksys4util17ManagedTaskHandle14isTaskAttachedEv -0x00000071010c2e4c,O,000036,_ZNK4ksys4util17ManagedTaskHandle27didTaskCompleteSuccessfullyEv -0x00000071010c2e70,O,000096,_ZN4ksys4util17ManagedTaskHandle10attachTaskERKNS1_10SetTaskArgE -0x00000071010c2ed0,O,000008,_ZN4ksys4util17ManagedTaskHandle9setStatusENS1_6StatusE -0x00000071010c2ed8,O,000012,_ZN4ksys4util17ManagedTaskHandle12setIsSuccessEb +0x00000071010c2a4c,O,000032,_ZN4ksys17ManagedTaskHandleC1Ev +0x00000071010c2a6c,O,000128,_ZN4ksys17ManagedTaskHandleD1Ev +0x00000071010c2aec,O,000160,_ZN4ksys17ManagedTaskHandle19removeTaskFromQueueEv +0x00000071010c2b8c,O,000108,_ZN4ksys17ManagedTaskHandle8finalizeEv +0x00000071010c2bf8,O,000136,_ZN4ksys17ManagedTaskHandleD0Ev +0x00000071010c2c80,O,000016,_ZNK4ksys17ManagedTaskHandle7hasTaskEv +0x00000071010c2c90,O,000164,_ZN4ksys17ManagedTaskHandle4waitEv +0x00000071010c2d34,O,000248,_ZN4ksys17ManagedTaskHandle4waitERKN4sead8TickSpanE +0x00000071010c2e2c,O,000032,_ZNK4ksys17ManagedTaskHandle14isTaskAttachedEv +0x00000071010c2e4c,O,000036,_ZNK4ksys17ManagedTaskHandle27didTaskCompleteSuccessfullyEv +0x00000071010c2e70,O,000096,_ZN4ksys17ManagedTaskHandle10attachTaskERKNS0_10SetTaskArgE +0x00000071010c2ed0,O,000008,_ZN4ksys17ManagedTaskHandle9setStatusENS0_6StatusE +0x00000071010c2ed8,O,000012,_ZN4ksys17ManagedTaskHandle12setIsSuccessEb 0x00000071010c2ee4,U,000516, 0x00000071010c30e8,U,000044, 0x00000071010c3114,U,000280,ElementSpark::ctor @@ -92424,7 +92424,7 @@ Address,Quality,Size,Name 0x00000071011bf1cc,O,000008,_ZNK4ksys3act11BaseProcMgr28isAnyInitializerThreadActiveEv 0x00000071011bf1d4,O,000012,_ZNK4ksys3act11BaseProcMgr23getInitializerQueueSizeEv 0x00000071011bf1e0,O,000008,_ZNK4ksys3act11BaseProcMgr25getInitializerQueueSizeExEi -0x00000071011bf1e8,O,000008,_ZN4ksys3act11BaseProcMgr24removeInitializerTasksIfERN4sead11IDelegate1RIPNS_4util4TaskEbEE +0x00000071011bf1e8,O,000008,_ZN4ksys3act11BaseProcMgr24removeInitializerTasksIfERN4sead11IDelegate1RIPNS_4TaskEbEE 0x00000071011bf1f0,O,000012,_ZN4ksys3act11BaseProcMgr25setActorGenerationEnabledEb 0x00000071011bf1fc,O,000024,_ZN4ksys3act11BaseProcMgr13incrementUnk3Ev 0x00000071011bf214,O,000020,_ZN4ksys3act11BaseProcMgr13decrementUnk3Ev @@ -92812,7 +92812,7 @@ Address,Quality,Size,Name 0x00000071011dbae4,O,000260,_ZN4ksys3act12ActorCreator14createInstanceEPN4sead4HeapE 0x00000071011dbbe8,O,000088,_ZN4ksys3act12ActorCreator14deleteInstanceEv 0x00000071011dbc40,U,001652,ActorCreator::invokedCreateActor -0x00000071011dc2b4,O,000152,_ZN4ksys3act12ActorCreator13onTaskRemovedERKNS_4util25TaskRemoveCallbackContextE +0x00000071011dc2b4,O,000152,_ZN4ksys3act12ActorCreator13onTaskRemovedERKNS_25TaskRemoveCallbackContextE 0x00000071011dc34c,O,000020,_ZN4ksys3act12ActorCreatorD1Ev 0x00000071011dc360,O,000052,_ZN4ksys3act12ActorCreatorD0Ev 0x00000071011dc394,O,000004,_ZN4ksys3act22BaseProcCreateTaskDataD2Ev @@ -92835,20 +92835,20 @@ Address,Quality,Size,Name 0x00000071011dd998,O,000056,_ZN4ksys3act26BaseProcCreateTaskSelector18SingletonDisposer_D1Ev 0x00000071011dd9d0,O,000092,_ZN4ksys3act26BaseProcCreateTaskSelector18SingletonDisposer_D0Ev 0x00000071011dda2c,O,000148,_ZN4ksys3act26BaseProcCreateTaskSelector14createInstanceEPN4sead4HeapE -0x00000071011ddac0,O,000348,_ZN4ksys3act26BaseProcCreateTaskSelector10selectTaskERKNS_4util20TaskSelectionContextE +0x00000071011ddac0,O,000348,_ZN4ksys3act26BaseProcCreateTaskSelector10selectTaskERKNS_20TaskSelectionContextE 0x00000071011ddc1c,O,000204,_ZNK4ksys3act22BaseProcCreateTaskData27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE 0x00000071011ddce8,O,000092,_ZNK4ksys3act22BaseProcCreateTaskData18getRuntimeTypeInfoEv 0x00000071011ddd44,O,000004,_ZN4ksys3act22BaseProcCreateTaskDataD0Ev -0x00000071011ddd48,O,000052,_ZN4sead10Delegate1RIN4ksys3act26BaseProcCreateTaskSelectorERKNS1_4util20TaskSelectionContextEPNS4_4TaskEE6invokeES7_ -0x00000071011ddd7c,O,000092,_ZNK4sead10Delegate1RIN4ksys3act26BaseProcCreateTaskSelectorERKNS1_4util20TaskSelectionContextEPNS4_4TaskEE5cloneEPNS_4HeapE -0x00000071011dddd8,O,000008,_ZNK4sead11IDelegate1RIRKN4ksys4util20TaskSelectionContextEPNS2_4TaskEE9isNoDummyEv -0x00000071011ddde0,O,000008,_ZNK4sead11IDelegate1RIRKN4ksys4util20TaskSelectionContextEPNS2_4TaskEE5cloneEPNS_4HeapE +0x00000071011ddd48,O,000052,_ZN4sead10Delegate1RIN4ksys3act26BaseProcCreateTaskSelectorERKNS1_20TaskSelectionContextEPNS1_4TaskEE6invokeES6_ +0x00000071011ddd7c,O,000092,_ZNK4sead10Delegate1RIN4ksys3act26BaseProcCreateTaskSelectorERKNS1_20TaskSelectionContextEPNS1_4TaskEE5cloneEPNS_4HeapE +0x00000071011dddd8,O,000008,_ZNK4sead11IDelegate1RIRKN4ksys20TaskSelectionContextEPNS1_4TaskEE9isNoDummyEv +0x00000071011ddde0,O,000008,_ZNK4sead11IDelegate1RIRKN4ksys20TaskSelectionContextEPNS1_4TaskEE5cloneEPNS_4HeapE 0x00000071011ddde8,O,000052,_ZN4sead10Delegate1RIN4ksys3act12ActorCreatorERNS2_17BaseProcCreateArgEPNS2_8BaseProcEE6invokeES5_ 0x00000071011dde1c,O,000092,_ZNK4sead10Delegate1RIN4ksys3act12ActorCreatorERNS2_17BaseProcCreateArgEPNS2_8BaseProcEE5cloneEPNS_4HeapE 0x00000071011dde78,O,000008,_ZNK4sead11IDelegate1RIRN4ksys3act17BaseProcCreateArgEPNS2_8BaseProcEE9isNoDummyEv 0x00000071011dde80,O,000008,_ZNK4sead11IDelegate1RIRN4ksys3act17BaseProcCreateArgEPNS2_8BaseProcEE5cloneEPNS_4HeapE -0x00000071011dde88,O,000048,_ZN4sead9Delegate1IN4ksys3act12ActorCreatorERKNS1_4util25TaskRemoveCallbackContextEE6invokeES7_ -0x00000071011ddeb8,O,000092,_ZNK4sead9Delegate1IN4ksys3act12ActorCreatorERKNS1_4util25TaskRemoveCallbackContextEE5cloneEPNS_4HeapE +0x00000071011dde88,O,000048,_ZN4sead9Delegate1IN4ksys3act12ActorCreatorERKNS1_25TaskRemoveCallbackContextEE6invokeES6_ +0x00000071011ddeb8,O,000092,_ZNK4sead9Delegate1IN4ksys3act12ActorCreatorERKNS1_25TaskRemoveCallbackContextEE5cloneEPNS_4HeapE 0x00000071011ddf14,O,000064,_ZN4ksys3act2ai2AiC1ERKNS1_10ActionBase7InitArgE 0x00000071011ddf54,O,000084,_ZN4ksys3act2ai2AiD1Ev 0x00000071011ddfa8,O,000092,_ZN4ksys3act2ai2AiD0Ev @@ -93292,130 +93292,130 @@ Address,Quality,Size,Name 0x00000071011f67b0,O,000008,_ZN4ksys24MessageTransceiverRxOnly11getReceiverEv 0x00000071011f67b8,O,000204,_ZNK4ksys24MessageTransceiverRxOnly8Receiver27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE 0x00000071011f6884,O,000092,_ZNK4ksys24MessageTransceiverRxOnly8Receiver18getRuntimeTypeInfoEv -0x00000071011f68e0,O,000108,_ZN4ksys4util10TaskThreadC1ERKN4sead14SafeStringBaseIcEEPNS2_4HeapEiNS2_12MessageQueue9BlockTypeElii -0x00000071011f694c,O,000120,_ZN4ksys4util10TaskThreadD1Ev -0x00000071011f69c4,O,000128,_ZN4ksys4util10TaskThreadD0Ev -0x00000071011f6a44,O,000224,_ZN4ksys4util10TaskThread4initERKNS1_7InitArgE -0x00000071011f6b24,O,000008,_ZNK4ksys4util10TaskThread17getNumActiveTasksEv -0x00000071011f6b2c,O,000008,_ZN4ksys4util10TaskThread19waitForQueueToEmptyEv -0x00000071011f6b34,O,000008,_ZN4ksys4util10TaskThread11cancelTasksEh -0x00000071011f6b3c,O,000008,_ZN4ksys4util10TaskThread10clearQueueEv -0x00000071011f6b44,O,000008,_ZN4ksys4util10TaskThread4lockEPNS0_13TaskQueueLockE -0x00000071011f6b4c,O,000064,_ZNK4ksys4util10TaskThread33isActiveAndReceivedQueueUpdateMsgEv -0x00000071011f6b8c,O,000012,_ZNK4ksys4util10TaskThread8isPausedEv -0x00000071011f6b98,O,000036,_ZNK4ksys4util10TaskThread23receivedQueueUpdatedMsgEv -0x00000071011f6bbc,O,000128,_ZN4ksys4util10TaskThread5pauseEv -0x00000071011f6c3c,O,000156,_ZN4ksys4util10TaskThread18pauseAndWaitForAckEv -0x00000071011f6cd8,O,000128,_ZN4ksys4util10TaskThread6resumeEv -0x00000071011f6d58,O,000156,_ZN4ksys4util10TaskThread19resumeAndWaitForAckEv -0x00000071011f6df4,O,000016,_ZNK4ksys4util10TaskThread20isBusyProcessingTaskEv -0x00000071011f6e04,O,000012,_ZNK4ksys4util10TaskThread16isLookingForTaskEv -0x00000071011f6e10,m,000624,_ZN4ksys4util10TaskThread5calc_El -0x00000071011f7080,O,000004,_ZN4ksys4util17TaskPostRunResultD2Ev -0x00000071011f7084,O,000036,_ZNK4ksys4util10TaskThread16receivedPauseMsgEv -0x00000071011f70a8,O,000036,_ZNK4ksys4util10TaskThread17receivedResumeMsgEv -0x00000071011f70cc,O,000048,_ZNK4ksys4util10TaskThread15receivedQuitMsgEv -0x00000071011f70fc,O,000076,_ZN4ksys4util10TaskThread17cancelCurrentTaskEv -0x00000071011f7148,O,000112,_ZNK4ksys4util10TaskThread27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071011f71b8,O,000092,_ZNK4ksys4util10TaskThread18getRuntimeTypeInfoEv -0x00000071011f7214,O,000112,_ZNK4ksys4util17TaskPostRunResult27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071011f7284,O,000092,_ZNK4ksys4util17TaskPostRunResult18getRuntimeTypeInfoEv -0x00000071011f72e0,O,000004,_ZN4ksys4util17TaskPostRunResultD0Ev +0x00000071011f68e0,O,000108,_ZN4ksys10TaskThreadC1ERKN4sead14SafeStringBaseIcEEPNS1_4HeapEiNS1_12MessageQueue9BlockTypeElii +0x00000071011f694c,O,000120,_ZN4ksys10TaskThreadD1Ev +0x00000071011f69c4,O,000128,_ZN4ksys10TaskThreadD0Ev +0x00000071011f6a44,O,000224,_ZN4ksys10TaskThread4initERKNS0_7InitArgE +0x00000071011f6b24,O,000008,_ZNK4ksys10TaskThread17getNumActiveTasksEv +0x00000071011f6b2c,O,000008,_ZN4ksys10TaskThread19waitForQueueToEmptyEv +0x00000071011f6b34,O,000008,_ZN4ksys10TaskThread11cancelTasksEh +0x00000071011f6b3c,O,000008,_ZN4ksys10TaskThread10clearQueueEv +0x00000071011f6b44,O,000008,_ZN4ksys10TaskThread4lockEPNS_13TaskQueueLockE +0x00000071011f6b4c,O,000064,_ZNK4ksys10TaskThread33isActiveAndReceivedQueueUpdateMsgEv +0x00000071011f6b8c,O,000012,_ZNK4ksys10TaskThread8isPausedEv +0x00000071011f6b98,O,000036,_ZNK4ksys10TaskThread23receivedQueueUpdatedMsgEv +0x00000071011f6bbc,O,000128,_ZN4ksys10TaskThread5pauseEv +0x00000071011f6c3c,O,000156,_ZN4ksys10TaskThread18pauseAndWaitForAckEv +0x00000071011f6cd8,O,000128,_ZN4ksys10TaskThread6resumeEv +0x00000071011f6d58,O,000156,_ZN4ksys10TaskThread19resumeAndWaitForAckEv +0x00000071011f6df4,O,000016,_ZNK4ksys10TaskThread20isBusyProcessingTaskEv +0x00000071011f6e04,O,000012,_ZNK4ksys10TaskThread16isLookingForTaskEv +0x00000071011f6e10,m,000624,_ZN4ksys10TaskThread5calc_El +0x00000071011f7080,O,000004,_ZN4ksys17TaskPostRunResultD2Ev +0x00000071011f7084,O,000036,_ZNK4ksys10TaskThread16receivedPauseMsgEv +0x00000071011f70a8,O,000036,_ZNK4ksys10TaskThread17receivedResumeMsgEv +0x00000071011f70cc,O,000048,_ZNK4ksys10TaskThread15receivedQuitMsgEv +0x00000071011f70fc,O,000076,_ZN4ksys10TaskThread17cancelCurrentTaskEv +0x00000071011f7148,O,000112,_ZNK4ksys10TaskThread27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071011f71b8,O,000092,_ZNK4ksys10TaskThread18getRuntimeTypeInfoEv +0x00000071011f7214,O,000112,_ZNK4ksys17TaskPostRunResult27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071011f7284,O,000092,_ZNK4ksys17TaskPostRunResult18getRuntimeTypeInfoEv +0x00000071011f72e0,O,000004,_ZN4ksys17TaskPostRunResultD0Ev 0x00000071011f72e4,U,000044, -0x00000071011f7310,O,000060,_ZN4ksys4util11ManagedTaskC1EPN4sead4HeapE -0x00000071011f734c,O,000072,_ZN4ksys4util11ManagedTaskC1EN4sead9IDisposer14HeapNullOptionE -0x00000071011f7394,O,000072,_ZN4ksys4util11ManagedTaskD1Ev -0x00000071011f73dc,O,000080,_ZN4ksys4util11ManagedTaskD0Ev -0x00000071011f742c,O,000016,_ZN4ksys4util11ManagedTask8prepare_EPNS0_11TaskRequestE -0x00000071011f743c,O,000044,_ZN4ksys4util11ManagedTask4run_Ev -0x00000071011f7468,O,000004,_ZN4ksys4util11ManagedTask14onRunFinished_Ev -0x00000071011f746c,O,000100,_ZN4ksys4util11ManagedTask9onFinish_Ev -0x00000071011f74d0,O,000012,_ZN4ksys4util11ManagedTask13onPostFinish_Ev -0x00000071011f74dc,O,000088,_ZN4ksys4util11ManagedTask10preRemove_Ev -0x00000071011f7534,O,000012,_ZN4ksys4util11ManagedTask11postRemove_Ev -0x00000071011f7540,O,000004,_ZN4ksys4util11ManagedTask6onRun_Ev -0x00000071011f7544,O,000004,_ZN4ksys4util11ManagedTask12prepareImpl_EPNS0_11TaskRequestE -0x00000071011f7548,O,000004,_ZN4ksys4util11ManagedTask14preRemoveImpl_Ev -0x00000071011f754c,O,000008,_ZNK4ksys4util11ManagedTask6isIdleEv -0x00000071011f7554,O,000008,_ZN4ksys4util11ManagedTask6setMgrEPNS0_7TaskMgrE -0x00000071011f755c,O,000084,_ZN4ksys4util11ManagedTask12attachHandleEPNS0_17ManagedTaskHandleEPNS0_13TaskQueueBaseE -0x00000071011f75b0,m,000128,_ZN4ksys4util11ManagedTask12detachHandleEv -0x00000071011f7630,O,000204,_ZNK4ksys4util11ManagedTask27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071011f76fc,O,000092,_ZNK4ksys4util11ManagedTask18getRuntimeTypeInfoEv -0x00000071011f7758,O,000068,_ZN4ksys4util14GameTaskThreadC1ERKN4sead14SafeStringBaseIcEEPNS2_4HeapEiNS2_12MessageQueue9BlockTypeElii -0x00000071011f779c,O,000028,_ZN4ksys4util14GameTaskThreadD2Ev -0x00000071011f77b8,O,000060,_ZN4ksys4util14GameTaskThreadD0Ev -0x00000071011f77f4,O,000052,_ZN4ksys4util14GameTaskThread4quitEb +0x00000071011f7310,O,000060,_ZN4ksys11ManagedTaskC1EPN4sead4HeapE +0x00000071011f734c,O,000072,_ZN4ksys11ManagedTaskC1EN4sead9IDisposer14HeapNullOptionE +0x00000071011f7394,O,000072,_ZN4ksys11ManagedTaskD1Ev +0x00000071011f73dc,O,000080,_ZN4ksys11ManagedTaskD0Ev +0x00000071011f742c,O,000016,_ZN4ksys11ManagedTask8prepare_EPNS_11TaskRequestE +0x00000071011f743c,O,000044,_ZN4ksys11ManagedTask4run_Ev +0x00000071011f7468,O,000004,_ZN4ksys11ManagedTask14onRunFinished_Ev +0x00000071011f746c,O,000100,_ZN4ksys11ManagedTask9onFinish_Ev +0x00000071011f74d0,O,000012,_ZN4ksys11ManagedTask13onPostFinish_Ev +0x00000071011f74dc,O,000088,_ZN4ksys11ManagedTask10preRemove_Ev +0x00000071011f7534,O,000012,_ZN4ksys11ManagedTask11postRemove_Ev +0x00000071011f7540,O,000004,_ZN4ksys11ManagedTask6onRun_Ev +0x00000071011f7544,O,000004,_ZN4ksys11ManagedTask12prepareImpl_EPNS_11TaskRequestE +0x00000071011f7548,O,000004,_ZN4ksys11ManagedTask14preRemoveImpl_Ev +0x00000071011f754c,O,000008,_ZNK4ksys11ManagedTask6isIdleEv +0x00000071011f7554,O,000008,_ZN4ksys11ManagedTask6setMgrEPNS_7TaskMgrE +0x00000071011f755c,O,000084,_ZN4ksys11ManagedTask12attachHandleEPNS_17ManagedTaskHandleEPNS_13TaskQueueBaseE +0x00000071011f75b0,m,000128,_ZN4ksys11ManagedTask12detachHandleEv +0x00000071011f7630,O,000204,_ZNK4ksys11ManagedTask27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071011f76fc,O,000092,_ZNK4ksys11ManagedTask18getRuntimeTypeInfoEv +0x00000071011f7758,O,000068,_ZN4ksys14GameTaskThreadC1ERKN4sead14SafeStringBaseIcEEPNS1_4HeapEiNS1_12MessageQueue9BlockTypeElii +0x00000071011f779c,O,000028,_ZN4ksys14GameTaskThreadD2Ev +0x00000071011f77b8,O,000060,_ZN4ksys14GameTaskThreadD0Ev +0x00000071011f77f4,O,000052,_ZN4ksys14GameTaskThread4quitEb 0x00000071011f7828,U,000164,ThreadDerived::calc_ -0x00000071011f78cc,O,000204,_ZNK4ksys4util14GameTaskThread27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071011f7998,O,000092,_ZNK4ksys4util14GameTaskThread18getRuntimeTypeInfoEv -0x00000071011f79f4,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys4util10TaskThreadEE9isDerivedEPKNS0_9InterfaceE -0x00000071011f7a80,O,000020,_ZN4ksys4util18TaskDelegateSetterC1Ev -0x00000071011f7a94,O,000004,_ZN4ksys4util18TaskDelegateSetterD1Ev -0x00000071011f7a98,O,000004,_ZN4ksys4util18TaskDelegateSetterD0Ev -0x00000071011f7a9c,O,000008,_ZN4ksys4util18TaskDelegateSetter11setDelegateEPN4sead11IDelegate1RIPvbEE -0x00000071011f7aa4,O,000120,_ZN4ksys4util4TaskC1EPN4sead4HeapE -0x00000071011f7b1c,O,000120,_ZN4ksys4util4TaskC1EPN4sead4HeapENS2_9IDisposer14HeapNullOptionE -0x00000071011f7b94,m,000132,_ZN4ksys4util4TaskD1Ev -0x00000071011f7c18,m,000112,_ZN4ksys4util4Task9finalize_Ev -0x00000071011f7c88,m,000140,_ZN4ksys4util4TaskD0Ev -0x00000071011f7d14,O,000036,_ZN4ksys4util4Task11setDelegateERKNS0_18TaskDelegateSetterE -0x00000071011f7d38,m,000544,_ZN4ksys4util4Task13submitRequestERNS0_11TaskRequestE -0x00000071011f7f58,O,000124,_ZNK4ksys4util4Task16canSubmitRequestEv -0x00000071011f7fd4,O,000008,_ZN4ksys4util4Task11setUserDataEPv -0x00000071011f7fdc,O,000088,_ZN4ksys4util4Task20setDelegateInternal_EPN4sead11IDelegate1RIPvbEE -0x00000071011f8034,O,000360,_ZN4ksys4util4Task30processOnCurrentThreadDirectlyEPNS0_10TaskThreadE -0x00000071011f819c,O,000028,_ZN4ksys4util4Task15removeFromQueueEv -0x00000071011f81b8,O,000028,_ZN4ksys4util4Task16removeFromQueue2Ev -0x00000071011f81d4,O,000028,_ZN4ksys4util4Task4waitEv -0x00000071011f81f0,O,000012,_ZN4ksys4util4Task4waitERKN4sead8TickSpanE -0x00000071011f81fc,O,000008,_ZNK4ksys4util4Task9getLaneIdEv -0x00000071011f8204,O,000040,_ZNK4ksys4util4Task9isSuccessEv -0x00000071011f822c,O,000040,_ZNK4ksys4util4Task10isInactiveEv -0x00000071011f8254,O,000012,_ZN4ksys4util4Task15setStatusPushedEv -0x00000071011f8260,O,000008,_ZN4ksys4util4Task9setThreadEPNS0_10TaskThreadE -0x00000071011f8268,O,000048,_ZN4ksys4util4Task3runEv -0x00000071011f8298,O,000012,_ZN4ksys4util4Task13onRunFinishedEv -0x00000071011f82a4,O,000100,_ZN4ksys4util4Task21invokePostRunCallbackEPNS0_17TaskPostRunResultE -0x00000071011f8308,O,000100,_ZN4ksys4util4Task6finishEv -0x00000071011f836c,O,000008,_ZN4ksys4util4Task14onSetDelegate_ERKNS0_18TaskDelegateSetterE -0x00000071011f8374,O,000004,_ZN4ksys4util4Task8prepare_EPNS0_11TaskRequestE -0x00000071011f8378,O,000060,_ZN4ksys4util4Task4run_Ev -0x00000071011f83b4,O,000004,_ZN4ksys4util4Task14onRunFinished_Ev -0x00000071011f83b8,O,000004,_ZN4ksys4util4Task9onFinish_Ev -0x00000071011f83bc,O,000004,_ZN4ksys4util4Task13onPostFinish_Ev -0x00000071011f83c0,O,000004,_ZN4ksys4util4Task10preRemove_Ev -0x00000071011f83c4,O,000004,_ZN4ksys4util4Task11postRemove_Ev -0x00000071011f83c8,O,000008,_ZNK4ksys4util4Task11getUserDataEv -0x00000071011f83d0,O,000052,_ZN4ksys4util4Task6cancelEv -0x00000071011f8404,O,000192,_ZN4ksys4util4Task8onRemoveEv -0x00000071011f84c4,O,000004,_ZN4ksys4util25TaskRemoveCallbackContextD2Ev -0x00000071011f84c8,O,000004,_ZN4ksys4util18TaskPostRunContextD2Ev -0x00000071011f84cc,O,000012,_ZN4ksys4util4Task16setStatusFetchedEv -0x00000071011f84d8,O,000008,_ZN4ksys4util4Task9setLaneIdEh -0x00000071011f84e0,O,000112,_ZNK4ksys4util18TaskDelegateSetter27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071011f8550,O,000092,_ZNK4ksys4util18TaskDelegateSetter18getRuntimeTypeInfoEv -0x00000071011f85ac,O,000112,_ZNK4ksys4util4Task27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071011f861c,O,000092,_ZNK4ksys4util4Task18getRuntimeTypeInfoEv -0x00000071011f8678,O,000112,_ZNK4ksys4util25TaskRemoveCallbackContext27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071011f86e8,O,000092,_ZNK4ksys4util25TaskRemoveCallbackContext18getRuntimeTypeInfoEv -0x00000071011f8744,O,000004,_ZN4ksys4util25TaskRemoveCallbackContextD0Ev -0x00000071011f8748,O,000112,_ZNK4ksys4util18TaskPostRunContext27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071011f87b8,O,000092,_ZNK4ksys4util18TaskPostRunContext18getRuntimeTypeInfoEv -0x00000071011f8814,O,000004,_ZN4ksys4util18TaskPostRunContextD0Ev -0x00000071011f8818,O,000172,_ZN4ksys4util7TaskMgrC1EPN4sead4HeapE -0x00000071011f88c4,O,000080,_ZN4ksys4util7TaskMgrD1Ev -0x00000071011f8914,O,000196,_ZN4ksys4util7TaskMgr8finalizeEv -0x00000071011f89d8,O,000088,_ZN4ksys4util7TaskMgrD0Ev -0x00000071011f8a30,O,000408,_ZN4ksys4util7TaskMgr13submitRequestERNS0_14TaskMgrRequestE -0x00000071011f8bc8,m,000276,_ZN4ksys4util7TaskMgr24fetchIdleTaskForRequest_ERNS0_14TaskMgrRequestEb -0x00000071011f8cdc,O,000112,_ZN4ksys4util7TaskMgr8freeTaskEPNS0_11ManagedTaskE -0x00000071011f8d4c,O,000460,_ZN4ksys4util7TaskMgr16trySubmitRequestERNS0_14TaskMgrRequestE -0x00000071011f8f18,m,000380,_ZN4ksys4util7TaskMgr4initEiPN4sead4HeapERNS2_10IDelegate1IPPNS0_11ManagedTaskEEE -0x00000071011f9094,O,000016,_ZNK4ksys4util7TaskMgr8hasTasksEv -0x00000071011f90a4,O,000428,_ZN4ksys4util7TaskMgr14fetchIdleTask_Eb -0x00000071011f9250,O,000112,_ZNK4ksys4util7TaskMgr27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071011f92c0,O,000092,_ZNK4ksys4util7TaskMgr18getRuntimeTypeInfoEv +0x00000071011f78cc,O,000204,_ZNK4ksys14GameTaskThread27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071011f7998,O,000092,_ZNK4ksys14GameTaskThread18getRuntimeTypeInfoEv +0x00000071011f79f4,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys10TaskThreadEE9isDerivedEPKNS0_9InterfaceE +0x00000071011f7a80,O,000020,_ZN4ksys18TaskDelegateSetterC1Ev +0x00000071011f7a94,O,000004,_ZN4ksys18TaskDelegateSetterD1Ev +0x00000071011f7a98,O,000004,_ZN4ksys18TaskDelegateSetterD0Ev +0x00000071011f7a9c,O,000008,_ZN4ksys18TaskDelegateSetter11setDelegateEPN4sead11IDelegate1RIPvbEE +0x00000071011f7aa4,O,000120,_ZN4ksys4TaskC1EPN4sead4HeapE +0x00000071011f7b1c,O,000120,_ZN4ksys4TaskC1EPN4sead4HeapENS1_9IDisposer14HeapNullOptionE +0x00000071011f7b94,m,000132,_ZN4ksys4TaskD1Ev +0x00000071011f7c18,m,000112,_ZN4ksys4Task9finalize_Ev +0x00000071011f7c88,m,000140,_ZN4ksys4TaskD0Ev +0x00000071011f7d14,O,000036,_ZN4ksys4Task11setDelegateERKNS_18TaskDelegateSetterE +0x00000071011f7d38,m,000544,_ZN4ksys4Task13submitRequestERNS_11TaskRequestE +0x00000071011f7f58,O,000124,_ZNK4ksys4Task16canSubmitRequestEv +0x00000071011f7fd4,O,000008,_ZN4ksys4Task11setUserDataEPv +0x00000071011f7fdc,O,000088,_ZN4ksys4Task20setDelegateInternal_EPN4sead11IDelegate1RIPvbEE +0x00000071011f8034,O,000360,_ZN4ksys4Task30processOnCurrentThreadDirectlyEPNS_10TaskThreadE +0x00000071011f819c,O,000028,_ZN4ksys4Task15removeFromQueueEv +0x00000071011f81b8,O,000028,_ZN4ksys4Task16removeFromQueue2Ev +0x00000071011f81d4,O,000028,_ZN4ksys4Task4waitEv +0x00000071011f81f0,O,000012,_ZN4ksys4Task4waitERKN4sead8TickSpanE +0x00000071011f81fc,O,000008,_ZNK4ksys4Task9getLaneIdEv +0x00000071011f8204,O,000040,_ZNK4ksys4Task9isSuccessEv +0x00000071011f822c,O,000040,_ZNK4ksys4Task10isInactiveEv +0x00000071011f8254,O,000012,_ZN4ksys4Task15setStatusPushedEv +0x00000071011f8260,O,000008,_ZN4ksys4Task9setThreadEPNS_10TaskThreadE +0x00000071011f8268,O,000048,_ZN4ksys4Task3runEv +0x00000071011f8298,O,000012,_ZN4ksys4Task13onRunFinishedEv +0x00000071011f82a4,O,000100,_ZN4ksys4Task21invokePostRunCallbackEPNS_17TaskPostRunResultE +0x00000071011f8308,O,000100,_ZN4ksys4Task6finishEv +0x00000071011f836c,O,000008,_ZN4ksys4Task14onSetDelegate_ERKNS_18TaskDelegateSetterE +0x00000071011f8374,O,000004,_ZN4ksys4Task8prepare_EPNS_11TaskRequestE +0x00000071011f8378,O,000060,_ZN4ksys4Task4run_Ev +0x00000071011f83b4,O,000004,_ZN4ksys4Task14onRunFinished_Ev +0x00000071011f83b8,O,000004,_ZN4ksys4Task9onFinish_Ev +0x00000071011f83bc,O,000004,_ZN4ksys4Task13onPostFinish_Ev +0x00000071011f83c0,O,000004,_ZN4ksys4Task10preRemove_Ev +0x00000071011f83c4,O,000004,_ZN4ksys4Task11postRemove_Ev +0x00000071011f83c8,O,000008,_ZNK4ksys4Task11getUserDataEv +0x00000071011f83d0,O,000052,_ZN4ksys4Task6cancelEv +0x00000071011f8404,O,000192,_ZN4ksys4Task8onRemoveEv +0x00000071011f84c4,O,000004,_ZN4ksys25TaskRemoveCallbackContextD2Ev +0x00000071011f84c8,O,000004,_ZN4ksys18TaskPostRunContextD2Ev +0x00000071011f84cc,O,000012,_ZN4ksys4Task16setStatusFetchedEv +0x00000071011f84d8,O,000008,_ZN4ksys4Task9setLaneIdEh +0x00000071011f84e0,O,000112,_ZNK4ksys18TaskDelegateSetter27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071011f8550,O,000092,_ZNK4ksys18TaskDelegateSetter18getRuntimeTypeInfoEv +0x00000071011f85ac,O,000112,_ZNK4ksys4Task27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071011f861c,O,000092,_ZNK4ksys4Task18getRuntimeTypeInfoEv +0x00000071011f8678,O,000112,_ZNK4ksys25TaskRemoveCallbackContext27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071011f86e8,O,000092,_ZNK4ksys25TaskRemoveCallbackContext18getRuntimeTypeInfoEv +0x00000071011f8744,O,000004,_ZN4ksys25TaskRemoveCallbackContextD0Ev +0x00000071011f8748,O,000112,_ZNK4ksys18TaskPostRunContext27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071011f87b8,O,000092,_ZNK4ksys18TaskPostRunContext18getRuntimeTypeInfoEv +0x00000071011f8814,O,000004,_ZN4ksys18TaskPostRunContextD0Ev +0x00000071011f8818,O,000172,_ZN4ksys7TaskMgrC1EPN4sead4HeapE +0x00000071011f88c4,O,000080,_ZN4ksys7TaskMgrD1Ev +0x00000071011f8914,O,000196,_ZN4ksys7TaskMgr8finalizeEv +0x00000071011f89d8,O,000088,_ZN4ksys7TaskMgrD0Ev +0x00000071011f8a30,O,000408,_ZN4ksys7TaskMgr13submitRequestERNS_14TaskMgrRequestE +0x00000071011f8bc8,m,000276,_ZN4ksys7TaskMgr24fetchIdleTaskForRequest_ERNS_14TaskMgrRequestEb +0x00000071011f8cdc,O,000112,_ZN4ksys7TaskMgr8freeTaskEPNS_11ManagedTaskE +0x00000071011f8d4c,O,000460,_ZN4ksys7TaskMgr16trySubmitRequestERNS_14TaskMgrRequestE +0x00000071011f8f18,m,000380,_ZN4ksys7TaskMgr4initEiPN4sead4HeapERNS1_10IDelegate1IPPNS_11ManagedTaskEEE +0x00000071011f9094,O,000016,_ZNK4ksys7TaskMgr8hasTasksEv +0x00000071011f90a4,O,000428,_ZN4ksys7TaskMgr14fetchIdleTask_Eb +0x00000071011f9250,O,000112,_ZNK4ksys7TaskMgr27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071011f92c0,O,000092,_ZNK4ksys7TaskMgr18getRuntimeTypeInfoEv 0x00000071011f931c,U,000012,SeadController::getInstance 0x00000071011f9328,U,000012,SeadController::setInstance 0x00000071011f9334,U,000012, @@ -93771,7 +93771,7 @@ Address,Quality,Size,Name 0x0000007101209c54,U,000388,_ZN4ksys3res15ResourceMgrTask20requestUnloadForSyncEPNS0_6HandleE 0x0000007101209dd8,O,000128,_ZN4ksys3res15ResourceMgrTask12registerUnitEPNS0_12ResourceUnitE 0x0000007101209e58,O,000128,_ZN4ksys3res15ResourceMgrTask14deregisterUnitEPNS0_12ResourceUnitE -0x0000007101209ed8,O,000464,_ZN4ksys3res15ResourceMgrTask17requestClearCacheEPPNS0_12ResourceUnitEPNS_4util4TaskE +0x0000007101209ed8,O,000464,_ZN4ksys3res15ResourceMgrTask17requestClearCacheEPPNS0_12ResourceUnitEPNS_4TaskE 0x000000710120a0a8,O,000524,_ZN4ksys3res15ResourceMgrTask24requestClearCacheForSyncEPPNS0_12ResourceUnitEbb 0x000000710120a2b4,O,000144,_ZN4ksys3res15ResourceMgrTask10deleteUnitERPNS0_12ResourceUnitEb 0x000000710120a344,O,000400,_ZN4ksys3res15ResourceMgrTask17requestDeleteUnitEPPNS0_12ResourceUnitE @@ -93835,14 +93835,14 @@ Address,Quality,Size,Name 0x000000710120cc20,O,000016,_ZN4ksys3res7Counter10doSetData_ERKNS0_11CounterBase4DataE 0x000000710120cc30,O,000024,_ZN4sead14Delegate1RFuncIPvbE6invokeES1_ 0x000000710120cc48,O,000076,_ZNK4sead14Delegate1RFuncIPvbE5cloneEPNS_4HeapE -0x000000710120cc94,O,000024,_ZN4sead13Delegate2FuncIPN4ksys4util17TaskPostRunResultERKNS2_18TaskPostRunContextEE6invokeES4_S7_ -0x000000710120ccac,O,000076,_ZNK4sead13Delegate2FuncIPN4ksys4util17TaskPostRunResultERKNS2_18TaskPostRunContextEE5cloneEPNS_4HeapE +0x000000710120cc94,O,000024,_ZN4sead13Delegate2FuncIPN4ksys17TaskPostRunResultERKNS1_18TaskPostRunContextEE6invokeES3_S6_ +0x000000710120ccac,O,000076,_ZNK4sead13Delegate2FuncIPN4ksys17TaskPostRunResultERKNS1_18TaskPostRunContextEE5cloneEPNS_4HeapE 0x000000710120ccf8,O,000052,_ZN4sead10Delegate1RIN4ksys3res15ResourceMgrTaskEPvbE6invokeES4_ 0x000000710120cd2c,O,000092,_ZNK4sead10Delegate1RIN4ksys3res15ResourceMgrTaskEPvbE5cloneEPNS_4HeapE -0x000000710120cd88,O,000048,_ZN4sead9Delegate2IN4ksys3res15ResourceMgrTaskEPNS1_4util17TaskPostRunResultERKNS4_18TaskPostRunContextEE6invokeES6_S9_ -0x000000710120cdb8,O,000092,_ZNK4sead9Delegate2IN4ksys3res15ResourceMgrTaskEPNS1_4util17TaskPostRunResultERKNS4_18TaskPostRunContextEE5cloneEPNS_4HeapE -0x000000710120ce14,O,000048,_ZN4sead9Delegate1IN4ksys3res15ResourceMgrTaskERKNS1_4util25TaskRemoveCallbackContextEE6invokeES7_ -0x000000710120ce44,O,000092,_ZNK4sead9Delegate1IN4ksys3res15ResourceMgrTaskERKNS1_4util25TaskRemoveCallbackContextEE5cloneEPNS_4HeapE +0x000000710120cd88,O,000048,_ZN4sead9Delegate2IN4ksys3res15ResourceMgrTaskEPNS1_17TaskPostRunResultERKNS1_18TaskPostRunContextEE6invokeES5_S8_ +0x000000710120cdb8,O,000092,_ZNK4sead9Delegate2IN4ksys3res15ResourceMgrTaskEPNS1_17TaskPostRunResultERKNS1_18TaskPostRunContextEE5cloneEPNS_4HeapE +0x000000710120ce14,O,000048,_ZN4sead9Delegate1IN4ksys3res15ResourceMgrTaskERKNS1_25TaskRemoveCallbackContextEE6invokeES6_ +0x000000710120ce44,O,000092,_ZNK4sead9Delegate1IN4ksys3res15ResourceMgrTaskERKNS1_25TaskRemoveCallbackContextEE5cloneEPNS_4HeapE 0x000000710120cea0,U,000060,makeEventResourceLoadArg 0x000000710120cedc,U,000060, 0x000000710120cf18,U,000048, @@ -95199,18 +95199,18 @@ Address,Quality,Size,Name 0x000000710127a374,O,000052,_ZN4sead10Delegate1RIN4ksys3act15BaseProcDeleterEPvbE6invokeES4_ 0x000000710127a3a8,O,000092,_ZNK4sead10Delegate1RIN4ksys3act15BaseProcDeleterEPvbE5cloneEPNS_4HeapE 0x000000710127a404,U,000080, -0x000000710127a454,O,000100,_ZN4ksys4util16LowPrioThreadMgr18SingletonDisposer_D1Ev -0x000000710127a4b8,O,000108,_ZN4ksys4util16LowPrioThreadMgr18SingletonDisposer_D0Ev -0x000000710127a524,O,000152,_ZN4ksys4util16LowPrioThreadMgr14createInstanceEPN4sead4HeapE -0x000000710127a5bc,O,000256,_ZN4ksys4util16LowPrioThreadMgrD1Ev -0x000000710127a6bc,O,000252,_ZN4ksys4util16LowPrioThreadMgrD0Ev -0x000000710127a7b8,O,000508,_ZN4ksys4util16LowPrioThreadMgr11startThreadERKNS1_7InitArgE -0x000000710127a9b4,O,000412,_ZN4ksys4util16LowPrioThreadMgr13submitRequestERKNS1_7RequestE -0x000000710127ab50,O,000120,_ZN4ksys4util16LowPrioThreadMgr13pauseAllTasksEv -0x000000710127abc8,O,000120,_ZN4ksys4util16LowPrioThreadMgr14resumeAllTasksEv -0x000000710127ac40,O,000004,_ZN4ksys4util16LowPrioThreadMgr14sub_710127AC40Ev -0x000000710127ac44,O,000112,_ZNK4ksys4util16LowPrioThreadMgr27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x000000710127acb4,O,000092,_ZNK4ksys4util16LowPrioThreadMgr18getRuntimeTypeInfoEv +0x000000710127a454,O,000100,_ZN4ksys16LowPrioThreadMgr18SingletonDisposer_D1Ev +0x000000710127a4b8,O,000108,_ZN4ksys16LowPrioThreadMgr18SingletonDisposer_D0Ev +0x000000710127a524,O,000152,_ZN4ksys16LowPrioThreadMgr14createInstanceEPN4sead4HeapE +0x000000710127a5bc,O,000256,_ZN4ksys16LowPrioThreadMgrD1Ev +0x000000710127a6bc,O,000252,_ZN4ksys16LowPrioThreadMgrD0Ev +0x000000710127a7b8,O,000508,_ZN4ksys16LowPrioThreadMgr11startThreadERKNS0_7InitArgE +0x000000710127a9b4,O,000412,_ZN4ksys16LowPrioThreadMgr13submitRequestERKNS0_7RequestE +0x000000710127ab50,O,000120,_ZN4ksys16LowPrioThreadMgr13pauseAllTasksEv +0x000000710127abc8,O,000120,_ZN4ksys16LowPrioThreadMgr14resumeAllTasksEv +0x000000710127ac40,O,000004,_ZN4ksys16LowPrioThreadMgr14sub_710127AC40Ev +0x000000710127ac44,O,000112,_ZNK4ksys16LowPrioThreadMgr27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x000000710127acb4,O,000092,_ZNK4ksys16LowPrioThreadMgr18getRuntimeTypeInfoEv 0x000000710127ad10,O,000140,_ZN4ksys3res12GameSaveData4File11forEachFlagERKN4sead9Delegate1INS_7SaveMgrERKNS1_4FlagEEE 0x000000710127ad9c,O,000164,_ZN4ksys3res12GameSaveData4File11forEachFlagERKN4sead9Delegate1INS_7SaveMgrERKNS1_4FlagEEEii 0x000000710127ae40,O,000140,_ZN4ksys3res12GameSaveData4File11forEachFlagERKN4sead9Delegate1INS_7SaveMgrERNS1_4FlagEEE @@ -96166,14 +96166,14 @@ Address,Quality,Size,Name 0x00000071012bb050,O,000072,_ZN4ksys3res11ControlTaskD2Ev 0x00000071012bb098,O,000020,_ZN4ksys3res15ControlTaskDataD2Ev 0x00000071012bb0ac,O,000080,_ZN4ksys3res11ControlTaskD0Ev -0x00000071012bb0fc,O,000368,_ZN4ksys3res11ControlTask12prepareImpl_EPNS_4util11TaskRequestE +0x00000071012bb0fc,O,000368,_ZN4ksys3res11ControlTask12prepareImpl_EPNS_11TaskRequestE 0x00000071012bb26c,O,000004,_ZN4ksys3res11ControlTask6onRun_Ev 0x00000071012bb270,O,000032,_ZN4ksys3res11ControlTask14preRemoveImpl_Ev 0x00000071012bb290,O,000156,_ZN4ksys3res10MemoryTaskC1EPN4sead4HeapE 0x00000071012bb32c,O,000020,_ZN4ksys3res10MemoryTaskD2Ev 0x00000071012bb340,O,000004,_ZN4ksys3res14MemoryTaskDataD2Ev 0x00000071012bb344,O,000052,_ZN4ksys3res10MemoryTaskD0Ev -0x00000071012bb378,O,000260,_ZN4ksys3res10MemoryTask12prepareImpl_EPNS_4util11TaskRequestE +0x00000071012bb378,O,000260,_ZN4ksys3res10MemoryTask12prepareImpl_EPNS_11TaskRequestE 0x00000071012bb47c,O,000004,_ZN4ksys3res10MemoryTask6onRun_Ev 0x00000071012bb480,O,000032,_ZN4ksys3res10MemoryTask14preRemoveImpl_Ev 0x00000071012bb4a0,O,000288,_ZNK4ksys3res11ControlTask27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE @@ -97452,14 +97452,14 @@ Address,Quality,Size,Name 0x00000071012fd5f0,O,000004,_ZN4ksys16MessageProcessorD1Ev 0x00000071012fd5f4,O,000004,_ZN4ksys16MessageProcessorD0Ev 0x00000071012fd5f8,O,000532,_ZN4ksys16MessageProcessor7processEPNS_7MessageE -0x00000071012fd80c,O,000060,_ZN4ksys4util9TaskQueueC1EPN4sead4HeapE -0x00000071012fd848,O,000052,_ZN4ksys4util9TaskQueueD2Ev -0x00000071012fd87c,O,000060,_ZN4ksys4util9TaskQueueD0Ev -0x00000071012fd8b8,O,000008,_ZNK4ksys4util9TaskQueue4lockEv -0x00000071012fd8c0,O,000008,_ZNK4ksys4util9TaskQueue6unlockEv -0x00000071012fd8c8,O,000204,_ZNK4ksys4util9TaskQueue27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE -0x00000071012fd994,O,000092,_ZNK4ksys4util9TaskQueue18getRuntimeTypeInfoEv -0x00000071012fd9f0,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys4util13TaskQueueBaseEE9isDerivedEPKNS0_9InterfaceE +0x00000071012fd80c,O,000060,_ZN4ksys9TaskQueueC1EPN4sead4HeapE +0x00000071012fd848,O,000052,_ZN4ksys9TaskQueueD2Ev +0x00000071012fd87c,O,000060,_ZN4ksys9TaskQueueD0Ev +0x00000071012fd8b8,O,000008,_ZNK4ksys9TaskQueue4lockEv +0x00000071012fd8c0,O,000008,_ZNK4ksys9TaskQueue6unlockEv +0x00000071012fd8c8,O,000204,_ZNK4ksys9TaskQueue27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE +0x00000071012fd994,O,000092,_ZNK4ksys9TaskQueue18getRuntimeTypeInfoEv +0x00000071012fd9f0,O,000140,_ZNK4sead15RuntimeTypeInfo6DeriveIN4ksys13TaskQueueBaseEE9isDerivedEPKNS0_9InterfaceE 0x00000071012fda7c,U,000488, 0x00000071012fdc64,U,000528, 0x00000071012fde74,U,000072, @@ -97572,7 +97572,7 @@ Address,Quality,Size,Name 0x0000007101304f14,O,000400,_ZN4ksys3act18BaseProcCreateTask21onTaskDelegateInvokedEPv 0x00000071013050a4,O,000088,_ZN4ksys3act18BaseProcCreateTask24onBaseProcCreationFailedEPNS0_8BaseProcEb 0x00000071013050fc,O,000688,_ZN4ksys3act18BaseProcCreateTask9doPrepareEPKNS0_22BaseProcCreateTaskDataE -0x00000071013053ac,O,000152,_ZN4ksys3act18BaseProcCreateTask12prepareImpl_EPNS_4util11TaskRequestE +0x00000071013053ac,O,000152,_ZN4ksys3act18BaseProcCreateTask12prepareImpl_EPNS_11TaskRequestE 0x0000007101305444,O,000288,_ZNK4ksys3act18BaseProcCreateTask27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE 0x0000007101305564,O,000092,_ZNK4ksys3act18BaseProcCreateTask18getRuntimeTypeInfoEv 0x00000071013055c0,O,000056,_ZN4ksys3act18BaseProcCreateTaskD2Ev @@ -97584,7 +97584,7 @@ Address,Quality,Size,Name 0x0000007101305730,O,000260,_ZN4ksys3act19BaseProcInitializerD1Ev 0x0000007101305834,O,000036,_ZN4ksys3act19BaseProcInitializerD0Ev 0x0000007101305858,O,000960,_ZN4ksys3act19BaseProcInitializer4initEPN4sead4HeapERKNS0_23BaseProcInitializerArgsE -0x0000007101305c18,O,000224,_ZN4ksys4util7TaskMgr16initAndCheckTypeINS_3act18BaseProcCreateTaskEEEviPN4sead4HeapE +0x0000007101305c18,O,000224,_ZN4ksys7TaskMgr16initAndCheckTypeINS_3act18BaseProcCreateTaskEEEviPN4sead4HeapE 0x0000007101305cf8,O,000100,_ZN4ksys3act19BaseProcInitializer20deleteThreadIfPausedEv 0x0000007101305d5c,O,000348,_ZN4ksys3act19BaseProcInitializer21requestCreateBaseProcERKNS0_21BaseProcCreateRequestE 0x0000007101305eb8,O,000368,_ZN4ksys3act19BaseProcInitializer14createBaseProcERKNS0_21BaseProcCreateRequestE @@ -97599,12 +97599,12 @@ Address,Quality,Size,Name 0x00000071013063d8,O,000060,_ZN4ksys3act19BaseProcInitializer24waitForTaskQueuesToEmptyEv 0x0000007101306414,O,000284,_ZN4ksys3act19BaseProcInitializer11cancelTasksEv 0x0000007101306530,O,000092,_ZNK4ksys3act19BaseProcInitializer12getQueueSizeEi -0x000000710130658c,O,000160,_ZN4ksys3act19BaseProcInitializer13removeTasksIfERN4sead11IDelegate1RIPNS_4util4TaskEbEE +0x000000710130658c,O,000160,_ZN4ksys3act19BaseProcInitializer13removeTasksIfERN4sead11IDelegate1RIPNS_4TaskEbEE 0x000000710130662c,O,000012,_ZN4ksys3act19BaseProcInitializer25setActorGenerationEnabledEb 0x0000007101306638,O,000204,_ZNK4ksys3act25BaseProcCreateTaskRequest27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE 0x0000007101306704,O,000092,_ZNK4ksys3act25BaseProcCreateTaskRequest18getRuntimeTypeInfoEv 0x0000007101306760,O,000004,_ZN4ksys3act25BaseProcCreateTaskRequestD0Ev -0x0000007101306764,O,000060,_ZN4ksys4util7TaskMgr13makeTaskType_INS_3act18BaseProcCreateTaskEEEvPPNS0_11ManagedTaskE +0x0000007101306764,O,000060,_ZN4ksys7TaskMgr13makeTaskType_INS_3act18BaseProcCreateTaskEEEvPPNS_11ManagedTaskE 0x00000071013067a0,U,000064, 0x00000071013067e0,O,000160,_ZN4ksys3act14BaseProcJobQueC1Ev 0x0000007101306880,O,000108,_ZN4ksys3act14BaseProcJobQueD1Ev diff --git a/src/Game/Actor/Query/queryHasPorchArrow.cpp b/src/Game/Actor/Query/queryHasPorchArrow.cpp index 7867b388..e0d53e32 100644 --- a/src/Game/Actor/Query/queryHasPorchArrow.cpp +++ b/src/Game/Actor/Query/queryHasPorchArrow.cpp @@ -1,6 +1,6 @@ #include "Game/Actor/Query/queryHasPorchArrow.h" #include -#include "Game/UI/uiUtils.h" +#include "KingSystem/System/UIGlue.h" namespace uking::query { @@ -9,9 +9,9 @@ HasPorchArrow::HasPorchArrow(const InitArg& arg) : ksys::act::ai::Query(arg) {} HasPorchArrow::~HasPorchArrow() = default; int HasPorchArrow::doQuery() { - s32 arrow_cnt = ui::getItemValue("NormalArrow") + ui::getItemValue("FireArrow") + - ui::getItemValue("IceArrow") + ui::getItemValue("ElectricArrow") + - ui::getItemValue("BombArrow_A") + ui::getItemValue("AncientArrow"); + s32 arrow_cnt = ksys::ui::getItemValue("NormalArrow") + ksys::ui::getItemValue("FireArrow") + + ksys::ui::getItemValue("IceArrow") + ksys::ui::getItemValue("ElectricArrow") + + ksys::ui::getItemValue("BombArrow_A") + ksys::ui::getItemValue("AncientArrow"); return arrow_cnt < *mCheckNum; } diff --git a/src/Game/Actor/Query/queryHasPorchItem.cpp b/src/Game/Actor/Query/queryHasPorchItem.cpp index f8ac4e74..e16d0ac3 100644 --- a/src/Game/Actor/Query/queryHasPorchItem.cpp +++ b/src/Game/Actor/Query/queryHasPorchItem.cpp @@ -1,6 +1,6 @@ #include "Game/Actor/Query/queryHasPorchItem.h" #include -#include "Game/UI/uiUtils.h" +#include "KingSystem/System/UIGlue.h" namespace uking::query { @@ -9,7 +9,7 @@ HasPorchItem::HasPorchItem(const InitArg& arg) : ksys::act::ai::Query(arg) {} HasPorchItem::~HasPorchItem() = default; int HasPorchItem::doQuery() { - return ui::getItemValue(mPorchItemName) >= *mCount; + return ksys::ui::getItemValue(mPorchItemName) >= *mCount; } void HasPorchItem::loadParams(const evfl::QueryArg& arg) { diff --git a/src/Game/UI/uiFadeProgress.cpp b/src/Game/UI/uiFadeProgress.cpp index 87ded166..f448b862 100644 --- a/src/Game/UI/uiFadeProgress.cpp +++ b/src/Game/UI/uiFadeProgress.cpp @@ -1,5 +1,6 @@ #include "Game/UI/uiFadeProgress.h" #include "Game/UI/uiUtils.h" +#include "KingSystem/System/UIGlue.h" namespace uking::ui { @@ -37,7 +38,7 @@ void FadeProgress::updateFadeScreen() { if (new_progress < progress) progress = new_progress; mGaugeValue = progress; - applyScreenFade(progress); + ksys::ui::applyScreenFade(progress); } void FadeProgress::setProgress(float value) { diff --git a/src/Game/UI/uiUtils.h b/src/Game/UI/uiUtils.h index 288b7996..39b66348 100644 --- a/src/Game/UI/uiUtils.h +++ b/src/Game/UI/uiUtils.h @@ -47,11 +47,6 @@ void setShowRaceResult(s32 result_type); int countCookResultsCheck(const sead::SafeString& name, s32 effect_type); int countCookResultsAllOk(const sead::SafeString& name); -int getItemValue(const sead::SafeString& name); - -// TODO: move these to another translation unit (TBD) -// Do not implement until the location is figured out -void applyScreenFade(float progress); act::CreateEquipmentSlot getCreateEquipmentSlot(ui::PouchItemType type); ui::EquipmentSlot getEquipmentSlot(act::CreateEquipmentSlot slot); diff --git a/src/KingSystem/ActorSystem/actActorCreator.cpp b/src/KingSystem/ActorSystem/actActorCreator.cpp index 5bb3303d..32556639 100644 --- a/src/KingSystem/ActorSystem/actActorCreator.cpp +++ b/src/KingSystem/ActorSystem/actActorCreator.cpp @@ -23,7 +23,7 @@ ActorCreator::ActorCreator() { mPlacementMgrHeap = nullptr; } -void ActorCreator::onTaskRemoved(const util::TaskRemoveCallbackContext& context) { +void ActorCreator::onTaskRemoved(const TaskRemoveCallbackContext& context) { if (!context.mTask) return; diff --git a/src/KingSystem/ActorSystem/actActorCreator.h b/src/KingSystem/ActorSystem/actActorCreator.h index 3368e765..7560230d 100644 --- a/src/KingSystem/ActorSystem/actActorCreator.h +++ b/src/KingSystem/ActorSystem/actActorCreator.h @@ -67,7 +67,7 @@ private: InstParamPack* params, bool sleep_after_init, bool = false); BaseProc* doCreateProc(BaseProcCreateArg& arg); - void onTaskRemoved(const util::TaskRemoveCallbackContext& context); + void onTaskRemoved(const TaskRemoveCallbackContext& context); sead::Heap* mForBaseProcDualHeap; sead::Heap* mPlacementMgrHeap; @@ -79,8 +79,7 @@ private: void* _60{}; sead::Delegate1R mCreateProcDelegate{ this, &ActorCreator::doCreateProc}; - util::TaskRemoveCallbackT mTaskRemovedDelegate{this, - &ActorCreator::onTaskRemoved}; + TaskRemoveCallbackT mTaskRemovedDelegate{this, &ActorCreator::onTaskRemoved}; sead::CriticalSection mActorListCS; ActorFactory* mActorFactory; }; diff --git a/src/KingSystem/ActorSystem/actActorParam.h b/src/KingSystem/ActorSystem/actActorParam.h index a1796eca..6e869b57 100644 --- a/src/KingSystem/ActorSystem/actActorParam.h +++ b/src/KingSystem/ActorSystem/actActorParam.h @@ -175,8 +175,8 @@ private: std::array mNumHandles; s32 mRefCount{}; sead::CriticalSection mCS{nullptr}; - util::Event mEvent{nullptr, - sead::IDisposer::HeapNullOption::DoNotAppendDisposerIfNoHeapSpecified, true}; + Event mEvent{nullptr, sead::IDisposer::HeapNullOption::DoNotAppendDisposerIfNoHeapSpecified, + true}; }; KSYS_CHECK_SIZE_NX150(ActorParam, 0x200); diff --git a/src/KingSystem/ActorSystem/actBaseProcCreateTask.cpp b/src/KingSystem/ActorSystem/actBaseProcCreateTask.cpp index b2d623fc..ab52e12a 100644 --- a/src/KingSystem/ActorSystem/actBaseProcCreateTask.cpp +++ b/src/KingSystem/ActorSystem/actBaseProcCreateTask.cpp @@ -75,7 +75,7 @@ void BaseProcCreateTask::doPrepare(const BaseProcCreateTaskData* arg) { }(); } -void BaseProcCreateTask::prepareImpl_(util::TaskRequest* req) { +void BaseProcCreateTask::prepareImpl_(TaskRequest* req) { doPrepare(sead::DynamicCast(req)->mData); setDelegateInternal_(&mTaskDelegate); } diff --git a/src/KingSystem/ActorSystem/actBaseProcCreateTask.h b/src/KingSystem/ActorSystem/actBaseProcCreateTask.h index 50c1c966..fcffd092 100644 --- a/src/KingSystem/ActorSystem/actBaseProcCreateTask.h +++ b/src/KingSystem/ActorSystem/actBaseProcCreateTask.h @@ -33,8 +33,8 @@ struct BaseProcCreateArg { }; KSYS_CHECK_SIZE_NX150(BaseProcCreateArg, 0x58); -class BaseProcCreateTaskData : public util::TaskData { - SEAD_RTTI_OVERRIDE(BaseProcCreateTaskData, util::TaskData) +class BaseProcCreateTaskData : public TaskData { + SEAD_RTTI_OVERRIDE(BaseProcCreateTaskData, TaskData) public: BaseProcCreateTaskData() = default; @@ -53,8 +53,8 @@ public: }; KSYS_CHECK_SIZE_NX150(BaseProcCreateTaskData, 0x68); -class BaseProcCreateTaskRequest : public util::TaskRequest { - SEAD_RTTI_OVERRIDE(BaseProcCreateTaskRequest, util::TaskRequest) +class BaseProcCreateTaskRequest : public TaskRequest { + SEAD_RTTI_OVERRIDE(BaseProcCreateTaskRequest, TaskRequest) public: BaseProcCreateTaskRequest() = default; @@ -62,8 +62,8 @@ public: BaseProcCreateTaskData* mData{}; }; -class BaseProcCreateTask : public util::ManagedTask { - SEAD_RTTI_OVERRIDE(BaseProcCreateTask, util::ManagedTask) +class BaseProcCreateTask : public ManagedTask { + SEAD_RTTI_OVERRIDE(BaseProcCreateTask, ManagedTask) public: enum class LaneId : u8 { @@ -77,7 +77,7 @@ public: void onBaseProcCreationFailed(BaseProc* proc, bool set_flag_5); protected: - void prepareImpl_(util::TaskRequest* req) override; + void prepareImpl_(TaskRequest* req) override; private: friend class BaseProcCreateTaskSelector; @@ -92,8 +92,8 @@ private: sead::IDelegate1R* mCreateDelegate{}; BaseProcUnit* mUnit{}; map::Object* mMapObject{}; - util::TaskDelegateT mTaskDelegate{ - this, &BaseProcCreateTask::onTaskDelegateInvoked}; + TaskDelegateT mTaskDelegate{this, + &BaseProcCreateTask::onTaskDelegateInvoked}; BaseProcLink mLink; f32 mDistanceToLoadSphere = -1.0; InstParamPack::Buffer mParams; diff --git a/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.cpp b/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.cpp index 3609d5a2..397d831a 100644 --- a/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.cpp +++ b/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.cpp @@ -7,9 +7,9 @@ namespace ksys::act { SEAD_SINGLETON_DISPOSER_IMPL(BaseProcCreateTaskSelector) -util::Task* BaseProcCreateTaskSelector::selectTask(const util::TaskSelectionContext& context) { - util::Task* min_task = nullptr; - util::Task* lane1_task = nullptr; +Task* BaseProcCreateTaskSelector::selectTask(const TaskSelectionContext& context) { + Task* min_task = nullptr; + Task* lane1_task = nullptr; auto min = std::numeric_limits::max(); for (auto& it : context) { diff --git a/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.h b/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.h index 40e5da31..9c03e271 100644 --- a/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.h +++ b/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.h @@ -15,9 +15,9 @@ public: auto& getDelegate() { return mDelegate; } private: - util::Task* selectTask(const util::TaskSelectionContext& context); + Task* selectTask(const TaskSelectionContext& context); - util::TaskSelectionDelegateT mDelegate{ + TaskSelectionDelegateT mDelegate{ this, &BaseProcCreateTaskSelector::selectTask}; }; KSYS_CHECK_SIZE_NX150(BaseProcCreateTaskSelector, 0x40); diff --git a/src/KingSystem/ActorSystem/actBaseProcDeleter.cpp b/src/KingSystem/ActorSystem/actBaseProcDeleter.cpp index a83e48d0..5541b11a 100644 --- a/src/KingSystem/ActorSystem/actBaseProcDeleter.cpp +++ b/src/KingSystem/ActorSystem/actBaseProcDeleter.cpp @@ -31,12 +31,12 @@ BaseProcDeleter::~BaseProcDeleter() { void BaseProcDeleter::init(const InitArg& arg) { auto* heap = arg.heap; mTaskQueue = arg.task_queue; - mTaskMgr = new (heap) util::TaskMgr(heap); - mTaskMgr->init(arg.task_queue_size, heap); + mTaskMgr = new (heap) TaskMgr(heap); + mTaskMgr->init(arg.task_queue_size, heap); } bool BaseProcDeleter::requestPreDelete(BaseProc* proc) { - util::TaskRequest request{false}; + TaskRequest request{false}; request.mSynchronous = false; request.mQueue = mTaskQueue; request.mDelegate = &mPreDeleteDelegate; @@ -44,13 +44,13 @@ bool BaseProcDeleter::requestPreDelete(BaseProc* proc) { request.mLaneId = u8(TaskLane::PreDelete); request.mName = "PreDelete"; - util::TaskMgrRequest req; + TaskMgrRequest req; req.request = &request; return mTaskMgr->trySubmitRequest(req); } void BaseProcDeleter::requestUnloadActorParam(ActorParam* param) { - util::TaskRequest request{false}; + TaskRequest request{false}; request.mSynchronous = false; request.mQueue = mTaskQueue; request.mDelegate = &mUnloadActorParamDelegate; @@ -58,7 +58,7 @@ void BaseProcDeleter::requestUnloadActorParam(ActorParam* param) { request.mLaneId = u8(TaskLane::UnloadActorParam); request.mName = "UnloadActorParam"; - util::TaskMgrRequest req; + TaskMgrRequest req; req.request = &request; mTaskMgr->submitRequest(req); } diff --git a/src/KingSystem/ActorSystem/actBaseProcDeleter.h b/src/KingSystem/ActorSystem/actBaseProcDeleter.h index a46f5131..a3575293 100644 --- a/src/KingSystem/ActorSystem/actBaseProcDeleter.h +++ b/src/KingSystem/ActorSystem/actBaseProcDeleter.h @@ -5,10 +5,10 @@ #include "KingSystem/Utils/Thread/Task.h" #include "KingSystem/Utils/Types.h" -namespace ksys::util { +namespace ksys { class TaskMgr; class TaskQueue; -} // namespace ksys::util +} // namespace ksys namespace ksys::act { @@ -19,7 +19,7 @@ class BaseProcDeleter { public: struct InitArg { sead::Heap* heap; - util::TaskQueue* task_queue; + TaskQueue* task_queue; int task_queue_size; }; @@ -40,12 +40,11 @@ private: bool doPreDelete(void* proc); bool doUnloadParam(void* actor_param); - util::TaskMgr* mTaskMgr{}; - util::TaskQueue* mTaskQueue{}; + TaskMgr* mTaskMgr{}; + TaskQueue* mTaskQueue{}; sead::Buffer mBuffer; - util::TaskDelegateT mPreDeleteDelegate{this, &BaseProcDeleter::doPreDelete}; - util::TaskDelegateT mUnloadActorParamDelegate{this, - &BaseProcDeleter::doUnloadParam}; + TaskDelegateT mPreDeleteDelegate{this, &BaseProcDeleter::doPreDelete}; + TaskDelegateT mUnloadActorParamDelegate{this, &BaseProcDeleter::doUnloadParam}; }; KSYS_CHECK_SIZE_NX150(BaseProcDeleter, 0x68); diff --git a/src/KingSystem/ActorSystem/actBaseProcHandle.cpp b/src/KingSystem/ActorSystem/actBaseProcHandle.cpp index bdde1c62..cc780cc3 100644 --- a/src/KingSystem/ActorSystem/actBaseProcHandle.cpp +++ b/src/KingSystem/ActorSystem/actBaseProcHandle.cpp @@ -26,7 +26,7 @@ bool BaseProcHandle::hasProcCreationFailed() const { if (status == BaseProcUnit::Status::NoProc || status == BaseProcUnit::Status::Cancelled) return true; - if (mUnit->getCreateTask().getStatus() == util::Task::Status::RemovedFromQueue || + if (mUnit->getCreateTask().getStatus() == Task::Status::RemovedFromQueue || status == BaseProcUnit::Status::Cancelled) { return true; } @@ -38,7 +38,7 @@ bool BaseProcHandle::isProcCreationCancelled() const { if (!mUnit) return false; - if (mUnit->getCreateTask().getStatus() == util::Task::Status::RemovedFromQueue) + if (mUnit->getCreateTask().getStatus() == Task::Status::RemovedFromQueue) return true; if (mUnit->getStatus() == BaseProcUnit::Status::Cancelled) diff --git a/src/KingSystem/ActorSystem/actBaseProcInitializer.cpp b/src/KingSystem/ActorSystem/actBaseProcInitializer.cpp index 2785fd5b..e927df9e 100644 --- a/src/KingSystem/ActorSystem/actBaseProcInitializer.cpp +++ b/src/KingSystem/ActorSystem/actBaseProcInitializer.cpp @@ -42,8 +42,8 @@ void BaseProcInitializer::init(sead::Heap* parent_heap, const BaseProcInitialize mThreads.allocBufferAssert(NumThreads, mHeap); const auto init_queue = [&] { - mTaskQueue = new (mHeap) util::TaskQueue(mHeap); - util::TaskQueue::InitArg arg; + mTaskQueue = new (mHeap) TaskQueue(mHeap); + TaskQueue::InitArg arg; arg.enable_locks = true; arg.heap = mHeap; arg.num_lanes = 5; @@ -53,16 +53,16 @@ void BaseProcInitializer::init(sead::Heap* parent_heap, const BaseProcInitialize }; init_queue(); - mTaskMgr = new (mHeap) util::TaskMgr(mHeap); + mTaskMgr = new (mHeap) TaskMgr(mHeap); mTaskMgr->initAndCheckType(args.queue_size, mHeap); for (int i = 0; i < NumThreads; ++i) { mThreads[i].thread_name.format("%s", args.thread_name.cstr()); - mThreads[i].thread = new (mHeap) util::GameTaskThread( + mThreads[i].thread = new (mHeap) GameTaskThread( mThreads[i].thread_name, mHeap, sead::ThreadUtil::ConvertPrioritySeadToPlatform(20), sead::MessageQueue::BlockType::Blocking, 0x7FFFFFFF, 0x100000, 64); { - util::TaskThread::InitArg arg; + TaskThread::InitArg arg; arg.num_lanes = 5; arg.heap = mHeap; arg.queue = mTaskQueue; @@ -109,7 +109,7 @@ bool BaseProcInitializer::requestCreateBaseProc(const BaseProcCreateRequest& req if (req.task_data) task_req.mName = req.task_data->mProcName; - util::TaskMgrRequest mgr_req; + TaskMgrRequest mgr_req; if (req.task_data->mProcHandle) { if (!req.task_data->mProcHandle->allocUnit()) { req.task_data->mProcHandle->setFailed(true); @@ -214,11 +214,11 @@ void BaseProcInitializer::pauseMainThread() { void BaseProcInitializer::resumeMainThread() { mThreads[0].valid = true; if (!mThreads[0].thread) { - mThreads[0].thread = new (mHeap) util::GameTaskThread( + mThreads[0].thread = new (mHeap) GameTaskThread( mThreads[0].thread_name, mHeap, sead::ThreadUtil::ConvertPrioritySeadToPlatform(20), sead::MessageQueue::BlockType::Blocking, 0x7FFFFFFF, 0x100000, 64); { - util::TaskThread::InitArg arg; + TaskThread::InitArg arg; arg.num_lanes = 5; arg.heap = mHeap; arg.queue = mTaskQueue; @@ -272,8 +272,8 @@ int BaseProcInitializer::getQueueSize(int x) const { return count; } -void BaseProcInitializer::removeTasksIf(sead::IDelegate1R& predicate) { - util::TaskQueueLock lock; +void BaseProcInitializer::removeTasksIf(sead::IDelegate1R& predicate) { + TaskQueueLock lock; auto it = mTaskQueue->activeTasksRobustBegin(&lock); const auto end = mTaskQueue->activeTasksRobustEnd(); for (; it != end; ++it) { diff --git a/src/KingSystem/ActorSystem/actBaseProcInitializer.h b/src/KingSystem/ActorSystem/actBaseProcInitializer.h index 649e0002..4c4b5900 100644 --- a/src/KingSystem/ActorSystem/actBaseProcInitializer.h +++ b/src/KingSystem/ActorSystem/actBaseProcInitializer.h @@ -10,11 +10,11 @@ namespace sead { class Heap; } -namespace ksys::util { +namespace ksys { class TaskMgr; class TaskQueue; class TaskThread; -} // namespace ksys::util +} // namespace ksys namespace ksys::act { @@ -24,14 +24,14 @@ struct BaseProcCreateRequest; struct BaseProcInitializerArgs { u32 queue_size; sead::SafeString thread_name = "BaseProcCreate"; - util::TaskSelectionDelegate* task_selector = nullptr; + TaskSelectionDelegate* task_selector = nullptr; }; class BaseProcInitializer { public: struct ThreadInfo { bool valid = false; - util::TaskThread* thread = nullptr; + TaskThread* thread = nullptr; sead::FixedSafeString<32> thread_name; }; KSYS_CHECK_SIZE_NX150(ThreadInfo, 0x48); @@ -68,15 +68,15 @@ public: void cancelTasks(); int getQueueSize(int x = -1) const; - void removeTasksIf(sead::IDelegate1R& predicate); + void removeTasksIf(sead::IDelegate1R& predicate); void setActorGenerationEnabled(bool enabled); - util::TaskQueue* getTaskQueue() const { return mTaskQueue; } + TaskQueue* getTaskQueue() const { return mTaskQueue; } private: sead::Buffer mThreads; - util::TaskMgr* mTaskMgr = nullptr; - util::TaskQueue* mTaskQueue = nullptr; + TaskMgr* mTaskMgr = nullptr; + TaskQueue* mTaskQueue = nullptr; sead::Heap* mHeap = nullptr; bool mActorGenerationEnabled = true; }; diff --git a/src/KingSystem/ActorSystem/actBaseProcMgr.cpp b/src/KingSystem/ActorSystem/actBaseProcMgr.cpp index 9c8c59be..7d9b3120 100644 --- a/src/KingSystem/ActorSystem/actBaseProcMgr.cpp +++ b/src/KingSystem/ActorSystem/actBaseProcMgr.cpp @@ -614,7 +614,7 @@ int BaseProcMgr::getInitializerQueueSizeEx(int x) const { return mProcInitializer->getQueueSize(x); } -void BaseProcMgr::removeInitializerTasksIf(sead::IDelegate1R& predicate) { +void BaseProcMgr::removeInitializerTasksIf(sead::IDelegate1R& predicate) { mProcInitializer->removeTasksIf(predicate); } diff --git a/src/KingSystem/ActorSystem/actBaseProcMgr.h b/src/KingSystem/ActorSystem/actBaseProcMgr.h index 26c5d97c..67def589 100644 --- a/src/KingSystem/ActorSystem/actBaseProcMgr.h +++ b/src/KingSystem/ActorSystem/actBaseProcMgr.h @@ -37,7 +37,7 @@ class BaseProcJobQue; struct BaseProcCreateRequest { u32 task_lane_id; BaseProcCreateTaskData* task_data; - util::TaskRemoveCallback* task_remove_callback; + TaskRemoveCallback* task_remove_callback; }; class BaseProcMgr { @@ -201,7 +201,7 @@ public: bool isAnyInitializerThreadActive() const; int getInitializerQueueSize() const; int getInitializerQueueSizeEx(int x = -1) const; - void removeInitializerTasksIf(sead::IDelegate1R& predicate); + void removeInitializerTasksIf(sead::IDelegate1R& predicate); void setActorGenerationEnabled(bool enabled); // endregion diff --git a/src/KingSystem/Framework/CMakeLists.txt b/src/KingSystem/Framework/CMakeLists.txt index cbae2e87..e3bea8e3 100644 --- a/src/KingSystem/Framework/CMakeLists.txt +++ b/src/KingSystem/Framework/CMakeLists.txt @@ -1,7 +1,7 @@ target_sources(uking PRIVATE + frmFramework.cpp + frmFramework.h frmRootTaskParam.h frmWorkerSupportThreadMgr.cpp frmWorkerSupportThreadMgr.h - Framework.cpp - Framework.h ) diff --git a/src/KingSystem/Framework/Framework.cpp b/src/KingSystem/Framework/Framework.cpp deleted file mode 100644 index f11ef44e..00000000 --- a/src/KingSystem/Framework/Framework.cpp +++ /dev/null @@ -1 +0,0 @@ -#include "KingSystem/Framework/Framework.h" \ No newline at end of file diff --git a/src/KingSystem/Framework/frmFramework.cpp b/src/KingSystem/Framework/frmFramework.cpp new file mode 100644 index 00000000..2dbca29c --- /dev/null +++ b/src/KingSystem/Framework/frmFramework.cpp @@ -0,0 +1 @@ +#include "KingSystem/Framework/frmFramework.h" \ No newline at end of file diff --git a/src/KingSystem/Framework/Framework.h b/src/KingSystem/Framework/frmFramework.h similarity index 100% rename from src/KingSystem/Framework/Framework.h rename to src/KingSystem/Framework/frmFramework.h diff --git a/src/KingSystem/Framework/frmWorkerSupportThreadMgr.cpp b/src/KingSystem/Framework/frmWorkerSupportThreadMgr.cpp index 4880df32..fafd9f42 100644 --- a/src/KingSystem/Framework/frmWorkerSupportThreadMgr.cpp +++ b/src/KingSystem/Framework/frmWorkerSupportThreadMgr.cpp @@ -15,13 +15,13 @@ SEAD_SINGLETON_DISPOSER_IMPL(WorkerSupportThreadMgr) void WorkerSupportThreadMgr::init(sead::Heap* heap) { auto* worker = mWorkers; for (size_t i = 0; i < NumWorkers; ++i) { - auto* mgr = new (heap) util::TaskMgr(heap); - mgr->init(NumTasks, heap); + auto* mgr = new (heap) TaskMgr(heap); + mgr->init(NumTasks, heap); worker->task_mgr = mgr; - worker->task_handle = new (heap) util::ManagedTaskHandle; + worker->task_handle = new (heap) ManagedTaskHandle; for (int j = 0; j < NumTasks; ++j) - worker->tasks[j] = new (heap) util::ManagedTask(heap); + worker->tasks[j] = new (heap) ManagedTask(heap); const auto affinity = [&] { if (i == 0) @@ -30,11 +30,11 @@ void WorkerSupportThreadMgr::init(sead::Heap* heap) { }(); worker->thread_name.format("WorkerSupport[%d]", int(i)); - worker->task_thread = new (heap) util::GameTaskThread( + worker->task_thread = new (heap) GameTaskThread( worker->thread_name, heap, sead::ThreadUtil::ConvertPrioritySeadToPlatform(17), sead::MessageQueue::BlockType::Blocking, 0x7fffffff, 0x20000, 32); - util::TaskThread::InitArg arg; + TaskThread::InitArg arg; arg.batch_size = 0; arg.heap = nullptr; arg.queue = nullptr; @@ -85,23 +85,23 @@ static int getTaskIdx(u32 id) { return idx[id]; } -util::ManagedTask* WorkerSupportThreadMgr::getTask(int id) { +ManagedTask* WorkerSupportThreadMgr::getTask(int id) { return mWorkers[getWorkerIdx(id)].tasks[getTaskIdx(id)]; } -void WorkerSupportThreadMgr::submitRequest(int id, util::TaskDelegate* delegate) { +void WorkerSupportThreadMgr::submitRequest(int id, TaskDelegate* delegate) { auto& worker = mWorkers[getWorkerIdx(id)]; if (mThreadsPaused) return; - util::TaskRequest req{false}; + TaskRequest req{false}; req.mName = worker.thread_name; req.mDelegate = delegate; req.mHasHandle = true; req.mSynchronous = false; req.mThread = worker.task_thread; - util::TaskMgrRequest task_mgr_req; + TaskMgrRequest task_mgr_req; task_mgr_req.request = &req; task_mgr_req.handle = worker.task_handle; task_mgr_req.task = worker.tasks[getTaskIdx(id)]; diff --git a/src/KingSystem/Framework/frmWorkerSupportThreadMgr.h b/src/KingSystem/Framework/frmWorkerSupportThreadMgr.h index 2ec99fa2..25a3ada2 100644 --- a/src/KingSystem/Framework/frmWorkerSupportThreadMgr.h +++ b/src/KingSystem/Framework/frmWorkerSupportThreadMgr.h @@ -11,12 +11,12 @@ class DelegateThread; class Thread; } // namespace sead -namespace ksys::util { +namespace ksys { class GameTaskThread; class ManagedTask; class ManagedTaskHandle; class TaskMgr; -} // namespace ksys::util +} // namespace ksys namespace ksys::frm { @@ -28,7 +28,7 @@ class WorkerSupportThreadMgr { public: void init(sead::Heap* heap); - void submitRequest(int id, util::TaskDelegate* delegate); + void submitRequest(int id, TaskDelegate* delegate); void waitForTask(int id); void pauseThreads(); void resumeThreads(); @@ -39,18 +39,18 @@ private: static constexpr int NumTasks = 5; struct Worker { - util::GameTaskThread* task_thread = nullptr; + GameTaskThread* task_thread = nullptr; sead::DelegateThread* thread; - util::ManagedTask* tasks[NumTasks]; - util::TaskMgr* task_mgr = nullptr; - util::ManagedTaskHandle* task_handle; + ManagedTask* tasks[NumTasks]; + TaskMgr* task_mgr = nullptr; + ManagedTaskHandle* task_handle; sead::FixedSafeString<32> thread_name; }; void initSleeperThreads(); void sleeperThreadFun(sead::Thread* thread, sead::MessageQueue::Element); - util::ManagedTask* getTask(int id); + ManagedTask* getTask(int id); Worker mWorkers[NumWorkers]; bool mThreadsPaused = false; diff --git a/src/KingSystem/Physics/System/physRayCastRequestMgr.h b/src/KingSystem/Physics/System/physRayCastRequestMgr.h index 4dde6bd6..7f8de114 100644 --- a/src/KingSystem/Physics/System/physRayCastRequestMgr.h +++ b/src/KingSystem/Physics/System/physRayCastRequestMgr.h @@ -33,7 +33,7 @@ private: sead::CriticalSection mCS; sead::TList mQueuedList; sead::TList mFreeList; - util::TaskDelegateT mWorkerFunction; + TaskDelegateT mWorkerFunction; /// The number of requests to process per batch. int mBatchSize = 1; int mLargestRecordedQueueSize = 0; diff --git a/src/KingSystem/Resource/resArchiveWork.cpp b/src/KingSystem/Resource/resArchiveWork.cpp index 0838b7ec..e537faaf 100644 --- a/src/KingSystem/Resource/resArchiveWork.cpp +++ b/src/KingSystem/Resource/resArchiveWork.cpp @@ -16,7 +16,7 @@ ArchiveWork::~ArchiveWork() { } bool ArchiveWork::init(const ArchiveWork::InitArg& arg) { - mEvent = new (arg.heap) util::Event( + mEvent = new (arg.heap) Event( nullptr, sead::IDisposer::HeapNullOption::DoNotAppendDisposerIfNoHeapSpecified, false); mEvent->resetSignal(); diff --git a/src/KingSystem/Resource/resArchiveWork.h b/src/KingSystem/Resource/resArchiveWork.h index 2ec0f3e2..5229f551 100644 --- a/src/KingSystem/Resource/resArchiveWork.h +++ b/src/KingSystem/Resource/resArchiveWork.h @@ -12,9 +12,7 @@ namespace ksys { class OverlayArena; -namespace util { class Event; -} namespace res { @@ -41,7 +39,7 @@ public: void setEvent(); private: - util::Event* mEvent = nullptr; + Event* mEvent = nullptr; OverlayArena* mArena = nullptr; }; KSYS_CHECK_SIZE_NX150(ArchiveWork, 0x10); diff --git a/src/KingSystem/Resource/resControlTask.cpp b/src/KingSystem/Resource/resControlTask.cpp index 3cee95c5..66c3470e 100644 --- a/src/KingSystem/Resource/resControlTask.cpp +++ b/src/KingSystem/Resource/resControlTask.cpp @@ -3,11 +3,11 @@ namespace ksys::res { -ControlTask::ControlTask(sead::Heap* heap) : util::ManagedTask(heap) {} +ControlTask::ControlTask(sead::Heap* heap) : ManagedTask(heap) {} void ControlTask::onRun_() {} -void ControlTask::prepareImpl_(util::TaskRequest* req_) { +void ControlTask::prepareImpl_(TaskRequest* req_) { auto* req = static_cast(req_); mData.mHasResLoadReq = req->mHasResLoadReq; diff --git a/src/KingSystem/Resource/resControlTask.h b/src/KingSystem/Resource/resControlTask.h index 13a68ecc..2ceebc78 100644 --- a/src/KingSystem/Resource/resControlTask.h +++ b/src/KingSystem/Resource/resControlTask.h @@ -12,8 +12,8 @@ namespace ksys::res { class Handle; class ResourceUnit; -class ControlTaskData : public util::TaskData { - SEAD_RTTI_OVERRIDE(ControlTaskData, util::TaskData) +class ControlTaskData : public TaskData { + SEAD_RTTI_OVERRIDE(ControlTaskData, TaskData) public: virtual ~ControlTaskData() = default; @@ -25,22 +25,22 @@ public: }; KSYS_CHECK_SIZE_NX150(ControlTaskData, 0x138); -class ControlTask : public util::ManagedTask { - SEAD_RTTI_OVERRIDE(ControlTask, util::ManagedTask) +class ControlTask : public ManagedTask { + SEAD_RTTI_OVERRIDE(ControlTask, ManagedTask) public: explicit ControlTask(sead::Heap* heap); private: void onRun_() override; - void prepareImpl_(util::TaskRequest* req) override; + void prepareImpl_(TaskRequest* req) override; void preRemoveImpl_() override; ControlTaskData mData; }; KSYS_CHECK_SIZE_NX150(ControlTask, 0x1f8); -class ControlTaskRequest : public util::TaskRequest { - SEAD_RTTI_OVERRIDE(ControlTaskRequest, util::TaskRequest) +class ControlTaskRequest : public TaskRequest { + SEAD_RTTI_OVERRIDE(ControlTaskRequest, TaskRequest) public: explicit ControlTaskRequest(bool has_handle = false) : TaskRequest(has_handle) {} diff --git a/src/KingSystem/Resource/resHandle.cpp b/src/KingSystem/Resource/resHandle.cpp index c620ee25..c2d5d83e 100644 --- a/src/KingSystem/Resource/resHandle.cpp +++ b/src/KingSystem/Resource/resHandle.cpp @@ -209,7 +209,7 @@ bool Handle::parseResource(Context* context) { if (mFlags.isOn(Flag::UnloadRequested)) return false; - if (mTaskHandle.getStatus() == util::ManagedTaskHandle::Status::TaskRemoved || + if (mTaskHandle.getStatus() == ManagedTaskHandle::Status::TaskRemoved || (mUnit && mUnit->isTask1NotQueued())) { stubbedLogFunction(); mStatus = Status::Cancelled; diff --git a/src/KingSystem/Resource/resHandle.h b/src/KingSystem/Resource/resHandle.h index aacad690..538a53f4 100644 --- a/src/KingSystem/Resource/resHandle.h +++ b/src/KingSystem/Resource/resHandle.h @@ -111,7 +111,7 @@ private: sead::TypedBitFlag mFlags = Flag::Dummy; Status mStatus = Status::NoFile; ResourceUnit* mUnit = nullptr; - util::ManagedTaskHandle mTaskHandle; + ManagedTaskHandle mTaskHandle; sead::ListNode mListNode; }; KSYS_CHECK_SIZE_NX150(Handle, 0x50); diff --git a/src/KingSystem/Resource/resMemoryTask.cpp b/src/KingSystem/Resource/resMemoryTask.cpp index 3f580852..17a78d94 100644 --- a/src/KingSystem/Resource/resMemoryTask.cpp +++ b/src/KingSystem/Resource/resMemoryTask.cpp @@ -3,11 +3,11 @@ namespace ksys::res { -MemoryTask::MemoryTask(sead::Heap* heap) : util::ManagedTask(heap) {} +MemoryTask::MemoryTask(sead::Heap* heap) : ManagedTask(heap) {} void MemoryTask::onRun_() {} -void MemoryTask::prepareImpl_(util::TaskRequest* req_) { +void MemoryTask::prepareImpl_(TaskRequest* req_) { auto* req = static_cast(req_); mData._8 = req->mData_8; mData._c = req->mData_c; diff --git a/src/KingSystem/Resource/resMemoryTask.h b/src/KingSystem/Resource/resMemoryTask.h index 2de1a5f8..f7d3b416 100644 --- a/src/KingSystem/Resource/resMemoryTask.h +++ b/src/KingSystem/Resource/resMemoryTask.h @@ -7,8 +7,8 @@ namespace ksys::res { -class MemoryTaskData : public util::TaskData { - SEAD_RTTI_OVERRIDE(MemoryTaskData, util::TaskData) +class MemoryTaskData : public TaskData { + SEAD_RTTI_OVERRIDE(MemoryTaskData, TaskData) public: virtual ~MemoryTaskData() = default; @@ -18,25 +18,25 @@ public: }; KSYS_CHECK_SIZE_NX150(MemoryTaskData, 0xa8); -class MemoryTask : public util::ManagedTask { - SEAD_RTTI_OVERRIDE(MemoryTask, util::ManagedTask) +class MemoryTask : public ManagedTask { + SEAD_RTTI_OVERRIDE(MemoryTask, ManagedTask) public: explicit MemoryTask(sead::Heap* heap); ~MemoryTask() override { ; } private: void onRun_() override; - void prepareImpl_(util::TaskRequest* req) override; + void prepareImpl_(TaskRequest* req) override; void preRemoveImpl_() override; - void setUserData() { util::ManagedTask::setUserData(&mData); } + void setUserData() { ManagedTask::setUserData(&mData); } MemoryTaskData mData; }; KSYS_CHECK_SIZE_NX150(MemoryTask, 0x168); -class MemoryTaskRequest : public util::TaskRequest { - SEAD_RTTI_OVERRIDE(MemoryTaskRequest, util::TaskRequest) +class MemoryTaskRequest : public TaskRequest { + SEAD_RTTI_OVERRIDE(MemoryTaskRequest, TaskRequest) public: MemoryTaskRequest() = default; diff --git a/src/KingSystem/Resource/resResourceMgrTask.cpp b/src/KingSystem/Resource/resResourceMgrTask.cpp index 74e845a1..f241361f 100644 --- a/src/KingSystem/Resource/resResourceMgrTask.cpp +++ b/src/KingSystem/Resource/resResourceMgrTask.cpp @@ -23,8 +23,8 @@ namespace ksys::res { namespace { -class ClearCachesTaskData : public util::TaskData { - SEAD_RTTI_OVERRIDE(ClearCachesTaskData, util::TaskData) +class ClearCachesTaskData : public TaskData { + SEAD_RTTI_OVERRIDE(ClearCachesTaskData, TaskData) public: virtual ~ClearCachesTaskData() = default; @@ -106,17 +106,17 @@ void ResourceMgrTask::insertOverlayArena(OverlayArena* arena) { } } -util::TaskThread* ResourceMgrTask::makeResourceLoadingThread(sead::Heap* heap, - bool use_game_task_thread) { +TaskThread* ResourceMgrTask::makeResourceLoadingThread(sead::Heap* heap, + bool use_game_task_thread) { if (use_game_task_thread) { - return new (heap) util::GameTaskThread( + return new (heap) GameTaskThread( "Resource Loading", heap, sead::ThreadUtil::ConvertPrioritySeadToPlatform(19), sead::MessageQueue::BlockType::Blocking, 0x7fffffff, 0xfa000, 32); } - return new (heap) util::TaskThread( - "Resource Loading", heap, sead::ThreadUtil::ConvertPrioritySeadToPlatform(19), - sead::MessageQueue::BlockType::Blocking, 0x7fffffff, 0xa000, 32); + return new (heap) + TaskThread("Resource Loading", heap, sead::ThreadUtil::ConvertPrioritySeadToPlatform(19), + sead::MessageQueue::BlockType::Blocking, 0x7fffffff, 0xa000, 32); } void ResourceMgrTask::clearAllCaches(OverlayArena* arena) { @@ -135,13 +135,13 @@ void ResourceMgrTask::clearAllCaches(OverlayArena* arena) { req.mData_c = -1; req.mData_mStr = arena->getHeap()->getName(); - util::TaskMgrRequest task_mgr_request; + TaskMgrRequest task_mgr_request; task_mgr_request.request = &req; mResourceMemoryTaskMgr->submitRequest(task_mgr_request); } bool ResourceMgrTask::isDefragDone() const { - return mTask2->getStatus() == util::Task::Status::PostFinishCallback; + return mTask2->getStatus() == Task::Status::PostFinishCallback; } f32 ResourceMgrTask::getDefragProgress() const { @@ -263,7 +263,7 @@ void ResourceMgrTask::deregisterUnit(ResourceUnit* unit) { } } -void ResourceMgrTask::requestClearCache(ResourceUnit** p_unit, util::Task* task) { +void ResourceMgrTask::requestClearCache(ResourceUnit** p_unit, Task* task) { if (!p_unit || !*p_unit || !(*p_unit)->isStatusFlag8000Set()) { stubbedLogFunction(); return; @@ -405,7 +405,7 @@ bool ResourceMgrTask::calc_(void*) { req.mData_8 = false; req.mData_c = -1; - util::TaskMgrRequest request; + TaskMgrRequest request; request.request = &req; mResourceMemoryTaskMgr->submitRequest(request); mTexHandleMgr->clearAllCache(); @@ -522,7 +522,7 @@ ResourceUnit* ResourceMgrTask::clearCachesAndGetUnit(const GetUnitArg& arg) { auto* unit = mUnitPool.tryAlloc(); if (!unit) { - util::TaskQueueLock lock; + TaskQueueLock lock; auto* queue = mResourceControlThread->getTaskQueue(); auto it = queue->activeTasksRobustBegin(&lock); @@ -541,7 +541,7 @@ ResourceUnit* ResourceMgrTask::clearCachesAndGetUnit(const GetUnitArg& arg) { ClearCachesTaskData data; data._8 = true; data._c = 100; - util::TaskRequest req; + TaskRequest req; req.mLaneId = u8(LaneId::_8); req.mHasHandle = true; req.mSynchronous = true; @@ -555,7 +555,7 @@ ResourceUnit* ResourceMgrTask::clearCachesAndGetUnit(const GetUnitArg& arg) { } if (!unit) { - util::TaskQueueLock lock; + TaskQueueLock lock; auto* queue = mResourceControlThread->getTaskQueue(); auto it = queue->activeTasksRobustBegin(&lock); @@ -658,7 +658,7 @@ void ResourceMgrTask::clearUnits_() { void ResourceMgrTask::systemCalc_() { if (mTask1->canSubmitRequest()) { - util::TaskRequest request; + TaskRequest request; request.mSynchronous = false; request.mHasHandle = false; request.mLaneId = u8(LaneId::_6); @@ -732,7 +732,7 @@ void ResourceMgrTask::clearAllCachesSynchronously(OverlayArena* arena) { req.mData_c = -1; req.mData_mStr = arena->getHeap()->getName(); - util::TaskMgrRequest task_mgr_request; + TaskMgrRequest task_mgr_request; task_mgr_request.request = &req; mResourceMemoryTaskMgr->submitRequest(task_mgr_request); } diff --git a/src/KingSystem/Resource/resResourceMgrTask.h b/src/KingSystem/Resource/resResourceMgrTask.h index eddcf08b..6cec9e1b 100644 --- a/src/KingSystem/Resource/resResourceMgrTask.h +++ b/src/KingSystem/Resource/resResourceMgrTask.h @@ -35,11 +35,9 @@ class SZSDecompressor; namespace ksys { class OverlayArena; -namespace util { class TaskMgr; class TaskPostRunResult; class TaskThread; -} // namespace util } // namespace ksys namespace ksys::res { @@ -99,8 +97,7 @@ public: }; using ResourceUnitDelegate = sead::Delegate1RFunc; - using TaskCallback = - sead::Delegate2Func; + using TaskCallback = sead::Delegate2Func; using MemoryTaskDelegate = sead::Delegate1R; struct ResourceUnitDelegatePair { @@ -114,7 +111,7 @@ public: void insertOverlayArena(OverlayArena* arena); - util::TaskThread* makeResourceLoadingThread(sead::Heap* heap, bool use_game_task_thread); + TaskThread* makeResourceLoadingThread(sead::Heap* heap, bool use_game_task_thread); void clearAllCaches(OverlayArena* arena); OverlayArena* getTexHandleMgrArena() const; @@ -157,7 +154,7 @@ public: void registerUnit(ResourceUnit* unit); void deregisterUnit(ResourceUnit* unit); - void requestClearCache(ResourceUnit** p_unit, util::Task* task = nullptr); + void requestClearCache(ResourceUnit** p_unit, Task* task = nullptr); void requestClearCacheForSync(ResourceUnit** p_unit, bool clear_immediately, bool delete_immediately); @@ -206,7 +203,7 @@ public: ResourceUnit* clearCachesAndGetUnit(const GetUnitArg& arg); struct SetActorCreateInitializerThreadsArg { - sead::PtrArray* threads; + sead::PtrArray* threads; }; void setActorCreateInitializerThreads(const SetActorCreateInitializerThreadsArg& arg); void clearActorCreateInitializerThreads(); @@ -261,10 +258,10 @@ public: void removeOverlayArena(OverlayArena* arena); - util::TaskThread* getResourceLoadingThread() const { return mResourceLoadingThread; } - util::TaskThread* getResourceControlThread() const { return mResourceControlThread; } - util::TaskThread* getResourceMemoryThread() const { return mResourceMemoryThread; } - util::TaskThread* getMovableMemoryThread() const { return mMovableMemoryThread; } + TaskThread* getResourceLoadingThread() const { return mResourceLoadingThread; } + TaskThread* getResourceControlThread() const { return mResourceControlThread; } + TaskThread* getResourceMemoryThread() const { return mResourceMemoryThread; } + TaskThread* getMovableMemoryThread() const { return mMovableMemoryThread; } ResourceUnitDelegatePair& getUnitInitLoadFn() { return mUnitInitLoadFn; } auto& getUnitAdjustHeapFn() { return mUnitAdjustHeapFn; } @@ -315,17 +312,17 @@ private: sead::TypedBitFlag mCacheControlFlags; u32 _17c = 0; sead::Heap* mResSystemHeap = nullptr; - util::TaskThread* mResourceLoadingThread = nullptr; - util::TaskThread* mResourceControlThread = nullptr; - util::TaskThread* mResourceMemoryThread = nullptr; - util::TaskThread* mMovableMemoryThread = nullptr; - sead::PtrArray* mActorCreateInitializerThreads = nullptr; - util::TaskMgr* mResourceControlTaskMgr = nullptr; - util::TaskMgr* mResourceMemoryTaskMgr; + TaskThread* mResourceLoadingThread = nullptr; + TaskThread* mResourceControlThread = nullptr; + TaskThread* mResourceMemoryThread = nullptr; + TaskThread* mMovableMemoryThread = nullptr; + sead::PtrArray* mActorCreateInitializerThreads = nullptr; + TaskMgr* mResourceControlTaskMgr = nullptr; + TaskMgr* mResourceMemoryTaskMgr; ControlTask* mControlTask = nullptr; - util::Task* mTask1 = nullptr; - util::Task* mTask2 = nullptr; - util::Task* mTask3 = nullptr; + Task* mTask1 = nullptr; + Task* mTask2 = nullptr; + Task* mTask3 = nullptr; EntryFactoryBase* mEntryFactoryBase = nullptr; EntryFactoryBase* mDefaultEntryFactory = nullptr; @@ -349,9 +346,8 @@ private: MemoryTaskDelegate mDefragAllMemoryMgrFn; MemoryTaskDelegate mLoadFn; - sead::Delegate2 - mLoadCb; - sead::Delegate1 mLoadTaskRemoveCb; + sead::Delegate2 mLoadCb; + sead::Delegate1 mLoadTaskRemoveCb; MemoryTaskDelegate mCalcFn; MemoryTaskDelegate mCalcArenaHeapSizeFn; @@ -413,7 +409,7 @@ private: u8 _9c0d98 = 1; size_t _9c0da0 = 500; - util::Task mTask; // TODO: rename + Task mTask; // TODO: rename sead::CriticalSection mCritSection4; // TODO: rename sead::TickTime mTickTime; MemoryTaskDelegate mSystemCalcFn; diff --git a/src/KingSystem/Resource/resUnit.cpp b/src/KingSystem/Resource/resUnit.cpp index 186cffb2..2aa93005 100644 --- a/src/KingSystem/Resource/resUnit.cpp +++ b/src/KingSystem/Resource/resUnit.cpp @@ -98,12 +98,12 @@ bool ResourceUnit::init(const ResourceUnit::InitArg& arg) { } { - util::TaskDelegateSetter setter; + TaskDelegateSetter setter; mTask1.setDelegate(setter); } { - util::TaskDelegateSetter setter; + TaskDelegateSetter setter; mTask2.setDelegate(setter); } @@ -154,7 +154,7 @@ void ResourceUnit::updateStatus() { } bool ResourceUnit::isTask1NotQueued() const { - return mTask1.getStatus() == util::Task::Status::RemovedFromQueue; + return mTask1.getStatus() == Task::Status::RemovedFromQueue; } bool ResourceUnit::isStatus0() const { @@ -243,7 +243,7 @@ bool ResourceUnit::removeTask3FromQueue() { void ResourceUnit::requestInitLoad(const RequestInitLoadArg& arg) { mStatus = Status::_7; - util::TaskRequest req; + TaskRequest req; req.mHasHandle = arg.has_handle; req.mSynchronous = false; req.mLaneId = arg.lane_id; diff --git a/src/KingSystem/Resource/resUnit.h b/src/KingSystem/Resource/resUnit.h index 981b7678..87a8f565 100644 --- a/src/KingSystem/Resource/resUnit.h +++ b/src/KingSystem/Resource/resUnit.h @@ -196,14 +196,14 @@ private: void initLoad(void* x = nullptr); void prepareLoad(); - void requestPrepareLoad(util::TaskPostRunResult* result, const util::TaskPostRunContext& ctx); + void requestPrepareLoad(TaskPostRunResult* result, const TaskPostRunContext& ctx); void unloadForSync(); void clearCacheForSync(bool x); void unload(); void clearCache(void* x); - void requestClearCache(util::TaskPostRunResult* result, const util::TaskPostRunContext& ctx); + void requestClearCache(TaskPostRunResult* result, const TaskPostRunContext& ctx); sead::TypedBitFlag mCacheFlags; sead::TypedBitFlag mFlags; @@ -226,13 +226,13 @@ private: sead::ListNode mArenaUnitListNode; sead::ListNode mArenaUnitListNode2; sead::ListNode mResMgrUnitListNode; - util::Task mTask1; - util::Task mTask2; - util::Task mTask3; + Task mTask1; + Task mTask2; + Task mTask3; ResourceUnitMapNode mMapNode{this}; sead::Atomic mCounter; - util::Event mEvent{nullptr, - sead::IDisposer::HeapNullOption::DoNotAppendDisposerIfNoHeapSpecified, true}; + Event mEvent{nullptr, sead::IDisposer::HeapNullOption::DoNotAppendDisposerIfNoHeapSpecified, + true}; sead::ResourceMgr::LoadArg mLoadArg; sead::FixedSafeString<128> mPath; sead::Heap* mHeap = nullptr; diff --git a/src/KingSystem/System/OverlayArenaSystem.cpp b/src/KingSystem/System/OverlayArenaSystem.cpp index bafb705a..82a59aaf 100644 --- a/src/KingSystem/System/OverlayArenaSystem.cpp +++ b/src/KingSystem/System/OverlayArenaSystem.cpp @@ -66,12 +66,12 @@ void OverlayArenaSystem::destroyHeaps() { bool OverlayArenaSystem::init(const InitArg& arg, sead::Heap* heap) { mSystemPauseMgr = arg.system_pause_mgr; - mPrepareThread = new (heap) util::TaskThread( + mPrepareThread = new (heap) TaskThread( "OverlayArena Prepare", heap, sead::ThreadUtil::ConvertPrioritySeadToPlatform(17), sead::MessageQueue::BlockType::Blocking, 0x7fffffff, 0x14000, 32); { - util::TaskThread::InitArg arg_; + TaskThread::InitArg arg_; arg_.batch_size = 0; arg_.queue = nullptr; arg_.num_lanes = 1; @@ -84,8 +84,8 @@ bool OverlayArenaSystem::init(const InitArg& arg, sead::Heap* heap) { mDelegate = {this, &OverlayArenaSystem::delegatedFunction}; { - mTask = new (heap) util::Task(heap); - util::TaskDelegateSetter setter; + mTask = new (heap) Task(heap); + TaskDelegateSetter setter; mTask->setDelegate(setter); } diff --git a/src/KingSystem/System/OverlayArenaSystem.h b/src/KingSystem/System/OverlayArenaSystem.h index a0a3cd71..3350c390 100644 --- a/src/KingSystem/System/OverlayArenaSystem.h +++ b/src/KingSystem/System/OverlayArenaSystem.h @@ -17,11 +17,8 @@ class SZSDecompressor; namespace ksys { -namespace util { class Task; class TaskThread; -} // namespace util - class OverlayArena; class ISystemPauseMgr { @@ -116,14 +113,14 @@ private: ISystemPauseMgr* mSystemPauseMgr = nullptr; OverlayArenaSystemS1 mS1; u32 _b8 = 0; - util::TaskThread* mPrepareThread = nullptr; - util::Task* mTask = nullptr; + TaskThread* mPrepareThread = nullptr; + Task* mTask = nullptr; sead::DelegateR mDelegate; OverlayArenaSystemS2 mS2; sead::Atomic _130 = 0; sead::Atomic _134 = 0; res::Handle mResHandle; - util::Event mEvent; + Event mEvent; }; KSYS_CHECK_SIZE_NX150(OverlayArenaSystem, 0x1c8); diff --git a/src/KingSystem/System/ProductReporter.cpp b/src/KingSystem/System/ProductReporter.cpp index 827f01fa..4812734a 100644 --- a/src/KingSystem/System/ProductReporter.cpp +++ b/src/KingSystem/System/ProductReporter.cpp @@ -7,7 +7,7 @@ #include #include "KingSystem/Camera/CameraMgr.h" -#include "KingSystem/Framework/Framework.h" +#include "KingSystem/Framework/frmFramework.h" #include "KingSystem/Map/mapPlacementMgr.h" #include "KingSystem/Sound/sndMgr.h" #include "KingSystem/System/PlayReportMgr.h" diff --git a/src/KingSystem/System/UIGlue.h b/src/KingSystem/System/UIGlue.h index d07da634..4dffe1b3 100644 --- a/src/KingSystem/System/UIGlue.h +++ b/src/KingSystem/System/UIGlue.h @@ -5,7 +5,9 @@ namespace ksys::ui { int getPorchNum(const sead::SafeString& name); +int getItemValue(const sead::SafeString& name); void initRupeeCounter(); bool isRupeeCounterActive(); +void applyScreenFade(float progress); } // namespace ksys::ui diff --git a/src/KingSystem/Utils/Thread/Event.cpp b/src/KingSystem/Utils/Thread/Event.cpp index 1c16be54..b7e3fef7 100644 --- a/src/KingSystem/Utils/Thread/Event.cpp +++ b/src/KingSystem/Utils/Thread/Event.cpp @@ -1,6 +1,6 @@ #include "KingSystem/Utils/Thread/Event.h" -namespace ksys::util { +namespace ksys { Event::Event() = default; @@ -51,4 +51,4 @@ bool Event::isSignalSet() const { return mSignalSet == 1; } -} // namespace ksys::util +} // namespace ksys diff --git a/src/KingSystem/Utils/Thread/Event.h b/src/KingSystem/Utils/Thread/Event.h index 6db2822a..22956d47 100644 --- a/src/KingSystem/Utils/Thread/Event.h +++ b/src/KingSystem/Utils/Thread/Event.h @@ -4,7 +4,7 @@ #include #include "KingSystem/Utils/Types.h" -namespace ksys::util { +namespace ksys { class Event { public: @@ -32,4 +32,4 @@ private: KSYS_CHECK_SIZE_NX150(sead::Event, 0x30); KSYS_CHECK_SIZE_NX150(Event, 0x40); -} // namespace ksys::util +} // namespace ksys diff --git a/src/KingSystem/Utils/Thread/GameTaskThread.cpp b/src/KingSystem/Utils/Thread/GameTaskThread.cpp index eacd9e64..c6f6eab1 100644 --- a/src/KingSystem/Utils/Thread/GameTaskThread.cpp +++ b/src/KingSystem/Utils/Thread/GameTaskThread.cpp @@ -1,6 +1,6 @@ #include "KingSystem/Utils/Thread/GameTaskThread.h" -namespace ksys::util { +namespace ksys { GameTaskThread::GameTaskThread(const sead::SafeString& name, sead::Heap* heap, s32 priority, sead::MessageQueue::BlockType block_type, long quit_msg, @@ -12,4 +12,4 @@ void GameTaskThread::quit(bool) { Thread::quit(false); } -} // namespace ksys::util +} // namespace ksys diff --git a/src/KingSystem/Utils/Thread/GameTaskThread.h b/src/KingSystem/Utils/Thread/GameTaskThread.h index a16e9f68..6f1d6f8d 100644 --- a/src/KingSystem/Utils/Thread/GameTaskThread.h +++ b/src/KingSystem/Utils/Thread/GameTaskThread.h @@ -3,7 +3,7 @@ #include "KingSystem/Utils/Thread/TaskThread.h" #include "KingSystem/Utils/Types.h" -namespace ksys::util { +namespace ksys { class GameTaskThread : public TaskThread { SEAD_RTTI_OVERRIDE(GameTaskThread, TaskThread) @@ -24,4 +24,4 @@ protected: }; KSYS_CHECK_SIZE_NX150(GameTaskThread, 0x1a8); -} // namespace ksys::util +} // namespace ksys diff --git a/src/KingSystem/Utils/Thread/LowPrioThreadMgr.cpp b/src/KingSystem/Utils/Thread/LowPrioThreadMgr.cpp index 35f69e48..e69ad4a7 100644 --- a/src/KingSystem/Utils/Thread/LowPrioThreadMgr.cpp +++ b/src/KingSystem/Utils/Thread/LowPrioThreadMgr.cpp @@ -5,7 +5,7 @@ #include "KingSystem/Utils/SafeDelete.h" #include "KingSystem/Utils/Thread/TaskQueue.h" -namespace ksys::util { +namespace ksys { SEAD_SINGLETON_DISPOSER_IMPL(LowPrioThreadMgr) @@ -116,4 +116,4 @@ void LowPrioThreadMgr::resumeAllTasks() { void LowPrioThreadMgr::sub_710127AC40() {} -} // namespace ksys::util +} // namespace ksys diff --git a/src/KingSystem/Utils/Thread/LowPrioThreadMgr.h b/src/KingSystem/Utils/Thread/LowPrioThreadMgr.h index 08ddfe85..e5a24383 100644 --- a/src/KingSystem/Utils/Thread/LowPrioThreadMgr.h +++ b/src/KingSystem/Utils/Thread/LowPrioThreadMgr.h @@ -7,7 +7,7 @@ #include "KingSystem/Utils/Thread/TaskMgr.h" #include "KingSystem/Utils/Thread/TaskThread.h" -namespace ksys::util { +namespace ksys { class LowPrioThreadMgr { SEAD_SINGLETON_DISPOSER(LowPrioThreadMgr) @@ -55,4 +55,4 @@ private: sead::Buffer mCoreThreadTasks{}; }; -} // namespace ksys::util +} // namespace ksys diff --git a/src/KingSystem/Utils/Thread/ManagedTask.cpp b/src/KingSystem/Utils/Thread/ManagedTask.cpp index 8a0f3dfd..2c2c1c58 100644 --- a/src/KingSystem/Utils/Thread/ManagedTask.cpp +++ b/src/KingSystem/Utils/Thread/ManagedTask.cpp @@ -3,7 +3,7 @@ #include "KingSystem/Utils/Thread/TaskMgr.h" #include "KingSystem/Utils/Thread/TaskQueueLock.h" -namespace ksys::util { +namespace ksys { ManagedTask::ManagedTask(sead::Heap* heap) : Task(heap) {} @@ -103,4 +103,4 @@ void ManagedTask::detachHandle() { } } -} // namespace ksys::util +} // namespace ksys diff --git a/src/KingSystem/Utils/Thread/ManagedTask.h b/src/KingSystem/Utils/Thread/ManagedTask.h index 8116de41..32e00b01 100644 --- a/src/KingSystem/Utils/Thread/ManagedTask.h +++ b/src/KingSystem/Utils/Thread/ManagedTask.h @@ -3,7 +3,7 @@ #include "KingSystem/Utils/Thread/Task.h" #include "KingSystem/Utils/Types.h" -namespace ksys::util { +namespace ksys { class ManagedTaskHandle; class TaskMgr; @@ -43,4 +43,4 @@ protected: }; KSYS_CHECK_SIZE_NX150(ManagedTask, 0xc0); -} // namespace ksys::util +} // namespace ksys diff --git a/src/KingSystem/Utils/Thread/ManagedTaskHandle.cpp b/src/KingSystem/Utils/Thread/ManagedTaskHandle.cpp index 874bf46f..60f9e5cb 100644 --- a/src/KingSystem/Utils/Thread/ManagedTaskHandle.cpp +++ b/src/KingSystem/Utils/Thread/ManagedTaskHandle.cpp @@ -3,7 +3,7 @@ #include "KingSystem/Utils/Thread/TaskQueueBase.h" #include "KingSystem/Utils/Thread/TaskQueueLock.h" -namespace ksys::util { +namespace ksys { ManagedTaskHandle::ManagedTaskHandle() = default; @@ -104,4 +104,4 @@ inline void ManagedTaskHandle::decrementRef_() { } } -} // namespace ksys::util +} // namespace ksys diff --git a/src/KingSystem/Utils/Thread/ManagedTaskHandle.h b/src/KingSystem/Utils/Thread/ManagedTaskHandle.h index 61c41c51..04beea9c 100644 --- a/src/KingSystem/Utils/Thread/ManagedTaskHandle.h +++ b/src/KingSystem/Utils/Thread/ManagedTaskHandle.h @@ -4,7 +4,7 @@ #include