Simulink.data.dictionary.EnumTypeDefinition

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

Описание

Объект 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.

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

Флаг для управления определением типов в сгенерированном коде, заданный как '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Удалите представителя перечисления из перечисленных определений типов в словаре данных

Примеры

свернуть все

Создайте объект, который может хранить определение перечисляемого типа. По умолчанию новый тип задает один представителя перечисления 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