Blender  V3.3
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
Freestyle::VecMat::Matrix< T, M, N > Class Template Reference

#include <VecMat.h>

Inheritance diagram for Freestyle::VecMat::Matrix< T, M, N >:
Freestyle::VecMat::SquareMatrix< real, 4 >

Public Types

typedef T value_type
 

Public Member Functions

 Matrix ()
 
 ~Matrix ()
 
template<class U >
 Matrix (const U tab[_SIZE])
 
template<class U >
 Matrix (const std::vector< U > &tab)
 
template<class U >
 Matrix (const Matrix< U, M, N > &m)
 
value_type operator() (const unsigned i, const unsigned j) const
 
value_typeoperator() (const unsigned i, const unsigned j)
 
Matrix< T, M, N > & transpose () const
 
template<class U >
Matrix< T, M, N > & operator= (const Matrix< U, M, N > &m)
 
template<class U >
Matrix< T, M, N > & operator+= (const Matrix< U, M, N > &m)
 
template<class U >
Matrix< T, M, N > & operator-= (const Matrix< U, M, N > &m)
 
template<class U >
Matrix< T, M, N > & operator*= (const U lambda)
 
template<class U >
Matrix< T, M, N > & operator/= (const U lambda)
 

Static Public Member Functions

static unsigned rows ()
 
static unsigned cols ()
 

Protected Attributes

value_type _coord [_SIZE]
 

Detailed Description

template<class T, unsigned M, unsigned N>
class Freestyle::VecMat::Matrix< T, M, N >

Definition at line 636 of file VecMat.h.

Member Typedef Documentation

◆ value_type

template<class T , unsigned M, unsigned N>
typedef T Freestyle::VecMat::Matrix< T, M, N >::value_type

Definition at line 638 of file VecMat.h.

Constructor & Destructor Documentation

◆ Matrix() [1/4]

template<class T , unsigned M, unsigned N>
Freestyle::VecMat::Matrix< T, M, N >::Matrix ( )
inline

Definition at line 640 of file VecMat.h.

References _SIZE.

◆ ~Matrix()

template<class T , unsigned M, unsigned N>
Freestyle::VecMat::Matrix< T, M, N >::~Matrix ( )
inline

Definition at line 647 of file VecMat.h.

References M, and N.

◆ Matrix() [2/4]

template<class T , unsigned M, unsigned N>
template<class U >
Freestyle::VecMat::Matrix< T, M, N >::Matrix ( const U  tab[_SIZE])
inlineexplicit

Definition at line 653 of file VecMat.h.

References _SIZE.

◆ Matrix() [3/4]

template<class T , unsigned M, unsigned N>
template<class U >
Freestyle::VecMat::Matrix< T, M, N >::Matrix ( const std::vector< U > &  tab)
inlineexplicit

Definition at line 660 of file VecMat.h.

References _SIZE.

◆ Matrix() [4/4]

template<class T , unsigned M, unsigned N>
template<class U >
Freestyle::VecMat::Matrix< T, M, N >::Matrix ( const Matrix< U, M, N > &  m)
inline

Definition at line 667 of file VecMat.h.

References M, N, and T.

Member Function Documentation

◆ cols()

template<class T , unsigned M, unsigned N>
static unsigned Freestyle::VecMat::Matrix< T, M, N >::cols ( )
inlinestatic

Definition at line 691 of file VecMat.h.

References N.

◆ operator()() [1/2]

template<class T , unsigned M, unsigned N>
value_type& Freestyle::VecMat::Matrix< T, M, N >::operator() ( const unsigned  i,
const unsigned  j 
)
inline

Definition at line 681 of file VecMat.h.

References N.

◆ operator()() [2/2]

template<class T , unsigned M, unsigned N>
value_type Freestyle::VecMat::Matrix< T, M, N >::operator() ( const unsigned  i,
const unsigned  j 
) const
inline

Definition at line 676 of file VecMat.h.

References N.

◆ operator*=()

template<class T , unsigned M, unsigned N>
template<class U >
Matrix<T, M, N>& Freestyle::VecMat::Matrix< T, M, N >::operator*= ( const U  lambda)
inline

Definition at line 740 of file VecMat.h.

References M, and N.

◆ operator+=()

template<class T , unsigned M, unsigned N>
template<class U >
Matrix<T, M, N>& Freestyle::VecMat::Matrix< T, M, N >::operator+= ( const Matrix< U, M, N > &  m)
inline

Definition at line 720 of file VecMat.h.

References M, N, and T.

◆ operator-=()

template<class T , unsigned M, unsigned N>
template<class U >
Matrix<T, M, N>& Freestyle::VecMat::Matrix< T, M, N >::operator-= ( const Matrix< U, M, N > &  m)
inline

Definition at line 730 of file VecMat.h.

References M, N, and T.

◆ operator/=()

template<class T , unsigned M, unsigned N>
template<class U >
Matrix<T, M, N>& Freestyle::VecMat::Matrix< T, M, N >::operator/= ( const U  lambda)
inline

Definition at line 750 of file VecMat.h.

References M, and N.

◆ operator=()

template<class T , unsigned M, unsigned N>
template<class U >
Matrix<T, M, N>& Freestyle::VecMat::Matrix< T, M, N >::operator= ( const Matrix< U, M, N > &  m)
inline

Definition at line 708 of file VecMat.h.

References M, N, and T.

◆ rows()

template<class T , unsigned M, unsigned N>
static unsigned Freestyle::VecMat::Matrix< T, M, N >::rows ( )
inlinestatic

Definition at line 686 of file VecMat.h.

References M.

◆ transpose()

template<class T , unsigned M, unsigned N>
Matrix<T, M, N>& Freestyle::VecMat::Matrix< T, M, N >::transpose ( ) const
inline

Definition at line 696 of file VecMat.h.

References M, and N.

Member Data Documentation

◆ _coord

template<class T , unsigned M, unsigned N>
value_type Freestyle::VecMat::Matrix< T, M, N >::_coord[_SIZE]
protected

Definition at line 763 of file VecMat.h.


The documentation for this class was generated from the following file: