diff options
author | 2012-01-25 18:16:48 +0100 | |
---|---|---|
committer | 2012-01-25 18:16:48 +0100 | |
commit | 5e4dfa4a09f4578537bf63be0709637df3a5c844 (patch) | |
tree | 2cbddab8d1048b4f9fdcccf2da064e146fb0c5c3 /Eigen/src/SparseCore | |
parent | 606e204f6d87a109110b074862cd39d71948f567 (diff) |
fix a nesting type issue in Sparse/TriangularView
Diffstat (limited to 'Eigen/src/SparseCore')
-rw-r--r-- | Eigen/src/SparseCore/SparseTriangularView.h | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/Eigen/src/SparseCore/SparseTriangularView.h b/Eigen/src/SparseCore/SparseTriangularView.h index 3c0c10242..48fc62a4c 100644 --- a/Eigen/src/SparseCore/SparseTriangularView.h +++ b/Eigen/src/SparseCore/SparseTriangularView.h @@ -53,9 +53,7 @@ template<typename MatrixType, int Mode> class SparseTriangularView inline Index rows() const { return m_matrix.rows(); } inline Index cols() const { return m_matrix.cols(); } - //typedef typename internal::conditional<internal::must_nest_by_value<MatrixType>::ret, - // MatrixType, const MatrixType&>::type MatrixTypeNested; - typedef typename internal::nested<MatrixType>::type MatrixTypeNested; + typedef typename MatrixType::Nested MatrixTypeNested; typedef typename internal::remove_reference<MatrixTypeNested>::type MatrixTypeNestedNonRef; typedef typename internal::remove_all<MatrixTypeNested>::type MatrixTypeNestedCleaned; @@ -72,13 +70,13 @@ template<typename MatrixType, int Mode> class SparseTriangularView template<typename OtherDerived> void solveInPlace(SparseMatrixBase<OtherDerived>& other) const; protected: - MatrixTypeNested m_matrix; + const MatrixTypeNested m_matrix; }; template<typename MatrixType, int Mode> -class SparseTriangularView<MatrixType,Mode>::InnerIterator : public MatrixType::InnerIterator +class SparseTriangularView<MatrixType,Mode>::InnerIterator : public MatrixTypeNested::InnerIterator { - typedef typename MatrixType::InnerIterator Base; + typedef typename MatrixTypeNested::InnerIterator Base; public: EIGEN_STRONG_INLINE InnerIterator(const SparseTriangularView& view, Index outer) @@ -140,9 +138,9 @@ class SparseTriangularView<MatrixType,Mode>::InnerIterator : public MatrixType:: }; template<typename MatrixType, int Mode> -class SparseTriangularView<MatrixType,Mode>::ReverseInnerIterator : public MatrixType::ReverseInnerIterator +class SparseTriangularView<MatrixType,Mode>::ReverseInnerIterator : public MatrixTypeNested::ReverseInnerIterator { - typedef typename MatrixType::ReverseInnerIterator Base; + typedef typename MatrixTypeNested::ReverseInnerIterator Base; public: EIGEN_STRONG_INLINE ReverseInnerIterator(const SparseTriangularView& view, Index outer) |