diff --git a/include/eigenpy/version.hpp b/include/eigenpy/version.hpp index 891e0c9497be0355bc77f1f2064ca4ed21cad6b2..3e5357b2ca3fa5a61e5d2928b7e1e4456057bde3 100644 --- a/include/eigenpy/version.hpp +++ b/include/eigenpy/version.hpp @@ -18,6 +18,14 @@ namespace eigenpy { /// std::string EIGENPY_DLLAPI printVersion(const std::string& delimiter = "."); +/// +/// \brief Returns the current version of Eigen3 as a string using +/// the following standard: +/// EIGEN_MINOR_VERSION.EIGEN_MINOR_VERSION.EIGEN_PATCH_VERSION +/// +std::string EIGENPY_DLLAPI +printEigenVersion(const std::string& delimiter = "."); + /// /// \brief Checks if the current version of EigenPy is at least the version /// provided diff --git a/python/main.cpp b/python/main.cpp index 03bc2f2052f9251bbade21518d33880d7fe68096..b589c6c81bbfc1a8d8ea2f5bceca22348f051ebc 100644 --- a/python/main.cpp +++ b/python/main.cpp @@ -1,6 +1,6 @@ /* * Copyright 2014-2019, CNRS - * Copyright 2018-2022, INRIA + * Copyright 2018-2023, INRIA */ #include <boost/python/scope.hpp> @@ -22,6 +22,7 @@ BOOST_PYTHON_MODULE(eigenpy_pywrap) { enableEigenPy(); bp::scope().attr("__version__") = eigenpy::printVersion(); + bp::scope().attr("__eigen_version__") = eigenpy::printEigenVersion(); bp::scope().attr("__raw_version__") = bp::str(EIGENPY_VERSION); bp::def("checkVersionAtLeast", &eigenpy::checkVersionAtLeast, bp::args("major_version", "minor_version", "patch_version"), diff --git a/src/version.cpp b/src/version.cpp index 7ac4383ed0edb38c8bf9a979ab6a1555968818b0..9b290e887ec3590dd5ed90e23aee667702de48a0 100644 --- a/src/version.cpp +++ b/src/version.cpp @@ -1,12 +1,12 @@ // -// Copyright (c) 2019 INRIA +// Copyright (c) 2019-2023 INRIA // #include "eigenpy/version.hpp" +#include "eigenpy/config.hpp" #include <sstream> - -#include "eigenpy/config.hpp" +#include <Eigen/Core> namespace eigenpy { @@ -17,6 +17,13 @@ std::string printVersion(const std::string& delimiter) { return oss.str(); } +std::string printEigenVersion(const std::string& delimiter) { + std::ostringstream oss; + oss << EIGEN_MAJOR_VERSION << delimiter << EIGEN_MINOR_VERSION << delimiter + << EIGEN_MINOR_VERSION; + return oss.str(); +} + bool checkVersionAtLeast(unsigned int major_version, unsigned int minor_version, unsigned int patch_version) { return EIGENPY_VERSION_AT_LEAST(major_version, minor_version, patch_version);