00001 // Copyright (C) 2002, International Business Machines 00002 // Corporation and others. All Rights Reserved. 00003 #ifndef ClpPrimalQuadraticDantzig_H 00004 #define ClpPrimalQuadraticDantzig_H 00005 00006 #include "ClpPrimalColumnPivot.hpp" 00007 class ClpSimplexPrimalQuadratic; 00008 class ClpQuadraticInfo; 00009 //############################################################################# 00010 00017 class ClpPrimalQuadraticDantzig : public ClpPrimalColumnPivot { 00018 00019 public: 00020 00022 00023 00029 virtual int pivotColumn(CoinIndexedVector * updates, 00030 CoinIndexedVector * spareRow1, 00031 CoinIndexedVector * spareRow2, 00032 CoinIndexedVector * spareColumn1, 00033 CoinIndexedVector * spareColumn2); 00034 00036 virtual void saveWeights(ClpSimplex * model,int mode) 00037 {model_=model;} 00039 00040 00042 00043 00044 ClpPrimalQuadraticDantzig(); 00045 00047 ClpPrimalQuadraticDantzig(const ClpPrimalQuadraticDantzig &); 00048 00050 ClpPrimalQuadraticDantzig(ClpSimplexPrimalQuadratic * model, 00051 ClpQuadraticInfo * info); 00052 00054 ClpPrimalQuadraticDantzig & operator=(const ClpPrimalQuadraticDantzig& rhs); 00055 00057 virtual ~ClpPrimalQuadraticDantzig (); 00058 00060 virtual ClpPrimalColumnPivot * clone(bool copyData = true) const; 00061 00063 00064 //--------------------------------------------------------------------------- 00065 00066 private: 00069 ClpQuadraticInfo * quadraticInfo_; 00071 }; 00072 00073 #endif