slreportgen.utils.HierarchyNumber class

Пакет: slreportgen.utils

Сгенерируйте номер, который представляет положение подсистемы в иерархии модели

Описание

Используйте объект slreportgen.utils.HierarchyNumber класс, чтобы сгенерировать числа, которые представляют положения подсистем в иерархии модели. Можно использовать числа, чтобы пометить элементы отчета, такие как заголовки раздела.

slreportgen.utils.HierarchyNumber классом является handle класс.

Атрибуты класса

HandleCompatible
true

Для получения информации об атрибутах класса см. Атрибуты класса.

Создание

Описание

пример

hierarchyNumberObj = slreportgen.utils.HierarchyNumber(source) создает объект номера иерархии для заданного источника и устанавливает Source свойство к source.

Если вы задаете источник как Simulink® модель, HierarchyNumber возразите использует все непрокомментированные Подсистемы Simulink и Stateflow® стройте диаграмму схем в модели, чтобы сгенерировать числа иерархии модели. В противном случае объект использует пользовательский список подсистем, который вы задаете. Например, чтобы сгенерировать количество иерархии схем диаграммы Stateflow в модели, задайте список путей к подсистеме.

Свойства

развернуть все

Модель или подсистема в виде одного из этих значений:

  • Строковый скаляр или вектор символов, который содержит имя открытой или загруженной модели

  • Указатель открытой или загруженной модели

  • Массив строк путей к подсистеме

  • Массив ячеек путей к подсистеме или указателей

Атрибуты:

GetAccess
public
SetAccess
private

Методы

развернуть все

Примеры

свернуть все

Создайте slreportgen.utils.HierarchyNumber объект для slrgex_f14 модель и генерирует номер, который представляет положение Aircraft Dynamics Model подсистема в иерархии модели.

modelName = "slrgex_f14";
load_system(modelName);
hierNumberObj = slreportgen.utils.HierarchyNumber(modelName);
hierNumber = generateHierarchyNumber(hierNumberObj,"slrgex_f14/Aircraft Dynamics Model")
hierNumber = 
"1.1"

Этот пример генерирует номер иерархии для каждой схемы в модели и использует номер в заголовке раздела отчета, который соответствует схеме.

Импортируйте пакеты так, чтобы вы не использовали долго, полностью определенные имена классов.

import mlreportgen.dom.*;
import mlreportgen.report.*;
import slreportgen.finder.*;
import slreportgen.utils.*;

Загрузите модель.

model = "slrgex_f14";
load_system(model);

Создайте отчет. Выключите нумерацию для разделов отчета.

rpt = Report("output","pdf");
open(rpt);
mlreportgen.report.Section.number(rpt,false);

Создайте оглавление и добавьте его в отчет.

toc = TableOfContents();
append(rpt,toc);

Создайте главу и включите нумерацию главы.

chapter = Chapter(model + " Model");
chapter.Numbered = true;

Создайте средство поиска схемы и HierarchyNumber объект для модели.

finder = DiagramFinder(model);
hierNumberObj = HierarchyNumber(model);

Для каждой найденной схемы сгенерируйте номер, который представляет относительное положение схемы в иерархии модели. Создайте раздел для схемы и используйте сгенерированный номер в заголовке. Выключите нумерацию раздела по умолчанию. Добавьте раздел к главе.

while hasNext(finder)
    result = next(finder);
    hierNumber = hierNumberObj.generateHierarchyNumber(result.Path);
    title = strcat (hierNumber + " " + result.Name);
    section = Section(title);
    section.Numbered = false;
    append(chapter, section);
end

Добавьте главу к отчету.

append(rpt,chapter);

Закройте и просмотрите отчет.

close(rpt);
rptview(rpt);

Вот сгенерированное оглавление:

Введенный в R2021b