Bonmin  1.8.8
BonCbcNode.hpp
Go to the documentation of this file.
1 // (C) Copyright International Business Machines Corporation and Carnegie Mellon University 2006
2 // All Rights Reserved.
3 // This code is published under the Eclipse Public License.
4 //
5 // Authors :
6 // John J. Forrest, International Business Machines Corporation
7 // Pierre Bonami, Carnegie Mellon University,
8 //
9 // Date : 03/15/2006
10 
11 #ifndef BonminCbcNode_H
12 #define BonminCbcNode_H
13 
14 #include "CbcNode.hpp"
15 #include "BonRegisteredOptions.hpp"
16 
17 
18 namespace Bonmin
19 {
28  class BonCbcFullNodeInfo : public CbcFullNodeInfo
29  {
30 
31  public:
32  friend class BonCbcPartialNodeInfo;
33  // Default Constructor
35 
36  // Constructor from current state
37  BonCbcFullNodeInfo (CbcModel * model, int numberRowsAtContinuous);
38 
39  // Copy constructor
41 
42  // Destructor
44 
46  virtual CbcNodeInfo * clone() const;
47 
50  virtual void allBranchesGone();
51 
54  {
56  }
59  {
61  }
63  static void registerOptions(Ipopt::SmartPtr<Bonmin::RegisteredOptions> roptions);
64 
65  private:
66  /* Data values */
71  private:
72 
75  };
76 
85  class BonCbcPartialNodeInfo : public CbcPartialNodeInfo
86  {
87 
88  public:
89  // Default Constructor
91 
92  // Constructor from current state
93  BonCbcPartialNodeInfo (CbcModel * model, CbcNodeInfo * parent, CbcNode * owner,
94  int numberChangedBounds,const int * variables,
95  const double * boundChanges,
96  const CoinWarmStartDiff *basisDiff) ;
97 
98  // Copy constructor
100 
101  // Destructor
103 
105  virtual CbcNodeInfo * clone() const;
106 
109  virtual void allBranchesGone();
110 
113  {
115  }
118  {
120  }
121  private:
122  /* Data values */
127  private:
128 
131  };
132 }
133 #endif
int getSequenceOfUnsolvedSize()
Number of consecutive unsolved parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:117
int sequenceOfUnsolvedSize_
Number of consecutive unsolved parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:70
int sequenceOfInfeasiblesSize_
Number of consecutive infeasible parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:124
Holds information for recreating a subproblem by incremental change from the parent for...
Definition: BonCbcNode.hpp:85
int getSequenceOfInfeasiblesSize()
Number of consecutive infeasible parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:53
static void registerOptions(Ipopt::SmartPtr< Bonmin::RegisteredOptions > roptions)
Register all the options for class instance.
virtual void allBranchesGone()
Method called when all direct sons have been explored to flush useless warm start information...
int sequenceOfUnsolvedSize_
Number of consecutive unsolved parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:126
virtual void allBranchesGone()
Method called when all direct sons have been explored to flush useless warm start information...
int getSequenceOfInfeasiblesSize()
Number of consecutive infeasible parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:112
int getSequenceOfUnsolvedSize()
Number of consecutive unsolved parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:58
BonCbcFullNodeInfo & operator=(const BonCbcFullNodeInfo &rhs)
Illegal Assignment operator.
virtual CbcNodeInfo * clone() const
Clone.
BonCbcPartialNodeInfo & operator=(const Bonmin::BonCbcPartialNodeInfo &rhs)
Illegal Assignment operator.
Holds information for recreating a subproblem by incremental change from the parent for Bonmin...
Definition: BonCbcNode.hpp:28
virtual CbcNodeInfo * clone() const
Clone.
int sequenceOfInfeasiblesSize_
Number of consecutive infeasible parents only recorded if node is infeasible.
Definition: BonCbcNode.hpp:68