xbt_assert(!Link::byName(name),
"Link '%s' declared several times in the platform file.", name);
- return new LinkL07(this, name, properties,
+ Link* link = new LinkL07(this, name, properties,
bw_initial, bw_trace,
lat_initial, lat_trace,
state_initial, state_trace,
policy);
+ surf_callback_emit(networkLinkCreatedCallbacks, link);
+ return link;
}
void HostL07Model::addTraces()
"Link '%s' declared several times in the platform",
name);
- return new NetworkCm02Link(this, name, properties, p_maxminSystem, sg_bandwidth_factor * bw_initial, history,
+ Link* link = new NetworkCm02Link(this, name, properties, p_maxminSystem, sg_bandwidth_factor * bw_initial, history,
state_initial, state_trace, bw_initial, bw_trace, lat_initial, lat_trace, policy);
+ surf_callback_emit(networkLinkCreatedCallbacks, link);
+ return link;
}
void NetworkCm02Model::updateActionsStateLazy(double now, double /*delta*/)
: Resource(model, name, props)
, p_latEvent(NULL)
{
- surf_callback_emit(networkLinkCreatedCallbacks, this);
links->insert({name, this});
XBT_DEBUG("Create link '%s'",name);
: Resource(model, name, props, constraint),
p_latEvent(NULL)
{
- surf_callback_emit(networkLinkCreatedCallbacks, this);
if (state_trace)
p_stateEvent = tmgr_history_add_trace(history, state_trace, 0.0, 0, this);
XBT_INFO("The NS3 network model doesn't support latency state traces");
if (state_trace)
XBT_INFO("The NS3 network model doesn't support link state traces");
- return new NetworkNS3Link(this, name, properties, bw_initial, lat_initial);
+ Link* link = new NetworkNS3Link(this, name, properties, bw_initial, lat_initial);
+ surf_callback_emit(networkLinkCreatedCallbacks, link);
+ return link;
}
xbt_dynar_t NetworkNS3Model::getRoute(RoutingEdge *src, RoutingEdge *dst)