Main Page | Modules | Namespace List | Class Hierarchy | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages

BlackboxBlockContainerRecord Class Template Reference

#include <blackbox-block-container.h>

Inheritance diagram for BlackboxBlockContainerRecord:

BlackboxBlockContainerBase

template<class _Field, class _Blackbox>
class LinBox::BlackboxBlockContainerRecord< _Field, _Blackbox >


Public Types

typedef _Field Field
typedef Field::Element Element
typedef Field::RandIter RandIter
typedef BlasMatrix< ElementBlock
typedef BlasMatrix< ElementValue
enum  Launcher { RowUpdate = 0, ColUpdate = 1, Nothing = 2 }

Public Member Functions

 BlackboxBlockContainerRecord ()
 BlackboxBlockContainerRecord (const _Blackbox *D, const Field &F, const Block &U0)
 BlackboxBlockContainerRecord (const _Blackbox *D, const Field &F, const Block &U0, const Block &V0)
 BlackboxBlockContainerRecord (const _Blackbox *D, const Field &F, size_t m, size_t n, size_t seed=time(NULL))
void setU (const std::vector< Element > &b, size_t k)
void setV (const std::vector< Element > &b, size_t k)
void recompute ()
void clearTimer ()
void printTimer ()

Protected Member Functions

void _launch_record ()
void _launch_record_row ()
void _launch_record_col ()
void _launch ()
void _wait ()

Protected Attributes

Block _W
Block _Vcopy
BlasMatrixDomain< Field_BMD
std::vector< Value_rep
size_t _upd_idx
std::vector< Element_u
std::vector< Element_w
Launcher _launcher
size_t _iter
size_t _case
Timer ttSequence
Timer tSequence

Member Typedef Documentation

typedef _Field Field
 

Reimplemented from BlackboxBlockContainerBase.

typedef Field::Element Element
 

Reimplemented from BlackboxBlockContainerBase.

typedef Field::RandIter RandIter
 

typedef BlasMatrix<Element> Block
 

Reimplemented from BlackboxBlockContainerBase.

typedef BlasMatrix<Element> Value
 

Reimplemented from BlackboxBlockContainerBase.


Member Enumeration Documentation

enum Launcher
 

Enumeration values:
RowUpdate 
ColUpdate 
Nothing 


Constructor & Destructor Documentation

BlackboxBlockContainerRecord  )  [inline]
 

BlackboxBlockContainerRecord const _Blackbox *  D,
const Field F,
const Block U0
[inline]
 

BlackboxBlockContainerRecord const _Blackbox *  D,
const Field F,
const Block U0,
const Block V0
[inline]
 

BlackboxBlockContainerRecord const _Blackbox *  D,
const Field F,
size_t  m,
size_t  n,
size_t  seed = time(NULL)
[inline]
 


Member Function Documentation

void setU const std::vector< Element > &  b,
size_t  k
[inline]
 

void setV const std::vector< Element > &  b,
size_t  k
[inline]
 

void recompute  )  [inline]
 

void clearTimer  )  [inline]
 

void printTimer  )  [inline]
 

void _launch_record  )  [inline, protected]
 

void _launch_record_row  )  [inline, protected]
 

void _launch_record_col  )  [inline, protected]
 

void _launch  )  [inline, protected, virtual]
 

Launches a process to do the computation of the next sequence value: $U A^{i+1} V$. ...or just does it.

Implements BlackboxBlockContainerBase.

void _wait  )  [inline, protected, virtual]
 

If a separate process is computing the next value of $U A^{i+1} V$, _wait() blocks until the value is ready.

Implements BlackboxBlockContainerBase.


Field Documentation

Block _W [protected]
 

Block _Vcopy [protected]
 

BlasMatrixDomain<Field> _BMD [protected]
 

std::vector<Value> _rep [protected]
 

size_t _upd_idx [protected]
 

std::vector<Element> _u [protected]
 

std::vector<Element> _w [protected]
 

Launcher _launcher [protected]
 

size_t _iter [protected]
 

size_t _case [protected]
 

Timer ttSequence [protected]
 

Timer tSequence [protected]
 


Generated on Fri Jul 8 10:29:44 2005 for linbox by doxygen 1.3.7