# Changeset 787:c2230649a493 in lemon-1.2

Ignore:
Timestamp:
11/15/09 19:57:02 (10 years ago)
Branch:
default
Phase:
public
Message:

Various doc improvements (#331)

• Add notes to the graph classes about the time of item counting.
• Clarify the doc for run() in BFS and DFS.
• Other improvements.
Location:
lemon
Files:
11 edited

Unmodified
Removed

• ## lemon/bfs.h

 r717 ///Runs the algorithm to visit all nodes in the digraph. ///This method runs the %BFS algorithm in order to ///compute the shortest path to each node. /// ///The algorithm computes ///- the shortest path tree (forest), ///- the distance of each node from the root(s). ///This method runs the %BFS algorithm in order to visit all nodes ///in the digraph. /// ///\note b.run(s) is just a shortcut of the following code. ///Runs BFS algorithm to visit all nodes in the digraph. ///This method runs BFS algorithm in order to compute ///the shortest path to each node. ///This method runs BFS algorithm in order to visit all nodes ///in the digraph. void run() { /// \brief Runs the algorithm to visit all nodes in the digraph. /// /// This method runs the %BFS algorithm in order to /// compute the shortest path to each node. /// /// The algorithm computes /// - the shortest path tree (forest), /// - the distance of each node from the root(s). /// This method runs the %BFS algorithm in order to visit all nodes /// in the digraph. /// /// \note b.run(s) is just a shortcut of the following code.
• ## lemon/dfs.h

 r717 ///Runs the algorithm to visit all nodes in the digraph. ///This method runs the %DFS algorithm in order to compute the ///%DFS path to each node. /// ///The algorithm computes ///- the %DFS tree (forest), ///- the distance of each node from the root(s) in the %DFS tree. ///This method runs the %DFS algorithm in order to visit all nodes ///in the digraph. /// ///\note d.run() is just a shortcut of the following code. ///Runs DFS algorithm to visit all nodes in the digraph. ///This method runs DFS algorithm in order to compute ///the DFS path to each node. ///This method runs DFS algorithm in order to visit all nodes ///in the digraph. void run() { /// \brief Runs the algorithm to visit all nodes in the digraph. /// This method runs the %DFS algorithm in order to /// compute the %DFS path to each node. /// /// The algorithm computes /// - the %DFS tree (forest), /// - the distance of each node from the root(s) in the %DFS tree. /// This method runs the %DFS algorithm in order to visit all nodes /// in the digraph. /// /// \note d.run() is just a shortcut of the following code.
• ## lemon/dijkstra.h

 r717 ///The type of the arc lengths. typedef typename TR::LengthMap::Value Value; typedef typename TR::Value Value; ///The type of the map that stores the arc lengths. typedef typename TR::LengthMap LengthMap;
• ## lemon/edge_set.h

 r778 /// all arcs incident to the given node is erased from the arc set. /// /// This class fully conforms to the \ref concepts::Digraph /// "Digraph" concept. /// It provides only linear time counting for nodes and arcs. /// /// \param GR The type of the graph which shares its node set with /// this class. Its interface must conform to the /// \ref concepts::Digraph "Digraph" or \ref concepts::Graph "Graph" /// concept. /// /// This class fully conforms to the \ref concepts::Digraph /// "Digraph" concept. template class ListArcSet : public ArcSetExtender > { /// incident to the given node is erased from the arc set. /// /// This class fully conforms to the \ref concepts::Graph "Graph" /// concept. /// It provides only linear time counting for nodes, edges and arcs. /// /// \param GR The type of the graph which shares its node set /// with this class. Its interface must conform to the /// \ref concepts::Digraph "Digraph" or \ref concepts::Graph "Graph" /// concept. /// /// This class fully conforms to the \ref concepts::Graph "Graph" /// concept. template /// arcs. Therefore the arcs cannot be erased from the arc sets. /// /// This class fully conforms to the \ref concepts::Digraph "Digraph" /// concept. /// It provides only linear time counting for nodes and arcs. /// /// \warning If a node is erased from the underlying graph and this /// node is the source or target of one arc in the arc set, then /// the arc set is invalidated, and it cannot be used anymore. The /// validity can be checked with the \c valid() member function. /// /// This class fully conforms to the \ref concepts::Digraph /// "Digraph" concept. template class SmartArcSet : public ArcSetExtender > { /// edges cannot be erased from the edge sets. /// /// This class fully conforms to the \ref concepts::Graph "Graph" /// concept. /// It provides only linear time counting for nodes, edges and arcs. /// /// \warning If a node is erased from the underlying graph and this /// node is incident to one edge in the edge set, then the edge set /// is invalidated, and it cannot be used anymore. The validity can /// be checked with the \c valid() member function. /// /// This class fully conforms to the \ref concepts::Graph /// "Graph" concept. template class SmartEdgeSet : public EdgeSetExtender > {
• ## lemon/full_graph.h

 r780 /// only in the concept class. /// /// This class provides constant time counting for nodes and arcs. /// /// \note FullDigraph and FullGraph classes are very similar, /// but there are two differences. While this class conforms only /// completely static, the nodes can be indexed with integers from /// the range [0..nodeNum()-1]. /// The index of a node is the same as its ID. /// \sa index() Node operator()(int ix) const { return Parent::operator()(ix); } /// completely static, the nodes can be indexed with integers from /// the range [0..nodeNum()-1]. /// The index of a node is the same as its ID. /// \sa operator()() static int index(const Node& node) { return Parent::index(node); } /// only in the concept class. /// /// This class provides constant time counting for nodes, edges and arcs. /// /// \note FullDigraph and FullGraph classes are very similar, /// but there are two differences. While FullDigraph /// completely static, the nodes can be indexed with integers from /// the range [0..nodeNum()-1]. /// The index of a node is the same as its ID. /// \sa index() Node operator()(int ix) const { return Parent::operator()(ix); } /// completely static, the nodes can be indexed with integers from /// the range [0..nodeNum()-1]. /// The index of a node is the same as its ID. /// \sa operator()() static int index(const Node& node) { return Parent::index(node); }
• ## lemon/grid_graph.h

 r735 /// Most of its member functions and nested classes are documented /// only in the concept class. /// /// This class provides constant time counting for nodes, edges and arcs. class GridGraph : public ExtendedGridGraphBase { typedef ExtendedGridGraphBase Parent;
• ## lemon/hypercube_graph.h

 r780 /// Most of its member functions and nested classes are documented /// only in the concept class. /// /// This class provides constant time counting for nodes, edges and arcs. /// /// \note The type of the indices is chosen to \c int for efficiency
• ## lemon/list_graph.h

 r741 ///only in the concept class. /// ///This class provides only linear time counting for nodes and arcs. /// ///\sa concepts::Digraph ///\sa ListGraph ///\brief Erase a node from the digraph. /// ///This function erases the given node from the digraph. ///This function erases the given node along with its outgoing and ///incoming arcs from the digraph. /// ///\note All iterators referencing the removed node or the connected ///arcs are invalidated, of course. void erase(Node n) { Parent::erase(n); } /// ///This function erases the given arc from the digraph. /// ///\note All iterators referencing the removed arc are invalidated, ///of course. void erase(Arc a) { Parent::erase(a); } ///This function erases all nodes and arcs from the digraph. /// ///\note All iterators of the digraph are invalidated, of course. void clear() { Parent::clear(); ///only in the concept class. /// ///This class provides only linear time counting for nodes, edges and arcs. /// ///\sa concepts::Graph ///\sa ListDigraph ///\brief Erase a node from the graph. /// /// This function erases the given node from the graph. /// This function erases the given node along with its incident arcs /// from the graph. /// /// \note All iterators referencing the removed node or the incident /// edges are invalidated, of course. void erase(Node n) { Parent::erase(n); } /// /// This function erases the given edge from the graph. /// /// \note All iterators referencing the removed edge are invalidated, /// of course. void erase(Edge e) { Parent::erase(e); } /// Node validity check ///This function erases all nodes and arcs from the graph. /// ///\note All iterators of the graph are invalidated, of course. void clear() { Parent::clear();
• ## lemon/smart_graph.h

 r780 ///only in the concept class. /// ///This class provides constant time counting for nodes and arcs. /// ///\sa concepts::Digraph ///\sa SmartGraph /// only in the concept class. /// /// This class provides constant time counting for nodes, edges and arcs. /// /// \sa concepts::Graph /// \sa SmartDigraph
• ## lemon/static_graph.h

 r779 /// only in the concept class. /// /// This class provides constant time counting for nodes and arcs. /// /// \sa concepts::Digraph class StaticDigraph : public ExtendedStaticDigraphBase {
Note: See TracChangeset for help on using the changeset viewer.