C/C++ S-functions allow you to configure extended block functionality through various callback and SimStruct methods.
Create and configure input/output ports.
Specify block-based and port-based sample times.
Pass dialog parameters to S-functions.
Model zero crossings and allocate memory for S-functions.
Configure code generation settings for S-functions.
mdlInitializeSizes | Specify the number of inputs, outputs, states, parameters, and other characteristics of the C MEX S-function |
mdlInitializeSampleTimes | Specify the sample rates at which this C MEX S-function operates |
mdlOutputs | Compute the signals that this block emits |
mdlUpdate | Update a block's states |
mdlTerminate | Perform any actions required at termination of the simulation |
mdlSetDefaultPortComplexSignals | Set the numeric types (real, complex, or inherited) of ports whose numeric types cannot be determined from block connectivity |
mdlSetDefaultPortDataTypes | Set the data types of ports whose data types cannot be determined from block connectivity |
mdlSetDefaultPortDimensionInfo | Set the default dimensions of the signals accepted or emitted by a C MEX S-function's ports |
mdlSetInputPortComplexSignal | Set the numeric types (real, complex, or inherited) of the signals accepted by an input port |
mdlSetInputPortDataType | Set the data types of the signals accepted by an input port |
mdlSetInputPortSampleTime | Set the sample time of an input port that inherits its sample time from the port to which it is connected |
mdlSetOutputPortComplexSignal | Set the numeric types (real, complex, or inherited) of the signals accepted by an output port |
mdlSetOutputPortDataType | Set the data type of the signals emitted by an output port |
mdlSetOutputPortSampleTime | Set the sample time of an output port that inherits its sample time from the port to which it is connected |
mdlSetInputPortDimensionInfo | Set the dimensions of the signals accepted by an input port |
mdlSetInputPortDimensionsModeFcn | Propagate the dimensions mode |
mdlSetInputPortWidth | Set the width of an input port that accepts 1-D (vector) signals |
mdlSetOutputPortDimensionInfo | Set the dimensions of the signals accepted by an output port |
mdlSetOutputPortWidth | Set the width of an output port that outputs 1-D (vector) signals |
mdlSetWorkWidths | Specify the sizes of the work vectors and create the run-time parameters required by this C MEX S-function |
mdlSetInputPortSampleTime | Set the sample time of an input port that inherits its sample time from the port to which it is connected |
mdlSetOutputPortSampleTime | Set the sample time of an output port that inherits its sample time from the port to which it is connected |
mdlSetWorkWidths | Specify the sizes of the work vectors and create the run-time parameters required by this C MEX S-function |
mdlCheckParameters | Check the validity of a C MEX S-function's parameters |
mdlProcessParameters | Process the C MEX S-function's parameters |
mdlStart | Initialize the state vectors of this C MEX S-function |
mdlProcessParameters | Process the C MEX S-function's parameters |
mdlSetWorkWidths | Specify the sizes of the work vectors and create the run-time parameters required by this C MEX S-function |
mdlGetOperatingPoint | Return C MEX S-function's simulation operating point as a MATLAB data structure |
mdlSetOperatingPoint | Restore operating point of C MEX S-function |
mdlStart | Initialize the state vectors of this C MEX S-function |
mdlTerminate | Perform any actions required at termination of the simulation |
mdlSetWorkWidths | Specify the sizes of the work vectors and create the run-time parameters required by this C MEX S-function |
mdlZeroCrossings | Update zero-crossing vector |
mdlInitializeConditions | Initialize the state vectors of this C MEX S-function |
ssSetNumInputPorts | Specify the number of input ports that a block has |
ssSetInputPortComplexSignal | Set the numeric type (real or complex) of an input port |
ssSetInputPortDataType | Set the data type of an input port |
ssSetInputPortDirectFeedThrough | Specify the direct feedthrough status of a block's ports |
ssSetInputPortOffsetTime | Specify the offset time of an input port |
ssSetInputPortRequiredContiguous | Specify that the signal elements entering a port must be contiguous |
ssSetInputPortSampleTime | Specify the sample time of an input port |
ssRegisterUnitFromExpr | Register unit from unit expression |
ssSetInputPortUnit | Specify unit of input port |
ssSetNumOutputPorts | Specify the number of output ports that a block has |
ssSetOutputPortComplexSignal | Set the numeric type (real or complex) of an output port |
ssSetOutputPortDataType | Set the data type of an output port |
ssSetOutputPortOffsetTime | Specify the offset time of an output port |
ssSetOutputPortSampleTime | Specify the sample time of an output port |
ssSetOutputPortUnit | Specify unit of output port |
ssGetInputPortComplexSignal | Determine whether an input port accepts complex signals. |
ssGetInputPortDataType | Get the data type of an input port |
ssGetInputPortDirectFeedThrough | Determine whether a port has direct feedthrough |
ssGetInputPortFrameData | Determine whether a port accepts signal frames |
ssGetInputPortOffsetTime | Get the offset time of an input port |
ssGetInputPortRequiredContiguous | Determine whether the signal elements entering a port must be contiguous |
ssGetInputPortSampleTime | Get the sample time of an input port |
ssGetInputPortSampleTimeIndex | Get the sample time index of an input port |
ssGetInputPortUnit | Get unit of input port |
ssGetOutputPortComplexSignal | Get the numeric type (complex or real) of an output port |
ssGetOutputPortDataType | Get the data type of an output port |
ssGetOutputPortFrameData | Determine whether a port outputs signal frames |
ssGetOutputPortOffsetTime | Get the offset time of an output port |
ssGetOutputPortSampleTime | Get the sample time of an output port |
ssGetOutputPortUnit | Get unit of output port |
ssAllowSignalsWithMoreThan2D | Enable S-function to work with multidimensional signals |
ssSetOneBasedIndexInputPort | Specify that an input port expects one-based indices |
ssSetOneBasedIndexOutputPort | Specify that an output port emits one-based indices. |
ssSetZeroBasedIndexInputPort | Specify that an input port expects zero-based indices |
ssSetZeroBasedIndexOutputPort | Specify that an output port emits zero-based indices. |
ssGetNumInputPorts | Get the number of input ports that a block has |
ssGetNumOutputPorts | Get the number of output ports that a block has |
ssGetInputPortBufferDstPort | Determine the output port that is sharing this input port's buffer |
ssGetInputPortConnected | Determine whether a port is connected to a nonvirtual block |
ssGetInputPortOptimOpts | Get the reusability setting of the memory allocated to the input port of an S-function |
ssGetInputPortOverWritable | Determine whether an input port can be overwritten |
ssGetInputPortRealSignal | Get the address of a real, contiguous signal entering an input port |
ssGetInputPortRealSignalPtrs | Get pointers to signals of type double connected to
an input port |
ssGetInputPortSignal | Get the address of a contiguous signal entering an input port |
ssGetInputPortSignalPtrs | Get pointers to an input port's signal elements |
ssGetOutputPortConnected | Determine whether an output port is connected to a nonvirtual block |
ssGetOutputPortBeingMerged | Determine whether the output of this block is connected to a Merge block |
ssGetOutputPortOptimOpts | Get the reusability setting of the memory allocated to the output port of an S-function |
ssGetOutputPortRealSignal | Get a pointer to an output signal of type double
(real_T ) |
ssGetOutputPortSignal | Get the vector of signal elements emitted by an output port |
ssSetInputPortOptimOpts | Specify reusability of the memory allocated to the input port of an S-function |
ssSetInputPortOverWritable | Specify whether one of an S-function's input ports can be overwritten by one of its output ports |
ssSetOutputPortOptimOpts | Specify reusability of the memory allocated to the output port of an S-function |
ssSetOutputPortOverwritesInputPort | Specify whether an output port can share its memory buffer with an input port |
ssSetInputPortAcceptExprInRTW | Specify whether a block input accepts a nonconstant expression |
ssGetInputPortAcceptExprInRTW | Determine whether a block input accepts a nonconstant expression |
ssSetOutputPortOutputExprInRTW | Specify whether a block output generates a nonconstant expression |
ssGetOutputPortOutputExprInRTW | Determine whether a block output generates a nonconstant expression |
ssSetInputPortDimensionInfo | Specify information about the dimensionality of an input port |
ssSetInputPortDimensionsMode | Set the dimensions mode of the input port indexed by pIdx |
ssSetInputPortDimsSameAsOutputPortDims | Set the dimensions of output port outIdx to be equal to the dimensions of input port inpIdx. This method is called from mdlSetWorkWidths. |
ssSetInputPortMatrixDimensions | Specify dimension information for an input port that accepts matrix signals |
ssSetInputPortVectorDimension | Specify dimension information for an input port that accepts vector signals |
ssSetInputPortWidth | Specify the width of an input port |
ssPruneNDMatrixSingletonDims | Prune trailing singleton dimensions |
ssSetCurrentOutputPortDimensions | Set the current size corresponding to dimension dIdx of the output signal at port pIdx. |
ssSetOutputPortDimensionInfo | Specify information about the dimensionality of an output port |
ssSetOutputPortDimensionsMode | Set the dimensions mode of the output port indexed by pIdx |
ssSetOutputPortMatrixDimensions | Specify dimension information for an output port that emits matrix signals |
ssSetOutputPortVectorDimension | Specify dimension information for an output port that emits vector signals |
ssSetOutputPortWidth | Specify the width of an output port |
ssSetOutputPortMatrixDimensions | Specify dimension information for an output port that emits matrix signals |
ssAddOutputDimsDependencyRule | Register a method to handle current dimensions update. |
ssAddVariableSizeSignalsRuntimeChecker | Register a method to check the current input dimensions |
ssAllowSignalsWithMoreThan2D | Enable S-function to work with multidimensional signals |
ssRegMdlSetInputPortDimensionsModeFcn | Register the method to handle dimensions mode propagation for each input port. |
ssSetDWorkRequireResetForSignalSize | Set the block flag for resetting the dIndex Dwork size upon subsystem reset. |
ssSetSignalSizesComputeType | Set the type of output dependency on the input signal. |
ssSetVectorMode | Specify the vector mode that an S-function supports |
ssGetCurrentInputPortDimensions | Get the current size of dimension dIdx of input port pIdx |
ssGetCurrentInputPortWidth | Get the total width (total number of elements) of the signal at input port pIdx |
ssGetInputPortDimensions | Get the dimensions of the signal accepted by an input port |
ssGetInputPortDimensionSize | Get the size of one dimension of the signal entering an input port |
ssGetInputPortDimensionsMode | Get the dimensions mode of the input port indexed by pIdx |
ssGetInputPortNumDimensions | Get the dimensionality of the signals accepted by an input port |
ssGetInputPortWidth | Get the width of an input port |
ssGetCurrentOutputPortDimensions | Get the current size of dimension dIdx of the signal at output port pIdx. |
ssGetCurrentOutputPortWidth | Get the total width (total number of elements) of the signal at output port pIdx. |
ssGetOutputPortDimensions | Get the dimensions of the signal leaving an output port |
ssGetOutputPortDimensionSize | Get the size of one dimension of the signal leaving an output port |
ssGetOutputPortDimensionsMode | Get the dimensions mode of the output port indexed by pIdx |
ssGetOutputPortNumDimensions | Get the number of dimensions of an output port |
ssGetOutputPortWidth | Get the width of an output port |
ssCallSelectedSignalsFcn | Invoke the selected signals function for an S-function |
ssCallSigListCreateFcn | Invoke the signal list creation function for an S-function |
ssCallSigListDestroyFcn | Invoke the signal list destruction function for an S-function |
ssCallSigListUnavailSigAlertFcn | Invoke the unavailable signal alert function for a signal list in an S-function |
ssCallGenericDestroyFcn | Invoke the generic destruction function for an S-function |
ssCallGetPortNameFcn | Get the name for a given port |
ssCallUnselectSigFcn | Invoke the signal deselection function for an S-function |
gsl_FirstReg | Get the first region of an element in a signal list |
gsl_nSigRegions | Get the number of regions in an element of a signal list |
gsl_nSigs | Get the number of signals in a signal list |
gsl_NumElements | Get the number of elements in an element of a signal list |
gsl_PortObj | Get the port associated with an element of a signal list |
gsl_TieWrap | Determine whether an element in a signal list is contiguous |
gsr_Complex | Determine whether the data in a signal region is complex |
gsr_currDims | Access the current dimensions for a variable-sized signal in a signal region |
gsr_data | Access the data in a signal region |
gsr_DataType | Get the Simulink data type identifier for a region |
gsr_DataTypeSize | Get the size of a single real value in a signal region |
gsr_Dims | Access the values in the dimensions vector for a signal region |
gsr_nEls | Get the number of elements in a region |
gsr_NextReg | Get next region in the corresponding signal list |
gsr_NumDims | Get the number of dimensions of the data in a signal region |
gsr_portObj | Get the port associated with a signal region |
gsr_startIdx | Get the index for the element in a signal list at the start of a region |
gsr_status | Determine whether signal in a signal region is available |
gsr_Unit | Get the Simulink unit identifier for a signal region |
gsr_M | Determine number of rows in matrix signal |
gsr_N | Get the number of rows in or width of a signal |
ssGetDTypeIdFromMxArray | Get the data type of an S-function parameter |
ssGetNumSFcnParams | Get the number of parameters that an S-Function block expects |
ssGetSFcnParam | Get a parameter of an S-Function block |
ssGetSFcnParamsCount | Get the number of block dialog parameters that an S-Function block has |
ssSetNumSFcnParams | Specify the number of parameters that an S-Function block has |
ssSetSFcnParamTunable | Make a block parameter tunable |
ssSetSampleTime | Set the period of a sample time |
ssSetInputPortSampleTime | Specify the sample time of an input port |
ssSetModelReferenceSampleTimeDefaultInheritance | Specify that a referenced model containing this S-function can inherit its sample time from its parent model |
ssSetModelReferenceSampleTimeDisallowInheritance | Specify that the use of this S-function in a referenced model prevents the referenced model from inheriting its sample time from its parent model |
ssSetModelReferenceSampleTimeInheritanceRule | Specify whether use of this S-function in a referenced model prevents the referenced model from inheriting its sample time from its parent model |
ssSetNumSampleTimes | Specify the number of sample times that an S-Function block has |
ssSetOffsetTime | Set the offset time of a block |
ssSetTNext | Set the time of the next sample hit |
ssSetVariableDiscreteSampleTime | Register controllable sample time in a block |
ssSetNumTickstoNextHitForVariableDiscrete | Schedule number of steps to next event |
ssSetNeedAbsoluteTime | Specify if a block should use absolute time |
ssSetTimeSource | Set source of time for asynchronous task |
ssGetInputPortSampleTime | Get the sample time of an input port |
ssGetInputPortSampleTimeIndex | Get the sample time index of an input port |
ssGetNumSampleTimes | Get the number of sample times that a block has |
ssGetOffsetTime | Get one of an S-function's sample time offsets. |
ssGetOutputPortSampleTime | Get the sample time of an output port |
ssGetOutputPortSampleTimeIndex | Get sample time index of output port |
ssGetPortBasedSampleTimeBlockIsTriggered | Determine whether a block that uses port-based sample times resides in a triggered subsystem |
ssGetSampleTime | Get one of an S-function's sample times. |
ssGetTNext | Get the time of the next sample hit |
ssSetParameterTuningCompliance | Specify sample time behavior and tunability for S-function blocks with port-based sample times |
ssGetParameterTuningCompliance | Get the sample time behavior and tunability for S-function blocks with port-based sample times |
ssIsContinuousTask | Determine whether a task is continuous |
ssIsSampleHit | Determine whether the sample time is hit |
ssIsSpecialSampleHit | Determine whether the sample time is hit |
ssSampleAndOffsetAreTriggered | Determine whether a sample time and offset value pair indicate a triggered sample time |
ssSampleAndOffsetAreTriggeredOrAsync | Determine whether a sample time and offset value pair indicate a triggered or asynchronous sample time |
ssSetAsyncTimerAttributes | declares that the Simulink block requires a timer |
ssSetAsyncTimerDataType | sets the data type of the asynchronous task |
ssSetAsyncTaskPriorities | sets the Simulink task priority |
ssRegisterDataType | Register a custom data type |
ssRegisterTypeFromNamedObject | Register a custom data type from a
Simulink.AliasType , Simulink.NumericType , or
Simulink.Bus object. |
ssSetDataTypeSize | Set the size of a custom data type |
ssSetDataTypeZero | Set the zero representation of a data type |
ssSetInputPortDataType | Set the data type of an input port |
ssSetOutputPortDataType | Set the data type of an output port |
ssGetDataTypeId | Get the ID of a data type |
ssGetDataTypeIdAliasedThruTo | Get the base data type associated with a data type alias |
ssGetDataTypeName | Get the name of a data type |
ssGetDataTypeSize | Get the size of a custom data type |
ssGetDataTypeZero | Get the zero representation of a data type |
ssGetInputPortDataType | Get the data type of an input port |
ssGetNumDataTypes | Get number of data types registered for this simulation, including built-in types |
ssGetOutputPortDataType | Get the data type of an output port |
ssGetOutputPortSignal | Get the vector of signal elements emitted by an output port |
ssGetSFcnParamDataType | Get the data type of a parameter for an S-Function block |
ssGetBusElementComplexSignal | Get the signal complexity for a bus element |
ssGetBusElementDataType | Get the data type identifier for a bus element |
ssGetBusElementDimensions | Get the dimensions of a bus element |
ssGetBusElementName | Get the name of a bus element |
ssGetBusElementNumDimensions | Get the number of dimensions for a bus element |
ssGetBusElementOffset | Get the offset from the start of the bus data type to a bus element |
ssGetNumBusElements | Get the number of elements in a bus signal |
ssGetSFcnParamName | Get the value of a block parameter for an S-function block |
ssIsDataTypeABus | Determine whether a data type identifier represents a bus signal |
ssRegisterTypeFromParameter | Register a data type that a parameter in the Simulink data type table specifies |
ssRegisterTypeFromNamedObject | Register a custom data type from a
Simulink.AliasType , Simulink.NumericType , or
Simulink.Bus object. |
ssSetBusInputAsStruct | Specify whether to convert the input bus signal for an S-function from virtual to nonvirtual |
ssSetBusOutputAsStruct | Specify whether the output bus signal from an S-function must be virtual or nonvirtual |
ssSetBusOutputObjectName | Specify the name of the bus object that defines the structure and type of the output bus signal |
ssGetInputStringLength | Get length of string from input port |
ssGetStringDataTypeMaxLength | Get maximum length of string data type |
ssIsStringDataType | Determine if data type is string |
ssReadInputString | Read C string from input port |
ssRegisterStringDataType | Register string data type |
ssWriteOutputString | Write C string to output port |
ssGetNumRunTimeParams | Get the number of run-time parameters created by this S-function |
ssGetRunTimeParamInfo | Get the attributes of a run-time parameter |
ssRegAllTunableParamsAsRunTimeParams | Register all tunable parameters as run-time parameters |
ssRegDlgParamAsRunTimeParam | Register a dialog parameter as a run-time parameter |
ssSetNumRunTimeParams | Specify the number of run-time parameters created by this S-function |
ssSetRunTimeParamInfo | Specify the attributes of a run-time parameter |
ssUpdateAllTunableParamsAsRunTimeParams | Update the values of run-time parameters to be the same as those of the corresponding tunable dialog parameters |
ssUpdateDlgParamAsRunTimeParam | Update a run-time parameter that corresponds to a dialog parameter |
ssUpdateRunTimeParamData | Update the value of a run-time parameter |
ssUpdateRunTimeParamInfo | Update the attributes of a run-time parameter |
ssCallSystemWithTid | Call the update and outputs methods of a function-call subsystem |
ssDisableSystemWithTid | Disable a function-call subsystem connected to this S-function block |
ssEnableSystemWithTid | Enable a function-call subsystem connected to this S-function |
ssGetCallSystemNumFcnCallDestinations | Get the number of function-call destinations. |
ssGetExplicitFCSSCtrl | Determine whether this S-function explicitly enables and disables the function-call subsystems that it invokes |
ssSetCallSystemOutput | Specify that an output port is issuing a function call |
ssSetExplicitFCSSCtrl | Specify whether this S-function explicitly enables and disables the function-call subsystem that it calls |
ssDeclareSimulinkFunction | Declare Simulink Function with a given function prototype and scope. |
ssDeclareFunctionCaller | Declare Simulink Function call with a given function prototype. |
ssCallSimulinkFunction | Call a declared Simulink Function of a given function prototype at run time. |
ssQuerySimulinkFunction | Determine if function name is declared as a Simulink Function. |
ssGetSimulinkFunctionInput | Get a pointer to an input argument passed to a Simulink Function. |
ssGetSimulinkFunctionOutput | Get a pointer to an output argument passed to a Simulink Function. |
ssSetSimulinkFunctionArgComplexity | Declare complexity of a Simulink Function argument. |
ssSetSimulinkFunctionArgDataType | Declare data type of Simulink Function argument. |
ssSetSimulinkFunctionArgDimensions | Declare dimension of Simulink Function argument. |
ssRTWGenIsModelReferenceRTWTarget | Determine if the model reference Simulink Coder target is generating |
ssRTWGenIsModelReferenceSimTarget | Determine if the model reference simulation target is generating |
ssSetModelReferenceNormalModeSupport | Specify if S-function can be used in referenced model simulating in normal mode |
ssSetModelReferenceSampleTimeDefaultInheritance | Specify that a referenced model containing this S-function can inherit its sample time from its parent model |
ssSetModelReferenceSampleTimeDisallowInheritance | Specify that the use of this S-function in a referenced model prevents the referenced model from inheriting its sample time from its parent model |
ssSetModelReferenceSampleTimeInheritanceRule | Specify whether use of this S-function in a referenced model prevents the referenced model from inheriting its sample time from its parent model |
ssSetStateAbsTol | Set the absolute tolerance used by a variable-step solver for a specific S-function continuous state. |
ssSetBlockReduction | Request that the Simulink engine attempt to reduce a block |
ssSetOperatingPointCompliance | Specify the behavior of a Simulink S-function when saving and restoring the operating point of a model containing the S-function |
ssSetOperatingPointVisibility | Specify whether to make the S-function simulation operating point visible in model simulation operating point |
ssSetSolverNeedsReset | Ask Simulink engine to reset solver |
ssSetSkipContStatesConsistencyCheck | Ask Simulink engine to skip continuous state consistency check |
ssSetStopRequested | Set the simulation stop requested flag |
ssGetBlockReduction | Determine whether a block has requested block reduction before the simulation has begun and whether it has actually been reduced after the simulation loop has begun |
ssGetErrorStatus | Get a character vector that identifies the last error |
ssGetFixedStepSize | Get the fixed step size of the model containing the S-function. |
ssGetMaxStepSize | Get the maximum step size used by the model containing the S-function. |
ssGetMinStepSize | Get the minimum step size used by the model containing the S-function. |
ssGetSimMode | Get the simulation mode of an S-Function block |
ssGetSimStatus | Get the current simulation status of an S-Function block |
ssGetSolverMode | Get the solver mode being used to solve the S-function |
ssGetSolverName | Get the name of the solver being used to solve the S-function |
ssGetStateAbsTol | Get the absolute tolerance used by the variable-step solver for a specified state |
ssGetStopRequested | Get the value of the simulation stop requested flag |
ssGetT | Get the current simulation time |
ssGetTaskTime | Get the current time for the current task |
ssGetTFinal | Get the simulation stop time |
ssGetTNext | Get the time of the next sample hit |
ssGetTStart | Get the simulation start time |
ssIsExternalSim | Determine if the model is running in external mode. |
ssIsFirstInitCond | Determine whether the simulation time is equal to the start time. |
ssIsMajorTimeStep | Determine whether the simulation is in a major step |
ssIsMinorTimeStep | Determine whether the simulation is in a minor step |
ssIsVariableStepSolver | Determine if a variable-step solver is being used to solve the S-function |
ssRTWGenIsAccelerator | Determine if the model is running in Accelerator mode. |
ssIsRapidAcceleratorActive | Determine whether the model is running in Rapid Accelerator mode |
ssGetErrorStatus | Get a character vector that identifies the last error |
ssGetLocalErrorStatus | Get a character vector that identifies the last error |
ssPrintf | Print a variable-content message |
ssSetErrorStatus | Report an error |
ssSetLocalErrorStatus | Report an error in a thread-safe manner |
ssWarning | Display a warning message |
ssSetOptions | Specify S-function options |
ssCallExternalModeFcn | Invoke the external mode function for an S-function |
ssGetModelName | Get the model name |
ssGetParentSS | Get the parent of a SimStruct |
ssGetPath | Get the path of a block |
ssGetRootSS | Get the root of a SimStruct hierarchy |
ssGetUserData | Access user data |
ssSetExternalModeFcn | Specify the external mode function for an S-function |
ssSetPlacementGroup | Specify the name of the placement group of a block |
ssSetUserData | Specify user data |
ssSupportsMultipleExecInstances | Specify that a For Each Subsystem block supports an S-function operating inside the subsystem. |
ssSetNumDWork | Specify the number of Dwork vectors used by a block |
ssSetDWorkComplexSignal | Specify whether the elements of a Dwork vector are real or complex |
ssSetDWorkDataType | Specify the data type of a Dwork vector |
ssSetDWorkName | Specify the name of a Dwork vector |
ssSetDWorkUsageType | Specify how DWork vector is used in S-function |
ssSetDWorkUsedAsDState | Specify that a Dwork vector is used as a discrete state vector |
ssSetDWorkWidth | Specify the width of a Dwork vector |
ssGetNumDWork | Get the number of Dwork vectors used by a block |
ssGetDWork | Get a DWork vector |
ssGetDWorkComplexSignal | Determine whether the elements of a Dwork vector are real or complex numbers |
ssGetDWorkDataType | Get the data type of a Dwork vector |
ssGetDWorkName | Get the name of a Dwork vector |
ssGetDWorkUsageType | Determine how DWork vector is used in S-function |
ssGetDWorkUsedAsDState | Determine whether a Dwork vector is used as a discrete state vector |
ssGetDWorkWidth | Get the size of a Dwork vector |
ssGetdX | Get the derivatives of a block's continuous states |
ssSetNumContStates | Specify the number of continuous states that a block has |
ssSetNumDiscStates | Specify the number of discrete states that a block has |
ssSetNumNonsampledZCs | Specify the number of states for which a block detects zero crossings that occur between sample points |
ssGetContStates | Get a block's continuous states |
ssGetDiscStates | Get a block's discrete states |
ssGetRealDiscStates | Get a block's discrete state vector |
ssGetNonsampledZCs | Get the zero-crossing signal values |
ssGetNumContStates | Get the number of continuous states that a block has |
ssGetNumDiscStates | Get the number of discrete states that a block has |
ssGetNumNonsampledZCs | Get the size of the zero-crossing vector |
ssSetNumRWork | Specify the size of a block's floating-point work vector |
ssGetNumRWork | Get the size of a block's floating-point work vector |
ssGetRWork | Get a block's floating-point work vector |
ssGetRWorkValue | Get an element of a block's floating-point work vector |
ssSetRWorkValue | Set an element of a block's floating-point work vector |
ssSetNumIWork | Specify the size of a block's integer work vector |
ssGetNumIWork | Get the size of a block's integer work vector |
ssGetIWork | Get a block's integer work vector |
ssGetIWorkValue | Get an element of a block's integer work vector |
ssSetIWorkValue | Set an element of a block's integer work vector |
ssSetNumPWork | Specify the size of a block's pointer work vector |
ssGetNumPWork | Get the size of a block's pointer work vector |
ssGetPWork | Get a block's pointer work vector |
ssGetPWorkValue | Get a pointer from a block's pointer work vector |
ssSetPWorkValue | Set an element of a block's pointer work vector |
ssSetNumModes | Specify the size of the block's mode vector |
ssGetNumModes | Get the size of the mode vector |
ssGetModeVector | Get the mode vector |
ssGetModeVectorValue | Get an element of a block's mode vector |
ssSetModeVectorValue | Set an element of a block's mode vector |
ssGetDWorkRTWIdentifier | Get the identifier used to declare a DWork vector in code generated from the associated S-function |
ssGetDWorkRTWIdentifierMustResolveToSignalObject | Get a flag indicating if a DWork vector resolves to a
Simulink.Signal object |
ssGetDWorkRTWStorageClass | Get the storage class of a DWork vector in code generated from the associated S-function |
ssGetDWorkRTWTypeQualifier | Get the C type qualifier (e.g., const ) used to
declare a DWork vector in code generated from the associated S-function |
ssGetPlacementGroup | Get the name of the placement group of a block |
ssRTWGenIsCodeGen | Identify any code generation that is not used by the Accelerator. |
ssSetArrayLayoutForCodeGen | Specify array layout of the S-function |
ssSetDWorkRTWIdentifier | Specify the identifier used to declare a DWork vector in code generated from the associated S-function |
ssSetDWorkRTWIdentifierMustResolveToSignalObject | Specify if a DWork vector resolves to a Simulink.Signal
object |
ssSetDWorkRTWStorageClass | Specify the storage class of a DWork vector in code generated from the associated S-function |
ssSetDWorkRTWTypeQualifier | Specify the C type qualifier (e.g., const ) used to
declare a DWork vector in code generated from the associated S-function |
ssSetPlacementGroup | Specify the name of the placement group of a block |
ssWriteRTW2dMatParam | Write a matrix parameter to the
file |
ssWriteRTWMx2dMatParam | Write a matrix parameter in MATLAB format to the
file |
ssWriteRTWMxVectParam | Write a vector parameter in MATLAB format to the
file |
ssWriteRTWParameters | Write tunable parameter information to the
file |
ssWriteRTWParamSettings | Write values of nontunable parameters to the
file |
ssWriteRTWScalarParam | Write a scalar parameter to the
file |
ssWriteRTWStr | Write a character vector to the
file |
ssWriteRTWStrParam | Write a character vector parameter to the
file |
ssWriteRTWStrVectParam | Write a vector of character vector parameters to the
file |
ssWriteRTWVectParam | Write a vector parameter to the
file |
ssWriteRTWWorkVect | Write work vectors to the
file |
Create input and output ports on a C/C++ S-function block.
Pass Dialog Parameters to S-Functions
Process parameters via the C/C++ S-function block dialog box.
Specify S-Function Sample Times
Specify the rate at which a block operates in C/C++ S-functions.
Learn the key concepts of DWork vectors.
Configure custom data types for the values of a block's signals and parameters in C/C++ S-functions.
Implement Function-Call Subsystems with S-Functions
Create function-call subsystems with S-functions.
Using Function-Call Subsystems
Create a subsystem that executes with a function call.
S-Function Compliance with the ModelOperatingPoint
Use ModelOperatingPoint
object in C-MEX S-functions to save
and restore simulation data.
Create and Update S-Function Run-Time Parameters
Create and update run-time parameters in C/C++ S-functions.
Guidelines for Writing Thread-Safe S-Functions
Consider these guidelines when you want to make your S-functions to be thread-safe.
Use C/C++ S-Functions as Sim Viewing Devices in External Mode
Specify C/C++ S-function as a sim viewing device for use in external mode.
Handle unexpected events in S-functions.