summaryrefslogtreecommitdiff
path: root/src/KingSystem/Utils/Thread/GameTaskThread.cpp
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2020-09-15 19:13:52 +0200
committerLéo Lam <leo@leolam.fr>2020-09-16 17:49:37 +0200
commit3db6228dfc65a25da49bab26ab8bcf4abc69a98f (patch)
tree3946a9211c2adc7213b1ae94ccf4baca22b73020 /src/KingSystem/Utils/Thread/GameTaskThread.cpp
parent8b7369dffb1e816b2f27ab0133d2bac218383a45 (diff)
ksys: Add more task utilities
* TaskMgr, ManagedTask, ManagedTaskHandle * GameTaskThread: partial implementation because PhysicsMemSys / Havok stuff hasn't been decompiled yet and calc_() requires PhysicsMemSys
Diffstat (limited to 'src/KingSystem/Utils/Thread/GameTaskThread.cpp')
-rw-r--r--src/KingSystem/Utils/Thread/GameTaskThread.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/KingSystem/Utils/Thread/GameTaskThread.cpp b/src/KingSystem/Utils/Thread/GameTaskThread.cpp
new file mode 100644
index 00000000..eacd9e64
--- /dev/null
+++ b/src/KingSystem/Utils/Thread/GameTaskThread.cpp
@@ -0,0 +1,15 @@
+#include "KingSystem/Utils/Thread/GameTaskThread.h"
+
+namespace ksys::util {
+
+GameTaskThread::GameTaskThread(const sead::SafeString& name, sead::Heap* heap, s32 priority,
+ sead::MessageQueue::BlockType block_type, long quit_msg,
+ s32 stack_size, s32 message_queue_size)
+ : TaskThread(name, heap, priority, block_type, quit_msg, stack_size, message_queue_size) {}
+
+void GameTaskThread::quit(bool) {
+ mMessageQueue.push(cMessage_GameThreadQuit, sead::MessageQueue::BlockType::Blocking);
+ Thread::quit(false);
+}
+
+} // namespace ksys::util