18 #ifndef itkVariableSizeMatrix_h
19 #define itkVariableSizeMatrix_h
23 #include "vnl/vnl_matrix_fixed.h"
24 #include "vnl/algo/vnl_matrix_inverse.h"
25 #include "vnl/vnl_transpose.h"
26 #include "vnl/vnl_matrix.h"
42 template<
typename T >
76 vnl_matrix< T >
operator *(
const vnl_matrix< T > & matrix)
const;
82 void operator*=(
const vnl_matrix< T > & matrix);
85 vnl_vector< T >
operator *(
const vnl_vector< T > & matrix)
const;
118 inline const T &
operator()(
unsigned int row,
unsigned int col)
const
154 inline void Fill(
const T & value)
184 vnl_matrix< T > temp = vnl_matrix_inverse< T >(
m_Matrix);
210 inline bool SetSize(
unsigned int r,
unsigned int c) {
return m_Matrix.set_size(r, c); }
216 template<
typename T >
226 template<
typename T >
232 if ( ( matrix.
Rows() != this->Rows() )
233 || ( matrix.
Cols() != this->Cols() ) )
240 for (
unsigned int r = 0; r < this->Rows(); r++ )
242 for (
unsigned int c = 0; c < this->Cols(); c++ )
244 if ( m_Matrix(r, c) != matrix.
m_Matrix(r, c) )
255 #ifndef ITK_MANUAL_INSTANTIATION
256 #include "itkVariableSizeMatrix.hxx"
Array class with size defined at construction time.
void operator*=(const Self &matrix)
unsigned int Rows() const
T * operator[](unsigned int i)
const Self & operator-=(const Self &matrix)
A templated class holding a M x N size Matrix.
Self operator/(const T &value)
const Self & operator=(const vnl_matrix< T > &matrix)
std::ostream & operator<<(std::ostream &os, const Array< TValue > &arr)
unsigned int Cols() const
const T * operator[](unsigned int i) const
vnl_matrix< T > GetTranspose(void) const
const Self & operator=(const Self &matrix)
bool SetSize(unsigned int r, unsigned int c)
void operator/=(const T &value)
Self operator+(const Self &matrix) const
const T & operator()(unsigned int row, unsigned int col) const
const Self & operator+=(const Self &matrix)
InternalMatrixType m_Matrix
vnl_matrix< T > GetInverse(void) const
const InternalMatrixType & GetVnlMatrix(void) const
VariableSizeMatrix(const Self &matrix)
Self operator*(const T &value)
void Fill(const T &value)
InternalMatrixType & GetVnlMatrix(void)
bool operator!=(const Self &matrix) const
bool operator==(const Self &matrix) const
T & operator()(unsigned int row, unsigned int col)
Array< T > operator*(const Array< T > &vector) const
void operator*=(const T &value)
vnl_matrix< T > InternalMatrixType