11#ifndef INCGUARD_MGL_TASK_DEFAULT_TASK_NODE_H_1622707431
12#define INCGUARD_MGL_TASK_DEFAULT_TASK_NODE_H_1622707431
21template <
typename TaskIDType = Identifier,
typename EventIDType = EventIdentifier>
26 enum class Stage : uint8_t
43 descriptor.stageSettings =
45 {
static_cast<ExecuteStage>(Stage::Update), ExecuteMode::ParallelizableUpdate},
46 {
static_cast<ExecuteStage>(Stage::Render), ExecuteMode::RenderUpdate},
48 descriptor.parallelExecuteCount = parallelExecuteCount;
60 :
Node(
static_cast<Identifier
>(identifier))
109 virtual void OnEvent(EventIDType event,
void *argument)
noexcept
124 OnEvent(EventIDType(eventID), argument);
デフォルトの実行ステージ設定に対応したタスク
Definition mgl_task_default_task_node.h:23
virtual void OnRender() noexcept
描画処理
Definition mgl_task_default_task_node.h:100
virtual void OnUpdate() noexcept
更新処理
Definition mgl_task_default_task_node.h:93
static InitializeDescriptor GetInitializeDescriptor(int32_t parallelExecuteCount=-1) noexcept
このタスク用の初期化記述子を取得
Definition mgl_task_default_task_node.h:40
void OnExecute(ExecuteStage stage) noexcept final
実行時の処理
Definition mgl_task_default_task_node.h:71
void OnReceiveTaskEvent(EventIdentifier eventID, void *argument) noexcept final
タスクのイベント受信処理
Definition mgl_task_default_task_node.h:122
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:109
タスクノード
Definition mgl_task_node.h:20
constexpr Node(Identifier identifier) noexcept
コンストラクタ
Definition mgl_task_node.h:28
uint32_t EventIdentifier
イベントIDを表す型
Definition mgl_task_defs.h:105
uint8_t ExecuteStage
実行ステージ
Definition mgl_task_defs.h:68
初期化記述子
Definition mgl_task_defs.h:99