Cgl  0.60.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CoinPresolveIsolated.hpp
Go to the documentation of this file.
1 /* $Id: CoinPresolveIsolated.hpp 2083 2019-01-06 19:38:09Z unxusr $ */
2 // Copyright (C) 2002, International Business Machines
3 // Corporation and others. All Rights Reserved.
4 // This code is licensed under the terms of the Eclipse Public License (EPL).
5 
6 #ifndef CoinPresolveIsolated_H
7 #define CoinPresolveIsolated_H
8 
9 #include "CoinPresolveMatrix.hpp"
10 
15 
16  double rlo_;
17  double rup_;
18  int row_;
19  int ninrow_;
20  // the arrays are owned by the class and must be deleted at destruction
21  const int *rowcols_;
22  const double *rowels_;
23  const double *costs_;
24 
26  double rup,
27  int row,
28  int ninrow,
29  const int *rowcols,
30  const double *rowels,
31  const double *costs,
32  const CoinPresolveAction *next)
33  : CoinPresolveAction(next)
34  , rlo_(rlo)
35  , rup_(rup)
36  , row_(row)
37  , ninrow_(ninrow)
38  , rowcols_(rowcols)
39  , rowels_(rowels)
40  , costs_(costs)
41  {
42  }
43 
44 public:
45  const char *name() const;
46 
48  int row,
49  const CoinPresolveAction *next);
50 
51  void postsolve(CoinPostsolveMatrix *prob) const;
52 
54 };
55 
56 #endif
57 
58 /* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
59 */
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, int row, const CoinPresolveAction *next)
Abstract base class of all presolve routines.
isolated_constraint_action(double rlo, double rup, int row, int ninrow, const int *rowcols, const double *rowels, const double *costs, const CoinPresolveAction *next)
isolated_constraint_action & operator=(const isolated_constraint_action &rhs)
Declarations for CoinPresolveMatrix and CoinPostsolveMatrix and their common base class CoinPrePostso...
const CoinPresolveAction * next
The next presolve transformation.
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsol...
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolv...
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
const char * name() const
A name for debug printing.
virtual ~isolated_constraint_action()