Diligent Engine  v.2.4.g
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
Diligent::Matrix2x2< T > Struct Template Reference

#include <BasicMath.hpp>

Public Member Functions

 Matrix2x2 (T value)
 
 Matrix2x2 ()
 
 Matrix2x2 (T i11, T i12, T i21, T i22)
 
bool operator== (const Matrix2x2 &r) const
 
bool operator!= (const Matrix2x2 &r) const
 
T * operator[] (size_t row)
 
const T * operator[] (size_t row) const
 
T * Data ()
 
const T * Data () const
 
Matrix2x2operator*= (T s)
 
Matrix2x2operator*= (const Matrix2x2 &right)
 
Matrix2x2 Transpose () const
 
Determinant () const
 
Matrix2x2 Inverse () const
 

Static Public Member Functions

template<typename Y >
static Matrix2x2 MakeMatrix (const Y &vals)
 
static Matrix2x2 Identity ()
 
static Matrix2x2 Mul (const Matrix2x2 &m1, const Matrix2x2 &m2)
 
static Matrix2x2 Rotation (T angleInRadians)
 

Public Attributes

union {
   struct {
      T   _11
 
      T   _12
 
      T   _21
 
      T   _22
 
   } 
 
   struct {
      T   m00
 
      T   m01
 
      T   m10
 
      T   m11
 
   } 
 
   T   m [2][2]
 
}; 
 

Constructor & Destructor Documentation

◆ Matrix2x2() [1/3]

template<class T >
Diligent::Matrix2x2< T >::Matrix2x2 ( value)
inlineexplicit

◆ Matrix2x2() [2/3]

template<class T >
Diligent::Matrix2x2< T >::Matrix2x2 ( )
inline

◆ Matrix2x2() [3/3]

template<class T >
Diligent::Matrix2x2< T >::Matrix2x2 ( i11,
i12,
i21,
i22 
)
inline

Member Function Documentation

◆ Data() [1/2]

template<class T >
T* Diligent::Matrix2x2< T >::Data ( )
inline

◆ Data() [2/2]

template<class T >
const T* Diligent::Matrix2x2< T >::Data ( ) const
inline

◆ Determinant()

template<class T >
T Diligent::Matrix2x2< T >::Determinant ( ) const
inline

◆ Identity()

template<class T >
static Matrix2x2 Diligent::Matrix2x2< T >::Identity ( )
inlinestatic

◆ Inverse()

template<class T >
Matrix2x2 Diligent::Matrix2x2< T >::Inverse ( ) const
inline

◆ MakeMatrix()

template<class T >
template<typename Y >
static Matrix2x2 Diligent::Matrix2x2< T >::MakeMatrix ( const Y &  vals)
inlinestatic

◆ Mul()

template<class T >
static Matrix2x2 Diligent::Matrix2x2< T >::Mul ( const Matrix2x2< T > &  m1,
const Matrix2x2< T > &  m2 
)
inlinestatic

◆ operator!=()

template<class T >
bool Diligent::Matrix2x2< T >::operator!= ( const Matrix2x2< T > &  r) const
inline

◆ operator*=() [1/2]

template<class T >
Matrix2x2& Diligent::Matrix2x2< T >::operator*= ( const Matrix2x2< T > &  right)
inline

◆ operator*=() [2/2]

template<class T >
Matrix2x2& Diligent::Matrix2x2< T >::operator*= ( s)
inline

◆ operator==()

template<class T >
bool Diligent::Matrix2x2< T >::operator== ( const Matrix2x2< T > &  r) const
inline

◆ operator[]() [1/2]

template<class T >
T* Diligent::Matrix2x2< T >::operator[] ( size_t  row)
inline

◆ operator[]() [2/2]

template<class T >
const T* Diligent::Matrix2x2< T >::operator[] ( size_t  row) const
inline

◆ Rotation()

template<class T >
static Matrix2x2 Diligent::Matrix2x2< T >::Rotation ( angleInRadians)
inlinestatic

◆ Transpose()

template<class T >
Matrix2x2 Diligent::Matrix2x2< T >::Transpose ( ) const
inline

Member Data Documentation

◆ @23

union { ... }

◆ _11

template<class T >
T Diligent::Matrix2x2< T >::_11

◆ _12

template<class T >
T Diligent::Matrix2x2< T >::_12

◆ _21

template<class T >
T Diligent::Matrix2x2< T >::_21

◆ _22

template<class T >
T Diligent::Matrix2x2< T >::_22

◆ m

template<class T >
T Diligent::Matrix2x2< T >::m[2][2]

◆ m00

template<class T >
T Diligent::Matrix2x2< T >::m00

◆ m01

template<class T >
T Diligent::Matrix2x2< T >::m01

◆ m10

template<class T >
T Diligent::Matrix2x2< T >::m10

◆ m11

template<class T >
T Diligent::Matrix2x2< T >::m11

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