Пакет: Simulink
Суперклассы:
Извлеките информацию о файле модели, не загружая блок-схему в память
Класс Simulink. MDLInfo извлекает информацию из образцового файла, не загружая блок-схему в память.
Можно создать объект MdlInfo
, содержащий все образцовые информационные свойства, или можно использовать статические методы для удобного доступа к отдельным свойствам, не создавая класс сначала. Например, чтобы получить описание только:
description = Simulink.MDLInfo.getDescription('mymodel')
Получить метаданные только:
metadata = Simulink.MDLInfo.getMetadata('mymodel')
Все образцовые информационные свойства только для чтения.
info = Simulink.MDLInfo(
создает экземпляр класса 'mymodel'
)MdlInfo
info
и заполняет свойства с информацией из образцового файла 'mymodel'
.
может быть:mymodel
Имя блок-схемы (например, vdp
)
Имя файла для файла на пути MATLAB® (например, mymodel.slx
)
Имя файла относительно текущей папки (например, mydir/mymodel.slx
)
Полностью определенное имя файла (например, C:\mydir\mymodel.slx
)
Simulink.MDLInfo
разрешает предоставленное имя путем рассмотрения файлов на пути MATLAB и игнорирует любые блок-схемы в памяти. Это может вызвать неожиданные результаты, если вы предоставляете имя загруженной модели, но ее файл затенен другим файлом на пути MATLAB. Если файл затенен, вы видите предупреждение в командном окне. Чтобы избежать любого беспорядка, предоставьте полностью определенное имя файла к Simulink.MDLInfo
.
|
Имя блок-схемы. |
|
Параметр Описания модели. Для получения дополнительной информации смотрите Version Information Properties. |
|
Содержит значение только для релиза Пакета обновления Simulink®. Указывает, что файл был сохранен релизом Пакета обновления, когда Пакет обновления включал изменения в образцовом формате файла. |
|
Полностью определенное Имя образцового файла. |
|
Имена и атрибуты корневого импорта блок-схемы, выходных портов, моделей - ссылок, и т.д., описывая графический интерфейс, если вы создали блок Model Reference от этой модели. Структура. |
|
Является ли блок-схема библиотекой. Логический. |
|
Имя пользователя, кто продержался сохраненный модель. |
|
Архитектура платформы, когда сохраненный, например, |
|
Имена и значения произвольных данных сопоставлены с моделью. Структура. Поля структуры могут быть векторами символов, числовыми матрицами типа "дважды" или большим количеством структур. Используйте метод |
|
Образцовый номер версии файла. |
|
Имя релиза Simulink, который использовался, чтобы сохранить образцовый файл, например, |
|
Кодировка символов, когда сохраненный, например, |
|
Номер версии программного обеспечения Simulink, которое использовалось, чтобы сохранить образцовый файл. |
getDescription | Извлеките образцовое описание файла, не загружая блок-схему в память |
getMetadata | Извлеките образцовые метаданные файла, не загружая блок-схему в память |
Указатель. Чтобы изучить, как это влияет на ваше использование класса, смотрите Копирование Объектов (MATLAB) в документации Основ программирования MATLAB.
Создайте и просмотрите образцовый информационный объект:
info = Simulink.MDLInfo('mymodel') % Get the Version when the model was saved simulink_version = info.SimulinkVersion; % Get model metadata metadata = info.metadata
Чтобы добавить метаданные в модель, создайте структуру метаданных, содержащую информацию, вы требуете и используете set_param
, чтобы присоединить его к модели. Например:
metadata.TestStatus = 'untested'; metadata.ExpectedCompletionDate = '01/01/2011'; load_system(mymodelname); set_param(mymodelname,'Metadata',... metadata) % must be a struct save_system(mymodelname); close_system(mymodelname);
Создайте образцовый информационный объект для модели под названием mpowertrain
в порядке найти имена моделей, на которые ссылаются, не загружая модель в память:
info = Simulink.MDLInfo('mpowertrain') % Get the Interface property info.Interface
Вывод :
ans = Inports: [0x1 struct] Outports: [0x1 struct] Trigports: [0x1 struct] Connports: [0x1 struct] ModelVersion: '1.122' ModelReferences: {2x1 cell} ParameterArgumentNames: '' TestPointedSignals: [0x1 struct]
Получите модели, на которые ссылаются:
info.Interface.ModelReferences
Вывод находится в форме model name / block path | referenced model name
:
ans = 'mpowertrain/Model Variants|manual_transmission' 'mpowertrain/engine model|menginemodel'
Simulink.MDLInfo.getDescription
; Simulink.MDLInfo.getMetadata