awds::RTopology Class Reference
[Awdsrouting_mod]

class that contains all topology information of the routing More...

#include <Topology.h>

List of all members.

Public Types

typedef uint16_t link_quality_t
typedef std::vector
< AdjList::iterator > 
ToDo

Public Member Functions

void enumerateNodes ()
int addTopoCmd ()
 RTopology (NodeId id, Routing *routing)
void setLocked (bool t)
bool getLocked () const
virtual void reset ()
bool hasNode (const NodeId &node) const
virtual bool hasLink (const NodeId &from, const NodeId &to) const
void feed (const TopoPacket &p)
virtual std::string getNameOfNode (const NodeId &id) const
virtual bool getNodeByName (NodeId &id, const char *name) const
std::string getNameList () const
int getNumNodes () const
gea::AbsTime removeOldNodes ()
void createRemoveMessages (const NodeId &node, const NDescr &nDescr)
AdjList::iterator getNodeEntry (const NodeId &id, gea::AbsTime t)
void getNextHop (const NodeId &dest, NodeId &nextHop, bool &found)
void calcNextHop (const NodeId &id)
void calcRoutes ()
void print ()
virtual std::string getDotString () const
virtual std::string getAdjString () const
virtual std::string getXmlString () const

Static Public Member Functions

static void cleanup_nodes (gea::Handle *h, gea::AbsTime t, void *data)
static link_quality_t max_quality ()

Public Attributes

bool verbose
Metricmetric
char nodeName [32]
AdjList adjList
bool dirty
bool locked
const NodeId myNodeId
Callback< std::string & > newDotTopology
Callback< std::string & > newXmlTopologyDelta
struct
awds::Routing::NodesObserver * 
nodeObservers
struct
awds::Routing::LinksObserver * 
linkObserver
ToDo todo

Protected Member Functions

void sendNodesChanged () const
void sendNodeAdded (const NodeId &id) const
void sendNodeRemoved (const NodeId &id) const
void sendLinksChanged () const
void sendLinkAdded (const NodeId &from, const NodeId &to) const
void sendLinkRemoved (const NodeId &from, const NodeId &to) const

Classes

class  AdjList
 class that represents the adjacency list of the topology graph More...
class  LinkList
 list of neigbours More...
class  LinkQuality
 class that describes a link in the topology More...
struct  NDescr
 Struct that contains all information about a node in the topology. More...


Detailed Description

class that contains all topology information of the routing

Member Function Documentation

void RTopology::feed ( const TopoPacket p  ) 

feed a topology update in the internal topology representation

int awds::RTopology::getNumNodes (  )  const [inline]

get the number of nodes in the topology

gea::AbsTime RTopology::removeOldNodes (  ) 

try to find node entries in the topology and remove them.

void RTopology::getNextHop ( const NodeId dest,
NodeId nextHop,
bool &  found 
)

get next hop for a given destination

Parameters:
dest the destination of the route.
nextHop the next Hop is stored in the reference.
found true, iff the destination is reachable.


Member Data Documentation

AdjList awds::RTopology::adjList

the adjacency list of the graph

bool awds::RTopology::dirty

is the routing information outdated?

bool awds::RTopology::locked

When true, now topology updates are accepted

const NodeId awds::RTopology::myNodeId

the node identifier of this instance


The documentation for this class was generated from the following files:
Generated on Tue Dec 11 17:58:49 2007 for AWDS by  doxygen 1.5.3-20071008