Specify whether one of an S-function's input ports can be overwritten by one of its output ports


void ssSetInputPortOverWritable(SimStruct *S, int_T port, int_T



SimStruct representing an S-Function block.


Index of the input port whose overwritability is being set.


Value specifying whether port is overwritable.


Use in mdlInitializeSizes (after ssSetNumInputPorts) to specify whether port is overwritable by one of the S-function's output ports. The Simulink® engine uses this setting as one criterion in determining whether one of the output ports of this S-function can share memory with port. If isOverwritable=1 and the other criteria are satisfied, the engine allocates a common block of memory for the input port and one of the S-function's output ports, thus reducing simulation memory requirements. The default is isOverwritable=0, which means that port cannot share memory with any of the S-function's output ports.

    Note   If you set an input port to be overwritable, you must also specify that the input port and at least one of the S-function's output ports are reusable. Use ssSetInputPortOptimOpts and ssSetOutputPortOptimOpts to do this.


C, C++

Was this topic helpful?