#include <CoinWarmStartDual.hpp>
Inheritance diagram for CoinWarmStartDualDiff:
Public Member Functions | |
virtual CoinWarmStartDiff * | clone () const |
`Virtual constructor' | |
virtual CoinWarmStartDualDiff & | operator= (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 | |
int | sze_ |
Number of entries (and allocated capacity), in units of double . | |
unsigned int * | diffNdxs_ |
Array of diff indices. | |
double * | diffVals_ |
Array of diff values. | |
Friends | |
CoinWarmStartDiff * | CoinWarmStartDual::generateDiff (const CoinWarmStart *const oldCWS) const |
void | CoinWarmStartDual::applyDiff (const CoinWarmStartDiff *const diff) |
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 120 of file CoinWarmStartDual.hpp.
virtual CoinWarmStartDualDiff::~CoinWarmStartDualDiff | ( | ) | [inline, virtual] |
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 144 of file CoinWarmStartDual.hpp.
Referenced by clone().
CoinWarmStartDualDiff::CoinWarmStartDualDiff | ( | const CoinWarmStartDualDiff & | rhs | ) | [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.
CoinWarmStartDualDiff::CoinWarmStartDualDiff | ( | int | sze, | |
const unsigned int *const | diffNdxs, | |||
const double *const | diffVals | |||
) | [private] |
Standard constructor.
virtual CoinWarmStartDiff* CoinWarmStartDualDiff::clone | ( | ) | const [inline, virtual] |
`Virtual constructor'
Implements CoinWarmStartDiff.
Definition at line 124 of file CoinWarmStartDual.hpp.
References CoinWarmStartDualDiff().
virtual CoinWarmStartDualDiff& CoinWarmStartDualDiff::operator= | ( | const CoinWarmStartDualDiff & | rhs | ) | [virtual] |
Assignment.
CoinWarmStartDiff* CoinWarmStartDual::generateDiff | ( | const CoinWarmStart *const | oldCWS | ) | const [friend] |
void CoinWarmStartDual::applyDiff | ( | const CoinWarmStartDiff *const | diff | ) | [friend] |
int CoinWarmStartDualDiff::sze_ [private] |
Number of entries (and allocated capacity), in units of double
.
Definition at line 173 of file CoinWarmStartDual.hpp.
unsigned int* CoinWarmStartDualDiff::diffNdxs_ [private] |
Array of diff indices.
Definition at line 177 of file CoinWarmStartDual.hpp.
Referenced by ~CoinWarmStartDualDiff().
double* CoinWarmStartDualDiff::diffVals_ [private] |
Array of diff values.
Definition at line 181 of file CoinWarmStartDual.hpp.
Referenced by ~CoinWarmStartDualDiff().