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

- File List
- File Members

# /home/coin/SVN-release/Cgl-0.55.0/Clp/src/ClpPrimalColumnPivot.hpp

Go to the documentation of this file.

    00001 /* $Id: ClpPrimalColumnPivot.hpp 1461 2009-11-06 19:06:43Z stefan $ */
    00002 // Copyright (C) 2002, International Business Machines
    00003 // Corporation and others.  All Rights Reserved.
    00004 #ifndef ClpPrimalcolumnPivot_H
    00005 #define ClpPrimalcolumnPivot_H
    00006
    00007 class ClpSimplex;
    00008 class CoinIndexedVector;
    00009
    00010 //#############################################################################
    00011
    00023 class ClpPrimalColumnPivot  {
    00024
    00025 public:
    00026
    00028
    00029
    00048   virtual int pivotColumn(CoinIndexedVector * updates,
    00049                           CoinIndexedVector * spareRow1,
    00050                           CoinIndexedVector * spareRow2,
    00051                           CoinIndexedVector * spareColumn1,
    00052                           CoinIndexedVector * spareColumn2) = 0;
    00053
    00055   virtual void updateWeights(CoinIndexedVector * input);
    00056
    00068   virtual void saveWeights(ClpSimplex * model,int mode)=0;
    00074   virtual int pivotRow(double & way)
    00075   {way=0;return -2;}
    00077   virtual void clearArrays();
    00079   virtual bool looksOptimal() const
    00080   { return looksOptimal_;}
    00082   virtual void setLooksOptimal(bool flag)
    00083   { looksOptimal_ = flag;}
    00085
    00086
    00088
    00089
    00090   ClpPrimalColumnPivot();
    00091
    00093   ClpPrimalColumnPivot(const ClpPrimalColumnPivot &);
    00094
    00096   ClpPrimalColumnPivot & operator=(const ClpPrimalColumnPivot& rhs);
    00097
    00099   virtual ~ClpPrimalColumnPivot ();
    00100
    00102   virtual ClpPrimalColumnPivot * clone(bool copyData = true) const = 0;
    00103
    00105
    00107
    00108
    00109   inline ClpSimplex * model()
    00110   { return model_;}
    00112   inline void setModel(ClpSimplex * newmodel)
    00113   { model_=newmodel;}
    00114
    00116   inline int type()
    00117   { return type_;}
    00118
    00122   virtual int numberSprintColumns(int & numberIterations) const;
    00124   virtual void switchOffSprint();
    00126   virtual void maximumPivotsChanged() {}
    00127
    00129
    00130   //---------------------------------------------------------------------------
    00131
    00132 protected:
    00134
    00135
    00136   ClpSimplex * model_;
    00138   int type_;
    00140   bool looksOptimal_;
    00142 };
    00143
    00144 #endif