ARGoS  3
A parallel, multi-engine simulator for swarm robotics
argos::CMatrix< ROWS, COLS > Class Template Reference

#include <matrix.h>

Public Member Functions

 CMatrix ()
 
 CMatrix (const Real *pf_values)
 
 CMatrix (const CMatrix< ROWS, COLS > &c_matrix)
 
CMatrix< ROWS, COLS > & operator= (const CMatrix< ROWS, COLS > &c_matrix)
 
Realoperator() (UInt32 un_row, UInt32 un_col)
 
Real operator() (UInt32 un_row, UInt32 un_col) const
 
Real operator() (UInt32 un_idx) const
 
Realoperator() (UInt32 un_idx)
 
void Set (const Real *f_values)
 
CMatrix< COLS, ROWS > GetTransposed ()
 
template<UInt32 SMROWS, UInt32 SMCOLS>
CMatrix< SMROWS, SMCOLS > & GetSubmatrix (CMatrix< SMROWS, SMCOLS > &c_matrix, UInt32 un_offset_row, UInt32 un_offset_col)
 
bool operator== (const CMatrix< ROWS, COLS > &c_matrix) const
 
CMatrix< ROWS, COLS > & operator+= (const CMatrix< ROWS, COLS > &c_matrix)
 
CMatrix< ROWS, COLS > & operator-= (const CMatrix< ROWS, COLS > &c_matrix)
 
CMatrix< ROWS, COLS > & operator*= (Real f_scale)
 
CMatrix< ROWS, COLS > operator+ (const CMatrix< ROWS, COLS > &c_matrix) const
 
CMatrix< ROWS, COLS > operator- (const CMatrix< ROWS, COLS > &c_matrix) const
 
CMatrix< ROWS, COLS > & operator*= (const CMatrix< COLS, COLS > &c_matrix)
 
template<UInt32 OTRCOLS>
CMatrix< ROWS, OTRCOLS > operator* (const CMatrix< COLS, OTRCOLS > &c_matrix) const
 

Protected Attributes

Real m_pfValues [ROWS *COLS]
 

Friends

template<UInt32 SMROWS, UInt32 SMCOLS>
class CMatrix
 
class CRotationMatrix2
 
class CTransformationMatrix2
 
class CRotationMatrix3
 
class CTransformationMatrix3
 
std::ostream & operator<< (std::ostream &c_os, const CMatrix &c_matrix)
 

Detailed Description

template<UInt32 ROWS, UInt32 COLS>
class argos::CMatrix< ROWS, COLS >

Definition at line 20 of file matrix.h.

Constructor & Destructor Documentation

◆ CMatrix() [1/3]

template<UInt32 ROWS, UInt32 COLS>
argos::CMatrix< ROWS, COLS >::CMatrix ( )
inline

Definition at line 32 of file matrix.h.

◆ CMatrix() [2/3]

template<UInt32 ROWS, UInt32 COLS>
argos::CMatrix< ROWS, COLS >::CMatrix ( const Real pf_values)
inline

Definition at line 37 of file matrix.h.

◆ CMatrix() [3/3]

template<UInt32 ROWS, UInt32 COLS>
argos::CMatrix< ROWS, COLS >::CMatrix ( const CMatrix< ROWS, COLS > &  c_matrix)
inline

Definition at line 41 of file matrix.h.

Member Function Documentation

◆ GetSubmatrix()

template<UInt32 ROWS, UInt32 COLS>
template<UInt32 SMROWS, UInt32 SMCOLS>
CMatrix<SMROWS, SMCOLS>& argos::CMatrix< ROWS, COLS >::GetSubmatrix ( CMatrix< SMROWS, SMCOLS > &  c_matrix,
UInt32  un_offset_row,
UInt32  un_offset_col 
)
inline

Definition at line 101 of file matrix.h.

◆ GetTransposed()

template<UInt32 ROWS, UInt32 COLS>
CMatrix<COLS, ROWS> argos::CMatrix< ROWS, COLS >::GetTransposed ( )
inline

Definition at line 91 of file matrix.h.

◆ operator()() [1/4]

template<UInt32 ROWS, UInt32 COLS>
Real& argos::CMatrix< ROWS, COLS >::operator() ( UInt32  un_idx)
inline

Definition at line 79 of file matrix.h.

◆ operator()() [2/4]

template<UInt32 ROWS, UInt32 COLS>
Real argos::CMatrix< ROWS, COLS >::operator() ( UInt32  un_idx) const
inline

Definition at line 72 of file matrix.h.

◆ operator()() [3/4]

template<UInt32 ROWS, UInt32 COLS>
Real& argos::CMatrix< ROWS, COLS >::operator() ( UInt32  un_row,
UInt32  un_col 
)
inline

