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

- File List
- File Members

# /home/coin/SVN-release/Osi-0.98.1/CoinUtils/src/CoinPresolveDoubleton.hpp

Go to the documentation of this file.

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