ssSetInputPortDataType
设置输入端口的数据类型
语法
DTypeId ssSetInputPortDataType(SimStruct *S, int_T port, DTypeId id)
参量
S
表示 S-Function 模块的 SimStruct。
port
输入端口的索引。
id
port
接受的数据类型的 ID。
返回
id
指定的数据类型 ID。如果 id
是 DYNAMICALLY_TYPED
,则返回 -1
。
描述
在 mdlInitializeSizes
中使用此函数设置 port
指定的输入端口的数据类型。如果输入端口数据类型是从连接到端口的模块继承的,则将数据类型设置为 DYNAMICALLY_TYPED
。在这种情况下,S-Function 必须提供 mdlSetInputPortDataType
和 mdlSetDefaultPortDataTypes
方法,以便在信号传播期间正确设置数据类型。
下表是与索引 DTypeId
相关的内置数据类型列表。
整数数据类型 ID (DTypeId) | 内置数据类型 |
---|---|
0 | SS_DOUBLE |
1 | SS_SINGLE |
2 | SS_INT8 |
3 | SS_UINT8 |
4 | SS_INT16 |
5 | SS_UINT16 |
6 | SS_INT32 |
7 | SS_UINT32 |
8 | SS_BOOLEAN |
9
或更大的整值表示自定义数据类型,例如定点类型、总线类型和枚举数据类型。每个值的含义取决于您在模型中使用的自定义数据类型的数量和种类。
注意
输入端口的数据类型默认为 double
(real_T
)。
语言
C、C++
示例
假设您想要创建一个具有两个输入端口的 S-Function,其中第一个输入端口从驱动模块继承其数据类型,第二个输入端口接受类型为 int8_T
的输入。以下代码设置数据类型。
ssSetInputPortDataType(S, 0, DYNAMICALLY_TYPED) ssSetInputPortDataType(S, 1, SS_INT8)
有关使用此函数的完整示例,请参阅 sfcndemo_dtype_io
中使用的 S-Functionsfun_dtype_io.c
和 sfcndemo_sdotproduct
中使用的 S-Functionsdotproduct.c
。
版本历史记录
在 R2006a 之前推出