- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- File List
- File Members

# /home/coin/SVN-release/Cgl-0.53.1/Cgl/src/CglFlowCover/CglFlowCover.hpp File Reference

`#include <iostream>`
`#include "CoinError.hpp"`
`#include "CglCutGenerator.hpp"`

Include dependency graph for CglFlowCover.hpp:

Go to the source code of this file.

## Classes
class | CglFlowVUB
| Varibale upper bound class. More...
class | CglFlowCover
| Lifed Simple Generalized Flow Cover Cut Generator Class. More...
## Typedefs
typedef CglFlowVUB | CglFlowVLB
| Varibale lower bound class, which is the same as vub.
## Enumerations
enum | CglFlowColType { CGLFLOW_COL_BINNEG = -2, CGLFLOW_COL_CONTNEG, CGLFLOW_COL_CONTPOS = 1, CGLFLOW_COL_BINPOS }
| This enumerative constant describes the various col types. More...
enum | CglFlowColStatus { CGLFLOW_COL_PRIME, CGLFLOW_COL_SECONDARY }
| This enumerative constant describes the various stati of vars in determining the cover. More...
enum | CglFlowColCut { CGLFLOW_COL_OUTCUT = 0, CGLFLOW_COL_INCUT, CGLFLOW_COL_INCUTDONE, CGLFLOW_COL_INLMIN, CGLFLOW_COL_INLMINDONE, CGLFLOW_COL_INLMINMIN }
| This enumerative constant describes the various stati of vars in a cut or not. More...
enum | CglFlowRowType { CGLFLOW_ROW_UNDEFINED, CGLFLOW_ROW_VARUB, CGLFLOW_ROW_VARLB, CGLFLOW_ROW_VAREQ, CGLFLOW_ROW_MIXUB, CGLFLOW_ROW_MIXEQ, CGLFLOW_ROW_NOBINUB, CGLFLOW_ROW_NOBINEQ, CGLFLOW_ROW_SUMVARUB, CGLFLOW_ROW_SUMVAREQ, CGLFLOW_ROW_UNINTERSTED }
| This enumerative constant describes the various row types. More...
## Functions
std::ostream & | operator<< (std::ostream &os, const CglFlowVUB &v)
| Overloaded operator<< for printing VUB and VLB.
void | CglFlowCoverUnitTest (const OsiSolverInterface *siP, const std::string mpdDir)
| A function that tests the methods in the CglProbing class.

## Typedef Documentation

typedef CglFlowVUB CglFlowVLB

Varibale lower bound class, which is the same as vub.

Definition at line 138 of file CglFlowCover.hpp.

## Enumeration Type Documentation

enum CglFlowColType

This enumerative constant describes the various col types.

Enumerator:

  CGLFLOW_COL_BINNEG | The column(variable) is a negative binary variable.
  CGLFLOW_COL_CONTNEG | The column is a negative continous variable.
  CGLFLOW_COL_CONTPOS | The column is a positive continous variable.
  CGLFLOW_COL_BINPOS | The column is a positive binary variable.

Definition at line 28 of file CglFlowCover.hpp.

enum CglFlowColStatus

This enumerative constant describes the various stati of vars in determining the cover.

Enumerator:

  CGLFLOW_COL_PRIME | The column is a prime candidate.
  CGLFLOW_COL_SECONDARY | The column is a secondary candidate.

Definition at line 41 of file CglFlowCover.hpp.

enum CglFlowColCut

This enumerative constant describes the various stati of vars in a cut or not.

Enumerator:

  CGLFLOW_COL_OUTCUT | The column is NOT in cover.
  CGLFLOW_COL_INCUT | The column is in cover now.
  CGLFLOW_COL_INCUTDONE | The column is decided to be in cover.
  CGLFLOW_COL_INLMIN | The column is in L-.
  CGLFLOW_COL_INLMINDONE | The column is decided to be in L-.
  CGLFLOW_COL_INLMINMIN | The column is in L--.

Definition at line 50 of file CglFlowCover.hpp.

enum CglFlowRowType

This enumerative constant describes the various row types.

Enumerator:

  CGLFLOW_ROW_UNDEFINED | The row type of this row is NOT defined yet.
  CGLFLOW_ROW_VARUB | After the row is flipped to 'L', the row has exactly two variables: one is negative binary and the other is continous, and the RHS is zero.
  CGLFLOW_ROW_VARLB | After the row is flipped to 'L', the row has exactlytwo variables: one is positive binary and the other is continous, and the RHS is zero.
  CGLFLOW_ROW_VAREQ | The row sense is 'E', the row has exactly two variables: one is binary and the other is a continous, and the RHS is zero.
  CGLFLOW_ROW_MIXUB | Rows can not be classfied into other types and the row sense is NOT 'E'.
  CGLFLOW_ROW_MIXEQ | Rows can not be classfied into other types and the row sense is 'E'.
  CGLFLOW_ROW_NOBINUB | All variables are NOT binary and the row sense is NOT 'E'.
  CGLFLOW_ROW_NOBINEQ | All variables are NOT binary and the row sense is 'E'.
  CGLFLOW_ROW_SUMVARUB | The row has one binary and 2 or more other types of variables and the row sense is NOT 'E'.
  CGLFLOW_ROW_SUMVAREQ | The row has one binary and 2 or more other types of variables and the row sense is 'E'.
  CGLFLOW_ROW_UNINTERSTED | All variables are binary.

Definition at line 66 of file CglFlowCover.hpp.

## Function Documentation

std::ostream& operator<< | ( | std::ostream & | os,
|  | const CglFlowVUB & | v |
| ) |  |  |

Overloaded operator<< for printing VUB and VLB.

void CglFlowCoverUnitTest | ( | const OsiSolverInterface * | siP,
|  | const std::string | mpdDir |
| ) |  |  |

A function that tests the methods in the CglProbing class.

The only reason for it not to be a member method is that this way it doesn't have to be compiled into the library. And that's a gain, because the library should be compiled with optimization on, but this method should be compiled with debugging.