lemon/graph_adaptor.h
changeset 2042 bdc953f2a449
parent 2037 32e4bebee616
child 2079 7fe378247fea
     1.1 --- a/lemon/graph_adaptor.h	Fri Apr 07 09:52:30 2006 +0000
     1.2 +++ b/lemon/graph_adaptor.h	Fri Apr 07 09:54:35 2006 +0000
     1.3 @@ -45,10 +45,6 @@
     1.4    ///
     1.5    ///Base type for the Graph Adaptors
     1.6    ///
     1.7 -  ///\warning Graph adaptors are in even
     1.8 -  ///more experimental state than the other
     1.9 -  ///parts of the lib. Use them at you own risk.
    1.10 -  ///
    1.11    ///This is the base type for most of LEMON graph adaptors. 
    1.12    ///This class implements a trivial graph adaptor i.e. it only wraps the 
    1.13    ///functions and types of the graph. The purpose of this class is to 
    1.14 @@ -252,10 +248,6 @@
    1.15    ///\brief A graph adaptor which reverses the orientation of the edges.
    1.16    ///\ingroup graph_adaptors
    1.17    ///
    1.18 -  ///\warning Graph adaptors are in even more experimental 
    1.19 -  ///state than the other
    1.20 -  ///parts of the lib. Use them at you own risk.
    1.21 -  ///
    1.22    /// If \c g is defined as
    1.23    ///\code
    1.24    /// ListGraph g;
    1.25 @@ -648,9 +640,6 @@
    1.26    /// \brief A graph adaptor for hiding nodes and edges from a graph.
    1.27    /// \ingroup graph_adaptors
    1.28    /// 
    1.29 -  /// \warning Graph adaptors are in even more experimental state than the
    1.30 -  /// other parts of the lib. Use them at you own risk.
    1.31 -  /// 
    1.32    /// SubGraphAdaptor shows the graph with filtered node-set and 
    1.33    /// edge-set. If the \c checked parameter is true then it filters the edgeset
    1.34    /// to do not get invalid edges without source or target.
    1.35 @@ -770,10 +759,6 @@
    1.36    ///\brief An adaptor for hiding nodes from a graph.
    1.37    ///\ingroup graph_adaptors
    1.38    ///
    1.39 -  ///\warning Graph adaptors are in even more experimental state
    1.40 -  ///than the other
    1.41 -  ///parts of the lib. Use them at you own risk.
    1.42 -  ///
    1.43    ///An adaptor for hiding nodes from a graph.
    1.44    ///This adaptor specializes SubGraphAdaptor in the way that only
    1.45    ///the node-set 
    1.46 @@ -827,9 +812,6 @@
    1.47  
    1.48    ///\brief An adaptor for hiding edges from a graph.
    1.49    ///
    1.50 -  ///\warning Graph adaptors are in even more experimental state
    1.51 -  ///than the other parts of the lib. Use them at you own risk.
    1.52 -  ///
    1.53    ///An adaptor for hiding edges from a graph.
    1.54    ///This adaptor specializes SubGraphAdaptor in the way that
    1.55    ///only the edge-set 
    1.56 @@ -1479,36 +1461,37 @@
    1.57    ///
    1.58    ///\ingroup graph_adaptors
    1.59    ///
    1.60 -  ///An adaptor for composing the residual graph for
    1.61 -  ///directed flow and circulation problems. 
    1.62 -//   ///Let \f$ G=(V, A) \f$ be a directed graph and let \f$ F \f$ be a 
    1.63 -//   ///number type. Let moreover 
    1.64 -//   ///\f$ f,c:A\to F \f$, be functions on the edge-set. 
    1.65 -//   ///In the appications of ResGraphAdaptor, \f$ f \f$ usually stands for a 
    1.66 -//   ///flow and \f$ c \f$ for a capacity function.   
    1.67 -//   ///Suppose that a graph instange \c g of type 
    1.68 -//   ///\c ListGraph implements \f$ G \f$.
    1.69 -//   ///\code
    1.70 -//   /// ListGraph g;
    1.71 -//   ///\endcode
    1.72 -//   ///Then RevGraphAdaptor implements the graph structure with node-set 
    1.73 -//   ///\f$ V \f$ and edge-set \f$ A_{forward}\cup A_{backward} \f$, where 
    1.74 -//   ///\f$ A_{forward}=\{uv : uv\in A, f(uv)<c(uv)\} \f$ and 
    1.75 -//   ///\f$ A_{backward}=\{vu : uv\in A, f(uv)>0\} \f$, 
    1.76 -//   ///i.e. the so called residual graph. 
    1.77 -//   ///When we take the union \f$ A_{forward}\cup A_{backward} \f$, 
    1.78 -//   ///multilicities are counted, i.e. if an edge is in both 
    1.79 -//   ///\f$ A_{forward} \f$ and \f$ A_{backward} \f$, then in the adaptor it 
    1.80 -//   ///appears twice. The following code shows how such an instance can be 
    1.81 -//   ///constructed.
    1.82 -//   ///\code
    1.83 -//   /// typedef ListGraph Graph;
    1.84 -//   /// Graph::EdgeMap<int> f(g);
    1.85 -//   /// Graph::EdgeMap<int> c(g);
    1.86 -//   /// ResGraphAdaptor<Graph, int, Graph::EdgeMap<int>, Graph::EdgeMap<int> > ga(g);
    1.87 -//   ///\endcode
    1.88 -//   ///\author Marton Makai
    1.89 -//   ///
    1.90 +  ///An adaptor for composing the residual graph for directed flow and
    1.91 +  ///circulation problems.  Let \f$ G=(V, A) \f$ be a directed graph
    1.92 +  ///and let \f$ F \f$ be a number type. Let moreover \f$ f,c:A\to F \f$,
    1.93 +  ///be functions on the edge-set.
    1.94 +  ///
    1.95 +  ///In the appications of ResGraphAdaptor, \f$ f \f$ usually stands
    1.96 +  ///for a flow and \f$ c \f$ for a capacity function.  Suppose that a
    1.97 +  ///graph instange \c g of type \c ListGraph implements \f$ G \f$.
    1.98 +  ///
    1.99 +  ///\code 
   1.100 +  ///  ListGraph g;
   1.101 +  ///\endcode 
   1.102 +  ///
   1.103 +  ///Then RevGraphAdaptor implements the graph structure with node-set
   1.104 +  /// \f$ V \f$ and edge-set \f$ A_{forward}\cup A_{backward} \f$,
   1.105 +  ///where \f$ A_{forward}=\{uv : uv\in A, f(uv)<c(uv)\} \f$ and 
   1.106 +  /// \f$ A_{backward}=\{vu : uv\in A, f(uv)>0\} \f$, i.e. the so called
   1.107 +  ///residual graph.  When we take the union 
   1.108 +  /// \f$ A_{forward}\cup A_{backward} \f$, multilicities are counted, i.e. 
   1.109 +  ///if an edge is in both \f$ A_{forward} \f$ and \f$ A_{backward} \f$, 
   1.110 +  ///then in the adaptor it appears twice. The following code shows how 
   1.111 +  ///such an instance can be constructed.
   1.112 +  ///
   1.113 +  ///\code 
   1.114 +  ///  typedef ListGraph Graph; 
   1.115 +  ///  Graph::EdgeMap<int> f(g);
   1.116 +  ///  Graph::EdgeMap<int> c(g); 
   1.117 +  ///  ResGraphAdaptor<Graph, int, Graph::EdgeMap<int>, Graph::EdgeMap<int> > ga(g); 
   1.118 +  ///\endcode
   1.119 +  ///\author Marton Makai
   1.120 +  ///
   1.121    template<typename Graph, typename Number, 
   1.122  	   typename CapacityMap, typename FlowMap,
   1.123             typename Tolerance = Tolerance<Number> >
   1.124 @@ -1685,10 +1668,6 @@
   1.125    ///\brief For blocking flows.
   1.126    ///\ingroup graph_adaptors
   1.127    ///
   1.128 -  ///\warning Graph adaptors are in even more
   1.129 -  ///experimental state than the other
   1.130 -  ///parts of the lib. Use them at you own risk.
   1.131 -  ///
   1.132    ///This graph adaptor is used for on-the-fly 
   1.133    ///Dinits blocking flow computations.
   1.134    ///For each node, an out-edge is stored which is used when the