21 #include "ns3/simulator.h" 
   22 #include "ns3/boolean.h" 
   23 #include "ns3/double.h" 
   25 #include "ns3/config.h" 
   26 #include "ns3/steady-state-random-waypoint-mobility-model.h" 
   27 #include "ns3/rng-seed-manager.h" 
   35     : 
TestCase (
"Check steady-state rwp mobility model velocity and position distributions") {}
 
   42   virtual void DoRun (
void);
 
   43   virtual void DoTeardown (
void);
 
   44   void DistribCompare ();
 
   50   mobilityStack.clear();
 
   59   double totalTime = 1000;
 
   62   mobilityFactory.
SetTypeId (
"ns3::SteadyStateRandomWaypointMobilityModel");
 
   74   for (uint32_t i = 0; i < count; i++)
 
   80       mobilityStack.push_back (model);
 
   98   std::vector<Ptr<MobilityModel> >::iterator i;
 
  100   for (i = mobilityStack.begin (); i != mobilityStack.end (); ++i)
 
  108   double mean_x = sum_x / count;
 
  109   double mean_y = sum_y / count;
 
  110   double mean_v = sum_v / count;
 
  120   for (i = mobilityStack.begin (); i != mobilityStack.end (); ++i)
 
  128       tmp = velocity - mean_v;
 
  131   double dev_x = std::sqrt (sum_x / (count - 1));
 
  132   double dev_y = std::sqrt (sum_y / (count - 1));
 
  133   double dev_v = std::sqrt (sum_v / (count - 1));
 
SteadyStateRandomWaypointTest()
 
Ptr< T > GetObject(void) const 
Get a pointer to the requested aggregated Object. 
 
static void Run(void)
Run the simulation. 
 
void SetTypeId(TypeId tid)
Set the TypeId of the Objects to be created by this factory. 
 
Vector GetPosition(void) const 
 
Vector GetVelocity(void) const 
 
Keep track of the current position and velocity of an object. 
 
static EventId Schedule(Time const &delay, MEM mem_ptr, OBJ obj)
Schedule an event to expire after delay. 
 
Ptr< Object > Create(void) const 
Create an Object instance of the configured TypeId. 
 
#define NS_TEST_EXPECT_MSG_EQ_TOL(actual, limit, tol, msg)
Test that actual and expected (limit) values are equal to plus or minus some tolerance and report if ...
 
static void Destroy(void)
Execute the events scheduled with ScheduleDestroy(). 
 
Every class exported by the ns3 library is enclosed in the ns3 namespace. 
 
void Set(std::string name, const AttributeValue &value)
Set an attribute to be set during construction. 
 
virtual ~SteadyStateRandomWaypointTest()
 
virtual void DoRun(void)
Implementation to actually run this TestCase. 
 
static void SetSeed(uint32_t seed)
Set the seed. 
 
Instantiate subclasses of ns3::Object. 
 
std::vector< Ptr< MobilityModel > > mobilityStack
 
static void Stop(void)
Tell the Simulator the calling event should be the last one executed. 
 
Time Seconds(double value)
Construct a Time in the indicated unit. 
 
This class can be used to hold variables of floating point type such as 'double' or 'float'...
 
void Initialize(void)
Invoke DoInitialize on all Objects aggregated to this one. 
 
SteadyStateRandomWaypointTestSuite()
 
SteadyStateRandomWaypointTestSuite g_steadyStateRandomWaypointTestSuite
 
virtual void DoTeardown(void)
Implementation to do any local setup required for this TestCase.