8#ifndef IGL_SPARSE_CACHED_H
9#define IGL_SPARSE_CACHED_H
11#define EIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET
13#include <Eigen/Sparse>
40 template <
typename DerivedI,
typename Scalar>
42 const Eigen::MatrixBase<DerivedI> & I,
43 const Eigen::MatrixBase<DerivedI> & J,
44 Eigen::VectorXi& data,
45 Eigen::SparseMatrix<Scalar>& X
49 template <
typename Scalar>
51 const std::vector<Eigen::Triplet<Scalar> >& triplets,
52 Eigen::VectorXi& data,
53 Eigen::SparseMatrix<Scalar>& X
60 template <
typename Scalar>
62 const std::vector<Eigen::Triplet<Scalar> >& triplets,
63 const Eigen::VectorXi& data,
64 Eigen::SparseMatrix<Scalar>& X);
67 template <
typename DerivedV,
typename Scalar>
69 const Eigen::MatrixBase<DerivedV>& V,
70 const Eigen::VectorXi& data,
71 Eigen::SparseMatrix<Scalar>& X
76#ifndef IGL_STATIC_LIBRARY
77# include "sparse_cached.cpp"
#define IGL_INLINE
Definition igl_inline.h:15
void sparse_cached(const std::vector< Eigen::Triplet< Scalar > > &triplets, const Eigen::VectorXi &data, Eigen::SparseMatrix< Scalar > &X)
Build a sparse matrix from cached list of data and values.
void sparse_cached_precompute(const Eigen::MatrixBase< DerivedI > &I, const Eigen::MatrixBase< DerivedI > &J, Eigen::VectorXi &data, Eigen::SparseMatrix< Scalar > &X)
Build a sparse matrix from list of indices and values (I,J,V), similarly to the sparse function in ma...