lemon/circulation.h
changeset 2516 6a30e13a1c79
parent 2450 719220885b90
child 2526 b7727edd44f2
equal deleted inserted replaced
5:1a1e93c72db8 6:c486c14da1c0
   251 	    else if(tlevel<mlevel) mlevel=tlevel;
   251 	    else if(tlevel<mlevel) mlevel=tlevel;
   252    
   252    
   253 	_excess[act]=exc;
   253 	_excess[act]=exc;
   254 	if(!_tol.positive(exc)) _levels.deactivate(act);
   254 	if(!_tol.positive(exc)) _levels.deactivate(act);
   255 	else if(mlevel==_node_num) {
   255 	else if(mlevel==_node_num) {
   256 	  _levels.liftHighestActiveTo(_node_num);
   256 	  _levels.liftHighestActiveToTop();
   257 #ifdef LEMON_CIRCULATION_DEBUG
   257 #ifdef LEMON_CIRCULATION_DEBUG
   258 	  std::cerr << "  Lift to level " << _node_num << std::endl;
   258 	  std::cerr << "  Lift to level " << _node_num << std::endl;
   259 #endif
   259 #endif
   260 	  return _levels.onLevel(_node_num-1)==0?_node_num-1:actlevel;
   260 	  return _levels.onLevel(_node_num-1)==0?_node_num-1:actlevel;
   261 	}
   261 	}
   262 	else {
   262 	else {
   263 	  _levels.liftHighestActiveTo(mlevel+1);
   263 	  _levels.liftHighestActive(mlevel+1);
   264 #ifdef LEMON_CIRCULATION_DEBUG
   264 #ifdef LEMON_CIRCULATION_DEBUG
   265 	  std::cerr << "  Lift to level " << mlevel+1 << std::endl;
   265 	  std::cerr << "  Lift to level " << mlevel+1 << std::endl;
   266 #endif
   266 #endif
   267 	  if(_levels.onLevel(actlevel)==0)
   267 	  if(_levels.onLevel(actlevel)==0)
   268 	    return actlevel;
   268 	    return actlevel;