opynsim
Unofficial C++ Documentation
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Friends | List of all members
osc::Matrix< T, 4, 4 > Struct Template Reference

#include <matrix4x4.h>

Public Types

using column_type = Vector< T, 4 >
 
using row_type = Vector< T, 4 >
 
using value_type = column_type
 
using element_type = T
 
using size_type = size_t
 
using difference_type = ptrdiff_t
 
using reference = column_type &
 
using const_reference = const column_type &
 
using pointer = column_type *
 
using const_pointer = const column_type *
 
using iterator = column_type *
 
using const_iterator = const column_type *
 

Public Member Functions

constexpr Matrix ()=default
 
constexpr Matrix (T s)
 
constexpr Matrix (const T &x0, const T &y0, const T &z0, const T &w0, const T &x1, const T &y1, const T &z1, const T &w1, const T &x2, const T &y2, const T &z2, const T &w2, const T &x3, const T &y3, const T &z3, const T &w3)
 
constexpr Matrix (const column_type &v0, const column_type &v1, const column_type &v2, const column_type &v3)
 
template<typename X0 , typename Y0 , typename Z0 , typename W0 , typename X1 , typename Y1 , typename Z1 , typename W1 , typename X2 , typename Y2 , typename Z2 , typename W2 , typename X3 , typename Y3 , typename Z3 , typename W3 >
constexpr Matrix (const X0 &x0, const Y0 &y0, const Z0 &z0, const W0 &w0, const X1 &x1, const Y1 &y1, const Z1 &z1, const W1 &w1, const X2 &x2, const Y2 &y2, const Z2 &z2, const W2 &w2, const X3 &x3, const Y3 &y3, const Z3 &z3, const W3 &w3)
 
template<typename V1 , typename V2 , typename V3 , typename V4 >
constexpr Matrix (const Vector< V1, 4 > &v1, const Vector< V2, 4 > &v2, const Vector< V3, 4 > &v3, const Vector< V4, 4 > &v4)
 
constexpr Matrix (const Matrix< T, 3, 3 > &m)
 
template<typename U >
Matrix & operator= (const Matrix< U, 4, 4 > &m)
 
constexpr size_type size () const
 
constexpr pointer data ()
 
constexpr const_pointer data () const
 
constexpr iterator begin ()
 
constexpr const_iterator begin () const
 
constexpr iterator end ()
 
constexpr const_iterator end () const
 
constexpr reference operator[] (size_type pos)
 
constexpr const_reference operator[] (size_type pos) const
 
template<typename U >
Matrix & operator+= (U s)
 
template<typename U >
Matrix & operator+= (const Matrix< U, 4, 4 > &m)
 
template<typename U >
Matrix & operator-= (U s)
 
template<typename U >
Matrix & operator-= (const Matrix< U, 4, 4 > &m)
 
template<typename U >
Matrix & operator*= (U s)
 
template<typename U >
Matrix & operator*= (const Matrix< U, 4, 4 > &m)
 
template<typename U >
Matrix & operator/= (U s)
 
template<typename U >
Matrix & operator/= (const Matrix< U, 4, 4 > &m)
 
Matrix & operator++ ()
 
Matrix & operator-- ()
 
Matrix operator++ (int)
 
Matrix operator-- (int)
 

Friends

bool operator== (const Matrix &, const Matrix &)=default
 

Member Typedef Documentation

◆ column_type

template<typename T >
using osc::Matrix< T, 4, 4 >::column_type = Vector<T, 4>

◆ const_iterator

template<typename T >
using osc::Matrix< T, 4, 4 >::const_iterator = const column_type*

◆ const_pointer

template<typename T >
using osc::Matrix< T, 4, 4 >::const_pointer = const column_type*

◆ const_reference

template<typename T >
using osc::Matrix< T, 4, 4 >::const_reference = const column_type&

◆ difference_type

template<typename T >
using osc::Matrix< T, 4, 4 >::difference_type = ptrdiff_t

◆ element_type

template<typename T >
using osc::Matrix< T, 4, 4 >::element_type = T

◆ iterator

template<typename T >
using osc::Matrix< T, 4, 4 >::iterator = column_type*

◆ pointer

template<typename T >
using osc::Matrix< T, 4, 4 >::pointer = column_type*

◆ reference

template<typename T >
using osc::Matrix< T, 4, 4 >::reference = column_type&

◆ row_type

template<typename T >
using osc::Matrix< T, 4, 4 >::row_type = Vector<T, 4>

◆ size_type

template<typename T >
using osc::Matrix< T, 4, 4 >::size_type = size_t

◆ value_type

template<typename T >
using osc::Matrix< T, 4, 4 >::value_type = column_type

Constructor & Destructor Documentation

◆ Matrix() [1/7]

template<typename T >
constexpr osc::Matrix< T, 4, 4 >::Matrix ( )
constexprdefault

◆ Matrix() [2/7]

template<typename T >
constexpr osc::Matrix< T, 4, 4 >::Matrix ( T  s)
inlineexplicitconstexpr

◆ Matrix() [3/7]

template<typename T >
constexpr osc::Matrix< T, 4, 4 >::Matrix ( const T &  x0,
const T &  y0,
const T &  z0,
const T &  w0,
const T &  x1,
const T &  y1,
const T &  z1,
const T &  w1,
const T &  x2,
const T &  y2,
const T &  z2,
const T &  w2,
const T &  x3,
const T &  y3,
const T &  z3,
const T &  w3 
)
inlineconstexpr

