Simulink.defineIntEnumType

Задайте перечисленный тип данных

Синтаксис

Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues)
Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'Description', ClassDesc)
Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'DefaultValue', DefValue)
Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'DataScope', ScopeSelection)
Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'HeaderFile', FileName)
Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'AddClassNameToEnumNames', Flag)
Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'StorageType', DataType)

Описание

Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues) задает перечисление под названием ClassName с перечислимыми величинами, заданными с CellOfEnums и базовыми числовыми значениями, заданными IntValues.

Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'Description', ClassDesc) задает перечисление с описанием (вектор символов).

Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'DefaultValue', DefValue) задает значение по умолчанию для перечисления, которое является одним из векторов символов, которые вы задаете для CellOfEnums.

Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'DataScope', ScopeSelection) задает, должно ли определение типов быть импортировано из или экспортировано в, заголовочный файл во время генерации кода.

Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'HeaderFile', FileName) задает имя заголовочного файла, содержащего определение класса перечисления для использования в коде, сгенерированном из модели.

Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'AddClassNameToEnumNames', Flag) задает, применяет ли генератор кода имя класса как префикс к перечислимым величинам, которые вы задаете для CellOfEnums. Для Flag задайте true или false. Например, если бы вы задаете true, генератор кода использовал бы BasicColors.Red вместо Red, чтобы представлять перечисляемое значение.

Simulink.defineIntEnumType(ClassName, CellOfEnums, IntValues, 'StorageType', DataType) указывает, что тип данных раньше хранил базовые целочисленные значения перечислений в коде, сгенерированном из модели.

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

ClassName

Имя перечислимого типа данных.

CellOfEnums

Массив ячеек из символьных векторов, который задает перечисления для типа данных.

IntValues

Массив числовых значений, которые соответствуют перечислениям типа данных.

'Description', ClassDesc

Задает вектор символов, который описывает тип данных перечисления.

'DefaultValue', DefValue

Задает перечислимую величину по умолчанию.

'HeaderFile', FileName

Задает вектор символов, называющий заголовочный файл, который должен содержать определение типов.

По умолчанию сгенерированная директива #include использует разделитель препроцессора " вместо < и >. Чтобы сгенерировать направляющий #include <myTypes.h>, задайте FileName как '<myTypes.h>'.

'DataScope', 'Auto' | 'Exported' | 'Imported'

Задает, должно ли определение типов быть импортировано из или экспортировано в, заголовочный файл во время генерации кода.

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

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

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

Exported

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

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

Imported

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

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

'AddClassNameToEnumNames', Flag

Логический флаг, который задает, применяет ли генератор кода имя класса как префикс к перечислениям.

'StorageType', DataType

Задает вектор символов, который идентифицирует, что тип данных раньше хранил базовые целочисленные значения перечислений в сгенерированном коде. Следующие типы данных поддерживаются: 'int8', 'int16', 'int32', 'uint8' или 'uint16'.

Примеры

Примите, что внешний словарь данных включает следующее перечисление:

BasicColors.Red(0), BasicColors.Yellow(1), BasicColors.Blue(2)

Импортируйте определение класса перечисления в рабочую область MATLAB® при определении int16 как базового целочисленного типа данных для сгенерированного кода:

Simulink.defineIntEnumType('BasicColors', ... 
	{'Red', 'Yellow', 'Blue'}, ...
	[0;1;2], ... 
	'Description', 'Basic colors', ...
	'DefaultValue', 'Blue', ...
	'HeaderFile', 'mybasiccolors.h', ...
	'DataScope', 'Exported', ...
	'AddClassNameToEnumNames', true, ...
	'StorageType', 'int16');

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