From c23f86e6d5aaba7bd85790fc0f206f0db5e739cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Fri, 12 Mar 2021 19:30:37 +0100 Subject: ksys/act: Add BaseProcCreateTaskSelector --- .../ActorSystem/actBaseProcCreateTaskSelector.h | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.h (limited to 'src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.h') diff --git a/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.h b/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.h new file mode 100644 index 00000000..40e5da31 --- /dev/null +++ b/src/KingSystem/ActorSystem/actBaseProcCreateTaskSelector.h @@ -0,0 +1,25 @@ +#pragma once + +#include +#include +#include "KingSystem/Utils/Thread/TaskQueueBase.h" +#include "KingSystem/Utils/Types.h" + +namespace ksys::act { + +class BaseProcCreateTaskSelector { + SEAD_SINGLETON_DISPOSER(BaseProcCreateTaskSelector) + BaseProcCreateTaskSelector() = default; + +public: + auto& getDelegate() { return mDelegate; } + +private: + util::Task* selectTask(const util::TaskSelectionContext& context); + + util::TaskSelectionDelegateT mDelegate{ + this, &BaseProcCreateTaskSelector::selectTask}; +}; +KSYS_CHECK_SIZE_NX150(BaseProcCreateTaskSelector, 0x40); + +} // namespace ksys::act -- cgit v1.2.3