Motorcortex Math  version: 2.1.0
mcx::math::BaseMatrix< rows, cols, T > Class Template Reference

Public Member Functions

 BaseMatrix (T value=T())
 
 BaseMatrix (const T(&rawData)[rows *cols])
 
template<typename C , typename D = typename C::value_type>
 BaseMatrix (const C &container)
 
 BaseMatrix (const BaseMatrix< rows, cols, T > &mat)
 
BaseMatrix< rows, cols, T > & operator= (const BaseMatrix< rows, cols, T > &)=default
 
BaseMatrix< rows, cols, T > & operator= (T value)
 
operator() (unsigned int row, unsigned int col) const
 
T & operator() (unsigned int row, unsigned int col)
 
operator[] (unsigned int idx) const
 
T & operator[] (unsigned int idx)
 
unsigned int getRowCount () const
 
unsigned int getColCount () const
 
unsigned int getMaxRowCount () const
 
unsigned int getMaxColCount () const
 
void setActiveSize (unsigned int, unsigned int)
 
void operator+= (T value)
 
void operator-= (T value)
 
void operator*= (T value)
 
void operator+= (const BaseMatrix< rows, cols, T > &mat)
 
void operator-= (const BaseMatrix< rows, cols, T > &mat)
 
template<class Ret >
Ret operator+ (const Ret &mat) const
 
template<class Ret >
Ret operator- (const Ret &mat) const
 
BaseMatrix< rows, cols, T > operator* (T value) const
 
BaseMatrix< rows, cols, T > operator* (const BaseMatrix< rows, cols, T > &mat) const
 
bool operator== (const BaseMatrix< rows, cols, T > &mat) const
 
bool operator!= (const BaseMatrix< rows, cols, T > &mat) const
 
maxAbsElement () const
 
double norm () const
 
bool normalize ()
 
void rawData (T(&data_out)[rows *cols]) const
 
T *const rawDataPtr ()
 
T(& rawDataRef ())[rows *cols]
 
unsigned int rawDataLength () const
 
void print () const
 
BaseMatrix< cols, rows, T > transpose () const
 
template<unsigned int cols2>
BaseMatrix< rows, cols2, T > dot (const BaseMatrix< cols, cols2, T > &mat) const
 
void identity ()
 
Matrix< rows-1, cols-1, T > reduce (unsigned int cutRow, unsigned int cutColumn) const
 
 BaseMatrix (T value=T())
 
 BaseMatrix (const T(&rawData)[rows *cols])
 
template<typename C , typename D = typename C::value_type>
 BaseMatrix (const C &container)
 
 BaseMatrix (const BaseMatrix< rows, cols, T > &mat)
 
BaseMatrix< rows, cols, T > & operator= (const BaseMatrix< rows, cols, T > &)=default
 
BaseMatrix< rows, cols, T > & operator= (T value)
 
operator() (unsigned int row, unsigned int col) const
 
T & operator() (unsigned int row, unsigned int col)
 
operator[] (unsigned int idx) const
 
T & operator[] (unsigned int idx)
 
unsigned int getRowCount () const
 
unsigned int getColCount () const
 
unsigned int getMaxRowCount () const
 
unsigned int getMaxColCount () const
 
void setActiveSize (unsigned int, unsigned int)
 
void operator+= (T value)
 
void operator-= (T value)
 
void operator*= (T value)
 
void operator+= (const BaseMatrix< rows, cols, T > &mat)
 
void operator-= (const BaseMatrix< rows, cols, T > &mat)
 
template<class Ret >
Ret operator+ (const Ret &mat) const
 
template<class Ret >
Ret operator- (const Ret &mat) const
 
BaseMatrix< rows, cols, T > operator* (T value) const
 
BaseMatrix< rows, cols, T > operator* (const BaseMatrix< rows, cols, T > &mat) const
 
bool operator== (const BaseMatrix< rows, cols, T > &mat) const
 
bool operator!= (const BaseMatrix< rows, cols, T > &mat) const
 
maxAbsElement () const
 
double norm () const
 
bool normalize ()
 
void rawData (T(&data_out)[rows *cols]) const
 
T *const rawDataPtr ()
 
T(& rawDataRef ())[rows *cols]
 
unsigned int rawDataLength () const
 
void print () const
 
BaseMatrix< cols, rows, T > transpose () const
 
template<unsigned int cols2>
BaseMatrix< rows, cols2, T > dot (const BaseMatrix< cols, cols2, T > &mat) const
 
void identity ()
 
Matrix< rows-1, cols-1, T > reduce (unsigned int cutRow, unsigned int cutColumn) const
 

Static Public Attributes

static constexpr std::size_t rawDataByteSize {sizeof(data)}
 
static constexpr unsigned int rawDataLengthValue {rows*cols}
 

Protected Attributes

data [rows *cols] {}
 
unsigned int activerows {rows}
 
unsigned int activecols {cols}
 

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