文档

mdlSetDefaultPortDataTypes

设置无法通过块连通性判断数据类型的端口的数据类型

要求

没有

语言

C, c++

语法

#定义MDL_SET_DEFAULT_PORT_DATA_TYPESvoid mdlSetDefaultPortDataTypes

参数

年代

SimStruct表示一个S-Function块。

描述

的仿真软金宝app件®如果块具有无法从块连通性确定数据类型的端口,则Engine调用此方法。(这通常发生在区块未连接或作为反馈循环的一部分时。)该方法必须设置所有未设置数据类型的端口的数据类型。此方法仅对模拟有效,并且必须包含在#如果定义(MATLAB_MEX_FILE)声明。

如果块没有实现此方法,并且引擎无法确定其任何端口的数据类型,则引擎将所有端口的数据类型设置为.如果块没有实现此方法,并且引擎不能确定其部分(而不是全部)端口的数据类型,则引擎将未知端口设置为数据类型最大的端口的数据类型。

属性时,引擎将调用错误mdlSetDefaultPortDataType方法在先前指定的数据类型时,尝试修改端口的数据类型mdlSetInputPortDataTypemdlSetOutputPortDataType.如果一个s函数有多个输入或输出端口,mdlSetDefaultPortDataType在尝试设置端口的数据类型之前,应该检查端口的数据类型是否仍然是动态的。例如,mdlSetDefaultPortDataType使用下面的行检查第二个输入端口的数据类型是否仍然未知。

if (ssGetInputPortDataType(S, 1) == DYNAMICALLY_TYPED) {ssSetInputPortDataType(S, 1, SS_UINT8);}

R2006a之前介绍