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

- File List
- File Members

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

Go to the documentation of this file.

    00001 /* $Id: CoinPresolveTripleton.hpp 1191 2009-07-25 08:38:12Z forrest $ */
    00002 // Copyright (C) 2003, International Business Machines
    00003 // Corporation and others.  All Rights Reserved.
    00004
    00005 #ifndef CoinPresolveTripleton_H
    00006 #define CoinPresolveTripleton_H
    00007 #define TRIPLETON 11
    00008
    00013 class tripleton_action : public CoinPresolveAction {
    00014  public:
    00015   struct action {
    00016     int icolx;
    00017     int icolz;
    00018     int row;
    00019
    00020     int icoly;
    00021     double cloy;
    00022     double cupy;
    00023     double costy;
    00024     double clox;
    00025     double cupx;
    00026     double costx;
    00027
    00028     double rlo;
    00029     double rup;
    00030
    00031     double coeffx;
    00032     double coeffy;
    00033     double coeffz;
    00034
    00035     double *colel;
    00036
    00037     int ncolx;
    00038     int ncoly;
    00039   };
    00040
    00041   const int nactions_;
    00042   const action *const actions_;
    00043
    00044  private:
    00045   tripleton_action(int nactions,
    00046                       const action *actions,
    00047                       const CoinPresolveAction *next) :
    00048     CoinPresolveAction(next),
    00049     nactions_(nactions), actions_(actions)
    00050 {}
    00051
    00052  public:
    00053   const char *name() const { return ("tripleton_action"); }
    00054
    00055   static const CoinPresolveAction *presolve(CoinPresolveMatrix *,
    00056                                          const CoinPresolveAction *next);
    00057
    00058   void postsolve(CoinPostsolveMatrix *prob) const;
    00059
    00060   ~tripleton_action();
    00061 };
    00062 #endif
    00063
    00064