Simulink.data.dictionary. Класс EnumTypeDefinition

Пакет: Simulink.data.dictionary
Суперклассы:

Сохраните определение перечислимого типа в словаре данных

Описание

Объект класса Simulink.data.dictionary.EnumTypeDefinition задает перечислимый тип данных в словаре данных. Вы храните объект в записи в словаре данных, таким образом, модели, соединенные со словарем, могут использовать определение перечислимого типа.

В базовом рабочем пространстве MATLAB® объекты этого класса сохраняют информацию о перечислимом типе, но не задают тип для использования другими переменными или моделями.

Конструкция

Когда вы используете функциональный importEnumTypes, чтобы импортировать определения перечислимых типов к словарю данных, Simulink® создает объект Simulink.data.dictionary.EnumTypeDefinition в словаре для каждого импортированного определения. Словарь хранит каждый объект в отдельной записи.

Конструктор Simulink.data.dictionary.EnumTypeDefinition создает экземпляр этого класса со значениями свойств по умолчанию и одним участником перечисления, который имеет базовое целочисленное значение 0.

Свойства

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

Отметьте, чтобы снабдить префиксом перечисления имя класса в сгенерированном коде, заданном как true или false.

Если вы задаете true, когда вы генерируете код, идентификатор каждого участника перечисления начинается с имени класса перечисления. Например, класс перечисления LEDcolor с участниками перечисления GREEN и RED задает участников перечисления в сгенерированном коде как LEDcolor_GREEN и LEDcolor_RED.

Типы данных: логический

Отметьте, чтобы управлять определением типов в сгенерированном коде, заданном как 'Auto', 'Imported' или 'Exported'. Таблица описывает поведение сгенерированного кода для каждого значения.

ЗначениеДействие
Auto (значение по умолчанию)

Если вы не задаете свойство Headerfile, экспортируете определение типов в model_types.h, где model является именем модели.

Если вы задаете Headerfile, импортируете определение типов из заданного заголовочного файла.

Exported

Экспортируйте определение типов в отдельный заголовочный файл.

Если вы не задаете свойство Headerfile, значения по умолчанию имени заголовочного файла к type.h, где type является именем типа данных.

Imported

Импортируйте определение типов из отдельного заголовочного файла.

Если вы не задаете свойство Headerfile, значения по умолчанию имени заголовочного файла к type.h, где type является именем типа данных.

Участник перечисления по умолчанию, заданный как вектор символов. Задайте DefaultValue как имя участника перечисления, которого вы уже задали.

Когда вы создаете объект Simulink.data.dictionary.EnumTypeDefinition, DefaultValue является пустым символьным вектором, '', и Simulink использует первого участника перечисления в качестве участника по умолчанию.

Пример: 'enumMember1'

Описание перечислимого типа данных, заданного как вектор символов. Используйте это свойство объяснить цель типа в сгенерированном коде.

Пример: 'Two possible colors of LED indicator: GREEN and RED.'

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

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

Если вы не задаете HeaderFile, сгенерированный код использует имя заголовочного файла по умолчанию, которое зависит от значения свойства DataScope.

Пример: 'myTypeIncludeFile.h'

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

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

Можно задать один из этих поддерживаемых целочисленных типов:

  • 'int8'

  • 'int16'

  • 'int32'

  • 'uint8'

  • 'uint16'

Чтобы сохранить базовые целочисленные значения в сгенерированном коде с помощью нативного целочисленного типа целевого компьютера, задайте StorageType как пустой символьный вектор, '', который является значением по умолчанию.

Пример: 'int16'

''

Методы

appendEnumeralДобавьте участника перечисления в перечислимое определение типов в словаре данных
removeEnumeralУдалите участника перечисления из перечислимого определения типов в словаре данных

Копировать семантику

Указатель. Чтобы изучить, как классы Handle влияют на операции копии, смотрите Копирование Объектов (MATLAB).

Примеры

свернуть все

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

myColors = Simulink.data.dictionary.EnumTypeDefinition
myColors = 

   Simulink.data.dictionary.EnumTypeDefinition
      enum1

Добавьте некоторых участников перечисления в определение типа.

appendEnumeral(myColors,'Orange',1,'')
appendEnumeral(myColors,'Black',2,'')
appendEnumeral(myColors,'Cyan',3,'')
myColors
myColors = 

   Simulink.data.dictionary.EnumTypeDefinition
      enum1
      Orange
      Black
      Cyan

Удалите участника перечисления по умолчанию enum1. Поскольку enum1 является первым участником перечисления в списке, идентифицируйте его с индексом 1.

removeEnumeral(myColors,1)
myColors
myColors = 

   Simulink.data.dictionary.EnumTypeDefinition
      Orange
      Black
      Cyan

Настройте перечислимый тип путем конфигурирования свойств объекта, представляющего его.

myColors.Description = 'These are my favorite colors.';
myColors.DefaultValue = 'Cyan';
myColors.HeaderFile = 'colorsType.h';

Откройте словарь данных myDictionary_ex_API.sldd и представляйте его с объектом Simulink.data.Dictionary под названием myDictionaryObj.

myDictionaryObj = Simulink.data.dictionary.open('myDictionary_ex_API.sldd');

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

importFromBaseWorkspace(myDictionaryObj,'varList',{'myColors'});

Альтернативы

Можно использовать Model Explorer, чтобы добавить и изменить перечисленные типы данных, сохраненные в словаре данных.

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