ssGetOutputPortRealSignal
获取指向 double (real_T) 类型输出信号的指针
语法
real_T *ssGetOutputPortRealSignal(SimStruct *S, int_T port)
参量
S表示 S-Function 模块的 SimStruct。
port输出端口的索引。
返回
一个连续的 real_T 向量,其长度等于输出端口的宽度。
描述
在任何仿真循环例程中使用 mdlInitializeConditions 或 mdlStart 来访问输出端口信号,其中输出端口索引从 0 开始并且必须小于输出端口的数量。
注意
如果您已指定输出端口可使用 重复使用,则除了 ssSetOutputPortOptimOptsmdlOutputs 之外,您不能在任何地方使用 ssGetOutputPortRealSignal。例如,如果使用 SS_REUSABLE_AND_LOCAL 标志将输出指定为可重复使用,则当 mdlUpdate 例程尝试访问不可用的输出内存时会出现错误。
语言
C、C++
示例
要写入所有输出端口,您可以使用
int_T i,j;
int_T nOutputPorts = ssGetNumOutputPorts(S);
for (i = 0; i < nOutputPorts; i++) {
real_T *y = ssGetOutputPortRealSignal(S,i);
int_T ny = ssGetOutputPortWidth(S,i);
for (j = 0; j < ny; j++) {
y[j] = SomeFunctionToFillInOutput();
}
}
有关使用此函数的完整示例,请参阅 sfcndemo_sfun_atol 中使用的 S-Functionsfun_atol.c。
版本历史记录
在 R2006a 之前推出