Actionable

interface Actionable<T> : Comparable<Actionable<T>> , Serializable

A time-distributed entity with inboundDependencies, outboundDependencies and an execution strategy.

Functions

Link copied to clipboard
abstract fun canExecute(): Boolean
Link copied to clipboard
abstract operator fun compareTo(other: Actionable<T>): Int
Link copied to clipboard
abstract fun execute()

Executes the reactions.

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

This method is called when the environment has completed its initialization. Can be used by this reaction to compute its next execution time - in case such computation requires an inspection of the environment.

Link copied to clipboard
abstract fun update(    currentTime: Time,     hasBeenExecuted: Boolean,     environment: Environment<T, *>)

Updates the scheduling of this reaction.

Properties

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

The list of Actions of the Reaction. Please be careful when you modify this list.

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

The list of Conditions of the Reaction. Please be careful when you modify this list.

Link copied to clipboard
abstract val inboundDependencies: ListSet<out Dependency>
Link copied to clipboard
abstract val outboundDependencies: ListSet<out Dependency>
Link copied to clipboard
open val rate: Double

Returns the speed of this Reaction. It is an average number, and can potentially change during the simulation, depending on the implementation.

Link copied to clipboard
open val tau: Time
Link copied to clipboard
abstract val timeDistribution: TimeDistribution<T>

Inheritors

Link copied to clipboard
Link copied to clipboard