11#ifndef INCGUARD_MGL_TASK_DEFAULT_H_1622707431
12#define INCGUARD_MGL_TASK_DEFAULT_H_1622707431
21template <
typename TaskIDType = Identifier,
typename EventIDType = EventIdentifier>
26 enum class Stage : uint8_t
43 descriptor.stageSettings =
45 {
ExecuteStage(Stage::Update), ExecuteMode::ParallelizableUpdate},
46 {
ExecuteStage(Stage::Render), ExecuteMode::RenderUpdate},
48 descriptor.parallelExecuteCount = parallelExecuteCount;
88 virtual void OnEvent(EventIDType event,
void *argument)
noexcept
103 switch (Stage{stage})
124 void OnReceiveTaskEvent(EventIdentifier eventID,
void *argument)
noexcept final
126 OnEvent(EventIDType(eventID), argument);
デフォルトの実行ステージ設定に対応したタスク
Definition mgl_task_default_task_node.h:23
virtual void OnRender() noexcept
描画処理
Definition mgl_task_default_task_node.h:79
virtual void OnUpdate() noexcept
更新処理
Definition mgl_task_default_task_node.h:72
static InitializeDescriptor GetInitializeDescriptor(int32_t parallelExecuteCount=-1) noexcept
このタスク用の初期化記述子を取得
Definition mgl_task_default_task_node.h:40
constexpr DefaultTaskNode(TaskIDType identifier) noexcept
コンストラクタ
Definition mgl_task_default_task_node.h:59
virtual void OnEvent(EventIDType event, void *argument) noexcept
イベント受信処理
Definition mgl_task_default_task_node.h:88
タスクノード
Definition mgl_task_node.h:20
uint8_t ExecuteStage
実行ステージ
Definition mgl_task_defs.h:68
初期化記述子
Definition mgl_task_defs.h:99