summaryrefslogtreecommitdiff
path: root/src/KingSystem
diff options
context:
space:
mode:
Diffstat (limited to 'src/KingSystem')
-rw-r--r--src/KingSystem/ActorSystem/CMakeLists.txt2
-rw-r--r--src/KingSystem/ActorSystem/actBaseProcInitializer.cpp7
-rw-r--r--src/KingSystem/ActorSystem/actBaseProcInitializer.h39
3 files changed, 48 insertions, 0 deletions
diff --git a/src/KingSystem/ActorSystem/CMakeLists.txt b/src/KingSystem/ActorSystem/CMakeLists.txt
index 3d9ec011..b75e8817 100644
--- a/src/KingSystem/ActorSystem/CMakeLists.txt
+++ b/src/KingSystem/ActorSystem/CMakeLists.txt
@@ -62,6 +62,8 @@ target_sources(uking PRIVATE
actBaseProcHandle.h
actBaseProcHeapMgr.cpp
actBaseProcHeapMgr.h
+ actBaseProcInitializer.cpp
+ actBaseProcInitializer.h
actBaseProcJob.cpp
actBaseProcJob.h
actBaseProcJobHandler.cpp
diff --git a/src/KingSystem/ActorSystem/actBaseProcInitializer.cpp b/src/KingSystem/ActorSystem/actBaseProcInitializer.cpp
new file mode 100644
index 00000000..ab6e2b6c
--- /dev/null
+++ b/src/KingSystem/ActorSystem/actBaseProcInitializer.cpp
@@ -0,0 +1,7 @@
+#include "KingSystem/ActorSystem/actBaseProcInitializer.h"
+
+namespace ksys::act {
+
+BaseProcInitializer::BaseProcInitializer() = default;
+
+} // namespace ksys::act
diff --git a/src/KingSystem/ActorSystem/actBaseProcInitializer.h b/src/KingSystem/ActorSystem/actBaseProcInitializer.h
new file mode 100644
index 00000000..3510d513
--- /dev/null
+++ b/src/KingSystem/ActorSystem/actBaseProcInitializer.h
@@ -0,0 +1,39 @@
+#pragma once
+
+#include <basis/seadTypes.h>
+
+namespace sead {
+class Heap;
+}
+
+namespace ksys::util {
+class TaskMgr;
+class TaskQueue;
+} // namespace ksys::util
+
+namespace ksys::act {
+
+class BaseProcInitializer {
+public:
+ BaseProcInitializer();
+ virtual ~BaseProcInitializer();
+
+ BaseProcInitializer(const BaseProcInitializer&) = delete;
+ auto operator=(const BaseProcInitializer&) = delete;
+
+ u32 get8() const { return _8; }
+ void set8(u32 value) { _8 = value; }
+
+ bool isActorGenerationEnabled() const { return mActorGenerationEnabled; }
+ void setActorGenerationEnabled(bool enabled) { mActorGenerationEnabled = enabled; }
+
+private:
+ u32 _8 = 0;
+ void* _10 = nullptr;
+ util::TaskMgr* mTaskMgr = nullptr;
+ util::TaskQueue* mTaskQueue = nullptr;
+ sead::Heap* mHeap = nullptr;
+ bool mActorGenerationEnabled = true;
+};
+
+} // namespace ksys::act