A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
constant-velocity-mobility-model.h
1 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2 /*
3  * Copyright (c) 2006, 2007 INRIA
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 as
7  * published by the Free Software Foundation;
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17  *
18  * Author: Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
19  */
20 #ifndef CONSTANT_VELOCITY_MOBILITY_MODEL_H
21 #define CONSTANT_VELOCITY_MOBILITY_MODEL_H
22 
23 #include <stdint.h>
24 #include "ns3/nstime.h"
25 #include "mobility-model.h"
26 #include "constant-velocity-helper.h"
27 
28 namespace ns3 {
29 
36 {
37 public:
38  static TypeId GetTypeId (void);
45 
52  void SetVelocity (const Vector &speed);
53 private:
54  virtual Vector DoGetPosition (void) const;
55  virtual void DoSetPosition (const Vector &position);
56  virtual Vector DoGetVelocity (void) const;
57  void Update (void) const;
58  ConstantVelocityHelper m_helper;
59 };
60 
61 } // namespace ns3
62 
63 #endif /* CONSTANT_VELOCITY_POSITION */
virtual void DoSetPosition(const Vector &position)
Utility class used to move node with constant velocity.
a 3d vector
Definition: vector.h:31
Keep track of the current position and velocity of an object.
Mobility model for which the current speed does not change once it has been set and until it is set a...
a unique identifier for an interface.
Definition: type-id.h:44