blob: 9c03e271444506b40fdfea5c172ac4aff8a8ceca (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#pragma once
#include <heap/seadDisposer.h>
#include <prim/seadDelegate.h>
#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:
Task* selectTask(const TaskSelectionContext& context);
TaskSelectionDelegateT<BaseProcCreateTaskSelector> mDelegate{
this, &BaseProcCreateTaskSelector::selectTask};
};
KSYS_CHECK_SIZE_NX150(BaseProcCreateTaskSelector, 0x40);
} // namespace ksys::act
|