ergo
LR::VarVectorCollection Class Reference

a collection of vectors, usually handled at once. More...

#include <slr.h>

Public Member Functions

 VarVectorCollection (int nSize=0)
 
 ~VarVectorCollection ()
 
void setSize (int sz)
 
VarVectoroperator[] (int i)
 
int size () const
 
bool getDiskMode () const
 
void setDiskMode (bool x)
 
void release ()
 Make sure there is space for one vector. More...
 
void releaseAll ()
 Release all vectors from the memory, saving if necessary. More...
 

Static Public Attributes

static const char * tmpdir = "/tmp"
 

Private Attributes

VarVectorvecs
 
unsigned * ages
 
unsigned currentAge
 
int nVecs
 
int nAllocated
 
bool diskMode
 

Detailed Description

a collection of vectors, usually handled at once.

Constructor & Destructor Documentation

◆ VarVectorCollection()

LR::VarVectorCollection::VarVectorCollection ( int  nSize = 0)
inlineexplicit

References setSize().

◆ ~VarVectorCollection()

LR::VarVectorCollection::~VarVectorCollection ( )

References ages, and vecs.

Member Function Documentation

◆ getDiskMode()

bool LR::VarVectorCollection::getDiskMode ( ) const
inline

References diskMode.

◆ operator[]()

VarVector & LR::VarVectorCollection::operator[] ( int  i)

◆ release()

void LR::VarVectorCollection::release ( )

Make sure there is space for one vector.

Must allow at least two vectors at the same time in memory or evil things will happen.

References ages, diskMode, do_output(), LOG_AREA_LR, LOG_CAT_INFO, nVecs, LR::VarVector::release(), tmpdir, and vecs.

Referenced by operator[]().

◆ releaseAll()

void LR::VarVectorCollection::releaseAll ( )

Release all vectors from the memory, saving if necessary.

References diskMode, do_output(), LOG_AREA_LR, LOG_CAT_INFO, nVecs, LR::VarVector::release(), tmpdir, and vecs.

Referenced by LR::LRSolver::addToSpace().

◆ setDiskMode()

void LR::VarVectorCollection::setDiskMode ( bool  x)
inline

References diskMode.

Referenced by LR::LRSolver::solve().

◆ setSize()

◆ size()

int LR::VarVectorCollection::size ( ) const
inline

References nVecs.

Referenced by LR::LRSolver::addToSpace().

Member Data Documentation

◆ ages

unsigned* LR::VarVectorCollection::ages
private

◆ currentAge

unsigned LR::VarVectorCollection::currentAge
private

Referenced by operator[]().

◆ diskMode

bool LR::VarVectorCollection::diskMode
private

◆ nAllocated

int LR::VarVectorCollection::nAllocated
private

Referenced by setSize().

◆ nVecs

int LR::VarVectorCollection::nVecs
private

Referenced by release(), releaseAll(), setSize(), and size().

◆ tmpdir

const char * LR::VarVectorCollection::tmpdir = "/tmp"
static

Referenced by operator[](), release(), and releaseAll().

◆ vecs

VarVector* LR::VarVectorCollection::vecs
private

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