Google

Main Page   Class Hierarchy   Compound List   File List   Compound Members   Related Pages  

sc::SCMatrixRectBlock Class Reference

The SCMatrixRectBlock describes a rectangular piece of a matrix. More...

#include <block.h>

Inheritance diagram for sc::SCMatrixRectBlock:

Inheritance graph
[legend]
Collaboration diagram for sc::SCMatrixRectBlock:

Collaboration graph
[legend]
List of all members.

Public Methods

 SCMatrixRectBlock (int is, int ie, int js, int je)
 SCMatrixRectBlock (StateIn &)
virtual ~SCMatrixRectBlock ()
void save_data_state (StateOut &)
 Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them. More...

SCMatrixBlockdeepcopy () const
 Return of copy of this. More...

void process (SCElementOp *)
void process (SCElementOp2 *, SCMatrixBlock *)
void process (SCElementOp3 *, SCMatrixBlock *, SCMatrixBlock *)
double * dat ()
 Return a pointer to the block's data and the number of elements in the block. More...

int ndat () const

Public Attributes

int istart
int jstart
int iend
int jend
double * data

Detailed Description

The SCMatrixRectBlock describes a rectangular piece of a matrix.

The following bit of code illustrates the data layout: fill(double **matrix, SCMatrixRectBlock &b) { int offset=0; for (int i=b.istart; i<b.iend; i++) { for (int j=b.jstart; j<b.jend; j++,offset++) { matrix[i][j] = b.data[offset]; } } }


Member Function Documentation

double* sc::SCMatrixRectBlock::dat   [virtual]
 

Return a pointer to the block's data and the number of elements in the block.

Some blocks cannot provide this information and a runtime error will be generated if these members are called. These routines are only used internally in the matrix library.

Reimplemented from sc::SCMatrixBlock.

SCMatrixBlock* sc::SCMatrixRectBlock::deepcopy   const [virtual]
 

Return of copy of this.

A runtime error will be generated for blocks that cannot do a deepcopy. These routines are only used internally in the matrix library.

Reimplemented from sc::SCMatrixBlock.

void sc::SCMatrixRectBlock::save_data_state StateOut   [virtual]
 

Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR initializes them.

This must be implemented by the derived class if the class has data.

Reimplemented from sc::SCMatrixBlock.


The documentation for this class was generated from the following file:
Generated at Fri Jan 10 08:16:51 2003 for MPQC 2.1.3 using the documentation package Doxygen 1.2.14.