CoinWarmStartDualDiff Class Reference

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

#include <CoinWarmStartDual.hpp>

Inheritance diagram for CoinWarmStartDualDiff:
Inheritance graph
[legend]
Collaboration diagram for CoinWarmStartDualDiff:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual CoinWarmStartDiffclone () const
 `Virtual constructor'
virtual CoinWarmStartDualDiffoperator= (const CoinWarmStartDualDiff &rhs)
 Assignment.
virtual ~CoinWarmStartDualDiff ()
 Destructor.

Protected Member Functions

 CoinWarmStartDualDiff ()
 Default constructor.
 CoinWarmStartDualDiff (const CoinWarmStartDualDiff &rhs)
 Copy constructor.

Private Member Functions

 CoinWarmStartDualDiff (int sze, const unsigned int *const diffNdxs, const double *const diffVals)
 Standard constructor.

Private Attributes

CoinWarmStartVectorDiff< double > diff_
 The difference in the dual vector is simply the difference in a vector.

Friends

CoinWarmStartDiffCoinWarmStartDual::generateDiff (const CoinWarmStart *const oldCWS) const
void CoinWarmStartDual::applyDiff (const CoinWarmStartDiff *const diff)

Detailed Description

A `diff' between two CoinWarmStartDual objects.

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

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

Definition at line 99 of file CoinWarmStartDual.hpp.


Constructor & Destructor Documentation

virtual CoinWarmStartDualDiff::~CoinWarmStartDualDiff (  )  [inline, virtual]

Destructor.

Definition at line 118 of file CoinWarmStartDual.hpp.

CoinWarmStartDualDiff::CoinWarmStartDualDiff (  )  [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 128 of file CoinWarmStartDual.hpp.

CoinWarmStartDualDiff::CoinWarmStartDualDiff ( const CoinWarmStartDualDiff rhs  )  [inline, protected]

Copy constructor.

For convenience when copying objects containing CoinWarmStartDualDiff 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 140 of file CoinWarmStartDual.hpp.

CoinWarmStartDualDiff::CoinWarmStartDualDiff ( int  sze,
const unsigned int *const   diffNdxs,
const double *const   diffVals 
) [inline, private]

Standard constructor.

Definition at line 151 of file CoinWarmStartDual.hpp.


Member Function Documentation

virtual CoinWarmStartDiff* CoinWarmStartDualDiff::clone (  )  const [inline, virtual]

`Virtual constructor'

Implements CoinWarmStartDiff.

Definition at line 103 of file CoinWarmStartDual.hpp.

virtual CoinWarmStartDualDiff& CoinWarmStartDualDiff::operator= ( const CoinWarmStartDualDiff rhs  )  [inline, virtual]

Assignment.

Definition at line 109 of file CoinWarmStartDual.hpp.


Friends And Related Function Documentation

CoinWarmStartDiff* CoinWarmStartDual::generateDiff ( const CoinWarmStart *const   oldCWS  )  const [friend]
void CoinWarmStartDual::applyDiff ( const CoinWarmStartDiff *const   diff  )  [friend]

Member Data Documentation

The difference in the dual vector is simply the difference in a vector.

Definition at line 159 of file CoinWarmStartDual.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