jist.swans.field
Class Mobility.RandomWaypoint

java.lang.Object
  extended by jist.swans.field.Mobility.RandomWaypoint
All Implemented Interfaces:
Mobility
Enclosing interface:
Mobility

public static class Mobility.RandomWaypoint
extends java.lang.Object
implements Mobility

Random waypoint mobility model.

Since:
SWANS1.0
Author:
Rimon Barr <barr+jist@cs.cornell.edu>

Nested Class Summary
 
Nested classes/interfaces inherited from interface jist.swans.field.Mobility
Mobility.MobilityInfo, Mobility.RandomWalk, Mobility.RandomWaypoint, Mobility.RandomWaypointInfo, Mobility.Static, Mobility.Teleport
 
Field Summary
static float BORDER
          thickness of border (for float calculations).
private  Location.Location2D bounds
          Movement boundaries.
private  float maxspeed
          Maximum movement speed.
private  float minspeed
          Minimum movement speed.
private  long pauseTime
          Waypoint pause time.
private  float precision
          Step granularity.
 
Constructor Summary
Mobility.RandomWaypoint(Location.Location2D bounds, long pauseTime, float precision, float minspeed, float maxspeed)
          Initialize random waypoint mobility model.
Mobility.RandomWaypoint(Location.Location2D bounds, java.lang.String config)
          Initialize random waypoint mobility model.
 
Method Summary
 Mobility.MobilityInfo init(FieldInterface f, java.lang.Integer id, Location loc)
          Initiate mobility; initialize mobility data structures.
private  void init(Location.Location2D bounds, long pauseTime, float precision, float minspeed, float maxspeed)
          Initialize random waypoint mobility model.
 void next(FieldInterface f, java.lang.Integer id, Location loc, Mobility.MobilityInfo info)
          Schedule next movement.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

BORDER

public static final float BORDER
thickness of border (for float calculations).

See Also:
Constant Field Values

bounds

private Location.Location2D bounds
Movement boundaries.


pauseTime

private long pauseTime
Waypoint pause time.


precision

private float precision
Step granularity.


minspeed

private float minspeed
Minimum movement speed.


maxspeed

private float maxspeed
Maximum movement speed.

Constructor Detail

Mobility.RandomWaypoint

public Mobility.RandomWaypoint(Location.Location2D bounds,
                               long pauseTime,
                               float precision,
                               float minspeed,
                               float maxspeed)
Initialize random waypoint mobility model.

Parameters:
bounds - boundaries of movement
pauseTime - waypoint pause time
precision - step granularity
minspeed - minimum speed
maxspeed - maximum speed

Mobility.RandomWaypoint

public Mobility.RandomWaypoint(Location.Location2D bounds,
                               java.lang.String config)
Initialize random waypoint mobility model.

Parameters:
bounds - boundaries of movement
config - configuration string
Method Detail

init

private void init(Location.Location2D bounds,
                  long pauseTime,
                  float precision,
                  float minspeed,
                  float maxspeed)
Initialize random waypoint mobility model.

Parameters:
bounds - boundaries of movement
pauseTime - waypoint pause time (in ticks)
precision - step granularity
minspeed - minimum speed
maxspeed - maximum speed

init

public Mobility.MobilityInfo init(FieldInterface f,
                                  java.lang.Integer id,
                                  Location loc)
Initiate mobility; initialize mobility data structures.

Specified by:
init in interface Mobility
Parameters:
f - field entity
id - node identifier
loc - node location
Returns:
mobility information object

next

public void next(FieldInterface f,
                 java.lang.Integer id,
                 Location loc,
                 Mobility.MobilityInfo info)
Schedule next movement. This method will again be called after every movement on the field.

Specified by:
next in interface Mobility
Parameters:
f - field entity
id - radio identifier
loc - destination of move
info - mobility information object