# OsiSolverBranch Class Reference

Solver Branch Class. More...

`#include <OsiSolverBranch.hpp>`

List of all members.

## Public Member Functions
Add and Get methods
void | addBranch (int iColumn, double value)
| Add a simple branch (i.e. first sets ub of floor(value), second lb of ceil(value)).
void | addBranch (int way, int numberTighterLower, const int *whichLower, const double *newLower, int numberTighterUpper, const int *whichUpper, const double *newUpper)
| Add bounds - way =-1 is first , +1 is second.
void | addBranch (int way, int numberColumns, const double *oldLower, const double *newLower, const double *oldUpper, const double *newUpper)
| Add bounds - way =-1 is first , +1 is second.
void | applyBounds (OsiSolverInterface &solver, int way) const
| Apply bounds.
bool | feasibleOneWay (const OsiSolverInterface &solver) const
| Returns true if current solution satsifies one side of branch.
const int * | starts () const
| Starts.
const int * | which () const
| Which variables.
const double * | bounds () const
| Bounds.
Constructors and destructors
| OsiSolverBranch ()
| Default Constructor.
| OsiSolverBranch (const OsiSolverBranch &rhs)
| Copy constructor.
OsiSolverBranch & | operator= (const OsiSolverBranch &rhs)
| Assignment operator.
| ~OsiSolverBranch ()
| Destructor.
## Private Attributes
Private member data
int | start_ [5]
| Start of lower first, upper first, lower second, upper second.
int * | indices_
| Column numbers (if >= numberColumns treat as rows).
double * | bound_
| New bounds.

## Detailed Description

Solver Branch Class.

This provides information on a branch as a set of tighter bounds on both ways

Definition at line 18 of file OsiSolverBranch.hpp.

## Constructor & Destructor Documentation

OsiSolverBranch::OsiSolverBranch | ( |  | ) |

Default Constructor.

OsiSolverBranch::OsiSolverBranch | ( | const OsiSolverBranch & | rhs | ) |

Copy constructor.

OsiSolverBranch::~OsiSolverBranch | ( |  | ) |

Destructor.

## Member Function Documentation

void OsiSolverBranch::addBranch | ( | int | iColumn,
|  | double | value |
| ) |  |  |

Add a simple branch (i.e. first sets ub of floor(value), second lb of ceil(value)).

void OsiSolverBranch::addBranch | ( | int | way,
|  | int | numberTighterLower,
|  | const int * | whichLower,
|  | const double * | newLower,
|  | int | numberTighterUpper,
|  | const int * | whichUpper,
|  | const double * | newUpper |
| ) |  |  |

Add bounds - way =-1 is first , +1 is second.

void OsiSolverBranch::addBranch | ( | int | way,
|  | int | numberColumns,
|  | const double * | oldLower,
|  | const double * | newLower,
|  | const double * | oldUpper,
|  | const double * | newUpper |
| ) |  |  |

Add bounds - way =-1 is first , +1 is second.

void OsiSolverBranch::applyBounds | ( | OsiSolverInterface & | solver,
|  | int | way |
| ) |  |  | const

Apply bounds.

bool OsiSolverBranch::feasibleOneWay | ( | const OsiSolverInterface & | solver | ) | const

Returns true if current solution satsifies one side of branch.

const int* OsiSolverBranch::starts | ( |  | ) | const`[inline]`

Starts.

Definition at line 38 of file OsiSolverBranch.hpp.

const int* OsiSolverBranch::which | ( |  | ) | const`[inline]`

Which variables.

Definition at line 41 of file OsiSolverBranch.hpp.

const double* OsiSolverBranch::bounds | ( |  | ) | const`[inline]`

Bounds.

Definition at line 44 of file OsiSolverBranch.hpp.

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

Assignment operator.

## Member Data Documentation

int OsiSolverBranch::start_[5]`[private]`

Start of lower first, upper first, lower second, upper second.

Definition at line 69 of file OsiSolverBranch.hpp.

int* OsiSolverBranch::indices_`[private]`

Column numbers (if >= numberColumns treat as rows).

Definition at line 71 of file OsiSolverBranch.hpp.

double* OsiSolverBranch::bound_`[private]`

New bounds.

Definition at line 73 of file OsiSolverBranch.hpp.

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

- /home/coin/svn-release/Bcps-0.93.10/Osi/src/Osi/OsiSolverBranch.hpp