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-- |
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 |