transportWith

open suspend fun transportWith(movableResource: MovableResource, toLoc: LocationIfc, emptyVelocity: Double = movableResource.velocity.value, transportVelocity: Double = movableResource.velocity.value, transportQ: RequestQ, loadingDelay: GetValueIfc = ConstantRV.ZERO, unLoadingDelay: GetValueIfc = ConstantRV.ZERO, requestPriority: Int = TRANSPORT_REQUEST_PRIORITY, emptyMovePriority: Int = MOVE_PRIORITY, loadingPriority: Int = DELAY_PRIORITY, transportPriority: Int = MOVE_PRIORITY, unLoadingPriority: Int = DELAY_PRIORITY, sendToHomeBaseOption: Boolean = false)

Causes transport of the entity via the movable resource from the entity's current location to the specified location at the supplied velocities. The entity experiences the time for the movable resource to move to its current location. If not specified, the default velocity of the movable resource is used for the movement. If the home base option is specified, the entity does not experience the time for the movable resource to proceed to its home base after the entity releases the movable resource.

If the queue is priority based (i.e. uses a ranked queue discipline) the user should set the entity's priority attribute
for use in ranking the queue prior to the calling for transport.

Parameters

movableResource

, the spatial element that will be moved

toLoc

the location to which the entity is supposed to move

emptyVelocity

the velocity associated with the movement to the entity's location

transportVelocity

the velocity associated with the movement to the desired location

transportQ

the queue that the entity waits in if the resource is busy

requestPriority

, a priority can be used to determine the priority of the underlying (seize) call associated with the transport request. This is not the priority associated with waiting in a queue.

emptyMovePriority

, since the move is scheduled, a priority can be used to determine the order of events for moves that might be scheduled to complete at the same time.

transportPriority

, since the move is scheduled, a priority can be used to determine the order of events for moves that might be scheduled to complete at the same time.

sendToHomeBaseOption

If true, and there are no pending requests, and the selected movable resource has a home base, it will be sent to the home base after the transport. The default is false.


open suspend fun transportWith(movableResourceWithQ: MovableResourceWithQ, toLoc: LocationIfc, emptyVelocity: Double = movableResourceWithQ.velocity.value, transportVelocity: Double = movableResourceWithQ.velocity.value, loadingDelay: GetValueIfc = ConstantRV.ZERO, unLoadingDelay: GetValueIfc = ConstantRV.ZERO, requestPriority: Int = TRANSPORT_REQUEST_PRIORITY, emptyMovePriority: Int = MOVE_PRIORITY, loadingPriority: Int = DELAY_PRIORITY, transportPriority: Int = MOVE_PRIORITY, unLoadingPriority: Int = DELAY_PRIORITY, sendToHomeBaseOption: Boolean = false)

Causes transport of the entity via the movable resource from the entity's current location to the specified location at the supplied velocities. The entity experiences the time for the movable resource to move to its current location. If not specified, the default velocity of the movable resource is used for the movement. If the home base option is specified, the entity does not experience the time for the movable resource to proceed to its home base after the entity releases the movable resource.

If the queue is priority based (i.e. uses a ranked queue discipline) the user should set the entity's priority attribute
for use in ranking the queue prior to the calling for transport.

Parameters

movableResourceWithQ

, the spatial element that will be moved

toLoc

the location to which the entity is supposed to move

emptyVelocity

the velocity associated with the movement to the entity's location

transportVelocity

the velocity associated with the movement to the desired location

requestPriority

, a priority can be used to determine the priority of the underlying (seize) call associated with the transport request. This is not the priority associated with waiting in a queue.

emptyMovePriority

, since the move is scheduled, a priority can be used to determine the order of events for moves that might be scheduled to complete at the same time.

transportPriority

, since the move is scheduled, a priority can be used to determine the order of events for moves that might be scheduled to complete at the same time.

sendToHomeBaseOption

If true, and there are no pending requests, and the selected movable resource has a home base, it will be sent to the home base after the transport. The default is false.


