- if(!dict_socket) dict_socket = xbt_dict_new_homogeneous(free);
-
- PacketSinkHelper sink ("ns3::TcpSocketFactory",
- InetSocketAddress (Ipv4Address::GetAny(),
- port_number));
- sink.Install (dst);
-
- Ptr<Socket> sock = Socket::CreateSocket (src,
- TcpSocketFactory::GetTypeId());
-
- MySocket *mysocket = new MySocket();
- mysocket->totalBytes = totalBytes;
- mysocket->remaining = totalBytes;
- mysocket->bufferedBytes = 0;
- mysocket->sentBytes = 0;
- mysocket->finished = 0;
- mysocket->action = action;
-
- transformSocketPtr(sock);
- xbt_dict_set(dict_socket,socket_key, mysocket,NULL);
-
- sock->Bind(InetSocketAddress(port_number));
- XBT_DEBUG("Create flow starting to %fs + %fs = %fs",start-ns3_time(), ns3_time(), start);
-
- Simulator::Schedule (Seconds(start-ns3_time()),&StartFlow, sock, addr, port_number);
-// Simulator::Schedule (Seconds(0.0),&StartFlow, sock, addr, port_number);
-
-}
-
-void* NS3Sim::get_action_from_socket(void *socket){
- return ((MySocket *)socket)->action;
-}
-
-char NS3Sim::get_finished(void *socket){
- return ((MySocket *)socket)->finished;
-}
-
-double NS3Sim::get_remains_from_socket(void *socket){
- return ((MySocket *)socket)->remaining;
-}
-
-double NS3Sim::get_sent_from_socket(void *socket){
- return ((MySocket *)socket)->sentBytes;