Main Content

Simulink.defineIntEnumType

定义枚举数据类型

说明

示例

Simulink.defineIntEnumType(ClassName, CellOfEnums,IntValues) 定义名为 ClassName 的枚举,该枚举具有 CellOfEnums 指定的枚举值和 IntValues 指定的基础数值。

Simulink.defineIntEnumType(___,'Description',ClassDesc) 定义具有描述的枚举。

Simulink.defineIntEnumType(___,'DefaultValue',DefValue) 定义枚举的默认值,这是您为 CellOfEnums 指定的字符向量之一。

Simulink.defineIntEnumType(___,'DataScope',ScopeSelection) 指定代码生成过程中是要从头文件中导入数据类型定义,还是将数据类型定义导出到头文件中。

Simulink.defineIntEnumType(___,'HeaderFile',FileName) 指定头文件的名称,该头文件包含要在从模型生成的代码中使用的枚举类定义。

Simulink.defineIntEnumType(___,'AddClassNameToEnumNames',Flag) 指定代码生成器是否将类名称作为前缀应用于您为 CellOfEnums 指定的枚举值。对于 Flag,请指定 truefalse。例如,如果您指定 true,代码生成器将使用 BasicColors_Red 而不是 Red 来表示枚举值。

Simulink.defineIntEnumType(___,'StorageType',DataType) 指定用来存储从模型生成的代码中枚举的基础整数值的数据类型。

示例

全部折叠

假定一个外部数据字典包括以下枚举:

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');

输入参数

全部折叠

枚举数据类型的名称,指定为字符向量或字符串。

示例: 'BasicColors'

数据类型的枚举,指定为字符向量元胞数组。

示例: {'Red', 'Yellow', 'Blue'}

数值枚举值,指定为数组。对于基于 uint32 的枚举,枚举值必须小于或等于 intmax('int32')

示例: [0;1;2]

枚举数据类型的描述,指定为字符向量。

示例: 'Basic colors'

默认枚举值,指定为字符向量。该值是为 CellOfEnums 指定的字符向量之一。

示例: 'Blue'

包含数据类型定义的头文件,指定为字符向量。默认情况下,生成的 #include 指令使用预处理器分隔符 ",而不是 <>。要生成指令 #include <mytypes.h>,请将 FileName 指定为 '<myTypes.h>'

示例: 'mybasiccolors.h'

代码生成期间对数据类型定义采取的操作,指定为以下值之一:

  • 'Auto' - 如果没有为 HeaderFile 指定任何值,则将类型定义导出到 model_types.h,其中 model 是模型名称。如果为 HeaderFile 指定了值,则从指定的头文件中导入数据类型定义。

  • 'Exported' - 将数据类型定义导出到头文件中。如果没有为 HeaderFile 指定任何值,则头文件名称的默认值为 type.h,其中 type 是数据类型名称。

  • 'Imported' - 从头文件中导入数据类型定义。如果没有为 HeaderFile 指定任何值,则头文件名称的默认值为 type.h,其中 type 是数据类型名称。

将数据作用域所选内容设置为已导入已导出以避免潜在的 MISRA C:2012 违规。

代码生成器是否将类名称作为前缀应用于枚举,指定为数值或逻辑值 1 (true) 或 0 (false)。

示例: true

用于在生成的代码中存储枚举的基础整数值的数据类型,指定为字符向量。

示例: 'int16'

版本历史记录

在 R2010b 中推出