YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
Eigen.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-FileCopyrightText: 2006-2010 RobotCub Consortium
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7#ifndef YARP_EIGEN_EIGEN_H
8#define YARP_EIGEN_EIGEN_H
9
10#include <Eigen/Core>
11#include <yarp/sig/Matrix.h>
12#include <yarp/sig/Vector.h>
13
14namespace yarp::eigen {
15
21inline Eigen::Map<Eigen::VectorXd> toEigen(yarp::sig::Vector & yarpVector)
22{
23 return Eigen::Map<Eigen::VectorXd>(yarpVector.data(),yarpVector.size());
24}
25
31inline Eigen::Map< Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic,Eigen::RowMajor> > toEigen(yarp::sig::Matrix & yarpMatrix)
32{
33 return Eigen::Map< Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic,Eigen::RowMajor> >(yarpMatrix.data(),yarpMatrix.rows(),yarpMatrix.cols());
34}
35
41inline Eigen::Map<const Eigen::VectorXd> toEigen(const yarp::sig::Vector & yarpVector)
42{
43 return Eigen::Map<const Eigen::VectorXd>(yarpVector.data(),yarpVector.size());
44}
45
51inline Eigen::Map<const Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic,Eigen::RowMajor> > toEigen(const yarp::sig::Matrix & yarpMatrix)
52{
53 return Eigen::Map<const Eigen::Matrix<double,Eigen::Dynamic,Eigen::Dynamic,Eigen::RowMajor> >(yarpMatrix.data(),yarpMatrix.rows(),yarpMatrix.cols());
54}
55
56} // namespace yarp::eigen
57
58#endif // YARP_EIGEN_EIGEN_H
contains the definition of a Matrix type
contains the definition of a Vector type
A class for a Matrix.
Definition Matrix.h:39
size_t cols() const
Return number of columns.
Definition Matrix.h:94
double * data()
Return a pointer to the first element.
Definition Matrix.h:297
size_t rows() const
Return number of rows.
Definition Matrix.h:88
size_t size() const
Definition Vector.h:341
T * data()
Return a pointer to the first element of the vector.
Definition Vector.h:206
Eigen::Map< Eigen::VectorXd > toEigen(yarp::sig::Vector &yarpVector)
Convert a yarp::sig::Vector to a Eigen::Map<Eigen::VectorXd> object.
Definition Eigen.h:21