# TaskComponent

継続的に実行する処理を行うノードコンポーネントです。
時間経過の待機やトゥイーン処理、非同期処理の完了待ちなどに利用します。

## ノードに設定した際の動作

### Task

Task

アクティブになった際に実行開始し、TaskComponentが実行完了した際に接続先ポートに遷移します。

追加のプロパティ

プロパティ名 | 型 | 説明
--- | --- | ---
Result | `OutputDataPort<bool>` | 実行結果をbool型で出力します。

### State

State

アクティブになった際に実行開始し、TaskComponentが実行完了した際に結果をシグナルとして出力します。

追加のプロパティ

プロパティ名 | 型 | 説明
--- | --- | ---
Result Conversion | ResultConversionMode | 実行結果を加工するモードを設定します。
Repeat If No Transition | `InputField<bool>` | Completedポートから遷移しなかった場合に繰り返し実行するかを設定します。
Completed | `OutputSignalPort` | 実行結果をシグナルとして出力します。

### BehaviorTree

BehaviorTree

#### メイン

アクティブになった際に実行開始し、TaskComponentが実行完了した際に親ノードに結果を返します。

#### Services

アクティブになった際に実行開始します。

追加のプロパティ

プロパティ名 | 型 | 説明
--- | --- | ---
Repeat | `InputField<bool>` | 実行完了後に繰り返すかどうかを設定します。
Status | `OutputDataPort<TaskStatus>` | 実行状態を出力します。

### Signal Evaluation

Signal Evaluation

入力シグナルの判定結果がtrueの場合にアクティブになり、TaskComponentが実行完了した際に結果を出力シグナルに反映させます。

### Event

Event

アクティブになった際に実行開始し、TaskComponentが実行完了した際に接続先ノードを実行します。

追加のプロパティ

プロパティ名 | 型 | 説明
--- | --- | ---
Repeat | `InputField<bool>` | 実行完了後に繰り返すかどうかを設定します。

### Service

Event

アクティブになった際に実行開始します。

追加のプロパティ

プロパティ名 | 型 | 説明
--- | --- | ---
Repeat | `InputField<bool>` | 実行完了後に繰り返すかどうかを設定します。
Status | `OutputDataPort<TaskStatus>` | 実行状態を出力します。

## スクリプト生成

スクリプトの生成機能により以下のメンバーアクセスのスクリプトにはTaskComponentが使用されます。

- フィールドの値のトゥイーン
- プロパティの値のトゥイーン
- await可能なメソッドの呼び出し

詳細はスクリプト生成を参照してください。

## 実行系TaskComponentについて

接続先ノードを子ノードとして実行するための特殊なTaskComponentがあります。 詳細は実行系TaskComponentを参照してください。