22 #define XSMATRIX_INITIALIZER { NULL, 0, 0, 0, XSDF_Managed } 41 #define XsMatrix_offsetM(thisPtr, row, column) (thisPtr->m_stride*row + column) 59 inline int flags() {
return m_flags; }
136 inline bool empty()
const 142 inline void setZero()
201 inline XsSize rows()
const 207 inline XsSize cols()
const 246 #ifndef XSENS_NO_PACK XSTYPES_DLL_API void XsMatrix_multiplyScalar(const XsMatrix *thisPtr, XsReal scalar, XsMatrix *dest)
const XsSize m_rows
Number of rows in the matrix.
bool operator==(const TPoint2D &p1, const TPoint2D &p2)
Exact comparison between 2D points.
XSTYPES_DLL_API void XsMatrix_copy(XsMatrix *copy, XsMatrix const *src)
EIGEN_STRONG_INLINE bool empty() const
const int m_flags
Flags for data management.
XSTYPES_DLL_API void XsMatrix_ref(XsMatrix *thisPtr, XsSize rows, XsSize cols, XsSize stride, XsReal *buffer, XsDataFlags flags)
XSTYPES_DLL_API const XsReal XsMath_zero
const XsSize m_stride
Number of items per row in memory (usually equal to cols but not always)
XSTYPES_DLL_API void XsMatrix_assign(XsMatrix *thisPtr, XsSize rows, XsSize cols, XsSize stride, const XsReal *src, XsSize srcStride)
size_t XsSize
XsSize must be unsigned number!
#define XsMatrix_offsetM(thisPtr, row, column)
XSTYPES_DLL_API void XsMatrix_construct(XsMatrix *thisPtr, XsSize rows, XsSize cols, XsSize stride, const XsReal *src, XsSize srcStride)
XSTYPES_DLL_API int XsMatrix_empty(const XsMatrix *thisPtr)
XSTYPES_DLL_API void XsMatrix_fromQuaternion(XsMatrix *thisPtr, const struct XsQuaternion *quat)
XSTYPES_DLL_API void XsMatrix_setValue(XsMatrix *thisPtr, XsSize row, XsSize column, XsReal value)
XSTYPES_DLL_API void XsMatrix_setZero(XsMatrix *thisPtr)
VALUE & operator[](const KEY &key)
Write/read via [i] operator, that creates an element if it didn't exist already.
EIGEN_STRONG_INLINE void setSize(size_t row, size_t col)
Changes the size of matrix, maintaining its previous content as possible and padding with zeros where...
XSCPPPROTECTED XsReal *const m_data
Contained data.
XSTYPES_DLL_API int XsMatrix_dimensionsMatch(const XsMatrix *thisPtr, XsSize rows, XsSize columns)
XSTYPES_DLL_API void XsMatrix_destruct(XsMatrix *thisPtr)
XSTYPES_DLL_API void XsMatrix_swap(XsMatrix *a, XsMatrix *b)
GLdouble GLdouble GLdouble r
XSTYPES_DLL_API XsReal XsMatrix_value(const XsMatrix *thisPtr, XsSize row, XsSize column)
GLenum GLenum GLvoid * row
double XsReal
Defines the floating point type used by the Xsens libraries.
GLsizei const GLfloat * value
GLenum GLenum GLvoid GLvoid * column
GLsizei GLsizei GLenum GLenum const GLvoid * data
GLubyte GLubyte GLubyte a
XsDataFlags
These flags define the behaviour of data contained by Xsens data structures.
std::vector< T1 > operator*(const std::vector< T1 > &a, const std::vector< T2 > &b)
a*b (element-wise multiplication)
XSTYPES_DLL_API XsSize XsMatrix_offset(const XsMatrix *thisPtr, XsSize row, XsSize column)
const XsSize m_cols
Number of columns in the matrix.