ssSetOutputPortOptimOpts
Specify reusability of the memory allocated to the output port of an S-function
Syntax
void ssSetOutputPortOptimOpts(SimStruct *S, int_T port, uint_T val)
Arguments
S
SimStruct that represents an S-Function block.
port
Index of an output port of
S
.val
Reusability of
port
. Permissible values areSS_NOT_REUSABLE_AND_GLOBAL
(default value)SS_REUSABLE_AND_LOCAL
SS_REUSABLE_AND_GLOBAL
SS_NOT_REUSABLE_AND_LOCAL
Description
Use this macro to specify the reusability and scope of the memory allocated to an S-function output port. The reusability indicates whether or not the memory associated with the output port can be overwritten. You must specify that an output port is reusable if the output port connects to a Merge block. The scope indicates whether the model variables are stored locally or globally.
You cannot use ssGetOutputPortSignal
or
ssGetOutputPortRealSignal
anywhere except in the
mdlOutputs
routine if you have specified that the output
ports are reusable.
The Simulink® product only uses the reusability setting during simulation. It disregards the memory scope setting, i.e., local or global, instead treating all S-function ports as global during simulation.
Note
The Simulink
Coder™ product uses the memory scope setting you specified when
generating code from a model. If your S-function accesses the outputs only in
mdlOutputs
, the Simulink
Coder product attempts to declare local variables for any outputs with a
local scope. If your S-function uses the outputs in a way that precludes using a
local scope, the generated code uses global variables for the outputs. See S-Functions for Multirate Multitasking Environments (Simulink Coder) for
more information.
Languages
C, C++
Examples
See the S-function sdotproduct.c
used in sfcndemo_sdotproduct
and the S-function sfun_multirate.c
used in sfcndemo_sfun_multirate
.
Version History
Introduced before R2006a