ssSetInputPortDimensionInfo
指定输入端口的维度信息
语法
ssSetInputPortDimensionInfo(SimStruct *S, int_T port, DimsInfo_T *dimsInfo)
参数
-
年代
-
SimStruct表示一个S-Function块。
-
港口
-
输入端口索引。
-
dimsInfo
-
类型结构
DimsInfo_T
指定接收信号的维数港口
.
该结构被定义为
typedef struct DimsInfo_tag{int width;/*元素个数*/ int numDims /*维度个数*/ int *dims;/ *维度。*/ [snip]}DimsInfo_T;
在哪里
numDims
指定信号的维数,例如,1为1维(向量)信号或2为2维(矩阵)信号,或DYNAMICALLY_SIZED
如果维数是动态确定的。会变暗
是一个整数数组,它指定每个维度的大小,例如,3 [2]
对于2 × 3矩阵信号,或者动态确定的每个维度的dynamally_size,例如,[2 dynamally_size]
.宽度
等于信号中元素的总数,例如,3 × 4矩阵信号为12,8元素向量信号为8,或者DYNAMICALLY_SIZED
如果元素总数是动态确定的。请注意
使用宏,
DECL_AND_INIT_DIMSINFO
,声明并初始化此结构的实例。
返回
1
如果成功;否则,0
.
描述
的维度信息港口
.使用此函数mdlInitializeSizes
初始化输入端口尺寸信息。如果希望端口从其连接的端口继承其尺寸,请指定DYNAMIC_DIMENSION
随着dimsInfo
为港口
.在这种情况下,s函数必须提供mdlSetInputPortDimensionInfo
而且mdlSetDefaultPortDimensionInfo
方法,以使信号传播期间能够正确地设置信号尺寸。
语言
C, c++
例子
下面的示例指定输入端口0接受2 × 2矩阵信号。
{DECL_AND_INIT_DIMSINFO (di);int_T dim [2];di。numDims = 2;暗[0]= 2;暗[1]= 2;di。昏暗;di。宽度= 4; ssSetInputPortDimensionInfo(S, 0, &di); }
请看s函数sfun_matadd.c
中使用的sfcndemo_matadd
和s函数sdotproduct.c
中使用的sfcndemo_sdotproduct
有关使用此函数的完整示例。