From 4ecd9982e5f451a5a7311929e7591cc19100085a Mon Sep 17 00:00:00 2001 From: Jonathan Feinberg Date: Sat, 23 Nov 2024 14:00:19 +0100 Subject: [PATCH] pushing for 1.15 support --- src/_vroom.cpp | 2 +- src/bind/enums.cpp | 1 - src/bind/input/input.cpp | 18 +++++++++++------- 3 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/_vroom.cpp b/src/_vroom.cpp index 1988d6a..553dfcd 100644 --- a/src/_vroom.cpp +++ b/src/_vroom.cpp @@ -42,7 +42,7 @@ #include "structures/typedefs.h" #include "structures/generic/edge.cpp" -#include "structures/generic/matrix.cpp" +#include "structures/generic/matrix.h" #include "structures/generic/undirected_graph.cpp" #include "structures/vroom/cost_wrapper.cpp" diff --git a/src/bind/enums.cpp b/src/bind/enums.cpp index 6121bd5..5915a67 100644 --- a/src/bind/enums.cpp +++ b/src/bind/enums.cpp @@ -29,7 +29,6 @@ void init_enums(py::module_ &m) { py::enum_(m, "HEURISTIC") .value("BASIC", vroom::HEURISTIC::BASIC) .value("DYNAMIC", vroom::HEURISTIC::DYNAMIC) - .value("INIT_ROUTES", vroom::HEURISTIC::INIT_ROUTES) .export_values(); py::enum_(m, "INIT") diff --git a/src/bind/input/input.cpp b/src/bind/input/input.cpp index b95b4a7..a63875e 100644 --- a/src/bind/input/input.cpp +++ b/src/bind/input/input.cpp @@ -13,17 +13,18 @@ void init_input(py::module_ &m) { py::class_(m, "Input") .def( - py::init([](const vroom::io::Servers &servers, vroom::ROUTER router) { - return new vroom::Input(servers, router); + py::init([](const vroom::io::Servers &servers, vroom::ROUTER router, bool apply_TSPFix) { + return new vroom::Input(servers, router, apply_TSPFix); }), "Class initializer.", py::arg("servers") = std::map(), - py::arg("router") = vroom::ROUTER::OSRM) + py::arg("router") = vroom::ROUTER::OSRM, + py::arg("apply_TSPFix") = false) .def_readonly("jobs", &vroom::Input::jobs) .def_readonly("vehicles", &vroom::Input::vehicles) - .def("_from_json", &vroom::io::parse, py::arg("json_string"), - py::arg("geometry")) - .def("_set_amount_size", &vroom::Input::set_amount_size) + /* .def("_from_json", &vroom::io::parse, py::arg("json_string"), */ + /* py::arg("geometry")) */ + /* .def("_set_amount_size", &vroom::Input::set_amount_size) */ .def("_set_geometry", &vroom::Input::set_geometry) .def("_add_job", &vroom::Input::add_job) .def("_add_shipment", &vroom::Input::add_shipment) @@ -51,9 +52,12 @@ void init_input(py::module_ &m) { .def("has_homogeneous_locations", &vroom::Input::has_homogeneous_locations) .def("has_homogeneous_profiles", &vroom::Input::has_homogeneous_profiles) + .def("has_homogeneous_costs", &vroom::Input::has_homogeneous_costs) // .def("vehicle_ok_with_job", &vroom::Input::vehicle_ok_with_job) .def("_solve", &vroom::Input::solve, "Solve problem.", - py::arg("exploration_level"), py::arg("nb_threads") = 1, + py::arg("nb_searches"), + py::arg("depth"), + py::arg("nb_threads") = 1, py::arg("timeout") = vroom::Timeout(), py::arg("h_param") = std::vector()) .def("check", &vroom::Input::check);