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

- File List
- File Members

# /home/coin/SVN-release/Vol-1.2.0/CoinUtils/src/CoinPresolveDoubleton.hpp

Go to the documentation of this file.

    00001 /* $Id: CoinPresolveDoubleton.hpp 1191 2009-07-25 08:38:12Z forrest $ */
    00002 // Copyright (C) 2002, International Business Machines
    00003 // Corporation and others.  All Rights Reserved.
    00004
    00005 #ifndef CoinPresolveDoubleton_H
    00006 #define CoinPresolveDoubleton_H
    00007
    00008 #define DOUBLETON       5
    00009
    00025 class doubleton_action : public CoinPresolveAction {
    00026  public:
    00027   struct action {
    00028
    00029     double clox;
    00030     double cupx;
    00031     double costx;
    00032
    00033     double costy;
    00034
    00035     double rlo;
    00036
    00037     double coeffx;
    00038     double coeffy;
    00039
    00040     double *colel;
    00041
    00042     int icolx;
    00043     int icoly;
    00044     int row;
    00045     int ncolx;
    00046     int ncoly;
    00047   };
    00048
    00049   const int nactions_;
    00050   const action *const actions_;
    00051
    00052  private:
    00053   doubleton_action(int nactions,
    00054                       const action *actions,
    00055                       const CoinPresolveAction *next) :
    00056     CoinPresolveAction(next),
    00057     nactions_(nactions), actions_(actions)
    00058 {}
    00059
    00060  public:
    00061   const char *name() const { return ("doubleton_action"); }
    00062
    00063   static const CoinPresolveAction *presolve(CoinPresolveMatrix *,
    00064                                          const CoinPresolveAction *next);
    00065
    00066   void postsolve(CoinPostsolveMatrix *prob) const;
    00067
    00068   ~doubleton_action();
    00069 };
    00070 #endif
    00071
    00072