Time constraints
In this topic:
Time constraints are similar to Events in the sense that they also trigger on certain conditions. The difference is that it introduces a time component into the evaluation formula. This means a time constraint can, for example, be triggered a certain amount of time after another event has been triggered.
The following options are available for each Time constraint.
|
Name - Specifies the time constraint name which can be referenced in formulas for states and variables.
Visible - Specifies if the variable is shown in the Profiler Timeline as a regular variable under the Inspector.
Formula - Defines whether the time constraint is active (if the formula evaluates to true) or not.
The formula accepts a special macro $(TIME) which represents the current point on the Profiler Timeline. Also it is possible to reference other events. If the referenced event is a state transition than the event is replaced with the timestamp at which the event has occurred the last time. If the referenced event maps to a certain state then the event is replaced with the duration for which the specific state has been active. All values in the formula are provided in nanoseconds.
Predefined Macros - Press to open list of Predefined Macros.
More explanation is available in the dialog.
Consider the use cases in the following table and the respective example to get a better understanding of how timing constraints work. Check the Task Deadline example for a more elaborate explanation.
Use case |
Example |
---|---|
Timing constraint triggers when the event FuncActivatedEvent is true and the absolute timestamp is greater or equal to 1000 nanoseconds. |
FuncActivatedEvent >= 1000 |
Timing constraint triggers when more than 1000 nanoseconds have passed since FuncEntryEvent. |
($(TIME) - FuncEntryEvent) > 1000 |
Timing constraint triggers when more than 1000 nanoseconds pass between the occurrence of Func2ExcitEvent and Func1EntryEvent. |
(Func1EntryEvent - Func2ExitEvent) > 1000 |