Result MarkersΒΆ
Note
This is a topic targeted at advanced users. It might be hard to understand for newcomers.
A result generated by an expression can optionally be marked with some pre-defined markers that influence how the result is handled.
Instead of
- x: "21"
you write
- x: "Mark(21, Mark.OVERLAY)"
to mark the result 21
with the OVERLAY
marker.
The actual syntax is Mark(result, marker1, ..., markerN)
,
so you can add multiple markers ad once. Markers can be applied to
postprocessors as well, but they will be used
for the final result. Custom postprocessors (e.g. those defined via
Postprocess()
) may also add result markers themselves.
The following markers are available:
OVERLAY
: Overwrite manual value adjustments even when a configuredrescheduling_delay
would normally have prevented it. As soon as the schedule no longer evaluates to anOVERLAY
-marked result the previous value is restored, no matter if that was the scheduled or a manually set one. Even a previous re-scheduling time is restored. An occasion for using this marker is Open Door or Window Detection.OVERLAY_REVERT_ON_NO_RESULT
: When applied in conjunction with theOVERLAY
marker, the overlay is cancelled as soon as a schedule evaluation produces no result (e.g. becauseAbort()
was used or all rules evaluated toNext()
). When an overlay is created without this additional marker, the value marked withOVERLAY
stays active until the schedule really results in another value. DEPRECATED: This is the default behaviour of OVERLAY now.