addWidget

Класс: slmetric.dashboard. Контейнер
Пакет: slmetric.dashboard

Добавьте виджет в объект slmetric.dashboard.Container

Синтаксис

newWidget = addWidget(container,widgetType,num)

Описание

пример

newWidget = addWidget(container,widgetType,num) добавляет виджет к объекту slmetric.dashboard.Container.

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

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

Объект slmetric.dashboard.Container, для которого вы хотите добавить виджеты, чтобы настроить Метрическое размещение Инструментальной панели. Это свойство является чтением-записью.

Задайте свойство Type slmetric.dashboard.Container, slmetric.dashboard.Widget, slmetric.dashboard.Group или объекта slmetric.dashboard.CustomWidget.

Типы данных: char

Размещение виджета в контейнере на Метрической Инструментальной панели. Порядок виджетов в контейнере продолжает слева направо, и затем вниз в контейнере.

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

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

Новый виджет, который вы добавляете в объект slmetric.dashboard.Container на Метрической Инструментальной панели. Можно добавить эти виджеты в контейнер:

  • slmetric.dashboard.Group

  • slmetric.dashboard.Container

  • slmetric.dashboard.CustomWidget

  • slmetric.dashboard.Widget

Примеры

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

Вы можете использовать Метрическую Инструментальную панель и метрические API, чтобы получить соответствие и выпускаете метрические данные по вашей настройке Model Advisor. Чтобы настроить вашу настройку Model Advisor, смотрите, Организуют Проверки и Папки Используя Model Advisor Configuration Editor. Можно также использовать существующую группу проверки, такую как проверки MISRA. После того, как вы настроили свою настройку Model Advisor, выполните эти шаги, чтобы задать группы проверки, для которых вы хотите получить соответствие, и выпускает метрические данные:

Откройте настройку по умолчанию:

config=slmetric.config.Configuration.open()

Задайте метрический ID семейства, который вы сопоставляете с теми группами проверки:

famParamID = 'ModelAdvisorStandard';

Создайте массив ячеек, состоящий из идентификаторов Check Group, которые соответствуют группам проверки. Получите ID Check Group путем открытия Model Advisor Configuration Editor и выбора папки, которая содержит группу проверок. Папка содержит параметр Check Group ID.

values = {'maab', 'hisl_do178', '_SYSTEM_By Task_misra_c'};

Предыдущий массив ячеек задает MAAB, Высокую Целостность и группы проверки MISRA. Значения maab и hisl_do178 соответствуют подмножеству MAAB и Системных проверок Высокой Целостности. Чтобы включать все проверки, задайте значение для параметра Check Group ID от Model Advisor Configuration Editor.

Чтобы настроить настройку, передайте массив ячеек values в метод setMetricFamilyParameterValues.

setMetricFamilyParameterValues(config, famParamID, values);

Укажите High Integrity Compliance и виджеты High Integrity Check Issues группе проверки MISRA. Чтобы начаться, откройте настройку по умолчанию для Метрического размещения Инструментальной панели.

conf = slmetric.dashboard.Configuration.open();

Получите объект slmetric.dashboard.Layout из объекта slmetric.dashboard.Configuration conf.

layout = getDashboardLayout(conf);

Получите объекты виджета, которые находятся в объекте размещения.

layoutWidget=getWidgets(layout);

Получите группу соответствия из размещения. Эта группа содержит два контейнера. Первый контейнер содержит Высокую Целостность и виджеты Проблем Соответствия и Проверки MAAB. Удалите виджет High Integrity Compliance.

complianceGroup = layoutWidget(3);
complianceContainers = getWidgets(complianceGroup);
complianceContainerWidgets = getWidgets(complianceContainers(1));
complianceContainers(1).removeWidget(complianceContainerWidgets(1)); 
setMetricIDs(complianceContainerWidgets(1),({'mathworks.metrics.ModelAdvisorCompliance._SYSTEM_By Task_misra_c'}));
complianceContainerWidgets(1).Labels={'MISRA'};

Добавьте пользовательский виджет для визуализации метрик проблем проверки MISRA к объекту complianceContainers slmetric.dashboard.Container.

misraWidget = complianceContainers(1).addWidget('Custom', 1); 
misraWidget.Title=('MISRA'); 
misraWidget.VisualizationType = 'RadialGauge'; 
misraWidget.setMetricIDs('mathworks.metrics.ModelAdvisorCheckCompliance._SYSTEM_By Task_misra_c'); 
misraWidget.setWidths(slmetric.dashboard.Width.Medium);

Сохраните объекты настройки. Эти команды сериализируют информацию API к XML-файлам.

save(config,'FileName','MetricConfig.xml');
save(conf,'Filename','DashboardConfig.xml');

Установите активные настройки.

slmetric.config.setActiveConfiguration(fullfile(pwd, 'MetricConfig.xml'));
slmetric.dashboard.setActiveConfiguration(fullfile(pwd, 'DashboardConfig.xml'));

Для вашей модели откройте Метрическую Инструментальную панель.

metricsdashboard sf_car

Нажмите кнопку All Metrics и запустите все метрики.

Введенный в R2018b