设置输入端口的数据类型
ssSetInputPortDataType(SimStruct *S, int_T端口,DTypeId id)
年代
表示s -功能块的SimStruct。
港口
输入端口索引。
id
接受的数据类型的ID港口
.
指定的数据类型IDid
.返回-1
如果id
是DYNAMICALLY_TYPED
.
使用此函数mdlInitializeSizes
设置指定的输入端口的数据类型港口
.如果输入端口数据类型继承自连接端口的块,则设置数据类型为DYNAMICALLY_TYPED
.在这种情况下,s函数必须提供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
或更大的表示自定义数据类型,如定点类型、总线类型和枚举数据类型。每个值的含义取决于模型中使用的自定义数据类型的数量和类型。
请注意
输入端口的数据类型为双
(real_T
默认情况下)。
C, c++
假设您想要创建一个具有两个输入端口的s函数,第一个端口从驱动块继承其数据类型,第二个端口接受类型输入int8_T
.下面的代码设置数据类型。
ssSetInputPortDataType(S, 0, DYNAMICALLY_TYPED) ssSetInputPortDataType(S, 1, SS_INT8)
看到这个功能sfun_dtype_io.c
中使用的sfcndemo_dtype_io
和功能sdotproduct.c
中使用的sfcndemo_sdotproduct
参阅使用此函数的完整示例。