|
CASToR
2.0
Tomographic Reconstruction (PET/SPECT/CT)
|
Structure designed for basic matrices operations. More...
#include <oMatrix.hh>

Public Member Functions | |
| oMatrix () | |
| oMatrix constructor. Initialize the member variables to their default values. More... | |
| ~oMatrix () | |
| oMatrix destructor. Free memory of the oMatrix object. More... | |
| oMatrix (uint16_t nl, uint16_t nc) | |
| oMatrix constructor. Instanciate a matrix structure with the number of lines and colons provided in parameters More... | |
| void | Allocate (uint16_t nl, uint16_t nc) |
| Instanciate a Matrix structure with the number of lines and colons provided in parameters. More... | |
| int | SetMatriceElt (uint16_t l, uint16_t c, FLTNB a_val) |
| Set the matrix element corresponding to the argument indices with the provided value. More... | |
| FLTNB | GetMatriceElt (uint16_t l, uint16_t c) |
| FLTNB ** | GetMtx () |
| int | Multiplication (oMatrix *ap_Mtx, oMatrix *ap_MtxResult) |
| Multiply the member matrix with the matrix provided in 1st parameter Return the result in the matric provided in 2nd parameter. More... | |
| int | Transpose (oMatrix *a_MtxResult) |
| Transpose the elements of the matrix. More... | |
| int | Inverse (oMatrix *ap_MtxResult) |
| Inverse the matrix on which the function is called An error is returned if the matrix is not square, or if there is a nil component on the diagonal The resulting matrix object must be different than the input matrix. More... | |
| int | SetXRotMtx (FLTNB ang) |
| Set a (3,3) X-axis rotation matrix using the provided angle. More... | |
| int | SetYRotMtx (FLTNB ang) |
| Set a (3,3) Y-axis rotation matrix using the provided angle. More... | |
| int | SetZRotMtx (FLTNB ang) |
| Set a (3,3) Z-axis rotation matrix using the provided angle. More... | |
| void | Describe () |
| Display the element of the matrix. More... | |
Public Attributes | |
| uint16_t | m_lin |
| uint16_t | m_col |
Private Attributes | |
| FLTNB ** | m2p_Mat |
Structure designed for basic matrices operations.
This structure is mostly used in scanner classes, for geometrical rotation purposes
Definition at line 42 of file oMatrix.hh.
| oMatrix::oMatrix | ( | ) |
oMatrix constructor. Initialize the member variables to their default values.
Definition at line 41 of file oMatrix.cc.

| oMatrix::~oMatrix | ( | ) |
oMatrix destructor. Free memory of the oMatrix object.
Definition at line 81 of file oMatrix.cc.
| oMatrix::oMatrix | ( | uint16_t | nl, |
| uint16_t | nc | ||
| ) |
oMatrix constructor. Instanciate a matrix structure with the number of lines and colons provided in parameters
| nl | : a number of lines |
| nc | : a number of colons |
Definition at line 61 of file oMatrix.cc.
| void oMatrix::Allocate | ( | uint16_t | nl, |
| uint16_t | nc | ||
| ) |
Instanciate a Matrix structure with the number of lines and colons provided in parameters.
| nl | a number of lines |
| nc | a number of colons |
Definition at line 101 of file oMatrix.cc.
| void oMatrix::Describe | ( | ) |
Display the element of the matrix.
Definition at line 473 of file oMatrix.cc.
| FLTNB oMatrix::GetMatriceElt | ( | uint16_t | l, |
| uint16_t | c | ||
| ) |
| l | a line index |
| c | a colon index |
Definition at line 166 of file oMatrix.cc.

|
inline |
Definition at line 96 of file oMatrix.hh.

| int oMatrix::Inverse | ( | oMatrix * | ap_MtxResult | ) |
Inverse the matrix on which the function is called An error is returned if the matrix is not square, or if there is a nil component on the diagonal The resulting matrix object must be different than the input matrix.
| ap_MtxResult | : output matrix containing the inverse matrix |
Definition at line 286 of file oMatrix.cc.

Multiply the member matrix with the matrix provided in 1st parameter Return the result in the matric provided in 2nd parameter.
| ap_Mtx | : input matrix to multiply to the matrix from which the function is called |
| ap_MtxResult | : output matrix containing the result of the multiplication |
Definition at line 185 of file oMatrix.cc.


| int oMatrix::SetMatriceElt | ( | uint16_t | l, |
| uint16_t | c, | ||
| FLTNB | a_val | ||
| ) |
Set the matrix element corresponding to the argument indices with the provided value.
| l | a line index |
| c | a colon index |
| a_val | : a value to initialize the matrix element with |
Definition at line 139 of file oMatrix.cc.

| int oMatrix::SetXRotMtx | ( | FLTNB | ang | ) |
Set a (3,3) X-axis rotation matrix using the provided angle.
| ang | : angle in degree |
Definition at line 373 of file oMatrix.cc.

| int oMatrix::SetYRotMtx | ( | FLTNB | ang | ) |
Set a (3,3) Y-axis rotation matrix using the provided angle.
| ang | : angle in degree |
Definition at line 407 of file oMatrix.cc.

| int oMatrix::SetZRotMtx | ( | FLTNB | ang | ) |
Set a (3,3) Z-axis rotation matrix using the provided angle.
| ang | : angle in degree |
Definition at line 441 of file oMatrix.cc.

| int oMatrix::Transpose | ( | oMatrix * | a_MtxResult | ) |
Transpose the elements of the matrix.
| ap_MtxResult | : output matrix containing the result of the transposition |
Definition at line 229 of file oMatrix.cc.

|
private |
2D pointer containing the matrix elements. Default =NULL
Definition at line 160 of file oMatrix.hh.
| uint16_t oMatrix::m_col |
Number of colons in the matrix. Default =0
Definition at line 158 of file oMatrix.hh.
| uint16_t oMatrix::m_lin |
Number of lines in the matrix. Default =0
Definition at line 157 of file oMatrix.hh.
1.8.6