Classification
OTL Syntax
EventSourceTerm = EventHandling.MonitorChangeEventSource(Variable);
Description
The OTX MonitorChangeEventSource term creates an event source that shall monitor a variable's value and fire an event when it changes. The fired event shall maintain a snapshot of the new value of the monitored variable, which may be read out later (see GetNewValue term). Event queueing shall start immediately once the event source is created.
|
|
IMPORTANT — Change-monitoring shall be shallow. This means that changes inside of complex values shall NOT be recognized, like e.g. a change of an item in a List or Map, or the removal of items from a List or Map, etc. Regarding complex data types the only recognized change is when the variable changes its value, e.g. when another List is assigned to the variable.
|
|
|
IMPORTANT — The case when a value is assigned to a formerly uninitialized variable shall also be recognized as a change event and shall NOT pose an error.
|
Return Value
The Term returns the value, see table below.
|
|
In OTX, Terms are categorized according to its return data type!
|
Data Type |
Description
|
EventSource |
The EventSource, the changes in the value of a variable monitored.
|
Properties
Name |
Data Type |
Class |
Default |
Cardinality |
Description
|
Variable |
- |
Variable |
- |
[1] |
Represents the variable that shall be monitored.
|
OTL Examples
Boolean Bool1 = false;
EventHandling.EventSource EventSource1;
EventHandling.Event Event1;
EventSource1 = EventHandling.MonitorChangeEventSource(Bool1);
parallel
{
lane
{
Bool1 = true;
}
lane
{
EventHandling.WaitForEvent({EventSource1}, Event1);
}
}
See also
ThresholdExceededEventSource
TimerExpiredEventSource