#ifndef EIGEN_SPARSE_MODULE_H
#define EIGEN_SPARSE_MODULE_H

#include "Core"

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

#include <vector>
#include <map>
#include <cstdlib>
#include <cstring>
#include <algorithm>

#ifdef EIGEN_GOOGLEHASH_SUPPORT
  #include <google/dense_hash_map>
#endif

#ifdef EIGEN_CHOLMOD_SUPPORT
  extern "C" {
    #include <cholmod.h>
  }
#endif

#ifdef EIGEN_TAUCS_SUPPORT
  // taucs.h declares a lot of mess
  #define isnan
  #define finite
  #define isinf
  extern "C" {
    #include <taucs.h>
  }
  #undef isnan
  #undef finite
  #undef isinf

  #ifdef min
    #undef min
  #endif
  #ifdef max
    #undef max
  #endif
  #ifdef complex
    #undef complex
  #endif
#endif

#ifdef EIGEN_SUPERLU_SUPPORT
  typedef int int_t;
  #include <slu_Cnames.h>
  #include <supermatrix.h>
  #include <slu_util.h>

  namespace SuperLU_S {
  #include <slu_sdefs.h>
  }
  namespace SuperLU_D {
  #include <slu_ddefs.h>
  }
  namespace SuperLU_C {
  #include <slu_cdefs.h>
  }
  namespace SuperLU_Z {
  #include <slu_zdefs.h>
  }
  namespace Eigen { struct SluMatrix; }
#endif

#ifdef EIGEN_UMFPACK_SUPPORT
  #include <umfpack.h>
#endif

namespace Eigen {

/** \defgroup Sparse_Module Sparse module
  *
  * \nonstableyet
  *
  * See the \ref TutorialSparse "Sparse tutorial"
  *
  * \code
  * #include <Eigen/QR>
  * \endcode
  */

/** The type used to identify a general sparse storage. */
struct Sparse {};

#include "src/Sparse/SparseUtil.h"
#include "src/Sparse/SparseMatrixBase.h"
#include "src/Sparse/CompressedStorage.h"
#include "src/Sparse/AmbiVector.h"
#include "src/Sparse/RandomSetter.h"
#include "src/Sparse/SparseBlock.h"
#include "src/Sparse/SparseMatrix.h"
#include "src/Sparse/DynamicSparseMatrix.h"
#include "src/Sparse/MappedSparseMatrix.h"
#include "src/Sparse/SparseVector.h"
#include "src/Sparse/CoreIterators.h"
#include "src/Sparse/SparseTranspose.h"
#include "src/Sparse/SparseCwiseUnaryOp.h"
#include "src/Sparse/SparseCwiseBinaryOp.h"
#include "src/Sparse/SparseDot.h"
#include "src/Sparse/SparseAssign.h"
#include "src/Sparse/SparseRedux.h"
#include "src/Sparse/SparseFuzzy.h"
#include "src/Sparse/SparseProduct.h"
#include "src/Sparse/SparseDiagonalProduct.h"
#include "src/Sparse/SparseTriangularView.h"
#include "src/Sparse/SparseSelfAdjointView.h"
#include "src/Sparse/TriangularSolver.h"
#include "src/Sparse/SparseLLT.h"
#include "src/Sparse/SparseLDLT.h"
#include "src/Sparse/SparseLU.h"

#ifdef EIGEN_CHOLMOD_SUPPORT
# include "src/Sparse/CholmodSupport.h"
#endif

#ifdef EIGEN_TAUCS_SUPPORT
# include "src/Sparse/TaucsSupport.h"
#endif

#ifdef EIGEN_SUPERLU_SUPPORT
# include "src/Sparse/SuperLUSupport.h"
#endif

#ifdef EIGEN_UMFPACK_SUPPORT
# include "src/Sparse/UmfPackSupport.h"
#endif

} // namespace Eigen

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

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

