+ .. doxygenvariable:: simgrid::s4u::NetZone::on_creation
+ .. doxygenvariable:: simgrid::s4u::NetZone::on_seal
+
+Creating resources
+------------------
+
+Zones
+^^^^^
+.. tabs::
+
+ .. group-tab:: C++
+
+ .. doxygenfunction:: simgrid::s4u::create_full_zone(const std::string& name)
+ .. doxygenfunction:: simgrid::s4u::create_empty_zone(const std::string& name)
+ .. doxygenfunction:: simgrid::s4u::create_star_zone(const std::string& name)
+ .. doxygenfunction:: simgrid::s4u::create_dijkstra_zone(const std::string& name, bool cache)
+ .. doxygenfunction:: simgrid::s4u::create_floyd_zone(const std::string& name)
+ .. doxygenfunction:: simgrid::s4u::create_vivaldi_zone(const std::string& name)
+ .. doxygenfunction:: simgrid::s4u::create_wifi_zone(const std::string& name)
+ .. doxygenfunction:: simgrid::s4u::create_torus_zone
+ .. doxygenfunction:: simgrid::s4u::create_fatTree_zone(const std::string& name, const NetZone* parent, const FatTreeParams& parameters, const ClusterCallbacks& set_callbacks, double bandwidth, double latency, Link::SharingPolicy sharing_policy)
+ .. doxygenfunction:: simgrid::s4u::create_dragonfly_zone(const std::string& name, const NetZone* parent, const DragonflyParams& parameters, const ClusterCallbacks& set_callbacks, double bandwidth, double latency, Link::SharingPolicy sharing_policy)
+
+ .. group-tab:: Python
+
+ .. automethod:: simgrid.NetZone.create_full_zone
+ .. automethod:: simgrid.NetZone.create_empty_zone
+ .. automethod:: simgrid.NetZone.create_star_zone
+ .. automethod:: simgrid.NetZone.create_dijkstra_zone
+ .. automethod:: simgrid.NetZone.create_floyd_zone
+ .. automethod:: simgrid.NetZone.create_vivaldi_zone
+ .. automethod:: simgrid.NetZone.create_wifi_zone
+ .. automethod:: simgrid.NetZone.create_torus_zone
+ .. automethod:: simgrid.NetZone.create_fatTree_zone
+ .. automethod:: simgrid.NetZone.create_dragonfly_zone
+
+Hosts
+^^^^^
+
+.. tabs::
+
+ .. group-tab:: C++
+
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string& name, const std::vector<double>& speed_per_pstate)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string& name, double speed)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string& name, const std::vector<std::string>& speed_per_pstate)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_host(const std::string& name, const std::string& speed)
+
+ .. group-tab:: Python
+
+ .. automethod:: simgrid.NetZone.create_host
+
+Links
+^^^^^
+
+.. tabs::
+
+ .. group-tab:: C++
+
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string& name, const std::vector<double>& bandwidths)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string& name, double bandwidth)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string& name, const std::vector<std::string>& bandwidthds)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_link(const std::string& name, const std::string& bandwidth)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_split_duplex_link(const std::string& name, const std::string& bandwidth)
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_split_duplex_link(const std::string& name, double bandwidth)
+
+ .. group-tab:: Python
+
+ .. automethod:: simgrid.NetZone.create_link
+ .. automethod:: simgrid.NetZone.create_split_duplex_link
+
+Router
+^^^^^^
+
+.. tabs::
+
+ .. group-tab:: C++
+
+ .. doxygenfunction:: simgrid::s4u::NetZone::create_router(const std::string& name)
+
+ .. group-tab:: Python
+
+ .. automethod:: simgrid.NetZone.create_router