CoinWarmStartVectorDiff< T > Class Template Reference

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

#include <CoinWarmStartVector.hpp>

Inheritance diagram for CoinWarmStartVectorDiff< T >:
Inheritance graph
[legend]
Collaboration diagram for CoinWarmStartVectorDiff< T >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual CoinWarmStartDiffclone () const
 `Virtual constructor'
virtual CoinWarmStartVectorDiffoperator= (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

CoinWarmStartDiffCoinWarmStartVector (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.

template<typename T>
CoinWarmStartVectorDiff< T >::CoinWarmStartVectorDiff ( const CoinWarmStartVectorDiff< T > &  rhs  )  [inline]

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.

template<typename T>
CoinWarmStartVectorDiff< T >::CoinWarmStartVectorDiff ( int  sze,
const unsigned int *const   diffNdxs,
const T *const   diffVals 
) [inline]

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  )  [inline, virtual]

Assignment.

Definition at line 426 of file CoinWarmStartVector.hpp.

template<typename T>
void CoinWarmStartVectorDiff< T >::swap ( CoinWarmStartVectorDiff< T > &  rhs  )  [inline]

Definition at line 173 of file CoinWarmStartVector.hpp.

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.


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.

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

Array of diff indices.

Definition at line 217 of file CoinWarmStartVector.hpp.

template<typename T>
T* CoinWarmStartVectorDiff< T >::diffVals_ [private]

Array of diff values.

Definition at line 221 of file CoinWarmStartVector.hpp.


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

Generated on 15 Mar 2015 for Coin-All by  doxygen 1.6.1