NodeReaction

interface NodeReaction<T> : Reaction<T>

Parameters

The type which describes the concentration of a molecule

A node-bound Reaction. Every reaction owns its schedule through nextOccurrence.

Inheritors

Properties

Link copied to clipboard
abstract var actions: List<Action<T>>

The Actions executed by this reaction.

Link copied to clipboard

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.

Link copied to clipboard
abstract var conditions: List<Condition<T>>

The Conditions interpreted by this reaction's scheduling and execution policy.

Link copied to clipboard
abstract override val host: Node<T>

The Node hosting this reaction.

Link copied to clipboard

The absolute Time of the next occurrence.

Functions

Link copied to clipboard
abstract fun cloneOnNewNode(node: Node<T>): NodeReaction<T>

Clones this reaction's program on a new node, for example when nodes are created at runtime.

Link copied to clipboard
abstract operator fun compareTo(other: Reaction<T>): Int
Link copied to clipboard
abstract fun dispose()

Disposes and releases the resources held by this object.

Link copied to clipboard
abstract fun execute()

Executes this reaction.

Link copied to clipboard
abstract fun initializationComplete(atTime: Time, environment: Environment<T, *>)

Activates reactive inputs after the environment is fully initialized and establishes the first occurrence.

Link copied to clipboard
infix fun Reaction<*>.shouldEqual(other: Reaction<*>)
Link copied to clipboard
abstract fun updateSchedulingAfterInvalidation(currentTime: Time)

Refreshes this reaction's scheduling after one or more observed model inputs changed.