COIN-OR::LEMON - Graph Library

Ticket #32: d5bf497757ff.patch

File d5bf497757ff.patch, 1.6 KB (added by Balazs Dezso, 16 years ago)
  • lemon/dfs.h

    # HG changeset patch
    # User Balazs Dezso <deba@inf.elte.hu>
    # Date 1218978123 -7200
    # Node ID d5bf497757ff9de573dfada21ff06dddcf2c6421
    # Parent  32155c88f59b76e6fe775a4a211e28d243a7bc2b
    Using arc instead of ArcIt in Dfs
    
    diff -r 32155c88f59b -r d5bf497757ff lemon/dfs.h
    a b  
    188188    ///Indicates if \ref _processed is locally allocated (\c true) or not.
    189189    bool local_processed;
    190190
    191     std::vector<typename Digraph::OutArcIt> _stack;
     191    std::vector<typename Digraph::Arc> _stack;
    192192    int _stack_head;
    193193
    194194    ///Creates the maps if necessary.
     
    453453        {
    454454          _reached->set(s,true);
    455455          _pred->set(s,INVALID);
    456           OutArcIt e(*G,s);
     456          Arc e;
     457          G->firstOut(e,s);
    457458          if(e!=INVALID) {
    458459            _stack[++_stack_head]=e;
    459460            _dist->set(s,_stack_head);
     
    480481        _pred->set(m,e);
    481482        _reached->set(m,true);
    482483        ++_stack_head;
    483         _stack[_stack_head] = OutArcIt(*G, m);
     484        G->firstOut(_stack[_stack_head],m);
    484485        _dist->set(m,_stack_head);
    485486      }
    486487      else {
    487488        m=G->source(e);
    488         ++_stack[_stack_head];
     489        G->nextOut(_stack[_stack_head]);
    489490      }
    490491      while(_stack_head>=0 && _stack[_stack_head]==INVALID) {
    491492        _processed->set(m,true);
    492493        --_stack_head;
    493494        if(_stack_head>=0) {
    494495          m=G->source(_stack[_stack_head]);
    495           ++_stack[_stack_head];
     496          G->nextOut(_stack[_stack_head]);
    496497        }
    497498      }
    498499      return e;