C++ Reference: class VehicleTypeCurator

This documentation is automatically generated.

Helper class that manages vehicles. This class is based on the RoutingModel::VehicleTypeContainer that sorts and stores vehicles based on their "type".

Return type: std::pair<int, int>

Arguments: int type, std::function<bool(int)> vehicle_is_compatible, std::function<bool(int)> stop_and_return_vehicle

Searches for the best compatible vehicle of the given type, i.e. the first vehicle v of type 'type' for which vehicle_is_compatible(v) returns true. If a compatible *vehicle* is found, its index is removed from vehicles_per_vehicle_class_ and the function returns {vehicle, -1}. If for some *vehicle* 'stop_and_return_vehicle' returns true before a compatible vehicle is found, the function simply returns {-1, vehicle}. Returns {-1, -1} if no compatible vehicle is found and the stopping condition is never met.


Return type: int

Arguments: int type


Return type: int


Return type: void

Arguments: int vehicle, int vehicle_class, int64_t fixed_cost


Return type: void

Arguments: const std::function<bool(int)>& store_vehicle

Resets the vehicles stored, storing only vehicles from the vehicle_type_container_ for which store_vehicle() returns true.


Return type: int

Arguments: int vehicle


Return type: void

Arguments: const std::function<bool(int)>& remove_vehicle

Goes through all the currently stored vehicles and removes vehicles for which remove_vehicle() returns true.


Return type: explicit

Arguments: const RoutingModel::VehicleTypeContainer& vehicle_type_container