ArrayIndexedPriorityEpsilonBatchQueue

class ArrayIndexedPriorityEpsilonBatchQueue<T>(epsilon: Double, delegate: ArrayIndexedPriorityQueue<T> = ArrayIndexedPriorityQueue()) : Scheduler<T> , BatchedScheduler<T>

Batched extension for ArrayIndexedPriorityQueue. This implementation uses epsilon-sensitivity in order to build the next batch to process. Events will be added to the batch while | tau(e1) - tau(e2) | < epsilon.

Parameters

concentration type

Constructors

Link copied to clipboard
constructor(epsilon: Double, delegate: ArrayIndexedPriorityQueue<T> = ArrayIndexedPriorityQueue())

Properties

Link copied to clipboard
open override val next: Actionable<T?>?
Link copied to clipboard
open override val nextBatch: List<Actionable<T>>

Functions

Link copied to clipboard
open override fun addReaction(reaction: Actionable<T?>?)
Link copied to clipboard
open override fun getNext(): Actionable<T?>?
Link copied to clipboard
open override fun getNextBatch(): List<Actionable<T>>

Retrieve the next scheduled batch of reactions.

Link copied to clipboard
open override fun removeReaction(reaction: Actionable<T?>?)
Link copied to clipboard
open override fun updateReaction(reaction: Actionable<T>)

Notifies the structure that the reaction r has changed. The whole structure will be rearranged to ensure consistency.