open suspend fun transportWith(fleet: MovableResourcePool, toLoc: LocationIfc, emptyVelocity: Double = fleet.velocity.value, transportVelocity: Double = fleet.velocity.value, transportQ: RequestQ, loadingDelay: GetValueIfc = ConstantRV.ZERO, unLoadingDelay: GetValueIfc = ConstantRV.ZERO, requestPriority: Int = TRANSPORT_REQUEST_PRIORITY, emptyMovePriority: Int = MOVE_PRIORITY, loadingPriority: Int = DELAY_PRIORITY, transportPriority: Int = MOVE_PRIORITY, unLoadingPriority: Int = DELAY_PRIORITY, resourceSelectionRule: MovableResourceSelectionRuleIfc = fleet.defaultMovableResourceSelectionRule, resourceAllocationRule: MovableResourceAllocationRuleIfc = fleet.defaultMovableResourceAllocationRule, sendToHomeBaseOption: Boolean = false)

Causes transport of the entity via a movable resource within the fleet from the entity's current location to the specified location at the supplied velocities. If not specified, the default velocity of the movable resource is used for the movement.

If the queue is priority based (i.e. uses a ranked queue discipline) the user should set the entity's priority attribute
for use in ranking the queue prior to the calling for transport.

Parameters

fleet

, the pool of movable resources

toLoc

the location to which the entity is supposed to move

emptyVelocity

the velocity associated with the movement to the entity's location

transportVelocity

the velocity associated with the movement to the desired location

requestPriority

, a priority can be used to determine the priority of the underlying (seize) call associated with the transport request. This is not the priority associated with waiting in a queue.

emptyMovePriority

, since the move is scheduled, a priority can be used to determine the order of events for moves that might be scheduled to complete at the same time.

transportPriority

, since the move is scheduled, a priority can be used to determine the order of events for moves that might be scheduled to complete at the same time.

sendToHomeBaseOption

If true, and there are no pending requests, and the selected movable resource has a home base, it will be sent to the home base after the transport. The default is false.


open suspend fun transportWith(fleet: MovableResourcePoolWithQ, toLoc: LocationIfc, emptyVelocity: Double = fleet.velocity.value, transportVelocity: Double = fleet.velocity.value, loadingDelay: GetValueIfc = ConstantRV.ZERO, unLoadingDelay: GetValueIfc = ConstantRV.ZERO, requestPriority: Int = TRANSPORT_REQUEST_PRIORITY, emptyMovePriority: Int = MOVE_PRIORITY, loadingPriority: Int = DELAY_PRIORITY, transportPriority: Int = MOVE_PRIORITY, unLoadingPriority: Int = DELAY_PRIORITY, resourceSelectionRule: MovableResourceSelectionRuleIfc = fleet.defaultMovableResourceSelectionRule, resourceAllocationRule: MovableResourceAllocationRuleIfc = fleet.defaultMovableResourceAllocationRule, sendToHomeBaseOption: Boolean = false)

Causes transport of the entity via a movable resource within the fleet from the entity's current location to the specified location at the supplied velocities. If not specified, the default velocity of the movable resource is used for the movement.

If the queue is priority based (i.e. uses a ranked queue discipline) the user should set the entity's priority attribute
for use in ranking the queue prior to the calling for transport.

Parameters

fleet

, the pool of movable resources

toLoc

the location to which the entity is supposed to move

emptyVelocity

the velocity associated with the movement to the entity's location

transportVelocity

the velocity associated with the movement to the desired location

requestPriority

, a priority can be used to determine the priority of the underlying (seize) call associated with the transport request. This is not the priority associated with waiting in a queue.

emptyMovePriority

, since the move is scheduled, a priority can be used to determine the order of events for moves that might be scheduled to complete at the same time.

transportPriority

, since the move is scheduled, a priority can be used to determine the order of events for moves that might be scheduled to complete at the same time.

sendToHomeBaseOption

If true, and there are no pending requests, and the selected movable resource has a home base, it will be sent to the home base after the transport