Avoid searching the commented out logic seach in Stateflow API.
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Arjunkrishna Mitta
il 11 Dic 2020
Commentato: Uday Pradhan
il 14 Dic 2020
I'm using a script to find all the parameters used in Stateflow logic of the model.
rt = sfroot;
m= rt.find('-isa','Stateflow.Chart'); % If not used in Simulink , Check in stateflow
params_sf = m.find('-isa', 'Stateflow.Data','Name',c_name);
*c_name - has the parameter name
But the only issue in this finds the parameters which are involved also in commented out statecharts.
How can i avoid searching in Commented out statecharts ??
0 Commenti
Risposta accettata
Uday Pradhan
il 14 Dic 2020
Hi Arjun,
According to my understanding, you want ignore the charts that are commented in the Stateflow logic of your model. To do this, you can create a custom filtering function to be used along with "find". Example:
f = @(h) (strcmp(get_param(h.path,'Commented'),'off')); %for the chart, return true if it is not commented
m = rt.find('-isa','Stateflow.Chart','-and','-function',f); %only returns those charts which are uncommented
I hope this helps!
7 Commenti
Uday Pradhan
il 14 Dic 2020
get_param(blockName,'Commented') returns 'on' or 'off' according to if the block is commneted or not. So I used this property to check if a chart if commented or not. In its present form:
f = @(rt)(strcmp(get_param(rt,'Commented'),'off'));%for the chart, return true if it is not commented
m = rt.find('-isa','Stateflow.Chart','-and','-function',f);
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Complex Logic in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!