使用层次结构设计多级状态的复杂性
多级管理状态的复杂性,使用Stateflow层次结构®图表。与层次结构,可以代表系统中多级子组件。
国家层次的例子
例如,这张图有三个层次的层次结构。画一个州的边界内另一个状态表明,内部状态是亚态(或小孩)的外州(或极权主义国家)。外州的父母内心的状态。
在这个例子中,图表的父状态Car_done
。国家Car_done
的父状态吗Car_made
和Car_shipped
州。国家Car_made
也是父母的吗Parts_assembled
和画
州。你还能说美国Parts_assembled
和画
是儿童的Car_made
状态。
代表Stateflow层次结构的文本,使用斜杠字符(/)
代表图并使用一段时间(.)
分离层次结构中的每个级别的状态。下面的列表是一个层次结构的文本表示的对象在前面的例子:
/ Car_done
/ Car_done
。Car_made
/ Car_done
。Car_shipped
/ Car_done
。Car_made
。Parts_assembled
/ Car_done
。Car_made
。画
创建亚态和超级大国
一个亚态是一个国家,只能当另一个活跃的状态,称为母公司,是活跃的。州亚态被称为超级大国。创建一个亚态,点击工具并拖动一个新的状态进入国家你想成为超级大国。Stateflow图表创建亚态在指定的父状态。这样您可以嵌套状态任何深度。改变亚态的血统,将它拖从当前图表中的父母放它在其新的父母。
请注意
父母状态必须以图形方式足以容纳所有的亚态。您可能需要调整之前父母状态拖一个新的亚态。你可以绕过大型图形大小的需要国家通过声明一个超级大国子图表。看到通过使用子图表封装模态逻辑获取详细信息。
对象可以包含状态
州可以包含所有其他Stateflow对象。Stateflow图表符号支持图形对象层次结构的表金宝app征与遏制Stateflow图表。一个国家是一个超级大国如果它包含其他州。一个国家是一个亚态如果它包含了另一个状态。状态,既不是超级大国,也不是亚态的另一个状态是国家父母是Stateflow图表本身。
国家也可以包含nongraphical数据、事件和消息对象。这个容器的结构出现在Model Explorer。定义数据、事件和消息容器通过指定父对象。