X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ab3cbced11b7b421cd6bbf9721a1dc6685072ed4..19d3bf6036b2b7a1495b5d5e46fb78df1215a9b3:/src/bindings/python/simgrid_python.cpp diff --git a/src/bindings/python/simgrid_python.cpp b/src/bindings/python/simgrid_python.cpp index 2f2ef70bec..7cac37dac4 100644 --- a/src/bindings/python/simgrid_python.cpp +++ b/src/bindings/python/simgrid_python.cpp @@ -236,18 +236,33 @@ PYBIND11_MODULE(simgrid, m) .def_static("create_empty_zone", &simgrid::s4u::create_empty_zone, "Creates a zone of type Empty") .def_static("create_wifi_zone", &simgrid::s4u::create_wifi_zone, "Creates a zone of type Wi-Fi") .def("add_route", - py::overload_cast&, bool>(&simgrid::s4u::NetZone::add_route), - "Add a route between 2 netpoints") + [](simgrid::s4u::NetZone* self, simgrid::kernel::routing::NetPoint* src, + simgrid::kernel::routing::NetPoint* dst, simgrid::kernel::routing::NetPoint* gw_src, + simgrid::kernel::routing::NetPoint* gw_dst, const std::vector& links, + bool symmetrical) { + PyErr_WarnEx(PyExc_DeprecationWarning, // XBT_ATTRIB_DEPRECATED_v335. Once removed, uncomment the + // deprecation of the AddRoute function in C++ + "Please call add_route either from Host to Host or NetZone to NetZone. This call will be " + "removed after SimGrid v3.35.", + 1); + self->add_route(src, dst, gw_src, gw_dst, links, symmetrical); + }) .def("add_route", py::overload_cast&, bool>(&simgrid::s4u::NetZone::add_route), - "Add a route between 2 netpoints") + "Add a route between 2 hosts") .def("add_route", py::overload_cast&>(&simgrid::s4u::NetZone::add_route), - "Add a route between 2 netpoints") + "Add a route between 2 hosts") + .def("add_route", + py::overload_cast&, bool>(&simgrid::s4u::NetZone::add_route), + "Add a route between 2 netzones. The gateway of each zone gets used.") + .def("add_route", + py::overload_cast&>(&simgrid::s4u::NetZone::add_route), + "Add a route between 2 netzones. The gateway of each zone gets used.") .def("create_host", py::overload_cast(&simgrid::s4u::NetZone::create_host), "Creates a host") .def("create_host", @@ -279,6 +294,10 @@ PYBIND11_MODULE(simgrid, m) .def("create_router", &simgrid::s4u::NetZone::create_router, "Create a router") .def("set_parent", &simgrid::s4u::NetZone::set_parent, "Set the parent of this zone") .def("set_property", &simgrid::s4u::NetZone::set_property, "Add a property to this zone") + .def("set_gateway", py::overload_cast(&simgrid::s4u::NetZone::set_gateway), + "Specify the gateway of this zone, to be used for inter-zone routes") + .def("set_gateway", py::overload_cast(&simgrid::s4u::NetZone::set_gateway), + "Specify the gateway of this zone, to be used for inter-zone routes") .def_property_readonly("netpoint", &simgrid::s4u::NetZone::get_netpoint, "Retrieve the netpoint associated to this zone") .def("seal", &simgrid::s4u::NetZone::seal, "Seal this NetZone") @@ -750,7 +769,8 @@ PYBIND11_MODULE(simgrid, m) py::class_(m, "Mutex", "A classical mutex, but blocking in the simulation world." "See the C++ documentation for details.") - .def(py::init<>(&Mutex::create), py::call_guard(), "Mutex constructor.") + .def(py::init<>(&Mutex::create), py::call_guard(), + "Mutex constructor (pass True as a parameter to get a recursive Mutex).", py::arg("recursive") = false) .def("lock", &Mutex::lock, py::call_guard(), "Block until the mutex is acquired.") .def("try_lock", &Mutex::try_lock, py::call_guard(), "Try to acquire the mutex. Return true if the mutex was acquired, false otherwise.")