# CoinWarmStartPrimalDual Class Reference

WarmStart information that is only a dual vector. More...

`#include <CoinWarmStartPrimalDual.hpp>`

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

List of all members.

## Public Member Functions
int | dualSize () const
| return the size of the dual vector
const double * | dual () const
| return a pointer to the array of duals
int | primalSize () const
| return the size of the primal vector
const double * | primal () const
| return a pointer to the array of primals
void | assign (int primalSize, int dualSize, double *&primal, double *&dual)
| Assign the primal/dual vectors to be the warmstart information.
| CoinWarmStartPrimalDual ()
| CoinWarmStartPrimalDual (int primalSize, int dualSize, const double *primal, const double *dual)
| CoinWarmStartPrimalDual (const CoinWarmStartPrimalDual &rhs)
CoinWarmStartPrimalDual & | operator= (const CoinWarmStartPrimalDual &rhs)
void | clear ()
| Clear the data.
void | swap (CoinWarmStartPrimalDual &rhs)
virtual CoinWarmStart * | clone () const
| `Virtual constructor'
virtual | ~CoinWarmStartPrimalDual ()
PrimalDual warm start `diff' methods
virtual CoinWarmStartDiff * | generateDiff (const CoinWarmStart *const oldCWS) const
| Generate a `diff' that can convert the warm start passed as a parameter to the warm start specified by `this`.
virtual void | applyDiff (const CoinWarmStartDiff *const cwsdDiff)
| Apply `diff` to this warm start.
## Private Attributes
Private data members
CoinWarmStartVector< double > | primal_
CoinWarmStartVector< double > | dual_

## Detailed Description

WarmStart information that is only a dual vector.

Definition at line 18 of file CoinWarmStartPrimalDual.hpp.

## Constructor & Destructor Documentation

CoinWarmStartPrimalDual::CoinWarmStartPrimalDual | ( |  | ) | `[inline]`

Definition at line 44 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartPrimalDual::CoinWarmStartPrimalDual | ( | int | primalSize,
|  | int | dualSize,
|  | const double * | primal,
|  | const double * | dual |
| ) |  |  | `[inline]`

Definition at line 46 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartPrimalDual::CoinWarmStartPrimalDual | ( | const CoinWarmStartPrimalDual & | rhs | ) | `[inline]`

Definition at line 50 of file CoinWarmStartPrimalDual.hpp.

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

Definition at line 83 of file CoinWarmStartPrimalDual.hpp.

## Member Function Documentation

int CoinWarmStartPrimalDual::dualSize | ( |  | ) | const`[inline]`

return the size of the dual vector

Definition at line 21 of file CoinWarmStartPrimalDual.hpp.

const double* CoinWarmStartPrimalDual::dual | ( |  | ) | const`[inline]`

return a pointer to the array of duals

Definition at line 23 of file CoinWarmStartPrimalDual.hpp.

int CoinWarmStartPrimalDual::primalSize | ( |  | ) | const`[inline]`

return the size of the primal vector

Definition at line 26 of file CoinWarmStartPrimalDual.hpp.

const double* CoinWarmStartPrimalDual::primal | ( |  | ) | const`[inline]`

return a pointer to the array of primals

Definition at line 28 of file CoinWarmStartPrimalDual.hpp.

void CoinWarmStartPrimalDual::assign | ( | int | primalSize,
|  | int | dualSize,
|  | double *& | primal,
|  | double *& | dual |
| ) |  |  | `[inline]`

Assign the primal/dual vectors to be the warmstart information.

In this method the object assumes ownership of the pointers and upon return `primal` and `dual` will be a NULL pointers. If copying is desirable use the constructor.

NOTE: `primal` and `dual` must have been allocated by new double[], because they will be freed by delete[] upon the desructtion of this object...

Definition at line 39 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartPrimalDual& CoinWarmStartPrimalDual::operator= | ( | const CoinWarmStartPrimalDual & | rhs | ) | `[inline]`

Definition at line 53 of file CoinWarmStartPrimalDual.hpp.

void CoinWarmStartPrimalDual::clear | ( |  | ) | `[inline]`

Clear the data.

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

Definition at line 66 of file CoinWarmStartPrimalDual.hpp.

void CoinWarmStartPrimalDual::swap | ( | CoinWarmStartPrimalDual & | rhs | ) | `[inline]`

Definition at line 71 of file CoinWarmStartPrimalDual.hpp.

virtual CoinWarmStart* CoinWarmStartPrimalDual::clone | ( |  | ) | const`[inline, virtual]`

`Virtual constructor'

Implements CoinWarmStart.

Definition at line 79 of file CoinWarmStartPrimalDual.hpp.

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

Generate a `diff' that can convert the warm start passed as a parameter to the warm start specified by `this`.

The capabilities are limited: the basis passed as a parameter can be no larger than the basis pointed to by `this`.

virtual void CoinWarmStartPrimalDual::applyDiff | ( | const CoinWarmStartDiff *const | cwsdDiff | ) | `[virtual]`

Apply `diff` to this warm start.

Update this warm start by applying `diff`. It's assumed that the allocated capacity of the warm start is sufficiently large.

Reimplemented from CoinWarmStart.

## Member Data Documentation

CoinWarmStartVector<double> CoinWarmStartPrimalDual::primal_`[private]`

Definition at line 119 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartVector<double> CoinWarmStartPrimalDual::dual_`[private]`

Definition at line 120 of file CoinWarmStartPrimalDual.hpp.

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

- /home/coin/svn-release/Osi-0.107.5/CoinUtils/src/CoinWarmStartPrimalDual.hpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines