ksys: Add more task utilities

* TaskMgr, ManagedTask, ManagedTaskHandle

* GameTaskThread: partial implementation because PhysicsMemSys / Havok
  stuff hasn't been decompiled yet and calc_() requires PhysicsMemSys
This commit is contained in:
Léo Lam
2020-09-15 19:13:52 +02:00
parent 8b7369dffb
commit 3db6228dfc
10 changed files with 722 additions and 52 deletions
+52 -52
View File
@@ -86813,19 +86813,19 @@
0x00000071010c2a1c,sub_71010C2A1C,24,
0x00000071010c2a34,sub_71010C2A34,20,
0x00000071010c2a48,j__ZdlPv_1198,4,
0x00000071010c2a4c,Res1::ctor,32,
0x00000071010c2a6c,Res1::dtor,128,
0x00000071010c2aec,Res1::b,160,
0x00000071010c2b8c,sub_71010C2B8C,108,
0x00000071010c2bf8,Res1::dtorDelete,136,
0x00000071010c2c80,Res1::a,16,
0x00000071010c2c90,Res1::o,164,
0x00000071010c2d34,sub_71010C2D34,248,
0x00000071010c2e2c,Res1::field18andfieldCTrue_NotReady,32,
0x00000071010c2e4c,sub_71010C2E4C,36,
0x00000071010c2e70,sub_71010C2E70,96,
0x00000071010c2ed0,sub_71010C2ED0,8,
0x00000071010c2ed8,sub_71010C2ED8,12,
0x00000071010c2a4c,Res1::ctor,32,_ZN4ksys4util17ManagedTaskHandleC1Ev
0x00000071010c2a6c,Res1::dtor,128,_ZN4ksys4util17ManagedTaskHandleD1Ev
0x00000071010c2aec,Res1::b,160,_ZN4ksys4util17ManagedTaskHandle19removeTaskFromQueueEv
0x00000071010c2b8c,sub_71010C2B8C,108,_ZN4ksys4util17ManagedTaskHandle8finalizeEv
0x00000071010c2bf8,Res1::dtorDelete,136,_ZN4ksys4util17ManagedTaskHandleD0Ev
0x00000071010c2c80,Res1::a,16,_ZNK4ksys4util17ManagedTaskHandle7hasTaskEv
0x00000071010c2c90,Res1::o,164,_ZN4ksys4util17ManagedTaskHandle4waitEv
0x00000071010c2d34,sub_71010C2D34,248,_ZN4ksys4util17ManagedTaskHandle4waitERKN4sead8TickSpanE
0x00000071010c2e2c,Res1::field18andfieldCTrue_NotReady,32,_ZNK4ksys4util17ManagedTaskHandle14isTaskAttachedEv
0x00000071010c2e4c,sub_71010C2E4C,36,_ZNK4ksys4util17ManagedTaskHandle27didTaskCompleteSuccessfullyEv
0x00000071010c2e70,sub_71010C2E70,96,_ZN4ksys4util17ManagedTaskHandle10attachTaskERKNS1_10SetTaskArgE
0x00000071010c2ed0,sub_71010C2ED0,8,_ZN4ksys4util17ManagedTaskHandle9setStatusENS1_6StatusE
0x00000071010c2ed8,sub_71010C2ED8,12,_ZN4ksys4util17ManagedTaskHandle12setIsSuccessEb
0x00000071010c2ee4,sub_71010C2EE4,516,
0x00000071010c30e8,sub_71010C30E8,44,
0x00000071010c3114,ElementSpark::ctor,280,
@@ -90490,33 +90490,33 @@
0x00000071011f7284,sub_71011F7284,92,_ZNK4ksys4util17TaskPostRunResult18getRuntimeTypeInfoEv
0x00000071011f72e0,j__ZdlPv_1226,4,_ZN4ksys4util17TaskPostRunResultD0Ev
0x00000071011f72e4,sub_71011F72E4,44,
0x00000071011f7310,EventPlusStringDerived::ctor,60,
0x00000071011f734c,sub_71011F734C,72,
0x00000071011f7394,EventPlusStringDerived::dtor,72,
0x00000071011f73dc,EventPlusStringDerived::dtorDelete,80,
0x00000071011f742c,EventPlusStringDerived::a,16,
0x00000071011f743c,EventPlusStringDerived::b,44,
0x00000071011f7468,EventPlusStringDerived::null1,4,
0x00000071011f746c,EventPlusStringDerived::c,100,
0x00000071011f74d0,EventPlusStringDerived::d,12,
0x00000071011f74dc,EventPlusStringDerived::e,88,
0x00000071011f7534,EventPlusStringDerived::f,12,
0x00000071011f7540,EventPlusStringDerived::null1_0,4,
0x00000071011f7544,EventPlusStringDerived::null1_1,4,
0x00000071011f7548,EventPlusStringDerived::null1_2,4,
0x00000071011f754c,sub_71011F754C,8,
0x00000071011f7554,EventPlusStringDerived::setWorkerThread,8,
0x00000071011f755c,EventPlusStringDerived::z,84,
0x00000071011f75b0,sub_71011F75B0,128,
0x00000071011f7630,EventPlusStringDerived::rtti1,204,
0x00000071011f76fc,EventPlusStringDerived::rtti2,92,
0x00000071011f7758,ThreadDerived::ctor,68,
0x00000071011f779c,ThreadDerived::dtor,28,
0x00000071011f77b8,ThreadDerived::dtorDelete,60,
0x00000071011f77f4,ThreadDerived::quit,52,
0x00000071011f7310,EventPlusStringDerived::ctor,60,_ZN4ksys4util11ManagedTaskC1EPN4sead4HeapE
0x00000071011f734c,sub_71011F734C,72,_ZN4ksys4util11ManagedTaskC1EN4sead9IDisposer14HeapNullOptionE
0x00000071011f7394,EventPlusStringDerived::dtor,72,_ZN4ksys4util11ManagedTaskD1Ev
0x00000071011f73dc,EventPlusStringDerived::dtorDelete,80,_ZN4ksys4util11ManagedTaskD0Ev
0x00000071011f742c,EventPlusStringDerived::a,16,_ZN4ksys4util11ManagedTask8prepare_EPNS0_11TaskRequestE
0x00000071011f743c,EventPlusStringDerived::b,44,_ZN4ksys4util11ManagedTask4run_Ev
0x00000071011f7468,EventPlusStringDerived::null1,4,_ZN4ksys4util11ManagedTask14onRunFinished_Ev
0x00000071011f746c,EventPlusStringDerived::c,100,_ZN4ksys4util11ManagedTask9onFinish_Ev
0x00000071011f74d0,EventPlusStringDerived::d,12,_ZN4ksys4util11ManagedTask13onPostFinish_Ev
0x00000071011f74dc,EventPlusStringDerived::e,88,_ZN4ksys4util11ManagedTask10preRemove_Ev
0x00000071011f7534,EventPlusStringDerived::f,12,_ZN4ksys4util11ManagedTask11postRemove_Ev
0x00000071011f7540,EventPlusStringDerived::null1_0,4,_ZN4ksys4util11ManagedTask6onRun_Ev
0x00000071011f7544,EventPlusStringDerived::null1_1,4,_ZN4ksys4util11ManagedTask12prepareImpl_EPNS0_11TaskRequestE
0x00000071011f7548,EventPlusStringDerived::null1_2,4,_ZN4ksys4util11ManagedTask14preRemoveImpl_Ev
0x00000071011f754c,sub_71011F754C,8,_ZNK4ksys4util11ManagedTask6isIdleEv
0x00000071011f7554,EventPlusStringDerived::setWorkerThread,8,_ZN4ksys4util11ManagedTask6setMgrEPNS0_7TaskMgrE
0x00000071011f755c,EventPlusStringDerived::z,84,_ZN4ksys4util11ManagedTask12attachHandleEPNS0_17ManagedTaskHandleEPNS0_13TaskQueueBaseE
0x00000071011f75b0,sub_71011F75B0,128,_ZN4ksys4util11ManagedTask12detachHandleEv?
0x00000071011f7630,EventPlusStringDerived::rtti1,204,_ZNK4ksys4util11ManagedTask27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE
0x00000071011f76fc,EventPlusStringDerived::rtti2,92,_ZNK4ksys4util11ManagedTask18getRuntimeTypeInfoEv
0x00000071011f7758,ThreadDerived::ctor,68,_ZN4ksys4util14GameTaskThreadC1ERKN4sead14SafeStringBaseIcEEPNS2_4HeapEiNS2_12MessageQueue9BlockTypeElii
0x00000071011f779c,ThreadDerived::dtor,28,_ZN4ksys4util14GameTaskThreadD2Ev
0x00000071011f77b8,ThreadDerived::dtorDelete,60,_ZN4ksys4util14GameTaskThreadD0Ev
0x00000071011f77f4,ThreadDerived::quit,52,_ZN4ksys4util14GameTaskThread4quitEb
0x00000071011f7828,ThreadDerived::calc_,164,
0x00000071011f78cc,sub_71011F78CC,204,
0x00000071011f7998,sub_71011F7998,92,
0x00000071011f78cc,sub_71011F78CC,204,_ZNK4ksys4util14GameTaskThread27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE
0x00000071011f7998,sub_71011F7998,92,_ZNK4ksys4util14GameTaskThread18getRuntimeTypeInfoEv
0x00000071011f79f4,sub_71011F79F4,140,
0x00000071011f7a80,SetMainInvokerClass::ctor,20,_ZN4ksys4util18TaskDelegateSetterC1Ev
0x00000071011f7a94,SetMainInvokerClass::dtor,4,_ZN4ksys4util18TaskDelegateSetterD1Ev
@@ -90569,19 +90569,19 @@
0x00000071011f8748,sub_71011F8748,112,_ZNK4ksys4util18TaskPostRunContext27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE
0x00000071011f87b8,sub_71011F87B8,92,_ZNK4ksys4util18TaskPostRunContext18getRuntimeTypeInfoEv
0x00000071011f8814,j__ZdlPv_1229,4,_ZN4ksys4util18TaskPostRunContextD0Ev
0x00000071011f8818,WorkerThread::ctor,172,
0x00000071011f88c4,WorkerThread::dtor,80,
0x00000071011f8914,WorkerThread::deleteElements,196,
0x00000071011f89d8,WorkerThread::dtorDelete,88,
0x00000071011f8a30,WorkerThread::submitRequest,408,
0x00000071011f8bc8,WorkerThread::lockAndRemoveSomethingFromQueueAndWait,276,
0x00000071011f8cdc,sub_71011F8CDC,112,
0x00000071011f8d4c,WorkerThread::submitRequest2,460,
0x00000071011f8f18,WorkerThread::init,380,
0x00000071011f9094,WorkerThread::hasQueue,16,
0x00000071011f90a4,WorkerThread::removeSomethingFromQueueAndWait,428,
0x00000071011f9250,WorkerThread::rtti1,112,
0x00000071011f92c0,WorkerThread::rtti2,92,
0x00000071011f8818,WorkerThread::ctor,172,_ZN4ksys4util7TaskMgrC1EPN4sead4HeapE
0x00000071011f88c4,WorkerThread::dtor,80,_ZN4ksys4util7TaskMgrD1Ev
0x00000071011f8914,WorkerThread::deleteElements,196,_ZN4ksys4util7TaskMgr8finalizeEv
0x00000071011f89d8,WorkerThread::dtorDelete,88,_ZN4ksys4util7TaskMgrD0Ev
0x00000071011f8a30,WorkerThread::submitRequest,408,_ZN4ksys4util7TaskMgr13submitRequestERNS0_14TaskMgrRequestE
0x00000071011f8bc8,WorkerThread::lockAndRemoveSomethingFromQueueAndWait,276,_ZN4ksys4util7TaskMgr24fetchIdleTaskForRequest_ERNS0_14TaskMgrRequestEb?
0x00000071011f8cdc,sub_71011F8CDC,112,_ZN4ksys4util7TaskMgr8freeTaskEPNS0_11ManagedTaskE
0x00000071011f8d4c,WorkerThread::submitRequest2,460,_ZN4ksys4util7TaskMgr16trySubmitRequestERNS0_14TaskMgrRequestE
0x00000071011f8f18,WorkerThread::init,380,_ZN4ksys4util7TaskMgr4initEiPN4sead4HeapERNS2_10IDelegate1IPPNS0_11ManagedTaskEEE?
0x00000071011f9094,WorkerThread::hasQueue,16,_ZNK4ksys4util7TaskMgr8hasTasksEv
0x00000071011f90a4,WorkerThread::removeSomethingFromQueueAndWait,428,_ZN4ksys4util7TaskMgr14fetchIdleTask_Eb
0x00000071011f9250,WorkerThread::rtti1,112,_ZNK4ksys4util7TaskMgr27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE
0x00000071011f92c0,WorkerThread::rtti2,92,_ZNK4ksys4util7TaskMgr18getRuntimeTypeInfoEv
0x00000071011f931c,SeadController::getInstance,12,
0x00000071011f9328,SeadController::setInstance,12,
0x00000071011f9334,sub_71011F9334,12,
Can't render this file because it is too large.