HoldUntilFull

data class HoldUntilFull @JvmOverloads constructor(val stop: Stop, val maximumWait: GetValueIfc, val limit: Int = Int.MAX_VALUE) : TourStopActionIfc(source)

Do not leave until the vehicle is full, or until the wait has run out.

A load-driven departure, which is a different thing from a scheduled one: a departure time is a StopControlIfc instruction, because the decision belongs to whoever runs the service, whereas this is the vehicle responding to what is in front of it. A terminal that dispatches a trailer when it fills, and otherwise at the cut-off, is this.

Parameters

stop

whose line to draw from

maximumWait

how long to hold at most, sampled on arrival. Must be finite: a vehicle told to wait forever for a load that never comes is stranded, and this subsystem prefers a modeller to have to write the deadline down

limit

the most to take in one visit

Constructors

Link copied to clipboard
constructor(stop: Stop, maximumWait: GetValueIfc, limit: Int = Int.MAX_VALUE)

Properties

Link copied to clipboard
val limit: Int
Link copied to clipboard
Link copied to clipboard
open override val servesStop: Stop

The permanent stop this action serves, or null for an action that serves none.

Link copied to clipboard
val stop: Stop

Functions

Link copied to clipboard
open suspend override fun KSLProcessBuilder.perform(context: StopContextIfc)

Carried out once the vehicle has arrived at StopContextIfc.stop.