Cbc  2.10.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
CoinModelLinkedList Class Reference

#include <CoinModelUseful.hpp>

Public Member Functions

Constructors, destructor
 CoinModelLinkedList ()
 Default constructor. More...
 
 ~CoinModelLinkedList ()
 Destructor. More...
 
Copy method
 CoinModelLinkedList (const CoinModelLinkedList &)
 The copy constructor. More...
 
CoinModelLinkedListoperator= (const CoinModelLinkedList &)
 = More...
 
sizing (just increases)
void resize (int maxMajor, CoinBigIndex maxElements)
 Resize list - for row list maxMajor is maximum rows. More...
 
void create (int maxMajor, CoinBigIndex maxElements, int numberMajor, int numberMinor, int type, CoinBigIndex numberElements, const CoinModelTriple *triples)
 Create list - for row list maxMajor is maximum rows. More...
 
int numberMajor () const
 Number of major items i.e. rows if just row links. More...
 
int maximumMajor () const
 Maximum number of major items i.e. rows if just row links. More...
 
CoinBigIndex numberElements () const
 Number of elements. More...
 
CoinBigIndex maximumElements () const
 Maximum number of elements. More...
 
CoinBigIndex firstFree () const
 First on free chain. More...
 
CoinBigIndex lastFree () const
 Last on free chain. More...
 
CoinBigIndex first (int which) const
 First on chain. More...
 
CoinBigIndex last (int which) const
 Last on chain. More...
 
const CoinBigIndexnext () const
 Next array. More...
 
const CoinBigIndexprevious () const
 Previous array. More...
 
does work
CoinBigIndex addEasy (int majorIndex, CoinBigIndex numberOfElements, const int *indices, const double *elements, CoinModelTriple *triples, CoinModelHash2 &hash)
 Adds to list - easy case i.e. More...
 
void addHard (int minorIndex, CoinBigIndex numberOfElements, const int *indices, const double *elements, CoinModelTriple *triples, CoinModelHash2 &hash)
 Adds to list - hard case i.e. More...
 
void addHard (CoinBigIndex first, const CoinModelTriple *triples, CoinBigIndex firstFree, CoinBigIndex lastFree, const CoinBigIndex *nextOther)
 Adds to list - hard case i.e. More...
 
void deleteSame (int which, CoinModelTriple *triples, CoinModelHash2 &hash, bool zapTriples)
 Deletes from list - same case i.e. More...
 
void updateDeleted (int which, CoinModelTriple *triples, CoinModelLinkedList &otherList)
 Deletes from list - other case i.e. More...
 
void deleteRowOne (CoinBigIndex position, CoinModelTriple *triples, CoinModelHash2 &hash)
 Deletes one element from Row list. More...
 
void updateDeletedOne (CoinBigIndex position, const CoinModelTriple *triples)
 Update column list for one element when one element deleted from row copy. More...
 
void fill (int first, int last)
 Fills first,last with -1. More...
 
void synchronize (CoinModelLinkedList &other)
 Puts in free list from other list. More...
 
void validateLinks (const CoinModelTriple *triples) const
 Checks that links are consistent. More...
 

Private Attributes

Data members
CoinBigIndexprevious_
 Previous - maximumElements long. More...
 
CoinBigIndexnext_
 Next - maximumElements long. More...
 
CoinBigIndexfirst_
 First - maximumMajor+1 long (last free element chain) More...
 
CoinBigIndexlast_
 Last - maximumMajor+1 long (last free element chain) More...
 
int numberMajor_
 Number of major items i.e. rows if just row links. More...
 
int maximumMajor_
 Maximum number of major items i.e. rows if just row links. More...
 
CoinBigIndex numberElements_
 Number of elements. More...
 
CoinBigIndex maximumElements_
 Maximum number of elements. More...
 
int type_
 0 row list, 1 column list More...
 

Detailed Description

Definition at line 366 of file CoinModelUseful.hpp.

Constructor & Destructor Documentation

CoinModelLinkedList::CoinModelLinkedList ( )

Default constructor.

CoinModelLinkedList::~CoinModelLinkedList ( )

Destructor.

CoinModelLinkedList::CoinModelLinkedList ( const CoinModelLinkedList )

The copy constructor.

Member Function Documentation

CoinModelLinkedList& CoinModelLinkedList::operator= ( const CoinModelLinkedList )

=

void CoinModelLinkedList::resize ( int  maxMajor,
CoinBigIndex  maxElements 
)

Resize list - for row list maxMajor is maximum rows.

void CoinModelLinkedList::create ( int  maxMajor,
CoinBigIndex  maxElements,
int  numberMajor,
int  numberMinor,
int  type,
CoinBigIndex  numberElements,
const CoinModelTriple triples 
)

Create list - for row list maxMajor is maximum rows.

type 0 row list, 1 column list

int CoinModelLinkedList::numberMajor ( ) const
inline

Number of major items i.e. rows if just row links.

