N way branching Object class. More...
#include <CbcBranchActual.hpp>
Public Member Functions | |
CbcNWayBranchingObject () | |
CbcNWayBranchingObject (CbcModel *model, const CbcNWay *nway, int numberBranches, const int *order) | |
Useful constructor - order had matrix indices way_ -1 corresponds to setting first, +1 to second, +3 etc. | |
CbcNWayBranchingObject (const CbcNWayBranchingObject &) | |
CbcNWayBranchingObject & | operator= (const CbcNWayBranchingObject &rhs) |
Assignment operator. | |
virtual CbcBranchingObject * | clone () const |
Clone. | |
virtual | ~CbcNWayBranchingObject () |
virtual double | branch () |
Does next branch and updates state. | |
virtual void | print () |
Print something about branch - only if log level high. | |
virtual int | numberBranches () const |
The number of branch arms created for this branching object. | |
virtual bool | twoWay () const |
Is this a two way object (-1 down, +1 up). | |
virtual int | type () const |
Return the type (an integer identifier) of this . | |
virtual int | compareOriginalObject (const CbcBranchingObject *brObj) const |
Compare the original object of this with the original object of brObj . | |
virtual CbcRangeCompare | compareBranchingObject (const CbcBranchingObject *brObj, const bool replaceIfOverlap=false) |
Compare the this with brObj . | |
Private Attributes | |
int * | order_ |
order of branching - points back to CbcNWay | |
const CbcNWay * | object_ |
Points back to object. | |
int | numberInSet_ |
Number in set. |
N way branching Object class.
Variable is number of set.
Definition at line 956 of file CbcBranchActual.hpp.
CbcNWayBranchingObject::CbcNWayBranchingObject | ( | ) |
CbcNWayBranchingObject::CbcNWayBranchingObject | ( | CbcModel * | model, | |
const CbcNWay * | nway, | |||
int | numberBranches, | |||
const int * | order | |||
) |
Useful constructor - order had matrix indices way_ -1 corresponds to setting first, +1 to second, +3 etc.
this is so -1 and +1 have similarity to normal
CbcNWayBranchingObject::CbcNWayBranchingObject | ( | const CbcNWayBranchingObject & | ) |
virtual CbcNWayBranchingObject::~CbcNWayBranchingObject | ( | ) | [virtual] |
CbcNWayBranchingObject& CbcNWayBranchingObject::operator= | ( | const CbcNWayBranchingObject & | rhs | ) |
Assignment operator.
Reimplemented from CbcBranchingObject.
virtual CbcBranchingObject* CbcNWayBranchingObject::clone | ( | ) | const [virtual] |
Clone.
Implements CbcBranchingObject.
virtual double CbcNWayBranchingObject::branch | ( | ) | [virtual] |
Does next branch and updates state.
Implements CbcBranchingObject.
virtual void CbcNWayBranchingObject::print | ( | ) | [virtual] |
Print something about branch - only if log level high.
virtual int CbcNWayBranchingObject::numberBranches | ( | ) | const [inline, virtual] |
The number of branch arms created for this branching object.
Reimplemented from OsiBranchingObject.
Definition at line 1000 of file CbcBranchActual.hpp.
virtual bool CbcNWayBranchingObject::twoWay | ( | ) | const [inline, virtual] |
Is this a two way object (-1 down, +1 up).
Definition at line 1003 of file CbcBranchActual.hpp.
virtual int CbcNWayBranchingObject::type | ( | ) | const [inline, virtual] |
Return the type (an integer identifier) of this
.
Implements CbcBranchingObject.
Definition at line 1007 of file CbcBranchActual.hpp.
virtual int CbcNWayBranchingObject::compareOriginalObject | ( | const CbcBranchingObject * | brObj | ) | const [virtual] |
Compare the original object of this
with the original object of brObj
.
Assumes that there is an ordering of the original objects. This method should be invoked only if this
and brObj are of the same type. Return negative/0/positive depending on whether this
is smaller/same/larger than the argument.
virtual CbcRangeCompare CbcNWayBranchingObject::compareBranchingObject | ( | const CbcBranchingObject * | brObj, | |
const bool | replaceIfOverlap = false | |||
) | [virtual] |
Compare the this
with brObj
.
this
and brObj
must be os the same type and must have the same original object, but they may have different feasible regions. Return the appropriate CbcRangeCompare value (first argument being the sub/superset if that's the case). In case of overlap (and if replaceIfOverlap
is true) replace the current branching object with one whose feasible region is the overlap.
int* CbcNWayBranchingObject::order_ [private] |
order of branching - points back to CbcNWay
Definition at line 1031 of file CbcBranchActual.hpp.
const CbcNWay* CbcNWayBranchingObject::object_ [private] |
Points back to object.
Definition at line 1033 of file CbcBranchActual.hpp.
int CbcNWayBranchingObject::numberInSet_ [private] |
Number in set.
Definition at line 1035 of file CbcBranchActual.hpp.