デフォルト遷移を使用したチャートの実行の制御
排他的 (OR) 構造のデフォルト遷移
以下の例は、サブステートへのデフォルト遷移が定義されている、OR ステートから排他的 (OR) 構造を含むスーパーステートへの遷移を示しています。

最初は、チャートはスリープ状態です。ステート A がアクティブです。イベント E_one が発生して、チャートを起動します。このイベントは、チャートのルートからチャートの階層の下方向に処理されます。
チャートのルートは、
E_oneの結果、有効な遷移が存在するかどうかをチェックします。ステートAからスーパーステートBへの有効な遷移が存在します。ステート
Aの exit アクション (exitA()) が実行されて完了します。ステート
Aが非アクティブとしてマークされます。遷移アクション
Aが実行されて完了します。ステート
Bがアクティブとしてマークされます。ステート
Bの entry アクション (entB()) が実行されて完了します。ステート
BがステートB.B1への有効なデフォルト遷移を検出します。ステート
B.B1がアクティブとしてマークされます。ステート
B.B1の entry アクション (entB1()) が実行されて完了します。チャートはスリープ状態に戻ります。
このシーケンスは、ステート A が最初にアクティブな場合に、イベント E_one に関連する Stateflow® チャートの実行を完了します。
ジャンクションへのデフォルト遷移
以下の例は、コネクティブ ジャンクションへのデフォルト遷移の動作を示しています。ジャンクションへのデフォルト遷移は、チャートが起動するたびにではなく、最初にステート B が開始されたときにのみ有効です。

この例では、最初は、チャートはスリープ状態です。ステート B.B1 がアクティブです。条件 [C_two] は真です。イベントが発生して、チャートを起動します。このイベントは、チャートのルートからチャートの階層の下方向に処理されます。
ステート
Bは、いずれかのイベントの結果、有効な遷移が存在するかどうかをチェックします。該当するものは存在しません。ステート
Bのduringアクション (durB()) が実行されて完了します。ステート
B1は、いずれかのイベントの結果、有効な遷移が存在するかどうかをチェックします。該当するものは存在しません。ステート
B1のduringアクション (durB1()) が実行されて完了します。
このシーケンスは、いずれかのイベントの発生と関連する Stateflow チャートの実行を完了します。
デフォルト遷移とヒストリ ジャンクション
以下の例は、デフォルト遷移とヒストリ ジャンクションを含むスーパーステートの動作を示しています。

最初は、チャートはスリープ状態です。ステート A がアクティブです。ヒストリ ジャンクションが、ステート B4 がスーパーステート B の以前にアクティブであったサブステートであるという事実を記録します。イベント E_one が発生して、チャートを起動します。このイベントは、チャートのルートからチャートの階層の下方向に処理されます。
チャートのルートは、
E_oneの結果、有効な遷移が存在するかどうかをチェックします。ステート
AからスーパーステートBへの有効な遷移が存在します。ステート
Aの exit アクション (exitA()) が実行されて完了します。ステート
Aが非アクティブとしてマークされます。ステート
Bがアクティブとしてマークされます。ステート
Bの entry アクション (entB()) が実行されて完了します。ステート
Bはヒストリ ジャンクションを使用して、スーパーステートの遷移先を判定します。ヒストリ ジャンクションは、サブステート
B.B4が最後のアクティブなサブステートであり、遷移先になることを示します。ステート
B.B4がアクティブとしてマークされます。ステート
B.B4の entry アクション (entB4()) が実行されて完了します。チャートはスリープ状態に戻ります。
このシーケンスは、イベント E_one に関連する Stateflow チャートの実行を完了します。
ラベル付きのデフォルト遷移
以下の例は、ラベル付きのデフォルト遷移を使用する方法を示しています。

最初は、チャートはスリープ状態です。ステート A がアクティブです。イベント E_one が発生して、チャートを起動します。このイベントは、チャートのルートからチャートの階層の下方向に処理されます。
チャートのルートは、
E_oneの結果、有効な遷移が存在するかどうかをチェックします。ステート
AからスーパーステートBへの有効な遷移が存在します。イベントE_oneまたはE_twoが発生した場合に遷移は有効になります。ステート
Aの exit アクション (exitA()) が実行されて完了します。ステート
Aが非アクティブとしてマークされます。ステート
Bがアクティブとしてマークされます。ステート
Bの entry アクション (entB()) が実行されて完了します。ステート
BがステートB.B1への有効なデフォルト遷移を検出します。E_oneの結果、デフォルト遷移が有効になります。ステート
B.B1がアクティブとしてマークされます。ステート
B.B1の entry アクション (entB1()) が実行されて完了します。チャートはスリープ状態に戻ります。
このシーケンスは、ステート A が最初にアクティブな場合に、イベント E_one に関連する Stateflow チャートの実行を完了します。