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

- File List
- File Members

# /home/coin/svn-release/Alps-1.5.2/Cgl/src/CglZeroHalf/CglZeroHalf.hpp

Go to the documentation of this file.

    00001 // $Id: CglZeroHalf.hpp 1122 2013-04-06 20:39:53Z stefan $
    00002 // Copyright (C) 2010, International Business Machines
    00003 // Corporation and others.  All Rights Reserved.
    00004 // This code is licensed under the terms of the Eclipse Public License (EPL).
    00005 #ifndef CglZeroHalf_H
    00006 #define CglZeroHalf_H
    00007
    00008 #include <string>
    00009
    00010 #include "CglCutGenerator.hpp"
    00011 #include "CoinPackedMatrix.hpp"
    00012 #include "Cgl012cut.hpp"
    00013
    00026 class CglZeroHalf : public CglCutGenerator {
    00027    friend void CglZeroHalfUnitTest(const OsiSolverInterface * siP,
    00028                                          const std::string mpdDir );
    00029
    00030 public:
    00031
    00037   virtual void generateCuts( const OsiSolverInterface & si, OsiCuts & cs,
    00038                              const CglTreeInfo info = CglTreeInfo());
    00040
    00043
    00044   inline int getFlags() const
    00045   { return flags_;}
    00047   inline void setFlags(int value)
    00048   { flags_ = value;}
    00050
    00053
    00054   CglZeroHalf ();
    00055
    00057   CglZeroHalf (
    00058     const CglZeroHalf &);
    00059
    00061   virtual CglCutGenerator * clone() const;
    00062
    00064   CglZeroHalf &
    00065     operator=(
    00066     const CglZeroHalf& rhs);
    00067
    00069   virtual
    00070     ~CglZeroHalf ();
    00072   virtual std::string generateCpp( FILE * fp);
    00074   virtual void refreshSolver(OsiSolverInterface * solver);
    00076
    00077 private:
    00078
    00079   // Private member methods
    00080
    00083
    00084
    00085
    00088
    00089   int mr_;
    00091   int mc_;
    00093   int mnz_;
    00095   int *mtbeg_;
    00097   int *mtcnt_;
    00099   int *mtind_;
    00101   int *mtval_;
    00103   int *vlb_;
    00105   int *vub_;
    00107   int *mrhs_;
    00109   char *msense_;
    00111   Cgl012Cut cutInfo_;
    00115   int flags_;
    00117 };
    00119 #ifndef CGL_NEW_SHORT
    00120 void cglShortestPath(cgl_graph * graph, int source, int maximumLength);
    00121 #else
    00122 void cglShortestPath(auxiliary_graph * graph, int source, int maximumLength);
    00123 #endif
    00124 //#############################################################################
    00130 void CglZeroHalfUnitTest(const OsiSolverInterface * siP,
    00131                                const std::string mpdDir );
    00132
    00133 #endif