convey

open suspend fun convey(conveyor: Conveyor, entryLocation: IdentityIfc, destination: IdentityIfc, numCellsNeeded: Int = 1, requestPriority: Int = PRIORITY, requestResumePriority: Int = PRIORITY, suspensionName: String? = null): ConveyorRequestIfc

This suspending function combines requestConveyor(), rideConveyor(), and exit() into one suspending function.

Return

the returned item encapsulates what happened during the ride and contains information about the origin point, the destination, etc.

Parameters

conveyor

the conveyor to access

entryLocation

the location on the conveyor at which the cells are requested

destination

the location to which to ride

numCellsNeeded

the number of cells needed (requested)

requestPriority

the priority of the access. If there are multiple entities that access the conveyor at the same time this priority determines which goes first. Similar to the seize resource priority.

suspensionName

the name of the suspension point the entity is experiencing if there are more than one delay suspension points within the process. The user is responsible for uniqueness.


open suspend fun convey(conveyor: Conveyor, entryLocation: IdentityIfc, loadingTime: Double = 0.0, destination: IdentityIfc, unloadingTime: Double = 0.0, numCellsNeeded: Int = 1, requestPriority: Int = PRIORITY, requestResumePriority: Int = PRIORITY, suspensionName: String? = null): ConveyorRequestIfc

This suspending function combines requestConveyor(), rideConveyor(), and exit() into one suspending function.

Return

the returned item encapsulates what happened during the ride and contains information about the origin point, the destination, etc.

Parameters

conveyor

the conveyor to access

entryLocation

the location on the conveyor at which the cells are requested

loadingTime

the time that it takes to load onto the conveyor

destination

the location to which to ride

unloadingTime

the time that it takes to unload from the conveyor

numCellsNeeded

the number of cells needed (requested)

requestPriority

the priority of the access. If there are multiple entities that access the conveyor at the same time this priority determines which goes first. Similar to the seize resource priority.

suspensionName

the name of the suspension point the entity is experiencing if there are more than one delay suspension points within the process. The user is responsible for uniqueness.


open suspend fun convey(conveyor: Conveyor, entryLocation: IdentityIfc, loadingTime: GetValueIfc = ConstantRV.ZERO, destination: IdentityIfc, unloadingTime: GetValueIfc = ConstantRV.ZERO, numCellsNeeded: Int = 1, requestPriority: Int = PRIORITY, requestResumePriority: Int = PRIORITY, suspensionName: String? = null): ConveyorRequestIfc

This suspending function combines access(), ride(), and exit() into one suspending function.

Return

the returned item encapsulates what happened during the ride and contains information about the origin point, the destination, etc.

Parameters

conveyor

the conveyor to access

entryLocation

the location on the conveyor at which the cells are requested

loadingTime

the time that it takes to load onto the conveyor

destination

the location to which to ride

unloadingTime

the time that it takes to unload from the conveyor

numCellsNeeded

the number of cells needed (requested)

requestPriority

the priority of the access. If there are multiple entities that access the conveyor at the same time this priority determines which goes first. Similar to the seize resource priority.

suspensionName

the name of the suspension point the entity is experiencing if there are more than one delay suspension points within the process. The user is responsible for uniqueness.