# CoinWarmStartPrimalDualDiff Class Reference

A `diff' between two CoinWarmStartPrimalDual objects. More...

`#include <CoinWarmStartPrimalDual.hpp>`

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

List of all members.

## Public Member Functions
virtual CoinWarmStartDiff * | clone () const
| `Virtual constructor'. To be used when retaining polymorphism is important
virtual | ~CoinWarmStartPrimalDualDiff ()
| Destructor.
## Protected Member Functions
| CoinWarmStartPrimalDualDiff ()
| Default constructor.
| CoinWarmStartPrimalDualDiff (const CoinWarmStartPrimalDualDiff &rhs)
| Copy constructor.
void | clear ()
| Clear the data.
void | swap (CoinWarmStartPrimalDualDiff &rhs)
## Private Attributes
CoinWarmStartVectorDiff< double > | primalDiff_
| These two differences describe the differences in the primal and in the dual vector.
CoinWarmStartVectorDiff< double > | dualDiff_
## Friends
CoinWarmStartDiff * | CoinWarmStartPrimalDual::generateDiff (const CoinWarmStart *const oldCWS) const
void | CoinWarmStartPrimalDual::applyDiff (const CoinWarmStartDiff *const diff)

## Detailed Description

A `diff' between two CoinWarmStartPrimalDual objects.

This class exists in order to hide from the world the details of calculating and representing a `diff' between two CoinWarmStartPrimalDual objects. For convenience, assignment, cloning, and deletion are visible to the world, and default and copy constructors are made available to derived classes. Knowledge of the rest of this structure, and of generating and applying diffs, is restricted to the friend functions CoinWarmStartPrimalDual::generateDiff() and CoinWarmStartPrimalDual::applyDiff().

The actual data structure is a pair of vectors, diffNdxs_ and diffVals_.

Definition at line 142 of file CoinWarmStartPrimalDual.hpp.

## Constructor & Destructor Documentation

virtual CoinWarmStartPrimalDualDiff::~CoinWarmStartPrimalDualDiff | ( |  | ) | `[inline, virtual]`

Destructor.

Definition at line 159 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartPrimalDualDiff::CoinWarmStartPrimalDualDiff | ( |  | ) | `[inline, protected]`

Default constructor.

This is protected (rather than private) so that derived classes can see it when they make their default constructor protected or private.

Definition at line 169 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartPrimalDualDiff::CoinWarmStartPrimalDualDiff | ( | const CoinWarmStartPrimalDualDiff & | rhs | ) | `[inline, protected]`

Copy constructor.

For convenience when copying objects containing CoinWarmStartPrimalDualDiff objects. But consider whether you should be using clone() to retain polymorphism.

This is protected (rather than private) so that derived classes can see it when the make their copy constructor protected or private.

Definition at line 181 of file CoinWarmStartPrimalDual.hpp.

## Member Function Documentation

virtual CoinWarmStartDiff* CoinWarmStartPrimalDualDiff::clone | ( |  | ) | const`[inline, virtual]`

`Virtual constructor'. To be used when retaining polymorphism is important

Implements CoinWarmStartDiff.

Definition at line 153 of file CoinWarmStartPrimalDual.hpp.

void CoinWarmStartPrimalDualDiff::clear | ( |  | ) | `[inline, protected]`

Clear the data.

Make it appear as if the diff was just created using the default constructor.

Definition at line 189 of file CoinWarmStartPrimalDual.hpp.

void CoinWarmStartPrimalDualDiff::swap | ( | CoinWarmStartPrimalDualDiff & | rhs | ) | `[inline, protected]`

Definition at line 194 of file CoinWarmStartPrimalDual.hpp.

## Friends And Related Function Documentation

CoinWarmStartDiff* CoinWarmStartPrimalDual::generateDiff | ( | const CoinWarmStart *const | oldCWS | ) | const`[friend]`

void CoinWarmStartPrimalDual::applyDiff | ( | const CoinWarmStartDiff *const | diff | ) | `[friend]`

## Member Data Documentation

CoinWarmStartVectorDiff<double> CoinWarmStartPrimalDualDiff::primalDiff_`[private]`

These two differences describe the differences in the primal and in the dual vector.

Definition at line 207 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartVectorDiff<double> CoinWarmStartPrimalDualDiff::dualDiff_`[private]`

Definition at line 208 of file CoinWarmStartPrimalDual.hpp.

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

- /home/coin/svn-release/Blis-0.94.1/CoinUtils/src/CoinWarmStartPrimalDual.hpp