X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/242fde5e8077f8193db4df5f262a9672085c8d8a..02106e5655ec565a71eeeb25034a587808f9ae1f:/src/surf/ns3/ns3_simulator.h diff --git a/src/surf/ns3/ns3_simulator.h b/src/surf/ns3/ns3_simulator.h index a0fa181112..0a030f98b4 100644 --- a/src/surf/ns3/ns3_simulator.h +++ b/src/surf/ns3/ns3_simulator.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2007-2014. The SimGrid Team. +/* Copyright (c) 2007-2015. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -9,6 +9,9 @@ #ifdef __cplusplus +#include + +#include "ns3_interface.h" #include "ns3/core-module.h" #include "my-point-to-point-helper.h" @@ -22,16 +25,17 @@ #include "ns3/inet-socket-address.h" #include "ns3/tcp-socket-factory.h" -using namespace ns3; -using namespace std; - -struct MySocket{ - uint32_t bufferedBytes; - uint32_t sentBytes; - uint32_t remaining; - 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; @@ -41,19 +45,14 @@ private: public: NS3Sim(); - ~NS3Sim(); - void create_flow_NS3(Ptr src, - Ptr dst, - uint16_t port_number, + void create_flow_NS3(ns3::Ptr src, + ns3::Ptr dst, + std::uint16_t port_number, double start, const char *addr, - uint32_t TotalBytes, - void * action); + std::uint32_t TotalBytes, + simgrid::surf::NetworkNS3Action * action); void simulator_start(double min); - void* get_action_from_socket(void *socket); - double get_remains_from_socket(void *socket); - double get_sent_from_socket(void *socket); - char get_finished(void *socket); }; #endif /* __cplusplus */