SkelGIS
3.0
|
DMatrix_impl class. More...
#include <dmatrix_impl.hpp>
Public Member Functions | |
DMatrix_impl () | |
default constructor of the distributed matrix interface | |
DMatrix_impl (HEADER h, const T value, bool loc=false) | |
constructor of the distributed matrix | |
DMatrix_impl (const char *binFile, bool loc=false) | |
constructor of the distributed matrix | |
~DMatrix_impl () | |
destructor of the distributed matrix | |
iterator< T, 0 > | begin () |
Get the beginning iterator of the DMatrix (on the first element of the DMatrix) | |
iterator_cont< T, 0 > | begin_cont () |
iterator_step< T, 0 > | begin_step (int step, int nb) |
iterator_rev< T, 0 > | begin_rev () |
iterator_line< T, 0 > | begin_line () |
iterator< T, 0 > | end () |
Get the ending iterator of the DMatrix (on the last element of the DMatrix) | |
iterator_cont< T, 0 > | end_cont () |
iterator_step< T, 0 > | end_step () |
iterator_rev< T, 0 > | end_rev () |
iterator_line< T, 0 > | end_line () |
iterator< T, 0 > | getIterator (int col, int li) |
get the iterator on the matrix at position (x,y) | |
iterator_cont< T, 0 > | getIterator_cont (int col, int li) |
get the iterator contiguous on the matrix at position (x,y) | |
iterator_rev< T, 0 > | getIterator_rev (int col, int li) |
get the iterator reverse on the matrix at position (x,y) | |
void | getIndexes (iterator< T, 0 > it, int &col, int &li) |
get the indexes of the iterator on the matrix | |
void | getIndexes (iterator_cont< T, 0 > it, int &col, int &li) |
void | getIndexes (iterator_rev< T, 0 > it, int &col, int &li) |
void | print () |
Print the matrix by bloc. | |
void | write (char *binFile) |
Write the zone file concerned for the current MPI process. | |
Protected Member Functions | |
void | create () |
Creation of the ditributed matrix. | |
void | initValues (T value) |
Values initialization of the elements of the DMatrix_impl. | |
void | read (const char *binFile) |
Read the zone file concerned for the current MPI process. | |
void | indexesIt (unsigned int rank, int &col, int &li) |
Get the indexes associated to a precise rank. |
DMatrix_impl class.
template of the distributed matrix implementation of SkelGIS. This is the first specialization of the DMatrix_impl.
T | is the type of data to store in the DMatrix_impl R overlap template parameter is not asked and specialized to 0. The line template parameter is specialized with the false value. In this case the parallel data distribution will be done along height and width (by block). |
Definition at line 3578 of file dmatrix_impl.hpp.
skelgis::DMatrix_impl< T, 0, false >::DMatrix_impl | ( | HEADER | h, |
const T | value, | ||
bool | loc = false |
||
) | [inline] |
constructor of the distributed matrix
This constructor will simply allocate the good space.
h | is the header to use to build your matrix |
value | is the default value to put in the matrix |
loc | is a boolean value to indicate if the DMatrix_impl has to stay local to one MPI process (used in ApplyReduction). |
Definition at line 3755 of file dmatrix_impl.hpp.
skelgis::DMatrix_impl< T, 0, false >::DMatrix_impl | ( | const char * | binFile, |
bool | loc = false |
||
) | [inline] |
constructor of the distributed matrix
The constructor evaluate how to divide the matrix in submatrice and do the work.
binFile | is the path of the binary file you want to work on |
loc | is a boolean value to indicate if the DMatrix_impl has to stay local to one MPI process (used in ApplyReduction). |
Definition at line 3770 of file dmatrix_impl.hpp.
iterator<T,0> skelgis::DMatrix_impl< T, 0, false >::begin | ( | ) | [inline] |
Get the beginning iterator of the DMatrix (on the first element of the DMatrix)
This method exists for each type of iterator in SkelGIS.
Definition at line 3795 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, false >::create | ( | ) | [inline, protected] |
Creation of the ditributed matrix.
Data distribution and construction of the parallel data structure.
Definition at line 3589 of file dmatrix_impl.hpp.
iterator<T,0> skelgis::DMatrix_impl< T, 0, false >::end | ( | ) | [inline] |
Get the ending iterator of the DMatrix (on the last element of the DMatrix)
This method exists for each type of iterator in SkelGIS.
Definition at line 3807 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, false >::getIndexes | ( | iterator< T, 0 > | it, |
int & | col, | ||
int & | li | ||
) | [inline] |
get the indexes of the iterator on the matrix
it | is the iterator from which the indexes will be taken |
x | is the iterator position x returned |
y | is the iterator position y returned |
Definition at line 3867 of file dmatrix_impl.hpp.
iterator<T,0> skelgis::DMatrix_impl< T, 0, false >::getIterator | ( | int | col, |
int | li | ||
) | [inline] |
get the iterator on the matrix at position (x,y)
x | is row index y is column index |
Definition at line 3819 of file dmatrix_impl.hpp.
iterator_cont<T,0> skelgis::DMatrix_impl< T, 0, false >::getIterator_cont | ( | int | col, |
int | li | ||
) | [inline] |
get the iterator contiguous on the matrix at position (x,y)
x | is row index y is column index |
Definition at line 3835 of file dmatrix_impl.hpp.
iterator_rev<T,0> skelgis::DMatrix_impl< T, 0, false >::getIterator_rev | ( | int | col, |
int | li | ||
) | [inline] |
get the iterator reverse on the matrix at position (x,y)
x | is row index y is column index |
Definition at line 3851 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, false >::indexesIt | ( | unsigned int | rank, |
int & | col, | ||
int & | li | ||
) | [inline, protected] |
Get the indexes associated to a precise rank.
rank | is the rank at which the indexes values are wanted |
col | is the column return value |
li | is the line return value |
Definition at line 3734 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, false >::initValues | ( | T | value | ) | [inline, protected] |
Values initialization of the elements of the DMatrix_impl.
value | is the value to set to the elements |
Definition at line 3665 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, false >::read | ( | const char * | binFile | ) | [inline, protected] |
Read the zone file concerned for the current MPI process.
read the MPI prcess zone, and spread the data in the subMatrices OpenMP only one submatrice if OpenMP is disabled
binFile | is binary file to read |
Definition at line 3681 of file dmatrix_impl.hpp.
void skelgis::DMatrix_impl< T, 0, false >::write | ( | char * | binFile | ) | [inline] |
Write the zone file concerned for the current MPI process.
write the MPI prcess zone, and spread the data in the subMatrices OpenMP only one submatrice if OpenMP is disabled
binFile | is binary file to write in |
Definition at line 3895 of file dmatrix_impl.hpp.