lemon/network_simplex.h
changeset 862 b6f76c95992e
parent 840 2914b6f0fde0
child 877 141f9c0db4a3
     1.1 --- a/lemon/network_simplex.h	Wed Mar 03 20:48:29 2010 +0000
     1.2 +++ b/lemon/network_simplex.h	Thu Mar 04 10:03:14 2010 +0100
     1.3 @@ -170,12 +170,16 @@
     1.4      // Note: vector<char> is used instead of vector<bool> for efficiency reasons
     1.5  
     1.6      // State constants for arcs
     1.7 -    enum ArcStateEnum {
     1.8 +    enum ArcState {
     1.9        STATE_UPPER = -1,
    1.10        STATE_TREE  =  0,
    1.11        STATE_LOWER =  1
    1.12      };
    1.13  
    1.14 +    typedef std::vector<signed char> StateVector;
    1.15 +    // Note: vector<signed char> is used instead of vector<ArcState> for
    1.16 +    // efficiency reasons
    1.17 +
    1.18    private:
    1.19  
    1.20      // Data related to the underlying digraph
    1.21 @@ -215,7 +219,7 @@
    1.22      IntVector _last_succ;
    1.23      IntVector _dirty_revs;
    1.24      BoolVector _forward;
    1.25 -    BoolVector _state;
    1.26 +    StateVector _state;
    1.27      int _root;
    1.28  
    1.29      // Temporary data used in the current pivot iteration
    1.30 @@ -246,7 +250,7 @@
    1.31        const IntVector  &_source;
    1.32        const IntVector  &_target;
    1.33        const CostVector &_cost;
    1.34 -      const BoolVector &_state;
    1.35 +      const StateVector &_state;
    1.36        const CostVector &_pi;
    1.37        int &_in_arc;
    1.38        int _search_arc_num;
    1.39 @@ -298,7 +302,7 @@
    1.40        const IntVector  &_source;
    1.41        const IntVector  &_target;
    1.42        const CostVector &_cost;
    1.43 -      const BoolVector &_state;
    1.44 +      const StateVector &_state;
    1.45        const CostVector &_pi;
    1.46        int &_in_arc;
    1.47        int _search_arc_num;
    1.48 @@ -337,7 +341,7 @@
    1.49        const IntVector  &_source;
    1.50        const IntVector  &_target;
    1.51        const CostVector &_cost;
    1.52 -      const BoolVector &_state;
    1.53 +      const StateVector &_state;
    1.54        const CostVector &_pi;
    1.55        int &_in_arc;
    1.56        int _search_arc_num;
    1.57 @@ -410,7 +414,7 @@
    1.58        const IntVector  &_source;
    1.59        const IntVector  &_target;
    1.60        const CostVector &_cost;
    1.61 -      const BoolVector &_state;
    1.62 +      const StateVector &_state;
    1.63        const CostVector &_pi;
    1.64        int &_in_arc;
    1.65        int _search_arc_num;
    1.66 @@ -513,7 +517,7 @@
    1.67        const IntVector  &_source;
    1.68        const IntVector  &_target;
    1.69        const CostVector &_cost;
    1.70 -      const BoolVector &_state;
    1.71 +      const StateVector &_state;
    1.72        const CostVector &_pi;
    1.73        int &_in_arc;
    1.74        int _search_arc_num;