mdlSetDefaultPortDataTypes
设置无法通过块连通性判断数据类型的端口的数据类型
要求
没有
语言
C, c++
语法
#定义MDL_SET_DEFAULT_PORT_DATA_TYPESvoid mdlSetDefaultPortDataTypes
参数
-
年代
-
SimStruct表示一个S-Function块。
描述
的仿真软金宝app件®如果块具有无法从块连通性确定数据类型的端口,则Engine调用此方法。(这通常发生在区块未连接或作为反馈循环的一部分时。)该方法必须设置所有未设置数据类型的端口的数据类型。此方法仅对模拟有效,并且必须包含在#如果定义(MATLAB_MEX_FILE)
声明。
如果块没有实现此方法,并且引擎无法确定其任何端口的数据类型,则引擎将所有端口的数据类型设置为双
.如果块没有实现此方法,并且引擎不能确定其部分(而不是全部)端口的数据类型,则引擎将未知端口设置为数据类型最大的端口的数据类型。
属性时,引擎将调用错误mdlSetDefaultPortDataType
方法在先前指定的数据类型时,尝试修改端口的数据类型mdlSetInputPortDataType
或mdlSetOutputPortDataType
.如果一个s函数有多个输入或输出端口,mdlSetDefaultPortDataType
在尝试设置端口的数据类型之前,应该检查端口的数据类型是否仍然是动态的。例如,mdlSetDefaultPortDataType
使用下面的行检查第二个输入端口的数据类型是否仍然未知。
if (ssGetInputPortDataType(S, 1) == DYNAMICALLY_TYPED) {ssSetInputPortDataType(S, 1, SS_UINT8);}