1
// Copyright (C) 2004, International Business Machines
2
// Corporation and others. All Rights Reserved.
4
#ifndef ClpQuadInterface_H
5
#define ClpQuadInterface_H
7
#include "OsiClpSolverInterface.hpp"
9
//#############################################################################
13
This is to allow the user to replace initialSolve and resolve
16
class ClpQuadInterface : public OsiClpSolverInterface {
19
//---------------------------------------------------------------------------
20
/**@name Solve methods */
22
/// Solve initial LP relaxation
23
virtual void initialSolve();
25
/// Resolve an LP relaxation after problem modification
26
virtual void resolve();
31
/**@name Constructors and destructors */
33
/// Default Constructor
37
virtual OsiSolverInterface * clone(bool CopyData=true) const;
40
ClpQuadInterface (const ClpQuadInterface &);
42
/// Assignment operator
43
ClpQuadInterface & operator=(const ClpQuadInterface& rhs);
46
virtual ~ClpQuadInterface ();
51
/**@name Sets and Getss */
53
/** Setup fake objective. It could also read an ampl .nl file
54
or somehow get nonlinear info */
56
/// Get objective function value (can't use default)
57
virtual double getObjValue() const;
61
//---------------------------------------------------------------------------
65
/**@name Private member data */
67
/// True quadratic objective
68
ClpObjective * quadraticObjective_;