ssSetInputPortDataType
Set the data type of an input port
Syntax
DTypeId ssSetInputPortDataType(SimStruct *S, int_T port, DTypeId id)
Arguments
SSimStruct that represents an S-Function block.
portIndex of an input port.
idID of the data type accepted by
port.
Returns
The data type ID specified by id. Returns -1
if id is DYNAMICALLY_TYPED.
Description
Use this function in mdlInitializeSizes to set the data type of
the input port specified by port. If the input port data type is
inherited from the block connected to the port, set the data type to
DYNAMICALLY_TYPED. In this case, the S-function must provide
mdlSetInputPortDataType and
mdlSetDefaultPortDataTypes
methods to enable the data type to be set correctly during signal
propagation.
The following table is a list of built-in data types associated with the index
DTypeId.
| Integer Data Type ID (DTypeId) | Built-in Data Type |
|---|---|
0 | SS_DOUBLE |
1 | SS_SINGLE |
2 | SS_INT8 |
3 | SS_UINT8 |
4 | SS_INT16 |
5 | SS_UINT16 |
6 | SS_INT32 |
7 | SS_UINT32 |
8 | SS_BOOLEAN |
Integer values of 9 or greater represent custom data types such
as fixed-point types, bus types, and enumerated data types. The meaning of each
value depends on the number and kind of custom data types that you use in a
model.
Note
The data type of an input port is double
(real_T) by default.
Languages
C, C++
Examples
Suppose that you want to create an S-function with two input ports, the first of
which inherits its data type from the driving block and the second of which accepts
inputs of type int8_T. The following code sets up the data
types.
ssSetInputPortDataType(S, 0, DYNAMICALLY_TYPED) ssSetInputPortDataType(S, 1, SS_INT8)
See the S-function sfun_dtype_io.c used in sfcndemo_dtype_io and the S-function sdotproduct.c used in sfcndemo_sdotproduct for complete examples that use this
function.
See Also
Version History
Introduced before R2006a