- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# CoinWarmStartVectorDiff< T > Class Template Reference

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

`#include <CoinWarmStartVector.hpp>`

Inheritance diagram for CoinWarmStartVectorDiff< T >:

[legend]
Collaboration diagram for CoinWarmStartVectorDiff< T >:

[legend]
List of all members.

## Public Member Functions
virtual CoinWarmStartDiff * | clone () const
| `Virtual constructor'
virtual CoinWarmStartVectorDiff & | operator= (const CoinWarmStartVectorDiff< T > &rhs)
| Assignment.
virtual | ~CoinWarmStartVectorDiff ()
| Destructor.
void | swap (CoinWarmStartVectorDiff &rhs)
| CoinWarmStartVectorDiff ()
| Default constructor.
| CoinWarmStartVectorDiff (const CoinWarmStartVectorDiff< T > &rhs)
| Copy constructor.
| CoinWarmStartVectorDiff (int sze, const unsigned int *const diffNdxs, const T *const diffVals)
| Standard constructor.
void | clear ()
| Clear the data.
## Private Attributes
int | sze_
| Number of entries (and allocated capacity), in units of `T`.
unsigned int * | diffNdxs_
| Array of diff indices.
T * | diffVals_
| Array of diff values.
## Friends
CoinWarmStartDiff * | CoinWarmStartVector (const CoinWarmStart *const oldCWS) const
void | CoinWarmStartVector (const CoinWarmStartDiff *const diff)

## Detailed Description

### template<typename T>
class CoinWarmStartVectorDiff< T >

A `diff' between two CoinWarmStartVector objects.

This class exists in order to hide from the world the details of calculating and representing a `diff' between two CoinWarmStartVector 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 CoinWarmStartVector::generateDiff() and CoinWarmStartVector::applyDiff().

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

Definition at line 149 of file CoinWarmStartVector.hpp.

## Constructor & Destructor Documentation

template<typename T>

virtual CoinWarmStartVectorDiff< T >::~CoinWarmStartVectorDiff | ( |  | ) | `[inline, virtual]`

Destructor.

Definition at line 168 of file CoinWarmStartVector.hpp.

template<typename T>

CoinWarmStartVectorDiff< T >::CoinWarmStartVectorDiff | ( |  | ) | `[inline]`

Default constructor.

Definition at line 183 of file CoinWarmStartVector.hpp.

Referenced by CoinWarmStartVectorDiff< U >::clone().

template<typename T>

CoinWarmStartVectorDiff< T >::CoinWarmStartVectorDiff | ( | const CoinWarmStartVectorDiff< T > & | rhs | ) |

Copy constructor.

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

Definition at line 452 of file CoinWarmStartVector.hpp.

References CoinWarmStartVectorDiff< T >::diffNdxs_, CoinWarmStartVectorDiff< T >::diffVals_, and CoinWarmStartVectorDiff< T >::sze_.

template<typename T>

CoinWarmStartVectorDiff< T >::CoinWarmStartVectorDiff | ( | int | sze,
|  | const unsigned int *const | diffNdxs,
|  | const T *const | diffVals |
| ) |  |  |

Standard constructor.

Definition at line 469 of file CoinWarmStartVector.hpp.

## Member Function Documentation

template<typename T>

virtual CoinWarmStartDiff* CoinWarmStartVectorDiff< T >::clone | ( |  | ) | const`[inline, virtual]`

`Virtual constructor'

Implements CoinWarmStartDiff.

Definition at line 159 of file CoinWarmStartVector.hpp.

template<typename T>

CoinWarmStartVectorDiff< T > & CoinWarmStartVectorDiff< T >::operator= | ( | const CoinWarmStartVectorDiff< T > & | rhs | ) | `[virtual]`

Assignment.

Definition at line 426 of file CoinWarmStartVector.hpp.

References CoinWarmStartVectorDiff< T >::diffNdxs_, CoinWarmStartVectorDiff< T >::diffVals_, and CoinWarmStartVectorDiff< T >::sze_.

template<typename T>

void CoinWarmStartVectorDiff< T >::swap | ( | CoinWarmStartVectorDiff< T > & | rhs | ) | `[inline]`

Definition at line 173 of file CoinWarmStartVector.hpp.

Referenced by CoinWarmStartVectorPairDiff< T, U >::swap(), and CoinWarmStartPrimalDualDiff::swap().

template<typename T>

void CoinWarmStartVectorDiff< T >::clear | ( |  | ) | `[inline]`

Clear the data.

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

Definition at line 202 of file CoinWarmStartVector.hpp.

Referenced by CoinWarmStartVectorPairDiff< T, U >::clear(), and CoinWarmStartPrimalDualDiff::clear().

## Friends And Related Function Documentation

template<typename T>

CoinWarmStartDiff* CoinWarmStartVector | ( | const CoinWarmStart *const | oldCWS | ) | const`[friend]`

template<typename T>

void CoinWarmStartVector | ( | const CoinWarmStartDiff *const | diff | ) | `[friend]`

## Member Data Documentation

template<typename T>

int CoinWarmStartVectorDiff< T >::sze_`[private]`

Number of entries (and allocated capacity), in units of `T`.

Definition at line 213 of file CoinWarmStartVector.hpp.

Referenced by CoinWarmStartVector< T >::applyDiff(), CoinWarmStartVectorDiff< U >::clear(), CoinWarmStartVectorDiff< T >::CoinWarmStartVectorDiff(), CoinWarmStartVectorDiff< T >::operator=(), and CoinWarmStartVectorDiff< U >::swap().

template<typename T>

unsigned int* CoinWarmStartVectorDiff< T >::diffNdxs_`[private]`

Array of diff indices.

Definition at line 217 of file CoinWarmStartVector.hpp.

Referenced by CoinWarmStartVector< T >::applyDiff(), CoinWarmStartVectorDiff< U >::clear(), CoinWarmStartVectorDiff< T >::CoinWarmStartVectorDiff(), CoinWarmStartVectorDiff< T >::operator=(), CoinWarmStartVectorDiff< U >::swap(), and CoinWarmStartVectorDiff< U >::~CoinWarmStartVectorDiff().

template<typename T>

T* CoinWarmStartVectorDiff< T >::diffVals_`[private]`

Array of diff values.

Definition at line 221 of file CoinWarmStartVector.hpp.

Referenced by CoinWarmStartVector< T >::applyDiff(), CoinWarmStartVectorDiff< U >::clear(), CoinWarmStartVectorDiff< T >::CoinWarmStartVectorDiff(), CoinWarmStartVectorDiff< T >::operator=(), CoinWarmStartVectorDiff< U >::swap(), and CoinWarmStartVectorDiff< U >::~CoinWarmStartVectorDiff().

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

- /home/coin/SVN-release/Osi-0.98.1/CoinUtils/src/CoinWarmStartVector.hpp