X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/9223880adde1ff3d7b8941ca474eab9acfa862c5..7c6aa224fea8cfabc0c95787be042c1bc67e8283:/src/surf/ns3/ns3_simulator.h diff --git a/src/surf/ns3/ns3_simulator.h b/src/surf/ns3/ns3_simulator.h index dce821b559..0429c50521 100644 --- a/src/surf/ns3/ns3_simulator.h +++ b/src/surf/ns3/ns3_simulator.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2007, 2008, 2009, 2010. The SimGrid Team. +/* Copyright (c) 2007-2012. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -9,15 +9,62 @@ #ifdef __cplusplus +#include "ns3/core-module.h" +#include "my-point-to-point-helper.h" + +#ifdef _NS3_3_10 + /*NS3 3.10*/ + #include "ns3/helper-module.h" + #include "ns3/simulator-module.h" + #include "ns3/node-module.h" + #include "ns3/helper-module.h" + #include "ns3/global-routing-module.h" + #include "ns3/tcp-socket-factory.h" +#else + /*NS3 3.12*/ + #include "ns3/node.h" + #include "ns3/global-route-manager.h" + #include "ns3/csma-helper.h" + #include "ns3/internet-stack-helper.h" + #include "ns3/ipv4-address-helper.h" + #include "ns3/point-to-point-helper.h" + #include "ns3/packet-sink-helper.h" + #include "ns3/inet-socket-address.h" + #include "ns3/tcp-socket-factory.h" +#endif + +using namespace ns3; +using namespace std; + +struct MySocket{ + uint32_t bufferedBytes; + uint32_t sentBytes; + uint32_t remaining; + uint32_t totalBytes; + char finished; + void* action; +}; + //Simulator s; class NS3Sim { - NS3Sim(); - ~NS3Sim(); private: public: - + NS3Sim(); + ~NS3Sim(); + void create_flow_NS3(Ptr src, + Ptr dst, + uint16_t port_number, + double start, + const char *addr, + uint32_t TotalBytes, + void * 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 */