Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CarStopCost ¶
type Constructor ¶
type Constructor interface { Info LandAllDrones(landingStop route.IMainStop) LandDrone(droneNumber DroneNumber, destination route.IMainStop) MoveCar(destination gps.Point) MoveDrone(droneNumber DroneNumber, destination gps.Point) StartDroneFlight(droneNumber DroneNumber, startingPoint route.IMainStop) }
type DroneNumber ¶
type DroneNumber int
TODO: Hide its implementation from other packages tests Avoid 'var mockedDrone1 = itinerary.DroneNumber(1)'
type DroneStopCost ¶
type Finder ¶
type Finder interface { FindWorstDroneStop() DroneStopCost FindWorstSwappableCarStopsOrdered() []CarStopCost }
type Info ¶
type Info interface { ActualCarPoint() gps.Point ActualCarStop() route.IMainStop CarEfficiency() float64 CarSpeed() float64 CarSupport(nextPoints ...gps.Point) bool DroneCanReach(droneNumber DroneNumber, nextPoints ...gps.Point) bool DroneEfficiency() float64 DroneIsFlying(droneNumber DroneNumber) bool DroneNumbers() []DroneNumber DroneSpeed() float64 DroneSupport(droneNumber DroneNumber, deliveryPoint gps.Point, landingPoint gps.Point) bool RouteIterator() slc.Iterator[route.IMainStop] SubItineraryList() []SubItinerary }
type Itinerary ¶
type Itinerary interface { Info() Info Constructor() Constructor Finder() Finder Modifier() Modifier }
Click to show internal directories.
Click to hide internal directories.