X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/4ce7b56a7eb7a96ef986c6601b0e58c7cdaa3768..77163c152598f613abd0a938a967fcbd7a95fc8b:/src/surf/ns3/ns3_simulator.h diff --git a/src/surf/ns3/ns3_simulator.h b/src/surf/ns3/ns3_simulator.h index 89c10d2c01..c69c1a8d41 100644 --- a/src/surf/ns3/ns3_simulator.h +++ b/src/surf/ns3/ns3_simulator.h @@ -1,59 +1,46 @@ -/* Copyright (c) 2007-2015. The SimGrid Team. - * All rights reserved. */ +/* Copyright (c) 2007-2017. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -#ifndef _NS3_SIM_H -#define _NS3_SIM_H - -#ifdef __cplusplus +#ifndef NS3_SIM_H +#define NS3_SIM_H #include #include "ns3_interface.h" -#include -#include -#include #include +#include #include #include -#include #include -#include +#include #include class SgFlow { public: - SgFlow(uint32_t totalBytes, simgrid::surf::NetworkNS3Action * action); + SgFlow(uint32_t totalBytes, simgrid::surf::NetworkNS3Action* action); -//private: + // private: std::uint32_t bufferedBytes_ = 0; - std::uint32_t sentBytes_ = 0; + std::uint32_t sentBytes_ = 0; std::uint32_t remaining_; std::uint32_t totalBytes_; bool finished_ = false; simgrid::surf::NetworkNS3Action* action_; }; -//Simulator s; -class NS3Sim { - -private: +void StartFlow(ns3::Ptr sock, const char* to, uint16_t port_number); -public: - NS3Sim(); - void create_flow_NS3(ns3::Ptr src, - ns3::Ptr dst, - std::uint16_t port_number, - double start, - const char *addr, - std::uint32_t TotalBytes, - simgrid::surf::NetworkNS3Action * action); - void simulator_start(double min); -}; +static inline const char* transformSocketPtr(ns3::Ptr localSocket) +{ + static char key[24]; + std::stringstream sstream; + sstream << localSocket; + snprintf(key, 24, "%s", sstream.str().c_str()); -#endif /* __cplusplus */ + return key; +} #endif