src/node/random-waypoint-mobility-model.cc
author Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
Thu, 19 Jul 2007 10:28:48 +0200
changeset 1624 6e7d48a8c120
parent 1603 e54bfec07c72
permissions -rw-r--r--
add MobilityModel::GetSpeed method and implement it in all mobility models
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1600
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     1
#include "ns3/simulator.h"
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     2
#include "ns3/random-variable.h"
1601
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
     3
#include "ns3/random-variable-default-value.h"
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
     4
#include "ns3/component-manager.h"
1600
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     5
#include "random-waypoint-mobility-model.h"
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     6
#include "random-position.h"
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     7
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     8
namespace ns3 {
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     9
1601
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    10
static RandomVariableDefaultValue
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    11
g_speed ("RandomWaypointSpeed",
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    12
	 "A random variable used to pick the speed of a random waypoint model.",
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    13
	 "Uniform:0.3:0.7");
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    14
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    15
static RandomVariableDefaultValue
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    16
g_pause ("RandomWaypointPause",
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    17
	 "A random variable used to pick the pause of a random waypoint model.",
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    18
	 "Constant:2");
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    19
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    20
static ClassIdDefaultValue
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    21
g_position ("RandomWaypointPosition",
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    22
	    "A random position model used to pick the next waypoint position.",
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    23
	    RandomPosition::iid,
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    24
	    "RandomPositionRectangle");
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    25
1602
c100368541c3 add cid support to waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1601
diff changeset
    26
const ClassId RandomWaypointMobilityModel::cid = 
c100368541c3 add cid support to waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1601
diff changeset
    27
  MakeClassId<RandomWaypointMobilityModel> ("RandomWaypointMobilityModel", MobilityModel::iid);
c100368541c3 add cid support to waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1601
diff changeset
    28
1600
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    29
RandomWaypointMobilityModelParameters::RandomWaypointMobilityModelParameters ()
1601
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    30
  : m_speed (g_speed.GetCopy ()),
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    31
    m_pause (g_pause.GetCopy ())
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    32
{
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    33
  m_position = ComponentManager::Create<RandomPosition> (g_position.GetValue (), 
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    34
							 RandomPosition::iid);
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    35
}
1600
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    36
RandomWaypointMobilityModelParameters::RandomWaypointMobilityModelParameters (Ptr<RandomPosition> randomPosition,
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    37
									      const RandomVariable &speed,
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    38
									      const RandomVariable &pause)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    39
  : m_speed (speed.Copy ()),
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    40
    m_pause (pause.Copy ()),
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    41
    m_position (randomPosition)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    42
{}
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    43
void 
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    44
RandomWaypointMobilityModelParameters::SetWaypointPositionModel (Ptr<RandomPosition> randomPosition)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    45
{
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    46
  m_position = randomPosition;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    47
}
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    48
void 
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    49
RandomWaypointMobilityModelParameters::SetSpeed (const RandomVariable &speed)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    50
{
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    51
  delete m_speed;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    52
  m_speed = speed.Copy ();
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    53
}
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    54
void 
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    55
RandomWaypointMobilityModelParameters::SetPause (const RandomVariable &pause)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    56
{
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    57
  delete m_pause;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    58
  m_pause = pause.Copy ();
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    59
}
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    60
void 
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    61
RandomWaypointMobilityModelParameters::DoDispose (void)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    62
{
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    63
  m_position = 0;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    64
  delete m_pause;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    65
  delete m_speed;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    66
  m_pause = 0;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    67
  m_speed = 0;  
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    68
}
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    69
1601
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    70
Ptr<RandomWaypointMobilityModelParameters>
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    71
RandomWaypointMobilityModelParameters::GetCurrent (void)
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    72
{
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    73
  static Ptr<RandomWaypointMobilityModelParameters> parameters = 0;
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    74
  if (parameters == 0 ||
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    75
      g_position.IsDirty () ||
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    76
      g_pause.IsDirty () ||
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    77
      g_speed.IsDirty ())
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    78
    {
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    79
      parameters = Create<RandomWaypointMobilityModelParameters> ();
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    80
    }
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    81
  return parameters;
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    82
}
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    83
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    84
RandomWaypointMobilityModel::RandomWaypointMobilityModel ()
84805e29dd21 add default value support to random waypoint
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1600
diff changeset
    85
  : m_parameters (RandomWaypointMobilityModelParameters::GetCurrent ())
1603
e54bfec07c72 make sure we schedule the start event correctly
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1602
diff changeset
    86
{
e54bfec07c72 make sure we schedule the start event correctly
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1602
diff changeset
    87
  Simulator::ScheduleNow (&RandomWaypointMobilityModel::Start, this);
e54bfec07c72 make sure we schedule the start event correctly
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1602
diff changeset
    88
}
1600
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    89
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    90
RandomWaypointMobilityModel::RandomWaypointMobilityModel (Ptr<RandomWaypointMobilityModelParameters> parameters)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    91
  : m_parameters (parameters)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    92
{
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    93
  Simulator::ScheduleNow (&RandomWaypointMobilityModel::Start, this);
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    94
}
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    95
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    96
void
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    97
RandomWaypointMobilityModel::Start (void)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    98
{
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    99
  Position m_current = m_helper.GetCurrentPosition ();
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   100
  Position destination = m_parameters->m_position->Get ();
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   101
  double speed = m_parameters->m_speed->GetValue ();
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   102
  Time pause = Seconds (m_parameters->m_pause->GetValue ());
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   103
  double dx = (destination.x - m_current.x) * speed;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   104
  double dy = (destination.y - m_current.y) * speed;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   105
  double dz = (destination.z - m_current.z) * speed;
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   106
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   107
  m_helper.Reset (Speed (dx,dy,dz), pause);
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   108
  Time travelDelay = Seconds (CalculateDistance (destination, m_current) / speed);
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   109
  m_event = Simulator::Schedule (travelDelay + pause,
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   110
				 &RandomWaypointMobilityModel::Start, this);
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   111
}
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   112
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   113
Position 
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   114
RandomWaypointMobilityModel::DoGet (void) const
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   115
{
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   116
  return m_helper.GetCurrentPosition ();
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   117
}
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   118
void 
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   119
RandomWaypointMobilityModel::DoSet (const Position &position)
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   120
{
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   121
  m_helper.InitializePosition (position);
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   122
  Simulator::Remove (m_event);
1603
e54bfec07c72 make sure we schedule the start event correctly
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1602
diff changeset
   123
  Simulator::ScheduleNow (&RandomWaypointMobilityModel::Start, this);
1600
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   124
}
1624
6e7d48a8c120 add MobilityModel::GetSpeed method and implement it in all mobility models
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1603
diff changeset
   125
Speed 
6e7d48a8c120 add MobilityModel::GetSpeed method and implement it in all mobility models
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1603
diff changeset
   126
RandomWaypointMobilityModel::DoGetSpeed (void) const
6e7d48a8c120 add MobilityModel::GetSpeed method and implement it in all mobility models
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1603
diff changeset
   127
{
6e7d48a8c120 add MobilityModel::GetSpeed method and implement it in all mobility models
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1603
diff changeset
   128
  return m_helper.GetSpeed ();
6e7d48a8c120 add MobilityModel::GetSpeed method and implement it in all mobility models
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1603
diff changeset
   129
}
1600
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   130
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   131
1a1101c83922 add a 3d random waypoint model
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
   132
} // namespace ns3