#ifndef EIGEN_QR_MODULE_H
#define EIGEN_QR_MODULE_H

#include "Core"
#include "Cholesky"

// Note that EIGEN_HIDE_HEAVY_CODE has to be defined per module
#if (defined EIGEN_EXTERN_INSTANTIATIONS) && (EIGEN_EXTERN_INSTANTIATIONS>=2)
  #ifndef EIGEN_HIDE_HEAVY_CODE
  #define EIGEN_HIDE_HEAVY_CODE
  #endif
#elif defined EIGEN_HIDE_HEAVY_CODE
  #undef EIGEN_HIDE_HEAVY_CODE
#endif

namespace Eigen {

/** \defgroup QR_Module QR module
  * This module mainly provides QR decomposition and an eigen value solver.
  * This module also provides some MatrixBase methods, including:
  *  - MatrixBase::qr(),
  *  - MatrixBase::eigenvalues(),
  *  - MatrixBase::operatorNorm()
  *
  * \code
  * #include <Eigen/QR>
  * \endcode
  */

#include "src/QR/QR.h"
#include "src/QR/Tridiagonalization.h"
#include "src/QR/EigenSolver.h"
#include "src/QR/SelfAdjointEigenSolver.h"
#include "src/QR/HessenbergDecomposition.h"

// declare all classes for a given matrix type
#define EIGEN_QR_MODULE_INSTANTIATE_TYPE(MATRIXTYPE,PREFIX) \
  PREFIX template class QR<MATRIXTYPE>; \
  PREFIX template class Tridiagonalization<MATRIXTYPE>; \
  PREFIX template class HessenbergDecomposition<MATRIXTYPE>; \
  PREFIX template class SelfAdjointEigenSolver<MATRIXTYPE>

// removed because it does not support complex yet
//  PREFIX template class EigenSolver<MATRIXTYPE>

// declare all class for all types
#define EIGEN_QR_MODULE_INSTANTIATE(PREFIX) \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(Matrix2f,PREFIX); \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(Matrix2d,PREFIX); \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(Matrix3f,PREFIX); \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(Matrix3d,PREFIX); \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(Matrix4f,PREFIX); \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(Matrix4d,PREFIX); \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(MatrixXf,PREFIX); \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(MatrixXd,PREFIX); \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(MatrixXcf,PREFIX); \
  EIGEN_QR_MODULE_INSTANTIATE_TYPE(MatrixXcd,PREFIX)

#ifdef EIGEN_EXTERN_INSTANTIATIONS
  EIGEN_QR_MODULE_INSTANTIATE(extern);
#endif // EIGEN_EXTERN_INSTANTIATIONS

} // namespace Eigen

#endif // EIGEN_QR_MODULE_H
