- A state is a parent state or a substate based on its geometric location in the chart. For more information, see https://www.mathworks.com/help/stateflow/api/creating-and-destroying-api-objects.html
- States can output self-activity, child activity, and leaf activity, as described in https://www.mathworks.com/help/stateflow/ug/about-active-state-data.html.
How to check if state is parent state or substate ???
2 ビュー (過去 30 日間)
古いコメントを表示
Dear bros !!!
When I use following code, OutputMonitoringMode of A1 and B are 'Self activity' and A is 'ChildActivity' coressponding.
states = charts(i).find('-isa', 'Stateflow.State', 'IsCommented', 0)
states(1).OutputMonitoringMode
So I can not defined that A1 is substate.
Do you know how to define it???
![state.png](https://www.mathworks.com/matlabcentral/answers/uploaded_files/239372/image.png)
0 件のコメント
回答 (1 件)
Jorge Calvo
2021 年 11 月 2 日
Hi,
I think you are confusing two different terms: whether a state is a parent/substate and what type of active state output it is producing.
In your chart, state A is outputing information about which substate (A1 or A2) is active. States A1 and B are outputing information about whether they are active or not. This makes sense becasue A has substates to monitor, while A1 and B do not.
Now, if you want to check whether a state is a perent or not, you can try to count the number of substates it contains by entering:
>> numel(find(state,"-isa","Stateflow.State"))
PS. If you are running an older version of MATLAB, try using single quotes instead of double quotes.
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!