(Redirected from Listener nodes)
The IExecutionChangeListener<T> type is an interface type applied to ProtoFlux nodes. This interface marks the node as a listener node.
Listener nodes listen for changes on their input and evaluate themselves whenever they are notified of a potential change by the input chain. This means that they are lazy by default and only evaluate when needed. Changes are triggered by the data model and can come from a variety of sources:
- Source or ChangeableSource nodes.
- These get events from the data model directly whenever the sourced element detects some kind of change to itself.
- Input nodes upon being changed by the user itself.
- Unlike Source nodes, reference input nodes do not receive change events whenever the referenced object detects some kind of change to itself, and thus won't re-evaluate any listener nodes.
- DataModelStore nodes.
However, if any node in the input node graph has the ContinuouslyChanging attribute, the listener node will forcibly evaluate every engine update instead.