.. _program_listing_file__tmp_ws_src_eigenpy_include_eigenpy_eigenpy.hpp: Program Listing for File eigenpy.hpp ==================================== |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/eigenpy/include/eigenpy/eigenpy.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp /* * Copyright 2014-2019, CNRS * Copyright 2018-2024, INRIA */ #ifndef __eigenpy_eigenpy_hpp__ #define __eigenpy_eigenpy_hpp__ #include "eigenpy/fwd.hpp" #include "eigenpy/eigen-typedef.hpp" #include "eigenpy/expose.hpp" #include "eigenpy/std-unique-ptr.hpp" #define ENABLE_SPECIFIC_MATRIX_TYPE(TYPE) \ ::eigenpy::enableEigenPySpecific(); namespace eigenpy { /* Enable Eigen-Numpy serialization for a set of standard MatrixBase instance. */ void EIGENPY_DLLAPI enableEigenPy(); bool EIGENPY_DLLAPI withTensorSupport(); /* Enable the Eigen--Numpy serialization for the templated MatType class.*/ template void enableEigenPySpecific(); template EIGEN_DONT_INLINE void exposeType() { EIGENPY_MAKE_TYPEDEFS_ALL_SIZES(Scalar, Options, s); EIGENPY_UNUSED_TYPE(Vector1s); EIGENPY_UNUSED_TYPE(RowVector1s); ENABLE_SPECIFIC_MATRIX_TYPE(Matrix1s); ENABLE_SPECIFIC_MATRIX_TYPE(Vector2s); ENABLE_SPECIFIC_MATRIX_TYPE(RowVector2s); ENABLE_SPECIFIC_MATRIX_TYPE(Matrix2s); ENABLE_SPECIFIC_MATRIX_TYPE(Matrix2Xs); ENABLE_SPECIFIC_MATRIX_TYPE(MatrixX2s); ENABLE_SPECIFIC_MATRIX_TYPE(Vector3s); ENABLE_SPECIFIC_MATRIX_TYPE(RowVector3s); ENABLE_SPECIFIC_MATRIX_TYPE(Matrix3s); ENABLE_SPECIFIC_MATRIX_TYPE(Matrix3Xs); ENABLE_SPECIFIC_MATRIX_TYPE(MatrixX3s); ENABLE_SPECIFIC_MATRIX_TYPE(Vector4s); ENABLE_SPECIFIC_MATRIX_TYPE(RowVector4s); ENABLE_SPECIFIC_MATRIX_TYPE(Matrix4s); ENABLE_SPECIFIC_MATRIX_TYPE(Matrix4Xs); ENABLE_SPECIFIC_MATRIX_TYPE(MatrixX4s); ENABLE_SPECIFIC_MATRIX_TYPE(VectorXs); ENABLE_SPECIFIC_MATRIX_TYPE(RowVectorXs); ENABLE_SPECIFIC_MATRIX_TYPE(MatrixXs); enableEigenPySpecific(); } template EIGEN_DONT_INLINE void exposeType() { exposeType(); #ifdef EIGENPY_WITH_TENSOR_SUPPORT enableEigenPySpecific >(); enableEigenPySpecific >(); enableEigenPySpecific >(); #endif } } // namespace eigenpy #include "eigenpy/details.hpp" #endif // ifndef __eigenpy_eigenpy_hpp__