Determine whether the sample time is hit
boolean_T ssIsSpecialSampleHit(SimStruct *S, int_T sti1, int_T sti2, int_T tid)
S
SimStruct representing an S-Function block.
sti1
Index of the sample time.
sti2
Index of the sample time.
tid
Task ID.
The Boolean value true
if a sample hit has occurred at
sti1
and a sample hit has also occurred at
sti2
in the same time step. Otherwise, returns
false
.
Use this macro in mdlUpdate
and mdlOutputs
to ensure the validity of data shared by multiple tasks running at different rates.
For more information, see Synchronizing Multirate S-Function Blocks.
When using the ssIsSpecialSampleHit
macro, the slower sample
time must be an integer multiple of the faster sample time.
C, C++
See the S-function mixedm.c
used in sfcndemo_mixedm
and the S-function sfun_multirate.c
used in sfcndemo_sfun_multirate
.