shawn::DiskGraphModel Class Reference

#include <disk_graph_model.h>

Inheritance diagram for shawn::DiskGraphModel:

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

Collaboration graph
[legend]

List of all members.

Public Member Functions

construction / destruction
 DiskGraphModel ()
virtual ~DiskGraphModel ()
virtual void init (void) throw ()
communication range
virtual void set_transmission_range (double) throw ()
virtual double transmission_range (void) const 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 ()
virtual void set_size_hint (double size_hint) throw ()


Constructor & Destructor Documentation

shawn::DiskGraphModel::DiskGraphModel (  ) 

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


Member Function Documentation

virtual void shawn::DiskGraphModel::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::DiskGraphModel::set_transmission_range ( double   )  throw () [virtual]

virtual double shawn::DiskGraphModel::transmission_range ( void   )  const throw () [virtual]

virtual bool shawn::DiskGraphModel::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::DiskGraphModel::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::DiskGraphModel::exists_communication_upper_bound ( void   )  const throw () [virtual]

returns whether communication_upper_bound() returns a useful value

Implements shawn::CommunicationModel.

virtual double shawn::DiskGraphModel::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::DiskGraphModel::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.

virtual void shawn::DiskGraphModel::set_size_hint ( double   )  throw () [virtual]

A size hint MAY be provided by the World to the communication model what a "normal" distance in this world could be. This is NO information about the actual communication range of nodes. This is just a hint. Implement this method in your communication model if you want to react to this information.

Reimplemented from shawn::CommunicationModel.


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

Generated on Sun Feb 5 00:00:44 2012 for Shawn by  doxygen 1.5.6