28 #ifndef _math_scmat_blkiter_h
29 #define _math_scmat_blkiter_h
35 #include <math/scmat/block.h>
39 class SCMatrixRectBlock;
40 class SCMatrixLTriBlock;
41 class SCMatrixDiagBlock;
42 class SCVectorSimpleBlock;
59 virtual void set(
double val) = 0;
61 virtual void accum(
double val);
63 virtual double get() = 0;
65 virtual operator int() = 0;
70 virtual void reset() = 0;
void operator++()
Move to the next element.
int j()
Returns the column index.
void set(double)
Set the current element to val.
int i()
Returns the row index.
void set(double)
Set the current element to val.
int i()
Returns the row index.
void operator++()
Move to the next element.
void reset()
Start the iteration over.
virtual int j()=0
Returns the column index.
Definition: blkiter.h:179
void reset()
Start the iteration over.
void set(double)
Set the current element to val.
virtual void reset()=0
Start the iteration over.
Definition: blkiter.h:127
void operator++()
Move to the next element.
void set(double)
Set the current element to val.
int j()
Returns the column index.
int j()
Returns the column index.
void reset()
Start the iteration over.
The SCMatrixRectBlock describes a rectangular piece of a matrix.
Definition: block.h:187
The SCVectorSimpleBlock describes a piece of a vector.
Definition: block.h:127
int j()
Returns the column index.
void set(double)
Set the current element to val.
The SCMatrixRectSubBlock describes a rectangular piece of a matrix.
Definition: block.h:223
void set(double)
Set the current element to val.
virtual int i()=0
Returns the row index.
virtual void set(double val)=0
Set the current element to val.
void reset()
Start the iteration over.
void reset()
Start the iteration over.
The SCMatrixDiagSubBlock describes a diagonal subblock of a matrix.
Definition: block.h:355
int i()
Returns the row index.
int j()
Returns the column index.
void operator++()
Move to the next element.
The SCVectorSimpleSubBlock describes a subblock of a vector.
Definition: block.h:158
int i()
Returns the row index.
int i()
Returns the row index.
The SCMatrixLTriBlock describes a triangular piece of a matrix.
Definition: block.h:257
Definition: blkiter.h:162
Definition: blkiter.h:109
void set(double)
Set the current element to val.
void operator++()
Move to the next element.
virtual void accum(double val)
Add val to the current element.
void operator++()
Move to the next element.
The SCMatrixLTriSubBlock describes a triangular subblock of a matrix.
Definition: block.h:292
void reset()
Start the iteration over.
int j()
Returns the column index.
int j()
Returns the column index.
void operator++()
Move to the next element.
void reset()
Start the iteration over.
int i()
Returns the row index.
int i()
Returns the row index.
int j()
Returns the column index.
Definition: blkiter.h:196
The SCMatrixBlockIter class is used to described iterates that loop through the elements in a block...
Definition: blkiter.h:50
void reset()
Start the iteration over.
Definition: blkiter.h:145
int i()
Returns the row index.
void set(double)
Set the current element to val.
virtual void operator++()=0
Move to the next element.
The SCMatrixDiagBlock describes a diagonal piece of a matrix.
Definition: block.h:322
void operator++()
Move to the next element.