◆ Matrix() [4/7]

template<typename T >
constexpr osc::Matrix< T, 4, 4 >::Matrix ( const column_type &  v0,
const column_type &  v1,
const column_type &  v2,
const column_type &  v3 
)
inlineconstexpr

◆ Matrix() [5/7]

template<typename T >
template<typename X0 , typename Y0 , typename Z0 , typename W0 , typename X1 , typename Y1 , typename Z1 , typename W1 , typename X2 , typename Y2 , typename Z2 , typename W2 , typename X3 , typename Y3 , typename Z3 , typename W3 >
constexpr osc::Matrix< T, 4, 4 >::Matrix ( const X0 &  x0,
const Y0 &  y0,
const Z0 &  z0,
const W0 &  w0,
const X1 &  x1,
const Y1 &  y1,
const Z1 &  z1,
const W1 &  w1,
const X2 &  x2,
const Y2 &  y2,
const Z2 &  z2,
const W2 &  w2,
const X3 &  x3,
const Y3 &  y3,
const Z3 &  z3,
const W3 &  w3 
)
inlineconstexpr

◆ Matrix() [6/7]

template<typename T >
template<typename V1 , typename V2 , typename V3 , typename V4 >
constexpr osc::Matrix< T, 4, 4 >::Matrix ( const Vector< V1, 4 > &  v1,
const Vector< V2, 4 > &  v2,
const Vector< V3, 4 > &  v3,
const Vector< V4, 4 > &  v4 
)
inlineconstexpr

◆ Matrix() [7/7]

template<typename T >
constexpr osc::Matrix< T, 4, 4 >::Matrix ( const Matrix< T, 3, 3 > &  m)
inlineconstexpr

Member Function Documentation

◆ begin() [1/2]

template<typename T >
constexpr iterator osc::Matrix< T, 4, 4 >::begin ( )
inlineconstexpr

◆ begin() [2/2]

template<typename T >
constexpr const_iterator osc::Matrix< T, 4, 4 >::begin ( ) const
inlineconstexpr

◆ data() [1/2]

template<typename T >
constexpr pointer osc::Matrix< T, 4, 4 >::data ( )
inlineconstexpr

◆ data() [2/2]

template<typename T >
constexpr const_pointer osc::Matrix< T, 4, 4 >::data ( ) const
inlineconstexpr

◆ end() [1/2]

template<typename T >
constexpr iterator osc::Matrix< T, 4, 4 >::end ( )
inlineconstexpr

◆ end() [2/2]

template<typename T >
constexpr const_iterator osc::Matrix< T, 4, 4 >::end ( ) const
inlineconstexpr

◆ operator*=() [1/2]

template<typename T >
template<typename U >
Matrix & osc::Matrix< T, 4, 4 >::operator*= ( const Matrix< U, 4, 4 > &  m)
inline

◆ operator*=() [2/2]

template<typename T >
template<typename U >
Matrix & osc::Matrix< T, 4, 4 >::operator*= ( U  s)
inline

◆ operator++() [1/2]

template<typename T >
Matrix & osc::Matrix< T, 4, 4 >::operator++ ( )
inline

◆ operator++() [2/2]

template<typename T >
Matrix osc::Matrix< T, 4, 4 >::operator++ ( int  )
inline

◆ operator+=() [1/2]

template<typename T >
template<typename U >
Matrix & osc::Matrix< T, 4, 4 >::operator+= ( const Matrix< U, 4, 4 > &  m)
inline

◆ operator+=() [2/2]

template<typename T >
template<typename U >
Matrix & osc::Matrix< T, 4, 4 >::operator+= ( U  s)
inline

◆ operator--() [1/2]

template<typename T >
Matrix & osc::Matrix< T, 4, 4 >::operator-- ( )
inline

◆ operator--() [2/2]

template<typename T >
Matrix osc::Matrix< T, 4, 4 >::operator-- ( int  )
inline

◆ operator-=() [1/2]

template<typename T >
template<typename U >
Matrix & osc::Matrix< T, 4, 4 >::operator-= ( const Matrix< U, 4, 4 > &  m)
inline

◆ operator-=() [2/2]

template<typename T >
template<typename U >
Matrix & osc::Matrix< T, 4, 4 >::operator-= ( U  s)
inline

◆ operator/=() [1/2]

template<typename T >
template<typename U >
Matrix & osc::Matrix< T, 4, 4 >::operator/= ( const Matrix< U, 4, 4 > &  m)
inline

◆ operator/=() [2/2]

template<typename T >
template<typename U >
Matrix & osc::Matrix< T, 4, 4 >::operator/= ( U  s)
inline

◆ operator=()

template<typename T >
template<typename U >
Matrix & osc::Matrix< T, 4, 4 >::operator= ( const Matrix< U, 4, 4 > &  m)
inline

◆ operator[]() [1/2]

template<typename T >
constexpr reference osc::Matrix< T, 4, 4 >::operator[] ( size_type  pos)
inlineconstexpr

◆ operator[]() [2/2]

template<typename T >
constexpr const_reference osc::Matrix< T, 4, 4 >::operator[] ( size_type  pos) const
inlineconstexpr

◆ size()

template<typename T >
constexpr size_type osc::Matrix< T, 4, 4 >::size ( ) const
inlineconstexpr

Friends And Related Symbol Documentation

◆ operator==

template<typename T >
bool operator== ( const Matrix< T, 4, 4 > &  ,
const Matrix< T, 4, 4 > &   
)
friend

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