00001 /* $Id: CouenneVTObject.hpp 141 2009-06-03 04:19:19Z pbelotti $ */ 00002 /* 00003 * Name: CouenneVTObject.hpp 00004 * Authors: Pietro Belotti, Carnegie Mellon University 00005 * Purpose: Object for branching on variables using violation transfer 00006 * 00007 * (C) Carnegie-Mellon University, 2008. 00008 * This file is licensed under the Common Public License (CPL) 00009 */ 00010 00011 #ifndef COUENNEVTOBJECT_HPP 00012 #define COUENNEVTOBJECT_HPP 00013 00014 #include "CouenneVarObject.hpp" 00015 00017 class CouenneVTObject: public CouenneVarObject { 00018 00019 public: 00020 00022 CouenneVTObject (CouenneProblem *p, 00023 exprVar *ref, 00024 Bonmin::BabSetupBase *base, 00025 JnlstPtr jnlst): 00026 00027 CouenneVarObject (p, ref, base, jnlst) {} 00028 00030 CouenneVTObject (const CouenneVTObject &src): 00031 CouenneVarObject (src) {} 00032 00034 ~CouenneVTObject () {} 00035 00037 virtual OsiObject *clone () const 00038 {return new CouenneVTObject (*this);} 00039 00043 virtual double infeasibility (const OsiBranchingInformation *info, int &way) const; 00044 }; 00045 00046 #endif