static void routeCreation_cb(bool symmetrical, simgrid::kernel::routing::NetPoint* src,
simgrid::kernel::routing::NetPoint* dst, simgrid::kernel::routing::NetPoint* gw_src,
- simgrid::kernel::routing::NetPoint* gw_dst, std::vector<Link*>* link_list)
+ simgrid::kernel::routing::NetPoint* gw_dst,
+ std::vector<simgrid::surf::LinkImpl*>* link_list)
{
if (link_list->size() == 1) {
simgrid::surf::LinkNS3* link = static_cast<simgrid::surf::LinkNS3*>(link_list->at(0));
ns3_initialize(ns3_tcp_model.get().c_str());
- simgrid::kernel::routing::NetPoint::onCreation.connect([](simgrid::kernel::routing::NetPoint pt) {
+ simgrid::kernel::routing::NetPoint::onCreation.connect([](simgrid::kernel::routing::NetPoint* pt) {
pt->extension_set<NetPointNs3>(new NetPointNs3());
});
simgrid::surf::on_cluster.connect(&clusterCreation_cb);
- simgrid::surf::on_postparse.connect(&postparse_cb);
+ simgrid::s4u::onPlatformCreated.connect(&postparse_cb);
simgrid::s4u::NetZone::onRouteCreation.connect(&routeCreation_cb);
LogComponentEnable("UdpEchoClientApplication", ns3::LOG_LEVEL_INFO);
xbt_dict_free(&flowFromSock);
}
-Link* NetworkNS3Model::createLink(const char* name, double bandwidth, double latency,
- e_surf_link_sharing_policy_t policy)
+LinkImpl* NetworkNS3Model::createLink(const char* name, double bandwidth, double latency,
+ e_surf_link_sharing_policy_t policy)
{
return new LinkNS3(this, name, bandwidth, latency);
}
action->getState() == Action::State::running){
double data_delta_sent = sgFlow->sentBytes_ - action->lastSent_;
- std::vector<Link*> route = std::vector<Link*>();
+ std::vector<LinkImpl*> route = std::vector<LinkImpl*>();
action->src_->routeTo(action->dst_, &route, nullptr);
for (auto link : route)
************/
LinkNS3::LinkNS3(NetworkNS3Model* model, const char* name, double bandwidth, double latency)
- : Link(model, name, nullptr)
+ : LinkImpl(model, name, nullptr)
{
bandwidth_.peak = bandwidth;
latency_.peak = latency;
- Link::onCreation(this);
+ LinkImpl::onCreation(this);
}
LinkNS3::~LinkNS3() = default;
dst_ = dst;
ns3_create_flow(src, dst, surf_get_clock(), size, this);
- Link::onCommunicate(this, src, dst);
+ LinkImpl::onCommunicate(this, src, dst);
}
void NetworkNS3Action::suspend() {