|
Lugdunum
0.1.0
|
#include <Matrix.hpp>
Public Types | |
| using | Values = ValArray< Rows *Columns, T > |
Public Member Functions | |
| constexpr | Matrix ()=default |
| Matrix (T value) | |
| Matrix (const Values &values) | |
| Matrix (std::initializer_list< T > list) | |
| Matrix (const Matrix< Rows, Columns, T > &matrix)=default | |
| Matrix (Matrix< Rows, Columns, T > &&matrix)=default | |
| Matrix< Rows, Columns, T > & | operator= (const Matrix< Rows, Columns, T > &rhs)=default |
| Matrix< Rows, Columns, T > & | operator= (Matrix< Rows, Columns, T > &&rhs)=default |
| ~Matrix ()=default | |
| constexpr uint8_t | getRows () const |
| constexpr uint8_t | getColumns () const |
| Values & | getValues () |
| constexpr const Values & | getValues () const |
| T & | operator() (uint8_t row, uint8_t col=0) |
| constexpr const T & | operator() (uint8_t row, uint8_t col=0) const |
| Matrix< Rows, Columns, T > & | operator+= (T rhs) |
| Matrix< Rows, Columns, T > & | operator-= (T rhs) |
| Matrix< Rows, Columns, T > & | operator*= (T rhs) |
| Matrix< Rows, Columns, T > & | operator/= (T rhs) |
| Matrix< Rows, Columns, T > & | operator+= (const Matrix< Rows, Columns, T > &rhs) |
| Matrix< Rows, Columns, T > & | operator-= (const Matrix< Rows, Columns, T > &rhs) |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==Columns) &&EnableBool, Matrix< Rows, Columns, T > >::type & | operator*= (const Matrix< Rows, Columns, T > &rhs) |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==Columns) &&EnableBool, Matrix< Rows, Columns, T > >::type & | operator/= (const Matrix< Rows, Columns, T > &rhs) |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==1) &&EnableBool, Matrix< Rows, Columns, T > >::type | inverse () const |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==2) &&EnableBool, Matrix< Rows, Columns, T > >::type | inverse () const |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==3) &&EnableBool, Matrix< Rows, Columns, T > >::type | inverse () const |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==4) &&EnableBool, Matrix< Rows, Columns, T > >::type | inverse () const |
| Matrix< Columns, Rows, T > | transpose () const |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==1) &&EnableBool, T >::type | det () const |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==2) &&EnableBool, T >::type | det () const |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==3) &&EnableBool, T >::type | det () const |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows==4) &&EnableBool, T >::type | det () const |
| template<bool EnableBool = true> | |
| std::enable_if<(Rows > 4) &&EnableBool, T >::type | det () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows==Columns) &&EnableBool, Matrix< Rows, Columns, T > >::type & | operator*= (const Matrix< Rows, Columns, T > &rhs) |
| template<bool EnableBool> | |
| std::enable_if<(Rows==Columns) &&EnableBool, Matrix< Rows, Columns, T > >::type & | operator/= (const Matrix< Rows, Columns, T > &rhs) |
| template<bool EnableBool> | |
| std::enable_if<(Rows==1) &&EnableBool, Matrix< Rows, Columns, T > >::type | inverse () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows==2) &&EnableBool, Matrix< Rows, Columns, T > >::type | inverse () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows==3) &&EnableBool, Matrix< Rows, Columns, T > >::type | inverse () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows==4) &&EnableBool, Matrix< Rows, Columns, T > >::type | inverse () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows==1) &&EnableBool, T >::type | det () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows==2) &&EnableBool, T >::type | det () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows==3) &&EnableBool, T >::type | det () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows==4) &&EnableBool, T >::type | det () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows > 4) &&EnableBool, T >::type | det () const |
| template<bool EnableBool> | |
| std::enable_if<(Rows==Columns) &&EnableBool, Matrix< Rows, Columns, T > >::type | identity () |
Static Public Member Functions | |
| template<bool EnableBool = true> | |
| static std::enable_if<(Rows==Columns) &&EnableBool, Matrix< Rows, Columns, T > >::type | identity () |
Protected Attributes | |
| Values | _values |
Definition at line 13 of file Matrix.hpp.
| using lug::Math::Matrix< Rows, Columns, T >::Values = ValArray<Rows * Columns, T> |
Definition at line 16 of file Matrix.hpp.
|
default |
|
inlineexplicit |
Definition at line 2 of file Matrix.inl.
|
inline |
Definition at line 13 of file Matrix.inl.
|
inline |
Definition at line 18 of file Matrix.inl.
|
default |
|
default |
|
default |
|
default |
|
default |
|
inline |
Definition at line 32 of file Matrix.inl.
|
inline |
Definition at line 37 of file Matrix.inl.
|
inline |
Definition at line 42 of file Matrix.inl.
|
inline |
Definition at line 47 of file Matrix.inl.
| T& lug::Math::Matrix< Rows, Columns, T >::operator() | ( | uint8_t | row, |
| uint8_t | col = 0 |
||
| ) |
| constexpr const T& lug::Math::Matrix< Rows, Columns, T >::operator() | ( | uint8_t | row, |
| uint8_t | col = 0 |
||
| ) | const |
|
inline |
Definition at line 64 of file Matrix.inl.
|
inline |
Definition at line 70 of file Matrix.inl.
|
inline |
Definition at line 76 of file Matrix.inl.
|
inline |
Definition at line 82 of file Matrix.inl.
| Matrix< Rows, Columns, T > & Matrix::operator+= | ( | const Matrix< Rows, Columns, T > & | rhs | ) |
Definition at line 90 of file Matrix.inl.
| Matrix< Rows, Columns, T > & Matrix::operator-= | ( | const Matrix< Rows, Columns, T > & | rhs | ) |
Definition at line 96 of file Matrix.inl.
| std::enable_if<(Rows == Columns) && EnableBool, Matrix<Rows, Columns, T> >::type& lug::Math::Matrix< Rows, Columns, T >::operator*= | ( | const Matrix< Rows, Columns, T > & | rhs | ) |
| std::enable_if<(Rows == Columns) && EnableBool, Matrix<Rows, Columns, T> >::type& lug::Math::Matrix< Rows, Columns, T >::operator/= | ( | const Matrix< Rows, Columns, T > & | rhs | ) |
| std::enable_if<(Rows == 1) && EnableBool, Matrix<Rows, Columns, T> >::type lug::Math::Matrix< Rows, Columns, T >::inverse | ( | ) | const |
| std::enable_if<(Rows == 2) && EnableBool, Matrix<Rows, Columns, T> >::type lug::Math::Matrix< Rows, Columns, T >::inverse | ( | ) | const |
| std::enable_if<(Rows == 3) && EnableBool, Matrix<Rows, Columns, T> >::type lug::Math::Matrix< Rows, Columns, T >::inverse | ( | ) | const |
| std::enable_if<(Rows == 4) && EnableBool, Matrix<Rows, Columns, T> >::type lug::Math::Matrix< Rows, Columns, T >::inverse | ( | ) | const |
|
inline |
Definition at line 331 of file Matrix.inl.
| std::enable_if<(Rows == 1) && EnableBool, T>::type lug::Math::Matrix< Rows, Columns, T >::det | ( | ) | const |
| std::enable_if<(Rows == 2) && EnableBool, T>::type lug::Math::Matrix< Rows, Columns, T >::det | ( | ) | const |
| std::enable_if<(Rows == 3) && EnableBool, T>::type lug::Math::Matrix< Rows, Columns, T >::det | ( | ) | const |
| std::enable_if<(Rows == 4) && EnableBool, T>::type lug::Math::Matrix< Rows, Columns, T >::det | ( | ) | const |
| std::enable_if<(Rows > 4) && EnableBool, T>::type lug::Math::Matrix< Rows, Columns, T >::det | ( | ) | const |
|
static |
|
inline |
Definition at line 107 of file Matrix.inl.
|
inline |
Definition at line 123 of file Matrix.inl.
|
inline |
Definition at line 139 of file Matrix.inl.
|
inline |
Definition at line 152 of file Matrix.inl.
|
inline |
Definition at line 170 of file Matrix.inl.
|
inline |
Definition at line 195 of file Matrix.inl.
|
inline |
Definition at line 350 of file Matrix.inl.
|
inline |
Definition at line 363 of file Matrix.inl.
|
inline |
Definition at line 379 of file Matrix.inl.
|
inline |
Definition at line 399 of file Matrix.inl.
| std::enable_if<(Rows > 4) && EnableBool, T>::type lug::Math::Matrix< Rows, Columns, T >::det | ( | ) | const |
Definition at line 444 of file Matrix.inl.
|
inline |
Definition at line 483 of file Matrix.inl.
|
protected |
Definition at line 150 of file Matrix.hpp.
1.8.13