Otclient  14/8/2020
matrix.h File Reference
#include <array>
#include <cstring>
#include <initializer_list>
#include <sstream>
Include dependency graph for matrix.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Matrix< N, M, T >
 

Typedefs

typedef Matrix< 4, 4 > Matrix4x4
 
typedef Matrix< 3, 3 > Matrix3x3
 
typedef Matrix< 2, 2 > Matrix2x2
 
typedef Matrix4x4 Matrix4
 
typedef Matrix3x3 Matrix3
 
typedef Matrix2x2 Matrix2
 

Functions

template<int N, int M, typename T >
std::ostream & operator<< (std::ostream &out, const Matrix< N, M, T > &mat)
 
template<int N, int M, typename T >
std::istream & operator>> (std::istream &in, Matrix< N, M, T > &mat)
 
template<int M, int N, int P, int Q, typename T >
Matrix< M, Q, T > operator* (const Matrix< M, N, T > &a, const Matrix< P, Q, T > &b)
 
template<int M, int N, typename T >
Matrix< M, N, T > operator+ (const Matrix< M, N, T > &a, const Matrix< M, N, T > &b)
 
template<int M, int N, typename T >
Matrix< M, N, T > operator- (const Matrix< M, N, T > &a, const Matrix< M, N, T > &b)
 
template<int M, int N, typename T >
Matrix< M, N, T > operator* (const Matrix< M, N, T > &a, float b)
 
template<int M, int N, typename T >
Matrix< M, N, T > operator/ (const Matrix< M, N, T > &a, float b)
 

Typedef Documentation

◆ Matrix2

typedef Matrix2x2 Matrix2

Definition at line 244 of file matrix.h.

◆ Matrix2x2

typedef Matrix<2,2> Matrix2x2

Definition at line 240 of file matrix.h.

◆ Matrix3

typedef Matrix3x3 Matrix3

Definition at line 243 of file matrix.h.

◆ Matrix3x3

typedef Matrix<3,3> Matrix3x3

Definition at line 239 of file matrix.h.

◆ Matrix4

typedef Matrix4x4 Matrix4

Definition at line 242 of file matrix.h.

◆ Matrix4x4

typedef Matrix<4,4> Matrix4x4

Definition at line 238 of file matrix.h.

Function Documentation

◆ operator*() [1/2]

template<int M, int N, int P, int Q, typename T >
Matrix<M, Q, T> operator* ( const Matrix< M, N, T > &  a,
const Matrix< P, Q, T > &  b 
)

Definition at line 211 of file matrix.h.

◆ operator*() [2/2]

template<int M, int N, typename T >
Matrix<M, N, T> operator* ( const Matrix< M, N, T > &  a,
float  b 
)

Definition at line 233 of file matrix.h.

◆ operator+()

template<int M, int N, typename T >
Matrix<M, N, T> operator+ ( const Matrix< M, N, T > &  a,
const Matrix< M, N, T > &  b 
)

Definition at line 227 of file matrix.h.

◆ operator-()

template<int M, int N, typename T >
Matrix<M, N, T> operator- ( const Matrix< M, N, T > &  a,
const Matrix< M, N, T > &  b 
)

Definition at line 230 of file matrix.h.

◆ operator/()

template<int M, int N, typename T >
Matrix<M, N, T> operator/ ( const Matrix< M, N, T > &  a,
float  b 
)

Definition at line 236 of file matrix.h.

◆ operator<<()

template<int N, int M, typename T >
std::ostream& operator<< ( std::ostream &  out,
const Matrix< N, M, T > &  mat 
)

Definition at line 177 of file matrix.h.

◆ operator>>()

template<int N, int M, typename T >
std::istream& operator>> ( std::istream &  in,
Matrix< N, M, T > &  mat 
)

Definition at line 191 of file matrix.h.