# CbcFollowOn Class Reference

Define a follow on class. More...

`#include <CbcFollowOn.hpp>`

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

List of all members.

## Public Member Functions
| CbcFollowOn ()
| CbcFollowOn (CbcModel *model)
| Useful constructor.
| CbcFollowOn (const CbcFollowOn &)
virtual CbcObject * | clone () const
| Clone.
CbcFollowOn & | operator= (const CbcFollowOn &rhs)
| ~CbcFollowOn ()
virtual double | infeasibility (const OsiBranchingInformation *info, int &preferredWay) const
| Infeasibility - large is 0.5.
virtual void | feasibleRegion ()
| This looks at solution and sets bounds to contain solution.
virtual CbcBranchingObject * | createCbcBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way)
| Creates a branching object.
virtual int | gutsOfFollowOn (int &otherRow, int &preferredWay) const
| As some computation is needed in more than one place - returns row.
## Protected Attributes
CoinPackedMatrix | matrix_
| data Matrix
CoinPackedMatrix | matrixByRow_
| Matrix by row.
int * | rhs_
| Possible rhs (if 0 then not possible).

## Detailed Description

Define a follow on class.

The idea of this is that in air-crew scheduling problems crew may fly in on flight A and out on flight B or on some other flight. A useful branch is one which on one side fixes all which go out on flight B to 0, while the other branch fixes all those that do NOT go out on flight B to 0.

This branching rule should be in addition to normal rules and have a high priority.

Definition at line 23 of file CbcFollowOn.hpp.

## Constructor & Destructor Documentation

CbcFollowOn::CbcFollowOn | ( |  | ) |

CbcFollowOn::CbcFollowOn | ( | CbcModel * | model | ) |

Useful constructor.

CbcFollowOn::CbcFollowOn | ( | const CbcFollowOn & |  | ) |

CbcFollowOn::~CbcFollowOn | ( |  | ) |

## Member Function Documentation

virtual CbcObject* CbcFollowOn::clone | ( |  | ) | const`[virtual]`

Clone.

Implements CbcObject.

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

Reimplemented from CbcObject.

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

Infeasibility - large is 0.5.

Reimplemented from CbcObject.

virtual void CbcFollowOn::feasibleRegion | ( |  | ) | `[virtual]`

This looks at solution and sets bounds to contain solution.

Implements CbcObject.

virtual CbcBranchingObject* CbcFollowOn::createCbcBranch | ( | OsiSolverInterface * | solver,
|  | const OsiBranchingInformation * | info,
|  | int | way |
| ) |  |  | `[virtual]`

Creates a branching object.

Reimplemented from CbcObject.

virtual int CbcFollowOn::gutsOfFollowOn | ( | int & | otherRow,
|  | int & | preferredWay |
| ) |  |  | const`[virtual]`

As some computation is needed in more than one place - returns row.

## Member Data Documentation

CoinPackedMatrix CbcFollowOn::matrix_`[protected]`

data Matrix

Definition at line 62 of file CbcFollowOn.hpp.

CoinPackedMatrix CbcFollowOn::matrixByRow_`[protected]`

Matrix by row.

Definition at line 64 of file CbcFollowOn.hpp.

int* CbcFollowOn::rhs_`[protected]`

Possible rhs (if 0 then not possible).

Definition at line 66 of file CbcFollowOn.hpp.

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

- /home/coin/svn-release/Cbc-2.7.7/Cbc/src/CbcFollowOn.hpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines