Public Member Functions | Static Public Member Functions

ns3::MobilityHelper Class Reference

assign positions and mobility models to nodes. More...

#include <mobility-helper.h>

Collaboration diagram for ns3::MobilityHelper:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void SetPositionAllocator (Ptr< PositionAllocator > allocator)
void SetPositionAllocator (std::string type, std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue(), std::string n6="", const AttributeValue &v6=EmptyAttributeValue(), std::string n7="", const AttributeValue &v7=EmptyAttributeValue(), std::string n8="", const AttributeValue &v8=EmptyAttributeValue(), std::string n9="", const AttributeValue &v9=EmptyAttributeValue())
void SetMobilityModel (std::string type, std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue(), std::string n6="", const AttributeValue &v6=EmptyAttributeValue(), std::string n7="", const AttributeValue &v7=EmptyAttributeValue(), std::string n8="", const AttributeValue &v8=EmptyAttributeValue(), std::string n9="", const AttributeValue &v9=EmptyAttributeValue())
void PushReferenceMobilityModel (Ptr< Object > reference)
void PopReferenceMobilityModel (void)
std::string GetMobilityModelType (void) const
void Install (NodeContainer container)
void InstallAll (void)

Static Public Member Functions

static void EnableAscii (std::ostream &os, uint32_t nodeid)
static void EnableAscii (std::ostream &os, NodeContainer n)
static void EnableAsciiAll (std::ostream &os)

Detailed Description

assign positions and mobility models to nodes.

MobilityHelper::Install is the most important method here.


Member Function Documentation

static void ns3::MobilityHelper::EnableAscii ( std::ostream &  os,
NodeContainer  n 
) [static]
Parameters:
os output stream
n node container

Enable ascii output on the mobility model associated each of the nodes in the input container and dump that to the specified stdc++ output stream.

static void ns3::MobilityHelper::EnableAscii ( std::ostream &  os,
uint32_t  nodeid 
) [static]
Parameters:
os output stream
nodeid the id of the node to generate ascii output for.

Enable ascii output on the mobility model associated to the specified nodeid and dump that to the specified stdc++ output stream.

static void ns3::MobilityHelper::EnableAsciiAll ( std::ostream &  os  )  [static]
Parameters:
os output stream

Enable ascii output on the mobility model associated every node in the system and dump that to the specified stdc++ output stream.

std::string ns3::MobilityHelper::GetMobilityModelType ( void   )  const
Returns:
a string which contains the TypeId of the currently-selected mobility model.
void ns3::MobilityHelper::Install ( NodeContainer  container  ) 
Parameters:
container the set of nodes to layout.

For each input node, this method creates an instance of a ns3::MobilityModel subclass (the type of which was set with MobilityHelper::SetMobilityModel), aggregates it to the mode, and sets an initial position based on the current position allocator (set through MobilityHelper::SetPositionAllocator).

void ns3::MobilityHelper::InstallAll ( void   ) 

Perform the work of MobilityHelper::Install on _all_ nodes which exist in the simulation.

void ns3::MobilityHelper::PopReferenceMobilityModel ( void   ) 

Remove the top item from the top of the stack of "reference mobility models".

void ns3::MobilityHelper::PushReferenceMobilityModel ( Ptr< Object reference  ) 
Parameters:
reference item to push.

Push an item on the top of the stack of "reference mobility models". The input item should be a node instance to which a mobility model has already been aggregated (usually by a call to Install).

If this this stack is not empty when MobilityHelper::Install is called, the model from the top of the stack is used to create a ns3::HierarchicalMobilityModel to make the newly-created models define their positions relative to that of the parent mobility model.

This method is typically used to create hierarchical mobility patterns and positions by starting with the large-scale mobility features, and, then, defining the smaller-scale movements relative to a few reference points in the large-scale model.

