COIN-OR::LEMON - Graph Library

Changeset 1540:7d028a73d7f2 in lemon-0.x for lemon/graph_utils.h


Ignore:
Timestamp:
07/05/05 16:36:10 (15 years ago)
Author:
athos
Branch:
default
Phase:
public
Convert:
svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@2034
Message:

Documented Balazs's stuff. Quite enough of that.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • lemon/graph_utils.h

    r1538 r1540  
    3131///\brief Graph utilities.
    3232///
    33 ///\todo Please
    34 ///revise the documentation.
    3533///
    3634
     
    4341  /// \brief Function to count the items in the graph.
    4442  ///
    45   /// This function counts the items in the graph.
     43  /// This function counts the items (nodes, edges etc) in the graph.
    4644  /// The complexity of the function is O(n) because
    4745  /// it iterates on all of the items.
     
    126124  /// This function counts the undirected edges in the graph.
    127125  /// The complexity of the function is O(e) but for some
    128   /// graph structure it is specialized to run in O(1).
     126  /// graph structures it is specialized to run in O(1).
    129127
    130128  template <typename Graph>
     
    194192  }
    195193
    196   /// \brief Copy the source map to the target map.
    197   ///
    198   /// Copy the \c source map to the \c target map. It uses the given iterator
    199   /// to iterate on the data structure and it use the \c ref mapping to
    200   /// convert the source's keys to the target's keys.
     194  /// \brief Copy a map.
     195  ///
     196  /// Thsi function copies the \c source map to the \c target map. It uses the
     197  /// given iterator to iterate on the data structure and it uses the \c ref
     198  /// mapping to convert the source's keys to the target's keys.
    201199  template <typename Target, typename Source,
    202200            typename ItemIt, typename Ref>         
     
    221219
    222220
    223   /// \brief Class to copy a graph to an other graph.
    224   ///
    225   /// Class to copy a graph to an other graph. It can be used easier
    226   /// with the \c copyGraph() function.
     221  /// \brief Class to copy a graph.
     222  ///
     223  /// Class to copy a graph to an other graph (duplicate a graph). The
     224  /// simplest way of using it is through the \c copyGraph() function.
    227225  template <typename Target, typename Source>
    228226  class GraphCopy {
     
    355353  /// After the copy the \c nr map will contain the mapping from the
    356354  /// source graph's nodes to the target graph's nodes and the \c ecr will
    357   /// contain the mapping from the target graph's edge to the source's
     355  /// contain the mapping from the target graph's edges to the source's
    358356  /// edges.
    359357  template <typename Target, typename Source>
     
    459457  /// Provides an immutable and unique id for each item in the graph.
    460458
    461   /// The IdMap class provides a unique and immutable mapping for each item
    462   /// in the graph.
     459  /// The IdMap class provides a unique and immutable id for each item of the
     460  /// same type (e.g. node) in the graph. This id is <ul><li>\b unique:
     461  /// different items (nodes) get different ids <li>\b immutable: the id of an
     462  /// item (node) does not change (even if you delete other nodes).  </ul>
     463  /// Through this map you get access (i.e. can read) the inner id values of
     464  /// the items stored in the graph. This map can be inverted with its member
     465  /// class \c InverseMap.
    463466  ///
    464467  template <typename _Graph, typename _Item>
     
    488491  public:
    489492
    490     /// \brief The class represents the inverse of the map.
    491     ///
    492     /// The class represents the inverse of the map.
     493    /// \brief The class represents the inverse of its owner (IdMap).
     494    ///
     495    /// The class represents the inverse of its owner (IdMap).
    493496    /// \see inverse()
    494497    class InverseMap {
     
    518521    /// \brief Gives back the inverse of the map.
    519522    ///
    520     /// Gives back the inverse of the map.
     523    /// Gives back the inverse of the IdMap.
    521524    InverseMap inverse() const { return InverseMap(*graph);}
    522525
     
    526529  /// \brief General invertable graph-map type.
    527530
    528   /// This type provides simple invertable map functions.
     531  /// This type provides simple invertable graph-maps.
    529532  /// The InvertableMap wraps an arbitrary ReadWriteMap
    530533  /// and if a key is set to a new value then store it
     
    659662  /// item in the graph.
    660663  ///
    661   /// The DescriptorMap class provides a mutable, continuous and immutable
    662   /// mapping for each item in the graph. The value for an item may mutated
    663   /// on each operation when the an item erased or added to graph.
     664  /// The DescriptorMap class provides a unique and continuous (but mutable)
     665  /// descriptor (id) for each item of the same type (e.g. node) in the
     666  /// graph. This id is <ul><li>\b unique: different items (nodes) get
     667  /// different ids <li>\b continuous: the range of the ids is the set of
     668  /// integers between 0 and \c n-1, where \c n is the number of the items of
     669  /// this type (e.g. nodes) (so the id of a node can change if you delete an
     670  /// other node, i.e. this id is mutable).  </ul> This map can be inverted
     671  /// with its member class \c InverseMap.
    664672  ///
    665673  /// \param _Graph The graph class the \c DescriptorMap belongs to.
     
    755763
    756764  public:
    757     /// \brief The inverse map type.
    758     ///
    759     /// The inverse map type.
     765    /// \brief The inverse map type of DescriptorMap.
     766    ///
     767    /// The inverse map type of DescriptorMap.
    760768    class InverseMap {
    761769    public:
     
    874882  /// \brief Returns a \ref TargetMap class
    875883  ///
    876   /// This function just returns an \ref TargetMap class.
     884  /// This function just returns a \ref TargetMap class.
    877885  /// \relates TargetMap
    878886  template <typename Graph>
     
    881889  }
    882890
    883   /// \brief Returns the "forward" directed edge view of undirected edge.
    884   ///
    885   /// Returns the "forward" directed edge view of undirected edge.
     891  /// \brief Returns the "forward" directed edge view of an undirected edge.
     892  ///
     893  /// Returns the "forward" directed edge view of an undirected edge.
    886894  /// \author Balazs Dezso
    887895  template <typename Graph>
     
    922930  }
    923931
    924   /// \brief Returns the "backward" directed edge view of undirected edge.
    925   ///
    926   /// Returns the "backward" directed edge view of undirected edge.
     932  /// \brief Returns the "backward" directed edge view of an undirected edge.
     933  ///
     934  /// Returns the "backward" directed edge view of an undirected edge.
    927935  /// \author Balazs Dezso
    928936  template <typename Graph>
     
    955963  /// \brief Returns a \ref BackwardMap class
    956964
    957   /// This function just returns an \ref BackwardMap class.
     965  /// This function just returns a \ref BackwardMap class.
    958966  /// \relates BackwardMap
    959967  template <typename Graph>
     
    976984  /// \brief Map of the node in-degrees.
    977985  ///
    978   /// This map returns the in-degree of a node. Ones it is constructed,
     986  /// This map returns the in-degree of a node. Once it is constructed,
    979987  /// the degrees are stored in a standard NodeMap, so each query is done
    980   /// in constant time. On the other hand, the values updates automatically
     988  /// in constant time. On the other hand, the values are updated automatically
    981989  /// whenever the graph changes.
    982990  ///
     
    10681076  /// \brief Map of the node out-degrees.
    10691077  ///
    1070   /// This map returns the out-degree of a node. One it is constructed,
     1078  /// This map returns the out-degree of a node. Once it is constructed,
    10711079  /// the degrees are stored in a standard NodeMap, so each query is done
    1072   /// in constant time. On the other hand, the values updates automatically
     1080  /// in constant time. On the other hand, the values are updated automatically
    10731081  /// whenever the graph changes.
    10741082  ///
Note: See TracChangeset for help on using the changeset viewer.