src/hugo/list_graph.h
changeset 880 9d0bfd35b97c
parent 877 66dd225ca128
child 891 74589d20dbc3
     1.1 --- a/src/hugo/list_graph.h	Fri Sep 17 15:11:39 2004 +0000
     1.2 +++ b/src/hugo/list_graph.h	Fri Sep 17 15:51:50 2004 +0000
     1.3 @@ -29,10 +29,9 @@
     1.4  
     1.5    ///This is a simple and fast erasable graph implementation.
     1.6    ///
     1.7 -  ///It conforms to the graph interface documented under
     1.8 -  ///the description of
     1.9 -  ///\ref skeleton::ErasableGraphSkeleton "ErasableGraphSkeleton".
    1.10 -  ///\sa skeleton::ErasableGraphSkeleton.
    1.11 +  ///It conforms to the
    1.12 +  ///\ref skeleton::ErasableGraph "ErasableGraph" concept.
    1.13 +  ///\sa skeleton::ErasableGraph.
    1.14    class ListGraph {
    1.15  
    1.16      //Nodes are double linked.
    1.17 @@ -312,7 +311,6 @@
    1.18        NodeIt() : Node() { }
    1.19        NodeIt(Invalid i) : Node(i) { }
    1.20        NodeIt(const ListGraph& _G) : Node(_G.first_node), G(&_G) { }
    1.21 -      ///\todo Undocumented conversion Node -\> NodeIt.
    1.22        NodeIt(const ListGraph& _G,Node n) : Node(n), G(&_G) { }
    1.23        NodeIt &operator++() {
    1.24  	n=G->nodes[n].next; 
    1.25 @@ -426,7 +424,7 @@
    1.26    ///that complements this
    1.27    ///feature by
    1.28    ///storing shared values for the edge pairs. The usual
    1.29 -  ///\ref GraphSkeleton::EdgeMap "EdgeMap"
    1.30 +  ///\ref Graph::EdgeMap "EdgeMap"
    1.31    ///can be used
    1.32    ///as well.
    1.33    ///
    1.34 @@ -494,12 +492,13 @@
    1.35    ///The most useful application of this class is to be the node set of an
    1.36    ///\ref EdgeSet class.
    1.37    ///
    1.38 -  ///It conforms to the graph interface documented under
    1.39 -  ///the description of \ref GraphSkeleton with the exception that you cannot
    1.40 +  ///It conforms to 
    1.41 +  ///the \ref skeleton::ExtendableGraph "ExtendableGraph" concept
    1.42 +  ///with the exception that you cannot
    1.43    ///add (or delete) edges. The usual edge iterators are exists, but they are
    1.44    ///always \ref INVALID.
    1.45 -  ///\sa \ref GraphSkeleton
    1.46 -  ///\sa \ref EdgeSet
    1.47 +  ///\sa skeleton::ExtendableGraph
    1.48 +  ///\sa EdgeSet
    1.49    class NodeSet {
    1.50  
    1.51      //Nodes are double linked.
    1.52 @@ -790,12 +789,13 @@
    1.53    ///(and from \ref EdgeSet, as well)
    1.54    ///
    1.55    ///\param GG The type of the graph which shares its node set with this class.
    1.56 -  ///Its interface must conform with \ref GraphSkeleton.
    1.57 +  ///Its interface must conform to the
    1.58 +  ///\ref skeleton::StaticGraph "StaticGraph" concept.
    1.59    ///
    1.60 -  ///It conforms to the graph interface documented under
    1.61 -  ///the description of \ref GraphSkeleton.
    1.62 -  ///\sa \ref GraphSkeleton.
    1.63 -  ///\sa \ref NodeSet.
    1.64 +  ///It conforms to the 
    1.65 +  ///\ref skeleton::ExtendableGraph "ExtendableGraph" concept.
    1.66 +  ///\sa skeleton::ExtendableGraph.
    1.67 +  ///\sa NodeSet.
    1.68    template<typename GG>
    1.69    class EdgeSet {
    1.70  
    1.71 @@ -897,15 +897,14 @@
    1.72      
    1.73      ///Construates a new graph based on the nodeset of an existing one.
    1.74      ///\param _G the base graph.
    1.75 -    ///\todo It looks like a copy constructor, but it isn't.
    1.76 -    EdgeSet(NodeGraphType &_G) 
    1.77 +    explicit EdgeSet(NodeGraphType &_G) 
    1.78        : G(_G), nodes(_G), edges(),
    1.79  	first_free_edge(-1) {}
    1.80      ///Copy constructor
    1.81  
    1.82      ///Makes a copy of an EdgeSet.
    1.83      ///It will be based on the same graph.
    1.84 -    EdgeSet(const EdgeSet &_g) 
    1.85 +    explicit EdgeSet(const EdgeSet &_g) 
    1.86        : G(_g.G), nodes(_g.G), edges(_g.edges),
    1.87  	first_free_edge(_g.first_free_edge) {}
    1.88