#include <list_edge_model.h>


Public Types | |
| typedef std::set < NodeInfoHandle, NodeInfoSort > | NodeInfoSet |
Public Member Functions | |
| DECLARE_HANDLES (NodeInfo) | |
| ListEdgeModel () | |
| virtual | ~ListEdgeModel () |
| virtual void | set_world (World &) throw () |
| virtual void | add_edge (Node &, Node &) throw () |
| virtual void | add_dedge (Node &, Node &) throw () |
| virtual void | node_added (Node &) throw () |
| Called by the World whenever a node has been added. | |
| virtual void | node_removed (Node &) throw () |
| Called by the World whenever a node has been removed. | |
| bool | supports_mobility (void) const throw () |
| Returns false. | |
| virtual int | nof_adjacent_nodes (const Node &, EdgeModel::CommunicationDirection d=CD_BIDI) const throw () |
| Returns the number of neighboring nodes with a certain communication direction. | |
| virtual const_adjacency_iterator | begin_adjacent_nodes (const Node &, EdgeModel::CommunicationDirection d=CD_BIDI) const throw () |
| virtual const_adjacency_iterator | end_adjacent_nodes (const Node &) const throw () |
| virtual adjacency_iterator | begin_adjacent_nodes_w (Node &, EdgeModel::CommunicationDirection d=CD_BIDI) throw () |
| virtual adjacency_iterator | end_adjacent_nodes_w (Node &) throw () |
| virtual Box | observer_initial_zone (Node &, const Vec &pos, const Vec &velo) throw () |
| Box | observer_update_zone (Node &, const Vec &newpos, const Vec &velo) throw () |
Protected Member Functions | |
| ListEdgeModel::NodeInfo & | node_info (Node &u, Node &v) |
| virtual void | add_node_neighbors (Node &v, const Vec &pos, const Vec &velo) throw () |
Classes | |
| class | ListIteratorHelper |
| class | NodeInfo |
| struct | NodeInfoSort |
| Helper class to sort containers with NodeInfoHandle / NodeInfo* instances. More... | |
| typedef std::set<NodeInfoHandle, NodeInfoSort> shawn::ListEdgeModel::NodeInfoSet |
| shawn::ListEdgeModel::ListEdgeModel | ( | ) |
| virtual shawn::ListEdgeModel::~ListEdgeModel | ( | ) | [virtual] |
| shawn::ListEdgeModel::DECLARE_HANDLES | ( | NodeInfo | ) |
| virtual void shawn::ListEdgeModel::set_world | ( | World & | ) | throw () [virtual] |
Do not use directly -- use add_edge() of the communication model, which should be a ManualEdgeCommunicationModel
Implements shawn::ManualEdgeModel.
Do not use directly -- use add_edge() of the communication model, which should be a ManualEdgeCommunicationModel
| virtual void shawn::ListEdgeModel::node_added | ( | Node & | ) | throw () [virtual] |
Called by the World whenever a node has been added.
Implements shawn::EdgeModel.
Reimplemented in shawn::FastListEdgeModel.
| virtual void shawn::ListEdgeModel::node_removed | ( | Node & | ) | throw () [virtual] |
Called by the World whenever a node has been removed.
Implements shawn::EdgeModel.
Reimplemented in shawn::FastListEdgeModel.
| bool shawn::ListEdgeModel::supports_mobility | ( | void | ) | const throw () [virtual] |
| virtual int shawn::ListEdgeModel::nof_adjacent_nodes | ( | const Node & | , | |
| EdgeModel::CommunicationDirection | d = CD_BIDI | |||
| ) | const throw () [virtual] |
Returns the number of neighboring nodes with a certain communication direction.
Implements shawn::EdgeModel.
| virtual const_adjacency_iterator shawn::ListEdgeModel::begin_adjacent_nodes | ( | const Node & | , | |
| EdgeModel::CommunicationDirection | d = CD_BIDI | |||
| ) | const throw () [virtual] |
Implements shawn::EdgeModel.
| virtual const_adjacency_iterator shawn::ListEdgeModel::end_adjacent_nodes | ( | const Node & | ) | const throw () [virtual] |
Implements shawn::EdgeModel.
| virtual adjacency_iterator shawn::ListEdgeModel::begin_adjacent_nodes_w | ( | Node & | , | |
| EdgeModel::CommunicationDirection | d = CD_BIDI | |||
| ) | throw () [virtual] |
Implements shawn::EdgeModel.
| virtual adjacency_iterator shawn::ListEdgeModel::end_adjacent_nodes_w | ( | Node & | ) | throw () [virtual] |
Implements shawn::EdgeModel.
| virtual Box shawn::ListEdgeModel::observer_initial_zone | ( | Node & | , | |
| const Vec & | newpos, | |||
| const Vec & | velo | |||
| ) | throw () [virtual] |
Returns an initial bounding box. If a node leaves this box, observer_update_zone() must be called - by convention - by the observed movement to retrieve a new box.
Implements shawn::MovementObserver.
| Box shawn::ListEdgeModel::observer_update_zone | ( | Node & | , | |
| const Vec & | newpos, | |||
| const Vec & | velo | |||
| ) | throw () [virtual] |
Informs this Observer that the old box has been left by the NodeMovement / Node. A new box must be provided by this method.
Implements shawn::MovementObserver.
| ListEdgeModel::NodeInfo& shawn::ListEdgeModel::node_info | ( | Node & | u, | |
| Node & | v | |||
| ) | [protected] |
| virtual void shawn::ListEdgeModel::add_node_neighbors | ( | Node & | v, | |
| const Vec & | pos, | |||
| const Vec & | velo | |||
| ) | throw () [protected, virtual] |
Reimplemented in shawn::FastListEdgeModel.
1.5.6