CoinUtils
trunk
|
00001 /* $Id$ */ 00002 00003 // Copyright (C) 2002, International Business Machines 00004 // Corporation and others. All Rights Reserved. 00005 // This code is licensed under the terms of the Eclipse Public License (EPL). 00006 00007 #ifndef CoinPresolveDual_H 00008 #define CoinPresolveDual_H 00009 00035 class remove_dual_action : public CoinPresolveAction { 00036 00037 public: 00038 00040 ~remove_dual_action () ; 00041 00043 inline const char *name () const { return ("remove_dual_action") ; } 00044 00050 static const CoinPresolveAction *presolve(CoinPresolveMatrix *prob, 00051 const CoinPresolveAction *next) ; 00052 00058 void postsolve (CoinPostsolveMatrix *prob) const ; 00059 00060 private: 00061 00063 struct action { 00064 double rlo_ ; 00065 double rup_ ; 00066 int ndx_ ; 00067 } ; 00068 00070 remove_dual_action(int nactions, const action *actions, 00071 const CoinPresolveAction *next) 00072 : CoinPresolveAction(next), 00073 nactions_(nactions), 00074 actions_(actions) 00075 {} 00076 00078 const int nactions_ ; 00080 const action *actions_ ; 00081 00082 } ; 00083 #endif 00084 00085