getDiagramReporter

Класс: slreportgen.finder. DiagramElementResult
Пакет: slreportgen.finder

Возвращает репортер схем для результата элемента схемы

Синтаксис

reporter = getDiagramReporter(result)

Описание

reporter = getDiagramReporter(result) возвращает репортер, который генерирует моментальный снимок элемента, возвращенного в результате элемента схемы, или пустой []. Если результат содержит элемент схемы, такой как Simulink® блок, или Stateflow® график или субдиаграмма, который содержит схему, этот метод возвращает репортер, который генерирует моментальный снимок схемы. В противном случае возвращается пустым, []. Для примера этот метод возвращает репортер схемы для графика и субдиаграммы результатов, но [] для результатов состояния, которые не содержат схем. Чтобы включить схему применимого результата поиска в отчет, добавьте этого репортера в отчет непосредственно или через репортера Главы или Секции.

Входные параметры

расширить все

DiagramElementResult объект, который является выходом slreportgen.finder.DiagramElementFinder класс.

Выходные аргументы

расширить все

Объект схемы, возвращенный как slreportgen.report.Diagram объект, в зависимости от результата поиска. Если результатом поиска является объект, который содержит схему, такой как блок подсистемы или субдиаграмма, то выходом является репортер схемы. В противном случае он пуст []. Если не пустой, репортер схемы генерирует изображение моментального снимка элемента схемы.

Примеры

расширить все

The slrgex_sf_car модель использует функцию Simulink, которая является функцией, которая использует подсистему Simulink, чтобы вычислить ее выходы из ее входов. Этот пример находит схемы в модели и для каждой схемы использует slreportgen.DiagramElementFinder объект для поиска подсистем Simulink Function. Для каждого slreportgen.DiagramElementResult объект, возвращенный поиском, в примере используется Name значение свойства как заголовок раздела и вызывает getDiagramReporter метод для возврата подсистемы схемы для добавления к разделу.

import slreportgen.report.*
import slreportgen.finder.*
import mlreportgen.report.*

model = "slrgex_sf_car";
load_system(model);

rpt = slreportgen.report.Report("output","pdf");
chapter = Chapter();
chapter.Title = "Diagram Element Result Example";

% Find all diagrams in the model
diagFinder = DiagramFinder(model);
diagrams = find(diagFinder);
for diag = diagrams
    % Find all Simulink Function subsystems in the current diagram
    elemFinder = DiagramElementFinder(diag);
    elemFinder.Types = "slfunction";
    elems = find(elemFinder);
    for elem = elems
        section = Section("Title", ...
            mlreportgen.utils.normalizeString(elem.Name));
        % Get the diagram reporter from the result and add it to the section
        rptr = getDiagramReporter(elem);
        if ~isempty(rptr)
            add(section,rptr)
        end
        add(section,elem);
        add(chapter,section);
    end
end

add(rpt,chapter);
close(rpt);
rptview(rpt);

Введенный в R2018b