#include <boost/algorithm/string.hpp>
-#include <simgrid/s4u/host.hpp>
+#include "simgrid/s4u/engine.hpp"
+#include "simgrid/s4u/host.hpp"
#include "src/kernel/routing/NetCard.hpp"
#include "src/kernel/routing/VivaldiZone.hpp"
{
simgrid::kernel::routing::vivaldi::Coords* coords = nc->extension<simgrid::kernel::routing::vivaldi::Coords>();
xbt_assert(coords, "Please specify the Vivaldi coordinates of %s %s (%p)",
- (nc->isAS() ? "AS" : (nc->isHost() ? "Host" : "Router")), nc->cname(), nc);
+ (nc->isNetZone() ? "AS" : (nc->isHost() ? "Host" : "Router")), nc->cname(), nc);
return &coords->coords;
}
VivaldiZone::VivaldiZone(NetZone* father, const char* name) : ClusterZone(father, name)
void VivaldiZone::setPeerLink(NetCard* netcard, double bw_in, double bw_out, double latency, const char* coord)
{
- xbt_assert(netcard->containingAS() == this, "Cannot add a peer link to a netcard that is not in this AS");
+ 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);
{
XBT_DEBUG("vivaldi getLocalRoute from '%s'[%d] '%s'[%d]", src->cname(), src->id(), dst->cname(), dst->id());
- if (src->isAS()) {
+ if (src->isNetZone()) {
char* srcName = bprintf("router_%s", src->cname());
char* dstName = bprintf("router_%s", dst->cname());
- route->gw_src = (sg_netcard_t)xbt_lib_get_or_null(as_router_lib, srcName, ROUTING_ASR_LEVEL);
- route->gw_dst = (sg_netcard_t)xbt_lib_get_or_null(as_router_lib, dstName, ROUTING_ASR_LEVEL);
+ route->gw_src = simgrid::s4u::Engine::instance()->netcardByNameOrNull(srcName);
+ route->gw_dst = simgrid::s4u::Engine::instance()->netcardByNameOrNull(dstName);
xbt_free(srcName);
xbt_free(dstName);
}