22 #define XSMATRIX_INITIALIZER \ 24 nullptr, 0, 0, 0, XSDF_Managed \ 56 #define XsMatrix_offsetM(thisPtr, row, column) \ 57 (thisPtr->m_stride * row + column) 82 inline int flags() {
return m_flags; }
231 if (
this == &other)
return true;
243 #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.