# CbcLinkBranchingObject Class Reference

Branching object for Special ordered sets. More...

`#include <CbcBranchLink.hpp>`

Inheritance diagram for CbcLinkBranchingObject:
[legend]
Collaboration diagram for CbcLinkBranchingObject:
[legend]

List of all members.

## Public Member Functions
| CbcLinkBranchingObject ()
| CbcLinkBranchingObject (CbcModel *model, const CbcLink *set, int way, double separator)
| CbcLinkBranchingObject (const CbcLinkBranchingObject &)
CbcLinkBranchingObject & | operator= (const CbcLinkBranchingObject &rhs)
| Assignment operator.
virtual CbcBranchingObject * | clone () const
| Clone.
virtual | ~CbcLinkBranchingObject ()
virtual double | branch ()
| Does next branch and updates state.
virtual void | print ()
| Print something about branch - only if log level high.
virtual CbcBranchObjType | type () const
| Return the type (an integer identifier) of `this`.
virtual CbcRangeCompare | compareBranchingObject (const CbcBranchingObject *brObj, const bool replaceIfOverlap=false)
| Compare the `this` with `brObj`.
## Private Attributes
const CbcLink * | set_
| data
double | separator_
| separator

## Detailed Description

Branching object for Special ordered sets.

Variable_ is the set id number (redundant, as the object also holds a pointer to the set.

Definition at line 98 of file CbcBranchLink.hpp.

## Constructor & Destructor Documentation

CbcLinkBranchingObject::CbcLinkBranchingObject | ( |  | ) |

CbcLinkBranchingObject::CbcLinkBranchingObject | ( | CbcModel * | model,
|  | const CbcLink * | set,
|  | int | way,
|  | double | separator |
| ) |  |  |

CbcLinkBranchingObject::CbcLinkBranchingObject | ( | const CbcLinkBranchingObject & |  | ) |

virtual CbcLinkBranchingObject::~CbcLinkBranchingObject | ( |  | ) | `[virtual]`

## Member Function Documentation

CbcLinkBranchingObject& CbcLinkBranchingObject::operator= | ( | const CbcLinkBranchingObject & | rhs | ) |

Assignment operator.

Reimplemented from CbcBranchingObject.

virtual CbcBranchingObject* CbcLinkBranchingObject::clone | ( |  | ) | const`[virtual]`

Clone.

Implements CbcBranchingObject.

virtual double CbcLinkBranchingObject::branch | ( |  | ) | `[virtual]`

Does next branch and updates state.

Implements CbcBranchingObject.

virtual void CbcLinkBranchingObject::print | ( |  | ) | `[virtual]`

Print something about branch - only if log level high.

virtual CbcBranchObjType CbcLinkBranchingObject::type | ( |  | ) | const`[inline, virtual]`

Return the type (an integer identifier) of `this`.

Implements CbcBranchingObject.

Definition at line 129 of file CbcBranchLink.hpp.

virtual CbcRangeCompare CbcLinkBranchingObject::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.

## Member Data Documentation

const CbcLink* CbcLinkBranchingObject::set_`[private]`

data

Definition at line 144 of file CbcBranchLink.hpp.

double CbcLinkBranchingObject::separator_`[private]`

separator

Definition at line 146 of file CbcBranchLink.hpp.

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

- /home/coin/svn-release/Cbc-2.7.8/Cbc/examples/CbcBranchLink.hpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines