Cbc  2.10.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Private Attributes | Friends | List of all members
CoinWarmStartPrimalDualDiff Class Reference

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

#include <CoinWarmStartPrimalDual.hpp>

+ Inheritance diagram for CoinWarmStartPrimalDualDiff:
+ Collaboration diagram for CoinWarmStartPrimalDualDiff:

Public Member Functions

virtual CoinWarmStartDiffclone () const
 `Virtual constructor'. More...
 
virtual ~CoinWarmStartPrimalDualDiff ()
 Destructor. More...
 
- Public Member Functions inherited from CoinWarmStartDiff
virtual ~CoinWarmStartDiff ()
 Abstract destructor. More...
 

Protected Member Functions

 CoinWarmStartPrimalDualDiff ()
 Default constructor. More...
 
 CoinWarmStartPrimalDualDiff (const CoinWarmStartPrimalDualDiff &rhs)
 Copy constructor. More...
 
void clear ()
 Clear the data. More...
 
void swap (CoinWarmStartPrimalDualDiff &rhs)
 

Private Attributes

CoinWarmStartVectorDiff< double > primalDiff_
 These two differences describe the differences in the primal and in the dual vector. More...
 
CoinWarmStartVectorDiff< double > dualDiff_
 

Friends

CoinWarmStartDiffCoinWarmStartPrimalDual::generateDiff (const CoinWarmStart *const oldCWS) const
 
void CoinWarmStartPrimalDual::applyDiff (const CoinWarmStartDiff *const diff)
 

Detailed Description

A `diff' between two CoinWarmStartPrimalDual objects.

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

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

Definition at line 156 of file CoinWarmStartPrimalDual.hpp.

Constructor & Destructor Documentation

virtual CoinWarmStartPrimalDualDiff::~CoinWarmStartPrimalDualDiff ( )
inlinevirtual

Destructor.

Definition at line 171 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartPrimalDualDiff::CoinWarmStartPrimalDualDiff ( )
inlineprotected

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 180 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartPrimalDualDiff::CoinWarmStartPrimalDualDiff ( const CoinWarmStartPrimalDualDiff rhs)
inlineprotected

Copy constructor.

For convenience when copying objects containing CoinWarmStartPrimalDualDiff 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 196 of file CoinWarmStartPrimalDual.hpp.

Member Function Documentation

virtual CoinWarmStartDiff* CoinWarmStartPrimalDualDiff::clone ( ) const
inlinevirtual

`Virtual constructor'.

To be used when retaining polymorphism is important

Implements CoinWarmStartDiff.

Definition at line 165 of file CoinWarmStartPrimalDual.hpp.

void CoinWarmStartPrimalDualDiff::clear ( )
inlineprotected

Clear the data.

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

Definition at line 207 of file CoinWarmStartPrimalDual.hpp.

void CoinWarmStartPrimalDualDiff::swap ( CoinWarmStartPrimalDualDiff rhs)
inlineprotected

Definition at line 213 of file CoinWarmStartPrimalDual.hpp.

Friends And Related Function Documentation

void CoinWarmStartPrimalDual::applyDiff ( const CoinWarmStartDiff *const  diff)
friend

Member Data Documentation

CoinWarmStartVectorDiff< double > CoinWarmStartPrimalDualDiff::primalDiff_
private

These two differences describe the differences in the primal and in the dual vector.

Definition at line 226 of file CoinWarmStartPrimalDual.hpp.

CoinWarmStartVectorDiff< double > CoinWarmStartPrimalDualDiff::dualDiff_
private

Definition at line 227 of file CoinWarmStartPrimalDual.hpp.


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