ZoneClosureDriver

constructor(parent: ModelElement, space: GuidedPathSpace, zones: () -> List<Zone>, timeBetween: RVariableIfc, duration: RVariableIfc, onOverlap: ZoneOverlap = ZoneOverlap.RAISE, firstAt: Double = Double.NaN, name: String? = null)(source)

Parameters

parent

where this sits in the model

space

the guide path whose zones are closed

zones

what to close, read afresh at every closure so the extent may be sampled too

timeBetween

how long between the end of one closure being asked for and the next

duration

how long each closure holds its space once the hold begins

onOverlap

what to do when the space is already promised to another closure; the default refuses loudly, which is the right default for a driver whose whole job is to run unattended

firstAt

when the first closure is asked for; defaults to one sample of timeBetween

name

the driver's name in the model