25 #ifdef EIGEN_MATRIXBASE_H
26 # error **FATAL ERROR**: MRPT headers must be included before <Eigen/Dense> headers.
28 #ifndef EIGEN_USE_NEW_STDVECTOR
29 #define EIGEN_USE_NEW_STDVECTOR
31 #include <Eigen/Dense>
32 #include <Eigen/StdVector>
33 #include <Eigen/StdDeque>
35 #if !EIGEN_VERSION_AT_LEAST(2, 90, 0)
36 #error MRPT needs version 3.0.0-beta of Eigen or newer
40 #include EIGEN_MATRIXBASE_PLUGIN_POST_IMPL
46 #define MRPT_EIGEN_DERIVED_CLASS_CTOR_OPERATOR_EQUAL(_CLASS_) \
48 template <typename OtherDerived> \
49 inline mrpt_autotype& operator=( \
50 const Eigen::MatrixBase<OtherDerived>& other) \
52 Base::operator=(other); \
56 template <typename OtherDerived> \
57 inline _CLASS_(const Eigen::MatrixBase<OtherDerived>& other) \
58 : Base(other.template cast<typename Base::Scalar>()) \
72 typedef Eigen::Matrix<T, Eigen::Dynamic, 1>
Base;
84 Base::setConstant(
value);
Column vector, like Eigen::MatrixX*, but automatically initialized to zeros since construction.
dynamic_vector< T > mrpt_autotype
dynamic_vector(size_t length, float value)
Constructor to given size and all entries to some value.
Eigen::Matrix< T, Eigen::Dynamic, 1 > Base
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
GLuint GLsizei GLsizei * length
GLubyte GLubyte GLubyte a
GLsizei const GLfloat * value
#define MRPT_MATRIX_CONSTRUCTORS_FROM_POSES(_CLASS_)
dynamic_vector< float > CVectorFloat
Column vector, like Eigen::MatrixXf, but automatically initialized to zeros since construction.
dynamic_vector< double > CVectorDouble
Column vector, like Eigen::MatrixXd, but automatically initialized to zeros since construction.
CStream & operator>>(mrpt::utils::CStream &in, char *a)
CStream & operator<<(mrpt::utils::CStream &s, const char *a)
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
#define MRPT_EIGEN_DERIVED_CLASS_CTOR_OPERATOR_EQUAL(_CLASS_)