lemon/path.h
branch1.1
changeset 1081 f1398882a928
parent 868 76689f2fc02d
child 1145 98b306776b25
equal deleted inserted replaced
19:a599382019b6 23:c8aedc06a945
     1 /* -*- mode: C++; indent-tabs-mode: nil; -*-
     1 /* -*- mode: C++; indent-tabs-mode: nil; -*-
     2  *
     2  *
     3  * This file is a part of LEMON, a generic C++ optimization library.
     3  * This file is a part of LEMON, a generic C++ optimization library.
     4  *
     4  *
     5  * Copyright (C) 2003-2009
     5  * Copyright (C) 2003-2011
     6  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
     6  * Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
     7  * (Egervary Research Group on Combinatorial Optimization, EGRES).
     7  * (Egervary Research Group on Combinatorial Optimization, EGRES).
     8  *
     8  *
     9  * Permission to use, modify and distribute this software is granted
     9  * Permission to use, modify and distribute this software is granted
    10  * provided that this copyright notice appears in all copies. For
    10  * provided that this copyright notice appears in all copies. For
   964         to.clear();
   964         to.clear();
   965         to.buildRev(from);
   965         to.buildRev(from);
   966       }
   966       }
   967     };
   967     };
   968 
   968 
   969     
   969 
   970     template <typename From, typename To,
   970     template <typename From, typename To,
   971               bool revEnable = RevPathTagIndicator<From>::value>
   971               bool revEnable = RevPathTagIndicator<From>::value>
   972     struct PathCopySelector {
   972     struct PathCopySelector {
   973       static void copy(const From& from, To& to) {
   973       static void copy(const From& from, To& to) {
   974         PathCopySelectorForward<From, To>::copy(from, to);
   974         PathCopySelectorForward<From, To>::copy(from, to);
   975       }      
   975       }
   976     };
   976     };
   977 
   977 
   978     template <typename From, typename To>
   978     template <typename From, typename To>
   979     struct PathCopySelector<From, To, true> {
   979     struct PathCopySelector<From, To, true> {
   980       static void copy(const From& from, To& to) {
   980       static void copy(const From& from, To& to) {
   981         PathCopySelectorBackward<From, To>::copy(from, to);
   981         PathCopySelectorBackward<From, To>::copy(from, to);
   982       }      
   982       }
   983     };
   983     };
   984 
   984 
   985   }
   985   }
   986 
   986 
   987 
   987