gravatar
kpeter (Peter Kovacs)
kpeter@inf.elte.hu
Remove unnecessary integer requirement in Suurballe (#323)
0 1 0
default
1 file changed with 2 insertions and 5 deletions:
↑ Collapse diff ↑
Ignore white space 24 line context
... ...
@@ -46,25 +46,25 @@
46 46
  /// Note that this problem is a special case of the \ref min_cost_flow
47 47
  /// "minimum cost flow problem". This implementation is actually an
48 48
  /// efficient specialized version of the \ref CapacityScaling
49 49
  /// "Successive Shortest Path" algorithm directly for this problem.
50 50
  /// Therefore this class provides query functions for flow values and
51 51
  /// node potentials (the dual solution) just like the minimum cost flow
52 52
  /// algorithms.
53 53
  ///
54 54
  /// \tparam GR The digraph type the algorithm runs on.
55 55
  /// \tparam LEN The type of the length map.
56 56
  /// The default value is <tt>GR::ArcMap<int></tt>.
57 57
  ///
58
  /// \warning Length values should be \e non-negative \e integers.
58
  /// \warning Length values should be \e non-negative.
59 59
  ///
60 60
  /// \note For finding node-disjoint paths this algorithm can be used
61 61
  /// along with the \ref SplitNodes adaptor.
62 62
#ifdef DOXYGEN
63 63
  template <typename GR, typename LEN>
64 64
#else
65 65
  template < typename GR,
66 66
             typename LEN = typename GR::template ArcMap<int> >
67 67
#endif
68 68
  class Suurballe
69 69
  {
70 70
    TEMPLATE_DIGRAPH_TYPEDEFS(GR);
... ...
@@ -243,28 +243,25 @@
243 243
  public:
244 244

	
245 245
    /// \brief Constructor.
246 246
    ///
247 247
    /// Constructor.
248 248
    ///
249 249
    /// \param graph The digraph the algorithm runs on.
250 250
    /// \param length The length (cost) values of the arcs.
251 251
    Suurballe( const Digraph &graph,
252 252
               const LengthMap &length ) :
253 253
      _graph(graph), _length(length), _flow(0), _local_flow(false),
254 254
      _potential(0), _local_potential(false), _pred(graph)
255
    {
256
      LEMON_ASSERT(std::numeric_limits<Length>::is_integer,
257
        "The length type of Suurballe must be integer");
258
    }
255
    {}
259 256

	
260 257
    /// Destructor.
261 258
    ~Suurballe() {
262 259
      if (_local_flow) delete _flow;
263 260
      if (_local_potential) delete _potential;
264 261
      delete _dijkstra;
265 262
    }
266 263

	
267 264
    /// \brief Set the flow map.
268 265
    ///
269 266
    /// This function sets the flow map.
270 267
    /// If it is not used before calling \ref run() or \ref init(),
0 comments (0 inline)