6 #ifndef CoinPresolveEmpty_H
7 #define CoinPresolveEmpty_H
45 const action *
const actions_;
48 const action *
const actions,
56 const char *
name()
const {
return (
"drop_empty_cols_action"); }
96 const action *
const actions_;
99 const action *actions,
102 nactions_(nactions), actions_(actions)
106 const char *
name()
const {
return (
"drop_empty_rows_action"); }
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
virtual ~drop_empty_cols_action()
Abstract base class of all presolve routines.
#define deleteAction(array, type)
static const CoinPresolveAction * presolve(CoinPresolveMatrix *, const int *ecols, int necols, const CoinPresolveAction *)
CoinPresolveAction(const CoinPresolveAction *next)
Construct a postsolve object and add it to the transformation list.
const CoinPresolveAction * next
The next presolve transformation.
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsol...
Physically removes empty columns in presolve, and reinserts empty columns in postsolve.
const char * name() const
A name for debug printing.
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolv...
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
const char * name() const
A name for debug printing.
Physically removes empty rows in presolve, and reinserts empty rows in postsolve. ...
virtual ~drop_empty_rows_action()