void ns3::MobilityHelper::SetMobilityModel ( std::string  type,
std::string  n1 = "",
const AttributeValue v1 = EmptyAttributeValue(),
std::string  n2 = "",
const AttributeValue v2 = EmptyAttributeValue(),
std::string  n3 = "",
const AttributeValue v3 = EmptyAttributeValue(),
std::string  n4 = "",
const AttributeValue v4 = EmptyAttributeValue(),
std::string  n5 = "",
const AttributeValue v5 = EmptyAttributeValue(),
std::string  n6 = "",
const AttributeValue v6 = EmptyAttributeValue(),
std::string  n7 = "",
const AttributeValue v7 = EmptyAttributeValue(),
std::string  n8 = "",
const AttributeValue v8 = EmptyAttributeValue(),
std::string  n9 = "",
const AttributeValue v9 = EmptyAttributeValue() 
)
Parameters:
type the type of mobility model to use.
n1 the name of the attribute to set in the mobility model.
v1 the value of the attribute to set in the mobility model.
n2 the name of the attribute to set in the mobility model.
v2 the value of the attribute to set in the mobility model.
n3 the name of the attribute to set in the mobility model.
v3 the value of the attribute to set in the mobility model.
n4 the name of the attribute to set in the mobility model.
v4 the value of the attribute to set in the mobility model.
n5 the name of the attribute to set in the mobility model.
v5 the value of the attribute to set in the mobility model.
n6 the name of the attribute to set in the mobility model.
v6 the value of the attribute to set in the mobility model.
n7 the name of the attribute to set in the mobility model.
v7 the value of the attribute to set in the mobility model.
n8 the name of the attribute to set in the mobility model.
v8 the value of the attribute to set in the mobility model.
n9 the name of the attribute to set in the mobility model.
v9 the value of the attribute to set in the mobility model.

Calls to MobilityHelper::Install will create an instance of a matching mobility model for each node.

void ns3::MobilityHelper::SetPositionAllocator ( Ptr< PositionAllocator allocator  ) 
Parameters:
allocator allocate initial node positions

Set the position allocator which will be used to allocate the initial position of every node in MobilityModel::Install.

void ns3::MobilityHelper::SetPositionAllocator ( std::string  type,
std::string  n1 = "",
const AttributeValue v1 = EmptyAttributeValue(),
std::string  n2 = "",
const AttributeValue v2 = EmptyAttributeValue(),
std::string  n3 = "",
const AttributeValue v3 = EmptyAttributeValue(),
std::string  n4 = "",
const AttributeValue v4 = EmptyAttributeValue(),
std::string  n5 = "",
const AttributeValue v5 = EmptyAttributeValue(),
std::string  n6 = "",
const AttributeValue v6 = EmptyAttributeValue(),
std::string  n7 = "",
const AttributeValue v7 = EmptyAttributeValue(),
std::string  n8 = "",
const AttributeValue v8 = EmptyAttributeValue(),
std::string  n9 = "",
const AttributeValue v9 = EmptyAttributeValue() 
)
Parameters:
type the type of mobility model to use.
n1 the name of the attribute to set in the mobility model.
v1 the value of the attribute to set in the mobility model.
n2 the name of the attribute to set in the mobility model.
v2 the value of the attribute to set in the mobility model.
n3 the name of the attribute to set in the mobility model.
v3 the value of the attribute to set in the mobility model.
n4 the name of the attribute to set in the mobility model.
v4 the value of the attribute to set in the mobility model.
n5 the name of the attribute to set in the mobility model.
v5 the value of the attribute to set in the mobility model.
n6 the name of the attribute to set in the mobility model.
v6 the value of the attribute to set in the mobility model.
n7 the name of the attribute to set in the mobility model.
v7 the value of the attribute to set in the mobility model.
n8 the name of the attribute to set in the mobility model.
v8 the value of the attribute to set in the mobility model.
n9 the name of the attribute to set in the mobility model.
v9 the value of the attribute to set in the mobility model.

The documentation for this class was generated from the following file: