Set the data type of an output port
DTypeId ssSetOutputPortDataType(SimStruct *S, int_T port, DTypeId id)
Use this function in mdlInitializeSizes to set the data type of the output port specified by port. If the output port's data type is determined dynamically, for example, from the data type of a block parameter, set the data type to DYNAMICALLY_TYPED. In this case, the S-function must provide mdlSetOutputPortDataType and mdlSetDefaultPortDataTypes methods to enable the data type to be set correctly during signal propagation.
For a list of built-in data types, see ssGetInputPortDataType.
Suppose that you want to create an S-function with two output ports, the first of which gets its data type from a block parameter and the second of which outputs signals of type int16_T. The following code sets up the data types.
ssSetOutputPortDataType(S, 0, DYNAMICALLY_TYPED) ssSetOutputPortDataType(S, 1, SS_INT16)
See the S-function sfun_dtype_io.csfun_dtype_io.c used in sfcndemo_dtype_iosfcndemo_dtype_io and the S-function sdotproduct.csdotproduct.c used in sfcndemo_sdotproductsfcndemo_sdotproduct for complete examples that use this function.