Definition at line 398 of file CoinModelUseful.hpp.

int CoinModelLinkedList::maximumMajor ( ) const
inline

Maximum number of major items i.e. rows if just row links.

Definition at line 403 of file CoinModelUseful.hpp.

CoinBigIndex CoinModelLinkedList::numberElements ( ) const
inline

Number of elements.

Definition at line 408 of file CoinModelUseful.hpp.

CoinBigIndex CoinModelLinkedList::maximumElements ( ) const
inline

Maximum number of elements.

Definition at line 413 of file CoinModelUseful.hpp.

CoinBigIndex CoinModelLinkedList::firstFree ( ) const
inline

First on free chain.

Definition at line 418 of file CoinModelUseful.hpp.

CoinBigIndex CoinModelLinkedList::lastFree ( ) const
inline

Last on free chain.

Definition at line 423 of file CoinModelUseful.hpp.

CoinBigIndex CoinModelLinkedList::first ( int  which) const
inline

First on chain.

Definition at line 428 of file CoinModelUseful.hpp.

CoinBigIndex CoinModelLinkedList::last ( int  which) const
inline

Last on chain.

Definition at line 433 of file CoinModelUseful.hpp.

const CoinBigIndex* CoinModelLinkedList::next ( ) const
inline

Next array.

Definition at line 438 of file CoinModelUseful.hpp.

const CoinBigIndex* CoinModelLinkedList::previous ( ) const
inline

Previous array.

Definition at line 443 of file CoinModelUseful.hpp.

CoinBigIndex CoinModelLinkedList::addEasy ( int  majorIndex,
CoinBigIndex  numberOfElements,
const int *  indices,
const double *  elements,
CoinModelTriple triples,
CoinModelHash2 hash 
)

Adds to list - easy case i.e.

add row to row list Returns where chain starts

void CoinModelLinkedList::addHard ( int  minorIndex,
CoinBigIndex  numberOfElements,
const int *  indices,
const double *  elements,
CoinModelTriple triples,
CoinModelHash2 hash 
)

Adds to list - hard case i.e.

add row to column list

void CoinModelLinkedList::addHard ( CoinBigIndex  first,
const CoinModelTriple triples,
CoinBigIndex  firstFree,
CoinBigIndex  lastFree,
const CoinBigIndex nextOther 
)

Adds to list - hard case i.e.

add row to column list This is when elements have been added to other copy

void CoinModelLinkedList::deleteSame ( int  which,
CoinModelTriple triples,
CoinModelHash2 hash,
bool  zapTriples 
)

Deletes from list - same case i.e.

delete row from row list

void CoinModelLinkedList::updateDeleted ( int  which,
CoinModelTriple triples,
CoinModelLinkedList otherList 
)

Deletes from list - other case i.e.

delete row from column list This is when elements have been deleted from other copy

void CoinModelLinkedList::deleteRowOne ( CoinBigIndex  position,
CoinModelTriple triples,
CoinModelHash2 hash 
)

Deletes one element from Row list.

void CoinModelLinkedList::updateDeletedOne ( CoinBigIndex  position,
const CoinModelTriple triples 
)

Update column list for one element when one element deleted from row copy.

void CoinModelLinkedList::fill ( int  first,
int  last 
)

Fills first,last with -1.

void CoinModelLinkedList::synchronize ( CoinModelLinkedList other)

Puts in free list from other list.

void CoinModelLinkedList::validateLinks ( const CoinModelTriple triples) const

Checks that links are consistent.

Member Data Documentation

CoinBigIndex* CoinModelLinkedList::previous_
private

Previous - maximumElements long.

Definition at line 495 of file CoinModelUseful.hpp.

CoinBigIndex* CoinModelLinkedList::next_
private

Next - maximumElements long.

Definition at line 497 of file CoinModelUseful.hpp.

CoinBigIndex* CoinModelLinkedList::first_
private

First - maximumMajor+1 long (last free element chain)

Definition at line 499 of file CoinModelUseful.hpp.

CoinBigIndex* CoinModelLinkedList::last_
private

Last - maximumMajor+1 long (last free element chain)

Definition at line 501 of file CoinModelUseful.hpp.

int CoinModelLinkedList::numberMajor_
private

Number of major items i.e. rows if just row links.

Definition at line 503 of file CoinModelUseful.hpp.

int CoinModelLinkedList::maximumMajor_
private

Maximum number of major items i.e. rows if just row links.

Definition at line 505 of file CoinModelUseful.hpp.

CoinBigIndex CoinModelLinkedList::numberElements_
private

Number of elements.

Definition at line 507 of file CoinModelUseful.hpp.

CoinBigIndex CoinModelLinkedList::maximumElements_
private

Maximum number of elements.

Definition at line 509 of file CoinModelUseful.hpp.

int CoinModelLinkedList::type_
private

0 row list, 1 column list

Definition at line 511 of file CoinModelUseful.hpp.


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