importEnumTypes

Класс: Simulink.data.Dictionary
Пакет: Simulink.data

Импортируйте определения перечислимого типа словарю данных

Синтаксис

importedTypes = importEnumTypes(dictionaryObj,targetTypes)
[importedTypes,importFailures] = importEnumTypes(dictionaryObj,targetTypes)

Описание

importedTypes = importEnumTypes(dictionaryObj,targetTypes) импорт в словарь данных dictionaryObj определения одного или нескольких перечислимых типов targetTypes. importEnumTypes не импортирует переменные MATLAB, созданные с помощью перечислимых типов, но вместо этого, в поддержку тех переменных, импортирует определения типов. Целевой словарь данных хранит определение успешно импортированного типа как запись. Этот синтаксис возвращает список имен успешно импортированных типов. importEnumTypes сохраняет изменения, внесенные в целевой словарь, поэтому прежде чем вы будете использовать importEnumTypes, подтвердите, что несохраненные изменения приемлемы.

[importedTypes,importFailures] = importEnumTypes(dictionaryObj,targetTypes) дополнительно возвращает список любых целевых типов, которые не были успешно импортированы. Можно смотреть список, чтобы определить причину каждого отказа.

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

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

Целевой словарь данных, заданный как Simulink.data.Dictionary объект. Прежде чем вы будете использовать эту функцию, будете представлять целевой словарь с Simulink.data.Dictionary объект при помощи, например, Simulink.data.dictionary.create или Simulink.data.dictionary.open функция.

Определения перечислимого типа импорту, заданному как массив ячеек из символьных векторов или массив строк. Если какие-либо целевые типы заданы с помощью classdef блоки в файлах MATLAB или P-файлах, файлы должны быть доступными на вашем пути MATLAB так, чтобы importEnumTypes может отключить их.

Пример: {'myEnumType'}

Пример: {'myFirstEnumType','mySecondEnumType','myThirdEnumType'}

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

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

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

Целевые определения перечислимого типа, успешно импортированные, возвратились как массив структур. Каждая структура в массиве представляет импортированный тип того. className поле каждой структуры идентифицирует тип по наименованию и renamedFiles поле идентифицирует любые переименованные файлы MATLAB или P-файлы.

Предназначенные определения перечислимого типа, но не импортированные, возвратились как массив структур. Каждая структура в массиве представляет один тип, не импортированный. className поле каждой структуры идентифицирует тип по наименованию и reason поле объясняет отказ.

Примеры

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

Создайте словарь данных myNewDictionary.sldd в вашей текущей рабочей папке и Simulink.data.Dictionary объект, представляющий новый словарь данных. Присвойте объект переменной myDictionaryObj.

myDictionaryObj = Simulink.data.dictionary.create('myNewDictionary.sldd');

Запустите скрипт в файле MATLAB myDataEnum_ex_API.m. Файл задает перечислимый тип под названием InstrumentTypes использование Simulink.defineIntEnumType функционируйте и создает три переменные на основе нового типа. Затем импортируйте новые переменные от базового рабочего пространства до myDictionary_ex_API.sldd.

myDataEnum_ex_API
importFromBaseWorkspace(myDictionaryObj,'varList',...
{'firstEnumVariable','secondEnumVariable','thirdEnumVariable'});

Очистите импортированные переменные из базового рабочего пространства. Прежде чем можно будет импортировать перечислимое определение типов к целевому словарю данных, необходимо очистить базовое рабочее пространство любых переменных, созданных с помощью целевого типа.

clear firstEnumVariable
clear secondEnumVariable
clear thirdEnumVariable

Импортируйте определение типов к myDictionary_ex_API.sldd.

importEnumTypes(myDictionaryObj,{'InstrumentTypes'})
ans = 

       className: 'InstrumentTypes'
    renamedFiles: {}

Советы

  • Прежде чем можно будет импортировать перечислимое определение типов к словарю данных, необходимо очистить базовое рабочее пространство любых переменных, созданных с помощью целевого типа.

  • Можно задать перечислимый тип с помощью classdef блокируйтесь в файле MATLAB или P-файле. importEnumTypes импорт вводит определения непосредственно из этих файлов, если вы задаете имена типов, чтобы импортировать использование входного параметра targetTypes и если файлы, задающие типы, находятся на вашем пути MATLAB.

  • Избегать конфликтных определений для импортированных типов, importEnumTypes файлы MATLAB рендеринга или P-файлы, неэффективные путем добавления .save к их именам. .save расширения заставляют переменные использовать определения в целевом словаре данных а не на определениях в файлах. Можно удалить .save расширения, чтобы восстановить файлы к их исходному состоянию.

  • Можно использовать importEnumTypes импортировать перечислимые типы задало использование Simulink.defineIntEnumType функция. Поскольку такие типы не заданы с помощью файлов MATLAB или P-файлов, importEnumTypes не переименовывает файлов.

  • Используйте функциональный Simulink.findVars сгенерировать список перечислимых типов, которые используются моделью. Затем используйте список с importEnumTypes импортировать определения типов к словарю данных. Смотрите Перечисления в Словаре Данных для получения дополнительной информации.

Представленный в R2015a