Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
ns3: further cleanups
[simgrid.git] / src / surf / ns3 / ns3_simulator.h
index 73e2305..0a030f9 100644 (file)
@@ -11,6 +11,7 @@
 
 #include <cstdint>
 
+#include "ns3_interface.h"
 #include "ns3/core-module.h"
 #include "my-point-to-point-helper.h"
 
 #include "ns3/inet-socket-address.h"
 #include "ns3/tcp-socket-factory.h"
 
-struct MySocket{
-  std::uint32_t bufferedBytes;
-  std::uint32_t sentBytes;
-  std::uint32_t remaining;
-  std::uint32_t totalBytes;
-  char finished;
-  void* action;
+class SgFlow {
+public:
+  SgFlow(uint32_t totalBytes, simgrid::surf::NetworkNS3Action * action);
+
+//private:
+  std::uint32_t bufferedBytes_ = 0;
+  std::uint32_t sentBytes_ = 0;
+  std::uint32_t remaining_;
+  std::uint32_t totalBytes_;
+  bool finished_ = false;
+  simgrid::surf::NetworkNS3Action* action_;
 };
 
 //Simulator s;
@@ -40,14 +45,13 @@ private:
 
 public:
   NS3Sim();
-  ~NS3Sim();
   void create_flow_NS3(ns3::Ptr<ns3::Node> src,
             ns3::Ptr<ns3::Node> dst,
             std::uint16_t port_number,
             double start,
             const char *addr,
             std::uint32_t TotalBytes,
-            void * action);
+            simgrid::surf::NetworkNS3Action * action);
   void simulator_start(double min);
 };