lemon/mip_glpk.cc
changeset 2148 ab368e0ab662
parent 2144 cd8897f67c26
child 2149 b437bdee6fd0
     1.1 --- a/lemon/mip_glpk.cc	Mon Jul 17 09:31:41 2006 +0000
     1.2 +++ b/lemon/mip_glpk.cc	Mon Jul 17 11:56:17 2006 +0000
     1.3 @@ -29,20 +29,30 @@
     1.4    MipGlpk::MipGlpk() {
     1.5      lpx_set_class(lp,LPX_MIP);
     1.6    }
     1.7 -  
     1.8 -  void MipGlpk::_integer(int i, bool enable){
     1.9 -    if(enable){
    1.10 -      lpx_set_col_kind(lp,i,LPX_IV);
    1.11 -    }else{
    1.12 -      lpx_set_col_kind(lp,i,LPX_CV);
    1.13 +
    1.14 +  void MipGlpk::_colType(int i, ColTypes col_type){
    1.15 +    switch (col_type){
    1.16 +      case INTEGER:
    1.17 +	lpx_set_col_kind(lp,i,LPX_IV);
    1.18 +	break;
    1.19 +      case REAL:
    1.20 +	lpx_set_col_kind(lp,i,LPX_CV);
    1.21 +	break;
    1.22 +      default:
    1.23 +        //FIXME problem
    1.24      }
    1.25    }
    1.26    
    1.27 -  bool MipGlpk::_integer(int i){
    1.28 -    if(LPX_IV == lpx_get_col_kind(lp,i)){
    1.29 -      return true;
    1.30 +  ColTypes MipGlpk::_colType(int i){
    1.31 +    switch (lpx_get_col_kind(lp,i)){
    1.32 +    case LPX_IV:
    1.33 +      return INTEGER;//Or binary
    1.34 +    case LPX_CV:
    1.35 +      return REAL;
    1.36 +    default:
    1.37 +      return REAL;//Error!
    1.38      }
    1.39 -    return false;
    1.40 +    
    1.41    }
    1.42    
    1.43    LpGlpk::SolveExitStatus MipGlpk::_solve(){