lemon/howard.h
changeset 831 cc9e0c15d747
parent 771 8452ca46e29a
child 841 aa8c9008b3de
equal deleted inserted replaced
4:2caf195398ea 5:6591943a1b6a
   104   /// bound on its running time is exponential.
   104   /// bound on its running time is exponential.
   105   ///
   105   ///
   106   /// \tparam GR The type of the digraph the algorithm runs on.
   106   /// \tparam GR The type of the digraph the algorithm runs on.
   107   /// \tparam LEN The type of the length map. The default
   107   /// \tparam LEN The type of the length map. The default
   108   /// map type is \ref concepts::Digraph::ArcMap "GR::ArcMap<int>".
   108   /// map type is \ref concepts::Digraph::ArcMap "GR::ArcMap<int>".
       
   109   /// \tparam TR The traits class that defines various types used by the
       
   110   /// algorithm. By default, it is \ref HowardDefaultTraits
       
   111   /// "HowardDefaultTraits<GR, LEN>".
       
   112   /// In most cases, this parameter should not be set directly,
       
   113   /// consider to use the named template parameters instead.
   109 #ifdef DOXYGEN
   114 #ifdef DOXYGEN
   110   template <typename GR, typename LEN, typename TR>
   115   template <typename GR, typename LEN, typename TR>
   111 #else
   116 #else
   112   template < typename GR,
   117   template < typename GR,
   113              typename LEN = typename GR::template ArcMap<int>,
   118              typename LEN = typename GR::template ArcMap<int>,
   125     typedef typename TR::Value Value;
   130     typedef typename TR::Value Value;
   126 
   131 
   127     /// \brief The large value type
   132     /// \brief The large value type
   128     ///
   133     ///
   129     /// The large value type used for internal computations.
   134     /// The large value type used for internal computations.
   130     /// Using the \ref HowardDefaultTraits "default traits class",
   135     /// By default, it is \c long \c long if the \c Value type is integer,
   131     /// it is \c long \c long if the \c Value type is integer,
       
   132     /// otherwise it is \c double.
   136     /// otherwise it is \c double.
   133     typedef typename TR::LargeValue LargeValue;
   137     typedef typename TR::LargeValue LargeValue;
   134 
   138 
   135     /// The tolerance type
   139     /// The tolerance type
   136     typedef typename TR::Tolerance Tolerance;
   140     typedef typename TR::Tolerance Tolerance;