Main Content


Set the data type of the signals emitted by an output port






SetOutputPortDataType(s, port, id)



Instance of Simulink.MSFcnRunTimeBlock class representing the Level-2 MATLAB S-Function block.


Integer value specifying index of port to be set.


Integer value specifying ID of port's data type. Use s.DatatypeName(id) to get the data type's name.


The Simulink® engine calls this routine to set the data type of port when port has an inherited data type. The data type ID id is the proposed data type for this port. Data type IDs for the built-in data types can be found in simstruc_types.h. The S-function must check whether the specified data type is a valid data type for the specified port.

If it is a valid data type, Level-2 MATLAB S-functions set the data type of the output port using the line

s.OutputPort(port).DatatypeID = id;

The S-function can also set the data types of other input and output ports if their data types have not been set. The engine reports an error if the S-function changes the data type of a port whose data type has been set.

If the block does not implement this method, the engine assumes that the block supports any data type and sets the output port data type to the specified value.

The engine calls this method until all output ports with inherited data types have their data types specified.

Version History

Introduced in R2012b