# OsiSimpleInteger Class Reference

Define a single integer class. More...

`#include <OsiBranchingObject.hpp>`

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

List of all members.

## Public Member Functions
| OsiSimpleInteger ()
| Default Constructor.
| OsiSimpleInteger (const OsiSolverInterface *solver, int iColumn)
| Useful constructor - passed solver index.
| OsiSimpleInteger (int iColumn, double lower, double upper)
| Useful constructor - passed solver index and original bounds.
| OsiSimpleInteger (const OsiSimpleInteger &)
| Copy constructor.
virtual OsiObject * | clone () const
| Clone.
OsiSimpleInteger & | operator= (const OsiSimpleInteger &rhs)
| Assignment operator.
virtual | ~OsiSimpleInteger ()
| Destructor.
virtual double | infeasibility (const OsiBranchingInformation *info, int &whichWay) const
| Infeasibility - large is 0.5.
virtual double | feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const
| Set bounds to fix the variable at the current (integer) value.
virtual OsiBranchingObject * | createBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const
| Creates a branching object.
void | setColumnNumber (int value)
| Set solver column number.
virtual int | columnNumber () const
| Column number if single column object -1 otherwise, so returns >= 0 Used by heuristics.
double | originalLowerBound () const
| Original bounds.
void | setOriginalLowerBound (double value)
double | originalUpperBound () const
void | setOriginalUpperBound (double value)
virtual void | resetBounds (const OsiSolverInterface *solver)
| Reset variable bounds to their original values.
virtual void | resetSequenceEtc (int numberColumns, const int *originalColumns)
| Change column numbers after preprocessing.
virtual double | upEstimate () const
| Return "up" estimate (default 1.0e-5).
virtual double | downEstimate () const
| Return "down" estimate (default 1.0e-5).
virtual bool | canHandleShadowPrices () const
| Return true if knows how to deal with Pseudo Shadow Prices.
## Protected Attributes
double | originalLower_
| data Original lower bound
double | originalUpper_
| Original upper bound.
int | columnNumber_
| Column number in solver.

## Detailed Description

Define a single integer class.

Definition at line 511 of file OsiBranchingObject.hpp.

## Constructor & Destructor Documentation

OsiSimpleInteger::OsiSimpleInteger | ( |  | ) |

Default Constructor.

OsiSimpleInteger::OsiSimpleInteger | ( | const OsiSolverInterface * | solver,
|  | int | iColumn |
| ) |  |  |

Useful constructor - passed solver index.

OsiSimpleInteger::OsiSimpleInteger | ( | int | iColumn,
|  | double | lower,
|  | double | upper |
| ) |  |  |

Useful constructor - passed solver index and original bounds.

OsiSimpleInteger::OsiSimpleInteger | ( | const OsiSimpleInteger & |  | ) |

Copy constructor.

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

Destructor.

## Member Function Documentation

virtual OsiObject* OsiSimpleInteger::clone | ( |  | ) | const`[virtual]`

Clone.

Implements OsiObject.

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

Assignment operator.

Reimplemented from OsiObject2.

virtual double OsiSimpleInteger::infeasibility | ( | const OsiBranchingInformation * | info,
|  | int & | whichWay |
| ) |  |  | const`[virtual]`

Infeasibility - large is 0.5.

Implements OsiObject.

virtual double OsiSimpleInteger::feasibleRegion | ( | OsiSolverInterface * | solver,
|  | const OsiBranchingInformation * | info |
| ) |  |  | const`[virtual]`

Set bounds to fix the variable at the current (integer) value.

Given an integer value, set the lower and upper bounds to fix the variable. Returns amount it had to move variable.

Implements OsiObject.

virtual OsiBranchingObject* OsiSimpleInteger::createBranch | ( | OsiSolverInterface * | solver,
|  | const OsiBranchingInformation * | info,
|  | int | way |
| ) |  |  | const`[virtual]`

Creates a branching object.

The preferred direction is set by `way`, 0 for down, 1 for up.

Reimplemented from OsiObject.

void OsiSimpleInteger::setColumnNumber | ( | int | value | ) | `[inline]`

Set solver column number.

Definition at line 556 of file OsiBranchingObject.hpp.

virtual int OsiSimpleInteger::columnNumber | ( |  | ) | const`[virtual]`

Column number if single column object -1 otherwise, so returns >= 0 Used by heuristics.

Reimplemented from OsiObject.

double OsiSimpleInteger::originalLowerBound | ( |  | ) | const`[inline]`

Original bounds.

Definition at line 566 of file OsiBranchingObject.hpp.

void OsiSimpleInteger::setOriginalLowerBound | ( | double | value | ) | `[inline]`

Definition at line 568 of file OsiBranchingObject.hpp.

double OsiSimpleInteger::originalUpperBound | ( |  | ) | const`[inline]`

Definition at line 570 of file OsiBranchingObject.hpp.

void OsiSimpleInteger::setOriginalUpperBound | ( | double | value | ) | `[inline]`

Definition at line 572 of file OsiBranchingObject.hpp.

virtual void OsiSimpleInteger::resetBounds | ( | const OsiSolverInterface * | solver | ) | `[virtual]`

Reset variable bounds to their original values.

Bounds may be tightened, so it may be good to be able to reset them to their original values.

Reimplemented from OsiObject.

virtual void OsiSimpleInteger::resetSequenceEtc | ( | int | numberColumns,
|  | const int * | originalColumns |
| ) |  |  | `[virtual]`

Change column numbers after preprocessing.

Reimplemented from OsiObject.

virtual double OsiSimpleInteger::upEstimate | ( |  | ) | const`[virtual]`

Return "up" estimate (default 1.0e-5).

Reimplemented from OsiObject.

virtual double OsiSimpleInteger::downEstimate | ( |  | ) | const`[virtual]`

Return "down" estimate (default 1.0e-5).

Reimplemented from OsiObject.

virtual bool OsiSimpleInteger::canHandleShadowPrices | ( |  | ) | const`[inline, virtual]`

Return true if knows how to deal with Pseudo Shadow Prices.

Reimplemented from OsiObject.

Definition at line 588 of file OsiBranchingObject.hpp.

## Member Data Documentation

double OsiSimpleInteger::originalLower_`[protected]`

data Original lower bound

Definition at line 593 of file OsiBranchingObject.hpp.

double OsiSimpleInteger::originalUpper_`[protected]`

Original upper bound.

Definition at line 595 of file OsiBranchingObject.hpp.

int OsiSimpleInteger::columnNumber_`[protected]`

Column number in solver.

Definition at line 597 of file OsiBranchingObject.hpp.

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

- /home/coin/svn-release/Osi-0.106.1/Osi/src/Osi/OsiBranchingObject.hpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines