# OsiUsesBiLinear Class Reference

Define a single variable class which is involved with OsiBiLinear objects. More...

`#include <CbcLinked.hpp>`

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

List of all members.

## Public Member Functions
| OsiUsesBiLinear ()
| Default Constructor.
| OsiUsesBiLinear (const OsiSolverInterface *solver, int iColumn, int type)
| Useful constructor - passed solver index.
| OsiUsesBiLinear (int iColumn, double lower, double upper, int type)
| Useful constructor - passed solver index and original bounds.
| OsiUsesBiLinear (const OsiSimpleInteger &rhs, int type)
| Useful constructor - passed simple integer.
| OsiUsesBiLinear (const OsiUsesBiLinear &rhs)
| Copy constructor.
virtual OsiObject * | clone () const
| Clone.
OsiUsesBiLinear & | operator= (const OsiUsesBiLinear &rhs)
| Assignment operator.
virtual | ~OsiUsesBiLinear ()
| Destructor.
virtual double | infeasibility (const OsiBranchingInformation *info, int &whichWay) const
| Infeasibility - large is 0.5.
virtual OsiBranchingObject * | createBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const
| Creates a branching object.
virtual double | feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const
| Set bounds to fix the variable at the current value.
void | addBiLinearObjects (OsiSolverLink *solver)
| Add all bi-linear objects.
## Protected Attributes
int | numberBiLinear_
| data Number of bilinear objects (maybe could be more general)
int | type_
| Type of variable - 0 continuous, 1 integer.
OsiObject ** | objects_
| Objects.

## Detailed Description

Define a single variable class which is involved with OsiBiLinear objects.

This is used so can make better decision on where to branch as it can look at all objects.

This version sees if it can re-use code from OsiSimpleInteger even if not an integer variable. If not then need to duplicate code.

Definition at line 1139 of file CbcLinked.hpp.

## Constructor & Destructor Documentation

OsiUsesBiLinear::OsiUsesBiLinear | ( |  | ) |

Default Constructor.

OsiUsesBiLinear::OsiUsesBiLinear | ( | const OsiSolverInterface * | solver,
|  | int | iColumn,
|  | int | type |
| ) |  |  |

Useful constructor - passed solver index.

OsiUsesBiLinear::OsiUsesBiLinear | ( | int | iColumn,
|  | double | lower,
|  | double | upper,
|  | int | type |
| ) |  |  |

Useful constructor - passed solver index and original bounds.

OsiUsesBiLinear::OsiUsesBiLinear | ( | const OsiSimpleInteger & | rhs,
|  | int | type |
| ) |  |  |

Useful constructor - passed simple integer.

OsiUsesBiLinear::OsiUsesBiLinear | ( | const OsiUsesBiLinear & | rhs | ) |

Copy constructor.

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

Destructor.

## Member Function Documentation

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

Clone.

Reimplemented from OsiSimpleInteger.

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

Assignment operator.

Reimplemented from OsiSimpleInteger.

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

Infeasibility - large is 0.5.

Reimplemented from OsiSimpleInteger.

virtual OsiBranchingObject* OsiUsesBiLinear::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 OsiSimpleInteger.

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

Set bounds to fix the variable at the current value.

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

Reimplemented from OsiSimpleInteger.

void OsiUsesBiLinear::addBiLinearObjects | ( | OsiSolverLink * | solver | ) |

Add all bi-linear objects.

## Member Data Documentation

int OsiUsesBiLinear::numberBiLinear_`[protected]`

data Number of bilinear objects (maybe could be more general)

Definition at line 1190 of file CbcLinked.hpp.

int OsiUsesBiLinear::type_`[protected]`

Type of variable - 0 continuous, 1 integer.

Definition at line 1192 of file CbcLinked.hpp.

OsiObject** OsiUsesBiLinear::objects_`[protected]`

Objects.

Definition at line 1194 of file CbcLinked.hpp.

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

- /home/coin/svn-release/Cbc-2.7.8/Cbc/src/CbcLinked.hpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines