Public Member Functions | Private Attributes
CbcNWayBranchingObject Class Reference

N way branching Object class. More...

#include <CbcNWay.hpp>

Inheritance diagram for CbcNWayBranchingObject:
CbcBranchingObject CbcBranchingObject

List of all members.

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 &)
CbcNWayBranchingObjectoperator= (const CbcNWayBranchingObject &rhs)
virtual CbcBranchingObjectclone () 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 CbcBranchObjType 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.
 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 &)
CbcNWayBranchingObjectoperator= (const CbcNWayBranchingObject &rhs)
virtual CbcBranchingObjectclone () 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 CbcBranchObjType 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 CbcNWayobject_
 Points back to object.
int numberInSet_
 Number in set.

Detailed Description

N way branching Object class.

Variable is number of set.

Definition at line 75 of file CbcNWay.hpp.


Constructor & Destructor Documentation

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 ( )
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]

Member Function Documentation

CbcNWayBranchingObject& CbcNWayBranchingObject::operator= ( const CbcNWayBranchingObject rhs)
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.

Definition at line 119 of file CbcNWay.hpp.

virtual bool CbcNWayBranchingObject::twoWay ( ) const [inline, virtual]

Is this a two way object (-1 down, +1 up)

Definition at line 123 of file CbcNWay.hpp.

virtual CbcBranchObjType CbcNWayBranchingObject::type ( ) const [inline, virtual]

Return the type (an integer identifier) of this.

Implements CbcBranchingObject.

Definition at line 128 of file CbcNWay.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.

Reimplemented from CbcBranchingObject.

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.

Implements CbcBranchingObject.

CbcNWayBranchingObject& CbcNWayBranchingObject::operator= ( const CbcNWayBranchingObject rhs)
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.

Definition at line 119 of file CbcNWay.hpp.

virtual bool CbcNWayBranchingObject::twoWay ( ) const [inline, virtual]

Is this a two way object (-1 down, +1 up)

Definition at line 123 of file CbcNWay.hpp.

virtual CbcBranchObjType CbcNWayBranchingObject::type ( ) const [inline, virtual]

Return the type (an integer identifier) of this.

Implements CbcBranchingObject.

Definition at line 128 of file CbcNWay.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.

Reimplemented from CbcBranchingObject.

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.

Implements CbcBranchingObject.


Member Data Documentation

order of branching - points back to CbcNWay

Definition at line 154 of file CbcNWay.hpp.

Points back to object.

Definition at line 156 of file CbcNWay.hpp.

Number in set.

Definition at line 158 of file CbcNWay.hpp.


The documentation for this class was generated from the following files: