routeoptimization

package
v0.1.924 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 31, 2026 License: Apache-2.0 Imports: 20 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

Types

type Client

func NewClient

func NewClient(d Dependencies, opts ClientOptions) (Client, error)

func NewNoopClient added in v0.1.859

func NewNoopClient() Client

type ClientOption

type ClientOption = contract.Opt[ClientOptions]

func WithLoaded added in v0.1.781

func WithLoaded(x Loaded) ClientOption

type ClientOptions

type ClientOptions struct {
	Loaded
}

func ApplyClientOptions

func ApplyClientOptions(opts *ClientOptions, modifiers ...ClientOption) ClientOptions

type DefaultTool added in v0.1.781

type DefaultTool struct {
	T *contract.Tool[Client]
}

func NewTool added in v0.1.781

func NewTool(c Client, opts contract.ToolOptions[Client]) *DefaultTool

func (*DefaultTool) Close added in v0.1.781

func (d *DefaultTool) Close(ctx context.Context) error

Close closes the underlying client.

func (*DefaultTool) OptimizeTours added in v0.1.781

func (d *DefaultTool) OptimizeTours(ctx context.Context, opts OptimizeToursOptions) (*itinerary.Itinerary, error)

OptimizeTours computes an optimized multi-stop itinerary for the given inputs.

type Dependencies

type Dependencies struct {
	C contract.GoogleRouteOptimization
	G contract.Geocoder
}

type Loaded

type Loaded struct {
	CredentialsJSON []byte
	ProjectID       string
}

type OptimizeToursOption added in v0.1.781

type OptimizeToursOption = contract.Opt[OptimizeToursOptions]

func WithOptimizeToursConsiderTraffic added in v0.1.781

func WithOptimizeToursConsiderTraffic(x bool) OptimizeToursOption

func WithOptimizeToursDestinations added in v0.1.781

func WithOptimizeToursDestinations(x []destination.Destination) OptimizeToursOption

func WithOptimizeToursFrom added in v0.1.781

func WithOptimizeToursFrom(x date.Date) OptimizeToursOption

func WithOptimizeToursPopulatePolylines added in v0.1.781

func WithOptimizeToursPopulatePolylines(x bool) OptimizeToursOption

func WithOptimizeToursRoundToNearest added in v0.1.781

func WithOptimizeToursRoundToNearest(x time.Duration) OptimizeToursOption

func WithOptimizeToursRouteID added in v0.1.781

func WithOptimizeToursRouteID(x contract.ID) OptimizeToursOption

func WithOptimizeToursStartEarly added in v0.1.781

func WithOptimizeToursStartEarly(x bool) OptimizeToursOption

func WithOptimizeToursStartPlaceID added in v0.1.781

func WithOptimizeToursStartPlaceID(x string) OptimizeToursOption

func WithOptimizeToursTo added in v0.1.781

func WithOptimizeToursTo(x date.Date) OptimizeToursOption

func WithOptimizeToursUseGeodesicDistances added in v0.1.781

func WithOptimizeToursUseGeodesicDistances(x bool) OptimizeToursOption

func WithOptimizeToursVehicleStartTimeWindowInMinutes added in v0.1.781

func WithOptimizeToursVehicleStartTimeWindowInMinutes(x time.Duration) OptimizeToursOption

func WithOptimizeToursVehicles added in v0.1.781

func WithOptimizeToursVehicles(x []vehicle.Vehicle) OptimizeToursOption

type OptimizeToursOptions added in v0.1.781

type OptimizeToursOptions struct {
	RouteID                          contract.ID
	StartPlaceID                     string
	From                             date.Date
	To                               date.Date
	VehiclesStartTimeWindowInMinutes time.Duration
	RoundToNearest                   time.Duration
	Vehicles                         []vehicle.Vehicle
	Destinations                     []destination.Destination
	ConsiderTraffic                  bool
	StartEarly                       bool
	PopulatePolylines                bool
	UseGeodesicDistances             bool
}

func ApplyOptimizeToursOptions added in v0.1.781

func ApplyOptimizeToursOptions(opts *OptimizeToursOptions, modifiers ...OptimizeToursOption) OptimizeToursOptions

func (*OptimizeToursOptions) Validate added in v0.1.781

func (o *OptimizeToursOptions) Validate() error

type RouteOptimizationClientOptions

type RouteOptimizationClientOptions struct {
	Loaded
}

type RouteOptimizationOperator added in v0.1.781

type RouteOptimizationOperator interface {
	OptimizeTours(ctx context.Context, opts OptimizeToursOptions) (*itinerary.Itinerary, error)
}

type Tool added in v0.1.781

type Tool interface {
	Client
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL