Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
use enum class for trace connect kind
[simgrid.git] / src / surf / network_ns3.cpp
index 7c30095..c6a2fda 100644 (file)
@@ -8,6 +8,7 @@
 
 #include "xbt/config.hpp"
 #include "xbt/string.hpp"
+#include "xbt/utility.hpp"
 
 #include "ns3/core-module.h"
 #include "ns3/node.h"
@@ -312,7 +313,7 @@ int NetworkNS3Action::unref()
   refcount_--;
   if (not refcount_) {
     if (action_hook.is_linked())
-      stateSet_->erase(stateSet_->iterator_to(*this));
+      simgrid::xbt::intrusive_erase(*stateSet_, *this);
     XBT_DEBUG ("Removing action %p", this);
     delete this;
     return 1;
@@ -392,7 +393,7 @@ void ns3_initialize(const char* TcpProtocol){
     return;
   }
 
-  xbt_die("The ns3/TcpModel must be : NewReno or Reno or Tahoe");
+  xbt_die("The ns3/TcpModel must be: NewReno or Reno or Tahoe");
 }
 
 void ns3_add_cluster(const char* id, double bw, double lat) {
@@ -409,7 +410,7 @@ void ns3_add_cluster(const char* id, double bw, double lat) {
 
   xbt_assert(Nodes.GetN() <= 65000, "Cluster with NS3 is limited to 65000 nodes");
   ns3::CsmaHelper csma;
-  csma.SetDeviceAttribute("DataRate", ns3::DataRateValue(ns3::DataRate(bw*8)));// NS3 takes bps, but we provide Bps
+  csma.SetChannelAttribute("DataRate", ns3::DataRateValue(ns3::DataRate(bw * 8))); // NS3 takes bps, but we provide Bps
   csma.SetChannelAttribute("Delay", ns3::TimeValue(ns3::Seconds(lat)));
   ns3::NetDeviceContainer devices = csma.Install(Nodes);
   XBT_DEBUG("Create CSMA");
@@ -449,14 +450,10 @@ void ns3_add_link(NetPointNs3* src, NetPointNs3* dst, double bw, double lat) {
   ns3::Ptr<ns3::Node> b = nodes.Get(dstNum);
 
   XBT_DEBUG("\tAdd PTP from %d to %d bw:'%f Bps' lat:'%fs'", srcNum, dstNum, bw, lat);
-  pointToPoint.SetDeviceAttribute("DataRate", ns3::DataRateValue(ns3::DataRate(bw*8)));// NS3 takes bps, but we provide Bps
+  pointToPoint.SetChannelAttribute("DataRate",
+                                   ns3::DataRateValue(ns3::DataRate(bw * 8))); // NS3 takes bps, but we provide Bps
   pointToPoint.SetChannelAttribute("Delay", ns3::TimeValue(ns3::Seconds(lat)));
 
-  std::string filename = simgrid::xbt::string_printf("link-%d-%d.tr", srcNum, dstNum);
-  ns3::AsciiTraceHelper ascii;
-  pointToPoint.EnableAsciiAll(ascii.CreateFileStream(filename));
-  pointToPoint.EnablePcapAll ("tcp-bulk-send", false);
-
   ns3::NetDeviceContainer netA;
   netA.Add(pointToPoint.Install (a, b));