Home | History | Annotate | Download | only in Eigen
      1 // This file is part of Eigen, a lightweight C++ template library
      2 // for linear algebra.
      3 //
      4 // This Source Code Form is subject to the terms of the Mozilla
      5 // Public License v. 2.0. If a copy of the MPL was not distributed
      6 // with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
      7 
      8 #ifndef EIGEN_GEOMETRY_MODULE_H
      9 #define EIGEN_GEOMETRY_MODULE_H
     10 
     11 #include "Core"
     12 
     13 #include "src/Core/util/DisableStupidWarnings.h"
     14 
     15 #include "SVD"
     16 #include "LU"
     17 #include <limits>
     18 
     19 /** \defgroup Geometry_Module Geometry module
     20   *
     21   * This module provides support for:
     22   *  - fixed-size homogeneous transformations
     23   *  - translation, scaling, 2D and 3D rotations
     24   *  - \link Quaternion quaternions \endlink
     25   *  - cross products (\ref MatrixBase::cross, \ref MatrixBase::cross3)
     26   *  - orthognal vector generation (\ref MatrixBase::unitOrthogonal)
     27   *  - some linear components: \link ParametrizedLine parametrized-lines \endlink and \link Hyperplane hyperplanes \endlink
     28   *  - \link AlignedBox axis aligned bounding boxes \endlink
     29   *  - \link umeyama least-square transformation fitting \endlink
     30   *
     31   * \code
     32   * #include <Eigen/Geometry>
     33   * \endcode
     34   */
     35 
     36 #include "src/Geometry/OrthoMethods.h"
     37 #include "src/Geometry/EulerAngles.h"
     38 
     39 #include "src/Geometry/Homogeneous.h"
     40 #include "src/Geometry/RotationBase.h"
     41 #include "src/Geometry/Rotation2D.h"
     42 #include "src/Geometry/Quaternion.h"
     43 #include "src/Geometry/AngleAxis.h"
     44 #include "src/Geometry/Transform.h"
     45 #include "src/Geometry/Translation.h"
     46 #include "src/Geometry/Scaling.h"
     47 #include "src/Geometry/Hyperplane.h"
     48 #include "src/Geometry/ParametrizedLine.h"
     49 #include "src/Geometry/AlignedBox.h"
     50 #include "src/Geometry/Umeyama.h"
     51 
     52 // Use the SSE optimized version whenever possible. At the moment the
     53 // SSE version doesn't compile when AVX is enabled
     54 #if defined EIGEN_VECTORIZE_SSE && !defined EIGEN_VECTORIZE_AVX
     55 #include "src/Geometry/arch/Geometry_SSE.h"
     56 #endif
     57 
     58 #include "src/Core/util/ReenableStupidWarnings.h"
     59 
     60 #endif // EIGEN_GEOMETRY_MODULE_H
     61 /* vim: set filetype=cpp et sw=2 ts=2 ai: */
     62 
     63