Пакет: slreportgen.finder
Суперклассы:
Найдите состояния Stateflow
Находит состояния Stateflow®.
создает средство поиска, которое находит по умолчанию все непрокомментированные состояния Stateflow в заданном графике finder
= StateFinder(diagram
)diagram
. Чтобы ограничить поиск к определенным типам схем графика, используйте свойства этого средства поиска.
Это средство поиска обеспечивает два способа получить результаты поиска:
Чтобы возвратить результаты поиска как массив, используйте find
метод. Добавьте результаты непосредственно в отчет или обработайте результаты в for
цикл.
Чтобы выполнить итерации через результаты по одному, используйте hasNext
и next
методы в while
цикл.
Никакая опция не имеет преимущество производительности.
свойства наборов с помощью пар "имя-значение". Можно задать несколько аргументов пары "имя-значение" в любом порядке. Заключите каждое имя свойства в одинарные кавычки.finder
= StateFinder(Name,Value
)
находит состояния в графике results
= find(finder)diagram
заданный средством поиска. Этот метод возвращает состояния, которые он находит перенесенным в объекты результата типа slreportgen.finder.DiagramElementResult
. Чтобы добавить таблицы государственной собственности, добавьте объекты результатов непосредственно в отчет или добавьте их в генератор отчетов, который вы затем добавляете в отчет. Отчеты, в которые можно добавить results
из этого метода должны быть отчеты типа slreportgen.report.Report
.
tf = hasNext(finder)
определяет, если схема графика, что поисковые запросы средства поиска содержат по крайней мере одно состояние. Если схема графика имеет по крайней мере одно состояние, hasNext
очереди метода, которые утверждают как следующее состояние что next
метод возвратится. hasNext
метод затем возвращает true
. Используйте next
метод, чтобы получить то состояние. На последующих вызовах, hasNext
метод определяет, имеет ли схема графика состояние что next
метод еще не получил. Это ставит состояние в очередь для next
метод, чтобы получить и возвращает true
. Если больше нет состояний, которые будут получены, этот метод возвращает false
. Чтобы прогрессивно искать схему графика состояния, используйте hasNext
метод с next
метод в некоторое время цикле.
result = next(finder)
возвращает следующий поисковый result
в очереди результата, что hasNext
метод создается. Этот метод возвращает состояние, которое он находит перенесенным в объект результата типа slreportgen.finder.DiagramElementResult
. Чтобы добавить таблицы государственной собственности, добавьте объекты результатов непосредственно в отчет или добавьте их в генератор отчетов, который вы затем добавляете в отчет. Отчеты, в которые можно добавить results
из этого метода должен иметь тип slreportgen.report.Report
.
Указатель. Чтобы изучить, как классы Handle влияют на операции копии, смотрите Копирование Объектов (MATLAB).
Создайте отчет, который включает свойства всех состояний Stateflow в shift_logic
график sf_car
модель.
import mlreportgen.report.* import slreportgen.report.* import slreportgen.finder.* model_name = 'sf_car'; load_system(model_name); rpt = slreportgen.report.Report('output','pdf'); open(rpt) add(rpt, TitlePage("Title",... sprintf('States in %s Model',model_name))); add(rpt, TableOfContents); chartFinder = ChartDiagramFinder(model_name); charts = find(chartFinder); while hasNext(chartFinder) diagram = next(chartFinder); stFinder = StateFinder(diagram.Object); states = find(stFinder); if ~isempty(states) chapter = Chapter("Title",diagram.Name); add(chapter,diagram) for state = states sect = Section("Title","States"); add(sect,states) end add(chapter,sect) add(rpt,chapter) end end close(rpt) close_system(model_name) rptview(rpt)
slreportgen.finder.ChartDiagramFinder
| slreportgen.finder.DiagramElementFinder
| slreportgen.finder.DiagramElementResult
| slreportgen.finder.StateflowDiagramElementFinder
| slreportgen.report.Report
| slreportgen.report.StateflowObjectProperties