- xbt_assert(netcard->netzone() == this, "Cannot add a peer link to a netcard that is not in this AS");
-
- new simgrid::kernel::routing::vivaldi::Coords(netcard, coord);
-
- char* link_up = bprintf("link_%s_UP", netcard->cname());
- char* link_down = bprintf("link_%s_DOWN", netcard->cname());
- Link* linkUp = surf_network_model->createLink(link_up, bw_out, latency, SURF_LINK_SHARED);
- Link* linkDown = surf_network_model->createLink(link_down, bw_in, latency, SURF_LINK_SHARED);
- privateLinks_.insert({netcard->id(), {linkUp, linkDown}});
-
- free(link_up);
- free(link_down);
+ xbt_assert(netpoint->get_englobing_zone() == this,
+ "Cannot add a peer link to a netpoint that is not in this netzone");
+
+ std::string link_up = "link_" + netpoint->get_name() + "_UP";
+ std::string link_down = "link_" + netpoint->get_name() + "_DOWN";
+ auto* linkUp = create_link(link_up, std::vector<double>{bw_out})->seal();
+ auto* linkDown = create_link(link_down, std::vector<double>{bw_in})->seal();
+ add_route(netpoint, nullptr, nullptr, nullptr, {linkUp->get_impl()}, false);
+ add_route(nullptr, netpoint, nullptr, nullptr, {linkDown->get_impl()}, false);