#ifndef EIGEN_QR_MODULE_H
#define EIGEN_QR_MODULE_H

#include "Core"

#include "src/Core/util/DisableMSVCWarnings.h"

#include "Cholesky"
#include "Jacobi"
#include "Householder"

// 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
  *
  * \nonstableyet
  *
  * This module provides various QR decompositions
  * This module also provides some MatrixBase methods, including:
  *  - MatrixBase::qr(),
  *
  * \code
  * #include <Eigen/QR>
  * \endcode
  */

#include "src/misc/Solve.h"
#include "src/QR/HouseholderQR.h"
#include "src/QR/FullPivHouseholderQR.h"
#include "src/QR/ColPivHouseholderQR.h"

// declare all classes for a given matrix type
#define EIGEN_QR_MODULE_INSTANTIATE_TYPE(MATRIXTYPE,PREFIX) \
  PREFIX template class HouseholderQR<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

#include "src/Core/util/EnableMSVCWarnings.h"

// FIXME for compatibility we include Eigenvalues here:
#include "Eigenvalues"

#endif // EIGEN_QR_MODULE_H
/* vim: set filetype=cpp et sw=2 ts=2 ai: */
