Пакет: slreportgen.report
Суперклассы: slreportgen.report.Reporter
Репортер объекта шины Simulink
Создает репортер, который генерирует информацию о Simulink.Bus
объект в отчете.
Примечание
Чтобы использовать репортер объекта шины в отчете, необходимо создать отчет с помощью slreportgen.report.Report
класс или подкласс.
The slreportgen.report.BusObject
класс является handle
класс.
HandleCompatible | true |
Для получения информации об атрибутах класса см. раздел «Атрибуты класса».
создает пустой reporter
= slreportgen.report.BusObject()slreportgen.report.BusObject
объект reporter. Настройте содержимое и форматирование информации, сообщаемой для объекта шины, с помощью свойств объекта reporter. Прежде чем вы добавите репортера в отчет, необходимо задать свойство Object репортера на slreportgen.report.ModelVariableResult
или Simulink.VariableUsage
объект, который задает Simulink.Bus
объект. Добавление пустого репортера к отчету приводит к ошибке.
создает репортер для reporter
= slreportgen.report.BusObject(object
)Simulink.Bus
объект, заданный как slreportgen.report.ModelVariableResult
или Simulink.VariableUsage
объект. См. свойство Object.
устанавливает свойства reporter с помощью пар "имя-значение". Можно задать несколько аргументы пары "имя-значение" в любом порядке. Заключайте каждое имя свойства в одинарные или двойные кавычки.reporter
= slreportgen.report.BusObject(Name,Value
)
Object
- Объект, который задает Simulink.Bus
объектslreportgen.finder.ModelVariableResult
| объекта Simulink.VariableUsage
объектОбъект, который задает Simulink.Bus
объект для отчета, заданный как slreportgen.finder.ModelVariableResult
объект или Simulink.VariableUsage
объект.
Name
- Имя объекта шиныЭто свойство только для чтения содержит имя объекта шины, подлежащего сообщению, заданное как строковый скаляр.
ReportedBusProperties
- Свойства объекта шины, которые нужно сообщить[]
(по умолчанию) | строковый массив | массивов ячеек из векторов символовСвойства объекта шины для отчета, заданные как строковые массивы или массив ячеек из векторов символов. Свойства, заданные в ReportedBusProperties
свойство дополнительно фильтруется PropertyFilterFcn
свойство. Если на ReportedBusProperties
свойство пустое, репортер включает в отчет все свойства, кроме свойств, отфильтрованных PropertyFilterFcn
свойство. Репортер исключает любое свойство объекта шины, недопустимое для объекта шины.
ReportedElementProperties
- Свойства элемента шины, которые нужно сообщить[]
(по умолчанию) | строковый массив | массивов ячеек из векторов символовСвойства элемента шины для отчета, заданные как строковые массивы или массив ячеек из векторов символов. Свойства, заданные в ReportedElementProperties
свойство дополнительно фильтруется функцией или кодом, заданным в PropertyFilterFcn
свойство. Если на ReportedElementProperties
свойство пустое, репортер включает в отчет все свойства, кроме свойств, отфильтрованных PropertyFilterFcn
свойство. Репортер исключает любое свойство элемента шины, недопустимое для элемента шины.
ShowName
- Отображать ли имя шиныfalse
(по умолчанию) | true
Отображать ли имя объекта шины в отчете, задается как true
или false
.
ShowHierarchy
- Отображать ли иерархию объекта шиныtrue
(по умолчанию) | false
Включать ли в отчет вложенный список, представляющий иерархию шины, заданный как true
или false
.
ShowProperties
- Отображать ли свойства объекта шиныtrue
(по умолчанию) | false
Отображать ли в отчете таблицу свойств объекта шины, заданную как true
или false
.
ShowElements
- Отображать ли элементы объекта шины свойстваtrue
(по умолчанию) | false
Отображать ли в отчете таблицу свойств элемента шины, заданную как true
или false
.
ShowUsedBy
- Отображать ли блоки, которые используют объект шиныtrue
(по умолчанию) | false
Отображать ли список блоков, использующих объект шины, заданный как true
или false
. Если на ShowUsedBy
для свойства задано значение true
, репортер включает список блоков, которые используют объект шины в отчете. Если на ShowUsedBySnapshot
свойство также установлено в true
, reporter включает снимок схемы для каждой родительской подсистемы, которая использует объект шины. Блоки, которые используют объект шины, подсвечиваются в моментальном снимке.
ShowUsedBySnapshot
- Отображать ли снимки схемы, подсвечивающие блоки, которые используют объект шиныtrue
(по умолчанию) | false
Отображать ли снимки родительских подсистем на схеме и подсвечивать блоки, которые используют объект шины, заданный как true
или false
. Если на ShowUsedBySnapshot
для свойства задано значение true
отчет включает моментальный снимок для каждой родительской подсистемы, которая использует объект шины. Блоки, которые используют объект шины, подсвечиваются в моментальном снимке. Если родительская подсистема имеет более одного блока, который использует объект шины, репортер показывает только один снимок схемы, который подсвечивает блоки, которые используют объект шины.
CreateSections
- Создавать ли сеченияtrue
(по умолчанию) | false
Создание отдельного раздела для каждого типа информации об объекте шины в отчете. Если на CreateSections
для свойства задано значение true
, репортер создает mlreportgen.report.Section
с заголовком для каждого из этих типов информации:
иерархия
свойства
элементы
блоки, которые используют объект шины
Если на CreateSections
для свойства задано значение false
, репортер генерирует метки для таблиц и списков. Для таблицы репортер генерирует заголовок таблицы. Для списка репортер генерирует текст, который предшествует списку.
HierarchyListFormatter
- Форматтер списка для иерархииmlreportgen.dom.UnorderedList
| mlreportgen.dom.OrderedList
Форматтер списка, который форматирует сгенерированную иерархию шины, заданную как mlreportgen.dom.UnorderedList
объект или mlreportgen.dom.OrderedList
объект. Чтобы настроить форматирование списка, измените свойства объекта списка или замените объект списка настраиваемым объектом списка, который не содержит элементов списка.
UsedByListFormatter
- Список форматтеров для блоков, которые используют объект шиныmlreportgen.dom.UnorderedList
| mlreportgen.dom.OrderedList
Форматтер списка, который форматирует сгенерированный список блоков, использующих объект шины, заданный как mlreportgen.dom.UnorderedList
объект или mlreportgen.dom.OrderedList
объект. Чтобы настроить форматирование списка, измените свойства объекта списка или замените объект списка настраиваемым объектом списка, который не содержит элементов списка.
PropertiesTableReporter
- Table reporter для свойств объекта шиныmlreportgen.report.BaseTable
Table reporter используется для форматирования таблицы свойств объектов шины, заданной как mlreportgen.report.BaseTable
объект. Чтобы настроить внешний вид таблицы, измените свойства репортера таблицы по умолчанию или замените ее настраиваемым репортером таблицы. Если вы добавляете содержимое в Title
свойство по умолчанию или настраиваемого репортера таблицы, содержимое появляется перед заголовком таблицы в сгенерированном отчете.
ElementsTableReporter
- Table reporter для свойств элемента шиныmlreportgen.report.BaseTable
Table reporter используется для форматирования таблицы свойств элемента шины, заданной как mlreportgen.report.BaseTable
объект. Чтобы настроить внешний вид таблицы, измените свойства репортера таблицы по умолчанию или замените ее настраиваемым репортером таблицы. Если вы добавляете содержимое в Title
свойство по умолчанию или настраиваемого репортера таблицы, содержимое появляется перед заголовком таблицы в сгенерированном отчете.
HorizontalElementsTable
- Отображать ли свойства элемента горизонтальноfalse
(по умолчанию) | true
Отображать ли свойства горизонтально в таблице свойств элемента, заданной как true
или false
.
Если на HorizontalElementsTable
для свойства задано значение true
таблица имеет по одному столбцу для каждого свойства. Для примера:
Если на HorizontalElementsTable
для свойства задано значение false
, свойства и камеры значения в строке для элемента разделены на несколько строк. Для примера:
SectionReporter
- Секция репортераmlreportgen.report.Section
Репортер для форматирования разделов, когда CreateSections
для свойства задано значение true
, заданный как mlreportgen.report.Section
объект. Чтобы настроить внешний вид раздела, измените свойства репортера раздела по умолчанию или замените его настраиваемым репортером раздела.
PropertyFilterFcn
- Функция или выражение для фильтрации свойств сообщенной шины или элемента шины[]
(по умолчанию) | указатель на функцию | строковый скаляр | вектор символовФункция или выражение для фильтрации свойств сообщенной шины или элемента шины из отчета. Задайте функцию как указатель на функцию. Задайте выражение как строковый скаляр или вектор символов.
Если вы предоставляете указатель на функцию, связанная функция должна:
Примите следующие аргументы:
variableName
- Имя переменной модели, которая обозначает сообщаемый элемент шины или шины
variableObject
- Сообщение о шине или элементе шины
propertyName
- Имя свойства шины или элемента шины
Возврат true
для фильтрации указанного свойства из отчета или false
включить свойство в отчет.
Например, этот код препятствует отображению HeaderFile
и Description
свойства объекта шины и Complexity
свойство элемента шины:
import slreportgen.finder.* import slreportgen.report.* rpt = slreportgen.report.Report('busrpt','pdf'); model = load_system('sldemo_bus_arrays'); modelVariableFinder = ModelVariableFinder(model); results = find(modelVariableFinder); for result = results if isa(getVariableValue(result),'Simulink.Bus') busRptr = slreportgen.report.BusObject(result); busRptr.PropertyFilterFcn = @busPropertyFilter; % Create a Chapter chapter = mlreportgen.report.Chapter(busRptr.Name); add(chapter, busRptr); add(rpt,chapter) end end close(rpt); close_system(model); rptview(rpt); function tf = busPropertyFilter(~, variableObject,propertyName) if isa(variableObject, 'Simulink.Bus') tf = (propertyName == "HeaderFile") || ... (propertyName == "Description"); else % Filter Simulink.BusElement Complexity property tf = propertyName == "Complexity"; end end
Если вы задаете строковый скаляр или вектор символов, он должен содержать выражение. Выражение:
Можно использовать переменные variableName
, variableObject
, и propertyName
Необходимо задать переменную isFiltered
на true
для фильтрации указанного свойства из отчета или false
включить свойство в отчет
Для примера этот код фильтрует HeaderFile
свойство объекта шины из отчета:
import slreportgen.finder.* import slreportgen.report.* rpt = slreportgen.report.Report('busrpt','pdf'); model = load_system('sldemo_bus_arrays'); modelVariableFinder = ModelVariableFinder(model); results = find(modelVariableFinder); for result = results if isa(getVariableValue(result),'Simulink.Bus') busRptr = slreportgen.report.BusObject(result); busRptr.PropertyFilterFcn = "isFiltered = " + ... "isa(variableObject, 'Simulink.Bus') && " + ... "propertyName == 'HeaderFile';"; % Create a Chapter chapter = mlreportgen.report.Chapter(busRptr.Name); add(chapter, busRptr); add(rpt,chapter) end end close(rpt); close_system(model); rptview(rpt);
TemplateSrc
- Источник шаблона для этого репортера[]
(по умолчанию) | вектор символов | строковый скаляр | репортер или отчет | документе DOM или части документаИсточник шаблона для этого репортера, заданный одним из следующих способов:
Вектор символов или строковый скаляр, который задает путь к файлу, содержащему шаблон для этого репортера
Репортер или отчет, шаблон которого используется для этого репортера или библиотека шаблонов которого содержит шаблон для этого репортера
DOM-документ или деталь документа, шаблон которой используется для этого репортера или библиотека шаблонов которой содержит шаблон для этого репортера
Указанный шаблон должен совпадать с типом отчета, к которому добавлен этот репортер. Для примера, для Microsoft® Отчет о словах, TemplateSrc
должен быть шаблоном репортера Word. Если на TemplateSrc
свойство пусто, этот репортер использует шаблон репортера по умолчанию для типа выхода отчета.
TemplateName
- Имя шаблона для этого репортераИмя шаблона для этого репортера, заданное как вектор символов или строковый скаляр. Шаблон для этого репортера должен быть в библиотеке шаблонов источника шаблона (TemplateSrc
) для этого репортера.
LinkTarget
- Цель гиперссылки для этого репортера[]
(по умолчанию) | вектор символов | строковый скаляр | mlreportgen.dom.LinkTarget
объектЦель гиперссылки для этого репортера, заданная как вектор символов или строковый скаляр, задающий идентификатор цели ссылки или mlreportgen.dom.LinkTarget
объект. Вектор символов или строковое скалярное значение преобразуется в LinkTarget
объект. Цель ссылки непосредственно предшествует содержимому этого репортера в выход отчете.
slreportgen.report.BusObject.createTemplate | Создайте шаблон репортера объекта шины |
slreportgen.report.BusObject.customizeReporter | Создайте пользовательский репортер объекта шины |
slreportgen.report.BusObject.getClassFolder | Расположение файла определения класса репортера объекта шины |
copy | Создайте копию объекта-репортера Simulink и сделайте глубокие копии определенных значений свойств |
getImpl | Получите реализацию reporter |
Отчет об объектах шины в модели с помощью искателя переменных модели для поиска всех переменных, используемых в модели, а затем создания репортера шины для каждой переменной, которая является объектом шины.
% Create a Report rpt = slreportgen.report.Report("MyReport","pdf"); open(rpt); % Load a model model_name = "sldemo_bus_arrays"; load_system(model_name); % Find all variables used by the model finder = slreportgen.finder.ModelVariableFinder(model_name); % Create a Bus object reporter object for all results representing a % Simulink.Bus object while hasNext(finder) result = next(finder); if isa(getVariableValue(result), "Simulink.Bus") % Create a Bus object reporter busReporter = slreportgen.report.BusObject(result); % Create a Chapter chapter = mlreportgen.report.Chapter(busReporter.Name); % Add bus to chapter add(chapter, busReporter) % Add chapter to the report add(rpt,chapter); end end % Close and view the report close(rpt); rptview(rpt);
Настройте отчетное содержимое и форматирование содержимого путем установки свойств репортера объекта шины. Этот пример использует свойство ReportedElementProperties, чтобы ограничить свойства элемента, которые сообщаются. Он использует свойство HorizontalElementsTable, чтобы сгенерировать таблицу свойств с одним столбцом для каждого свойства.
% Create a Report rpt = slreportgen.report.Report("MyReport","pdf"); open(rpt); % Load a model model_name = "sldemo_bus_arrays"; load_system(model_name); % Find all variables used by the model finder = slreportgen.finder.ModelVariableFinder(model_name); % Create a Bus object reporter object for all results representing a % Simulink.BusObject object while hasNext(finder) result = next(finder); if isa(getVariableValue(result), "Simulink.Bus") % Create a Bus object reporter busReporter = slreportgen.report.BusObject(result); % Limit the properties that are reported busReporter.ReportedElementProperties = {'Name','DataType','Min','Max'}; % Display element properties horizontally busReporter.HorizontalElementsTable = true; % Create a Chapter chapter = mlreportgen.report.Chapter(busReporter.Name); % Add bus to chapter add(chapter, busReporter) % Add chapter to the report add(rpt,chapter); end end % Close and view the report close(rpt); rptview(rpt);
Simulink.findVars
| Simulink.VariableUsage
| slreportgen.finder.ModelVariableFinder
| slreportgen.finder.ModelVariableResult
| slreportgen.report.Bus
| slreportgen.report.ModelVariable
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.