Definition at line 52 of file matrix.h.

◆ operator()() [4/4]

template<UInt32 ROWS, UInt32 COLS>
Real argos::CMatrix< ROWS, COLS >::operator() ( UInt32  un_row,
UInt32  un_col 
) const
inline

Definition at line 62 of file matrix.h.

◆ operator*()

template<UInt32 ROWS, UInt32 COLS>
template<UInt32 OTRCOLS>
CMatrix<ROWS, OTRCOLS> argos::CMatrix< ROWS, COLS >::operator* ( const CMatrix< COLS, OTRCOLS > &  c_matrix) const
inline

Definition at line 177 of file matrix.h.

◆ operator*=() [1/2]

template<UInt32 ROWS, UInt32 COLS>
CMatrix<ROWS, COLS>& argos::CMatrix< ROWS, COLS >::operator*= ( const CMatrix< COLS, COLS > &  c_matrix)
inline

Definition at line 162 of file matrix.h.

◆ operator*=() [2/2]

template<UInt32 ROWS, UInt32 COLS>
CMatrix<ROWS, COLS>& argos::CMatrix< ROWS, COLS >::operator*= ( Real  f_scale)
inline

Definition at line 143 of file matrix.h.

◆ operator+()

template<UInt32 ROWS, UInt32 COLS>
CMatrix<ROWS, COLS> argos::CMatrix< ROWS, COLS >::operator+ ( const CMatrix< ROWS, COLS > &  c_matrix) const
inline

Definition at line 150 of file matrix.h.

◆ operator+=()

template<UInt32 ROWS, UInt32 COLS>
CMatrix<ROWS, COLS>& argos::CMatrix< ROWS, COLS >::operator+= ( const CMatrix< ROWS, COLS > &  c_matrix)
inline

Definition at line 129 of file matrix.h.

◆ operator-()

template<UInt32 ROWS, UInt32 COLS>
CMatrix<ROWS, COLS> argos::CMatrix< ROWS, COLS >::operator- ( const CMatrix< ROWS, COLS > &  c_matrix) const
inline

Definition at line 156 of file matrix.h.

◆ operator-=()

template<UInt32 ROWS, UInt32 COLS>
CMatrix<ROWS, COLS>& argos::CMatrix< ROWS, COLS >::operator-= ( const CMatrix< ROWS, COLS > &  c_matrix)
inline

Definition at line 136 of file matrix.h.

◆ operator=()

template<UInt32 ROWS, UInt32 COLS>
CMatrix<ROWS,COLS>& argos::CMatrix< ROWS, COLS >::operator= ( const CMatrix< ROWS, COLS > &  c_matrix)
inline

Definition at line 45 of file matrix.h.

◆ operator==()

template<UInt32 ROWS, UInt32 COLS>
bool argos::CMatrix< ROWS, COLS >::operator== ( const CMatrix< ROWS, COLS > &  c_matrix) const
inline

Definition at line 121 of file matrix.h.

◆ Set()

template<UInt32 ROWS, UInt32 COLS>
void argos::CMatrix< ROWS, COLS >::Set ( const Real f_values)
inline

Definition at line 86 of file matrix.h.

Friends And Related Function Documentation

◆ CMatrix

template<UInt32 ROWS, UInt32 COLS>
template<UInt32 SMROWS, UInt32 SMCOLS>
friend class CMatrix
friend

Definition at line 23 of file matrix.h.

◆ CRotationMatrix2

template<UInt32 ROWS, UInt32 COLS>
friend class CRotationMatrix2
friend

Definition at line 26 of file matrix.h.

◆ CRotationMatrix3

template<UInt32 ROWS, UInt32 COLS>
friend class CRotationMatrix3
friend

Definition at line 28 of file matrix.h.

◆ CTransformationMatrix2

template<UInt32 ROWS, UInt32 COLS>
friend class CTransformationMatrix2
friend

Definition at line 27 of file matrix.h.

◆ CTransformationMatrix3

template<UInt32 ROWS, UInt32 COLS>
friend class CTransformationMatrix3
friend

Definition at line 29 of file matrix.h.

◆ operator<<

template<UInt32 ROWS, UInt32 COLS>
std::ostream& operator<< ( std::ostream &  c_os,
const CMatrix< ROWS, COLS > &  c_matrix 
)
friend

Definition at line 190 of file matrix.h.

Member Data Documentation

◆ m_pfValues

template<UInt32 ROWS, UInt32 COLS>
Real argos::CMatrix< ROWS, COLS >::m_pfValues[ROWS *COLS]
protected

Definition at line 214 of file matrix.h.


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