ssIsContinuousTask
Determine whether a task is continuous
Syntax
boolean_T ssIsContinuousTask(SimStruct *S, int_T tid)
Arguments
S
SimStruct that represents an S-Function block.
tid
Task ID.
Returns
The Boolean value true
when the simulation is executing the
continuous task. Otherwise, returns false
.
Description
Use in mdlOutputs
or mdlUpdate
when your
S-function has multiple sample times to determine if the task represented by the
task ID tid
is the continuous task. For example:
if (ssIsContinuousTask(S, tid)) { /* Executing in the continuous task */ if (ssIsSpecialSampleHit(S, 1, 0, tid)) { real_T *zoh = ssGetRWork(S); real_T *xC = ssGetContStates(S); *zoh = *xC; } }
You should not use this in single-rate S-functions, or if you did not register a continuous sample time.
Languages
C, C++
Examples
See the S-function mixedm.c
used in sfcndemo_mixedm
.
See Also
Version History
Introduced before R2006a