Conditional Event
A single-use event scheduled by condition validity and a timeDistribution.
No sample is drawn while the conditions are invalid. Becoming valid draws one delay from timeDistribution. If the conditions become invalid before execution, that putative occurrence is discarded and the event publishes Time.INFINITY. The next invalid-to-valid transition draws a new delay. Repeated updates while validity remains true do not redraw the occurrence. After successful action execution, the event unregisters itself from node.
Parameters
node hosting the event
generator for delays from each enabling transition
Type Parameters
concentration type
Properties
Observes whether the reaction procedure can be selected and executed by the engine. This observable emits updates when that state changes. Reactions whose procedure includes checking occurrence-time conditions may remain executable even when those conditions will suppress their model effects.
The Conditions interpreted by this reaction's scheduling and execution policy.
The current meanDelay, for consumers requiring it to be finite and positive, such as those converting speeds into per-occurrence movements.
The absolute Time of the next occurrence.
The delay distribution governing this reaction's putative occurrences.
Functions
Clones this reaction's program on a new node, for example when nodes are created at runtime.
Initializes reactive inputs after the model has been fully assembled.
Converts a NodeReaction to a ReactionSurrogate.
Converts a node-hosted Reaction to a ReactionSurrogate.
Refreshes reaction state after firing, then applies firing scheduling policy.
Refreshes this reaction's scheduling after one or more observed model inputs changed.