24 #define XSVECTOR_INITIALIZER { NULL, 0, 0 } 57 inline int flags() {
return m_flags; }
149 v.m_data[i] =
m_data[i] * scalar;
209 inline XsReal cartesianLength()
const 215 inline void setZero()
221 inline bool empty()
const 261 inline std::vector<XsReal> toVector()
const 263 std::vector<XsReal> tmp(
m_size);
296 #ifndef XSENS_NO_PACK void BASE_IMPEXP memcpy(void *dest, size_t destSize, const void *src, size_t copyCount) MRPT_NO_THROWS
An OS and compiler independent version of "memcpy".
XSTYPES_DLL_API XsReal XsVector_cartesianLength(const XsVector *thisPtr)
bool operator==(const TPoint2D &p1, const TPoint2D &p2)
Exact comparison between 2D points.
EIGEN_STRONG_INLINE bool empty() const
XSTYPES_DLL_API void XsVector_angularVelocityFromQuaternion(XsVector *thisPtr, XsReal deltaT, const struct XsQuaternion *quat)
EIGEN_STRONG_INLINE void fill(const Scalar v)
XSTYPES_DLL_API const XsReal XsMath_zero
XSTYPES_DLL_API int XsVector_empty(const XsVector *thisPtr)
size_t XsSize
XsSize must be unsigned number!
XSTYPES_DLL_API void XsVector_swap(XsVector *a, XsVector *b)
XSTYPES_DLL_API int XsVector_equal(const XsVector *thisPtr, const XsVector *thatPtr)
std::vector< T1 > operator+(const std::vector< T1 > &a, const std::vector< T2 > &b)
a+b (element-wise sum)
XSTYPES_DLL_API void XsVector_destruct(XsVector *thisPtr)
XSTYPES_DLL_API void XsVector_assign(XsVector *thisPtr, XsSize sz, const XsReal *src)
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...
XSTYPES_DLL_API void XsVector_construct(XsVector *thisPtr, XsSize sz, const XsReal *src)
XSTYPES_DLL_API void XsVector_ref(XsVector *thisPtr, XsSize sz, XsReal *buffer, XsDataFlags flags)
EIGEN_STRONG_INLINE void assign(const Scalar v)
const int m_flags
Flags for data management.
const XsSize m_size
Size of contained data buffer in elements.
CONTAINER1::Scalar dotProduct(const CONTAINER1 &v1, const CONTAINER1 &v2)
v1*v2: The dot product of two containers (vectors/arrays/matrices)
double XsReal
Defines the floating point type used by the Xsens libraries.
XSTYPES_DLL_API void XsVector_copy(XsVector *copy, XsVector const *src)
GLsizei const GLfloat * value
XSTYPES_DLL_API void XsVector_setZero(XsVector *thisPtr)
XSTYPES_DLL_API XsReal XsVector_dotProduct(const XsVector *a, const XsVector *b)
XSCPPPROTECTED XsReal *const m_data
Points to contained data buffer.
GLsizei GLsizei GLenum GLenum const GLvoid * data
GLubyte GLubyte GLubyte a
TPoint3D operator-(const TPoint3D &p1)
Unary minus operator for 3D points.
std::vector< T1 > & operator*=(std::vector< T1 > &a, const std::vector< T2 > &b)
a*=b (element-wise multiplication)
XSTYPES_DLL_API void XsVector_fill(XsVector *thisPtr, XsReal value)
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 void XsVector_multiplyScalar(const XsVector *thisPtr, XsReal scalar, XsVector *dest)