diff options
author | Gael Guennebaud <g.gael@free.fr> | 2015-03-09 21:29:46 +0100 |
---|---|---|
committer | Gael Guennebaud <g.gael@free.fr> | 2015-03-09 21:29:46 +0100 |
commit | d4317a85e8266fd9f840986821a2ca1cf673262b (patch) | |
tree | e943bd2e5f698b522a55ead727d77f2cf3b582a4 /Eigen/src/SparseCore/SparseMatrixBase.h | |
parent | 9e885fb76608c8d90da20151db6459a99be360d6 (diff) |
Add typedefs for return types of SparseMatrixBase::selfadjointView
Diffstat (limited to 'Eigen/src/SparseCore/SparseMatrixBase.h')
-rw-r--r-- | Eigen/src/SparseCore/SparseMatrixBase.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/Eigen/src/SparseCore/SparseMatrixBase.h b/Eigen/src/SparseCore/SparseMatrixBase.h index d76dfa33d..55b0ad9d2 100644 --- a/Eigen/src/SparseCore/SparseMatrixBase.h +++ b/Eigen/src/SparseCore/SparseMatrixBase.h @@ -97,7 +97,6 @@ template<typename Derived> class SparseMatrixBase : public EigenBase<Derived> Transpose<const Derived> >::type AdjointReturnType; typedef Transpose<Derived> TransposeReturnType; - template<unsigned int UpLo> struct SelfAdjointViewReturnType { typedef SelfAdjointView<Derived, UpLo> Type; }; typedef typename internal::add_const<Transpose<const Derived> >::type ConstTransposeReturnType; // FIXME storage order do not match evaluator storage order @@ -300,9 +299,14 @@ template<typename Derived> class SparseMatrixBase : public EigenBase<Derived> template<int Mode> inline const TriangularView<const Derived, Mode> triangularView() const; + + template<unsigned int UpLo> struct SelfAdjointViewReturnType { typedef SparseSelfAdjointView<Derived, UpLo> Type; }; + template<unsigned int UpLo> struct ConstSelfAdjointViewReturnType { typedef const SparseSelfAdjointView<const Derived, UpLo> Type; }; - template<unsigned int UpLo> inline const SparseSelfAdjointView<const Derived, UpLo> selfadjointView() const; - template<unsigned int UpLo> inline SparseSelfAdjointView<Derived, UpLo> selfadjointView(); + template<unsigned int UpLo> inline + typename ConstSelfAdjointViewReturnType<UpLo>::Type selfadjointView() const; + template<unsigned int UpLo> inline + typename SelfAdjointViewReturnType<UpLo>::Type selfadjointView(); template<typename OtherDerived> Scalar dot(const MatrixBase<OtherDerived>& other) const; template<typename OtherDerived> Scalar dot(const SparseMatrixBase<OtherDerived>& other) const; |