samples/main-random-walk.cc
changeset 2502 50d0da37f02f
parent 2402 0950067d70a2
child 2540 4e9ba43f7b9e
equal deleted inserted replaced
2501:3eaeac1dd5ed 2502:50d0da37f02f
    10 #include "ns3/simulator.h"
    10 #include "ns3/simulator.h"
    11 #include "ns3/nstime.h"
    11 #include "ns3/nstime.h"
    12 #include "ns3/node.h"
    12 #include "ns3/node.h"
    13 #include "ns3/node-list.h"
    13 #include "ns3/node-list.h"
    14 #include "ns3/mobility-helper.h"
    14 #include "ns3/mobility-helper.h"
       
    15 #include "ns3/string.h"
    15 
    16 
    16 using namespace ns3;
    17 using namespace ns3;
    17 
    18 
    18 static void 
    19 static void 
    19 CourseChange (ns3::TraceContext const&, Ptr<const MobilityModel> mobility)
    20 CourseChange (ns3::TraceContext const&, Ptr<const MobilityModel> mobility)
    42     }
    43     }
    43 
    44 
    44   MobilityHelper mobility;
    45   MobilityHelper mobility;
    45   mobility.EnableNotifier ();
    46   mobility.EnableNotifier ();
    46   mobility.SetPositionAllocator ("RandomDiscPositionAllocator",
    47   mobility.SetPositionAllocator ("RandomDiscPositionAllocator",
    47                                  "X", "100.0",
    48                                  "X", String ("100.0"),
    48                                  "Y", "100.0",
    49                                  "Y", String ("100.0"),
    49                                  "Rho", "Uniform:0:30");
    50                                  "Rho", String ("Uniform:0:30"));
    50   mobility.SetMobilityModel ("RandomWalk2dMobilityModel",
    51   mobility.SetMobilityModel ("RandomWalk2dMobilityModel",
    51                              "Mode", "Time",
    52                              "Mode", String ("Time"),
    52                              "Time", "2s",
    53                              "Time", String ("2s"),
    53                              "Speed", "Constant:1.0",
    54                              "Speed", String ("Constant:1.0"),
    54                              "Bounds", "0:200:0:100");
    55                              "Bounds", String ("0:200:0:100"));
    55   mobility.Layout (NodeList::Begin (), NodeList::End ());
    56   mobility.Layout (NodeList::Begin (), NodeList::End ());
    56   NodeList::Connect ("/nodes/*/$MobilityModelNotifier/course-change", 
    57   NodeList::Connect ("/nodes/*/$MobilityModelNotifier/course-change", 
    57                      MakeCallback (&CourseChange));
    58                      MakeCallback (&CourseChange));
    58 
    59 
    59   Simulator::StopAt (Seconds (100.0));
    60   Simulator::StopAt (Seconds (100.0));