shawn::ManualCommunicationModel Class Reference

#include <manual_communication_model.h>

Inheritance diagram for shawn::ManualCommunicationModel:

Inheritance graph
[legend]
Collaboration diagram for shawn::ManualCommunicationModel:

Collaboration graph
[legend]

List of all members.

Public Member Functions

construction / destruction
 ManualCommunicationModel ()
virtual ~ManualCommunicationModel ()
virtual void init (void) throw ()
edges
virtual void add_edge (Node &, Node &) throw ()
CommunicationModel interface
virtual bool can_communicate_bidi (const Node &, const Node &) const throw ()
virtual bool can_communicate_uni (const Node &, const Node &) const throw ()
virtual bool exists_communication_upper_bound (void) const throw ()
 returns whether communication_upper_bound() returns a useful value
virtual double communication_upper_bound (void) const throw ()
virtual bool is_status_available_on_construction (void) const throw ()

Protected Member Functions

ManualEdgeModeledge_model_w (void) throw ()


Constructor & Destructor Documentation

shawn::ManualCommunicationModel::ManualCommunicationModel (  ) 

virtual shawn::ManualCommunicationModel::~ManualCommunicationModel (  )  [virtual]


Member Function Documentation

virtual void shawn::ManualCommunicationModel::init ( void   )  throw () [virtual]

called after world is setup and before first node is created. used by World

Reimplemented from shawn::CommunicationModel.

virtual void shawn::ManualCommunicationModel::add_edge ( Node ,
Node  
) throw () [virtual]

virtual bool shawn::ManualCommunicationModel::can_communicate_bidi ( const Node ,
const Node  
) const throw () [virtual]

Returns:
true iff can_communicate_uni(u,v) and can_communicate_uni(v,u), therefore, whether the two nodes may exchange messages.

Implements shawn::CommunicationModel.

virtual bool shawn::ManualCommunicationModel::can_communicate_uni ( const Node ,
const Node  
) const throw () [virtual]

Returns:
true if the first passed node can send messages to the second.
Warning:
currently, unidirectional links are unsupported. This method is therefore pretty much useless

Implements shawn::CommunicationModel.

virtual bool shawn::ManualCommunicationModel::exists_communication_upper_bound ( void   )  const throw () [virtual]

returns whether communication_upper_bound() returns a useful value

Implements shawn::CommunicationModel.

virtual double shawn::ManualCommunicationModel::communication_upper_bound ( void   )  const throw () [virtual]

if exists_communication_upper_bound(), nodes whose euclidean distance exceeds communication_upper_bound() can never communicate in any direction

Implements shawn::CommunicationModel.

virtual bool shawn::ManualCommunicationModel::is_status_available_on_construction ( void   )  const throw () [virtual]

Returns:
whether the status (i.e., whether two nodes can communicate) is available instantly when nodes are created.

Implements shawn::CommunicationModel.

ManualEdgeModel& shawn::ManualCommunicationModel::edge_model_w ( void   )  throw () [protected]


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

Generated on Tue Feb 7 00:00:44 2012 for Shawn by  doxygen 1.5.6