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>()) \ 67 class dynamic_vector :
public Eigen::Matrix<T, Eigen::Dynamic, 1>
70 using Base = Eigen::Matrix<T, Eigen::Dynamic, 1>;
81 Base::setConstant(
value);
#define MRPT_EIGEN_DERIVED_CLASS_CTOR_OPERATOR_EQUAL(_CLASS_)
Column vector, like Eigen::MatrixX*, but automatically initialized to zeros since construction...
dynamic_vector< float > CVectorFloat
Column vector, like Eigen::MatrixXf, but automatically initialized to zeros since construction...
This base provides a set of functions for maths stuff.
dynamic_vector(size_t length, float value)
Constructor to given size and all entries to some value.
std::ostream & operator<<(std::ostream &o, const TPoint2D &p)
Virtual base class for "archives": classes abstracting I/O streams.
Eigen::Matrix< T, Eigen::Dynamic, 1 > Base
GLuint GLsizei GLsizei * length
dynamic_vector< double > CVectorDouble
Column vector, like Eigen::MatrixXd, but automatically initialized to zeros since construction...
GLsizei const GLfloat * value
GLubyte GLubyte GLubyte a
mrpt::serialization::CArchive & operator>>(mrpt::serialization::CArchive &in, CMatrix::Ptr &pObj)