12#error This is a C++ include file and cannot be used from plain C
19#include "cpl_matrix.h"
65 explicit Matrix(cpl_size rows, cpl_size cols);
138 void Get(cpl_size row,
140 double *value)
const;
152 double Get(cpl_size row,
166 void Set(cpl_size row,
321 bool IsZero(
const double tolerance);
This class handle the errors produced by the calling of image processing routines.
Definition error.hpp:34
Matrix & operator-(const double)
Overload operator-.
Definition matrix.cpp:275
bool IsDiagonal(const double tolerance)
Check if the matrix is diagonal.
Definition matrix.cpp:210
friend std::ostream & operator<<(std::ostream &os, const Matrix &matrix)
Overload operator<<.
Definition matrix.cpp:481
Matrix & operator*(const double)
Overload operator*.
Definition matrix.cpp:311
Matrix & operator-=(const double)
Overload operator-=.
Definition matrix.cpp:349
void Invert(Matrix *inverse)
Find a matrix inverse.
Definition matrix.cpp:184
void Solve(const Matrix &, Matrix *solved)
Solution of linear system .
Definition matrix.cpp:152
void Transpose(Matrix *transpose)
Create transposed matrix.
Definition matrix.cpp:136
Matrix & operator*=(const double)
Overload operator*=.
Definition matrix.cpp:387
std::string GetSize() const
Get the size of the matrix in the format [row]x[col].
Definition matrix.cpp:104
Matrix & Sqrt(const Matrix &matrix)
It computes the sqrt of each element in the matrix.
Definition matrix.cpp:466
void Product(const Matrix &, Matrix *product)
Rows-by-columns product of two matrices.
Definition matrix.cpp:114
Matrix & operator=(const Matrix &)
Overload operator=.
Definition matrix.cpp:407
virtual ~Matrix()
Class destructor.
Definition matrix.cpp:54
cpl_size GetNumRows() const
Get number of rows.
cpl_matrix * GetCplMatrix() const
Get CPL matrix pointer.
Matrix & operator+=(const double)
Overload operator+=.
Definition matrix.cpp:330
bool IsMatrix() const
Check is CPL matrix is not null.
bool IsIdentity(const double tolerance)
Check for identity matrix.
Definition matrix.cpp:223
Matrix & operator/=(const double)
Overload operator/=.
Definition matrix.cpp:368
void Append(const Matrix &matrix, int mode)
Append a matrix to another.
Definition matrix.cpp:199
void SetCplMatrix(cpl_matrix *matrix)
Set CPL image.
void SolveNormal(const Matrix &, Matrix *solved)
Solution of overdetermined linear equations in a least squares sense.
Definition matrix.cpp:168
void Set(cpl_size row, cpl_size col, double value)
Set an element value in the matrix.
Definition matrix.cpp:94
Matrix()
Class constructor.
Definition matrix.cpp:20
Matrix & operator/(const double)
Overload operator/.
Definition matrix.cpp:293
cpl_size GetNumCols() const
Get number of matrix columns.
bool operator==(const Matrix &) const
Overload operator==.
Definition matrix.cpp:419
cpl_matrix * m_cpl_matrix
Definition matrix.hpp:514
bool operator!=(const Matrix &) const
Overload operator !=.
Definition matrix.cpp:442
Matrix & operator+(const double)
Overload operator+.
Definition matrix.cpp:254
void * GetMatrixPtr() const
Get pointer to matrix data.
void Get(cpl_size row, cpl_size col, double *value) const
Get value of an element in the matrix.
Definition matrix.cpp:67
bool IsZero(const double tolerance)
Check for zero matrix.
Definition matrix.cpp:235
Array class source file.
Definition array.cpp:14