aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core/Diagonal.h
diff options
context:
space:
mode:
authorGravatar Gael Guennebaud <g.gael@free.fr>2010-01-22 10:15:41 +0100
committerGravatar Gael Guennebaud <g.gael@free.fr>2010-01-22 10:15:41 +0100
commitd40c110053c13692ffc0df25fca292d98996d496 (patch)
treebcd5aeb0665e47168bb5cb53e5e935da1614bb7d /Eigen/src/Core/Diagonal.h
parentf1a025185a25e53eb1c4817141c0523cf48f70bc (diff)
lot of cleaning:
- clean the *_PUBLIC_INTERFACE_* - update Diagonal, ReturnByValue, ForceAlignedAccess, UnaryView, etc. to support array - many other small stuff
Diffstat (limited to 'Eigen/src/Core/Diagonal.h')
-rw-r--r--Eigen/src/Core/Diagonal.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/Eigen/src/Core/Diagonal.h b/Eigen/src/Core/Diagonal.h
index 344dbca40..3720952cd 100644
--- a/Eigen/src/Core/Diagonal.h
+++ b/Eigen/src/Core/Diagonal.h
@@ -64,7 +64,7 @@ struct ei_traits<Diagonal<MatrixType,Index> >
};
template<typename MatrixType, int Index> class Diagonal
- : public MatrixBase<Diagonal<MatrixType, Index> >
+ : public MatrixType::template MakeBase< Diagonal<MatrixType,Index> >::Type
{
// some compilers may fail to optimize std::max etc in case of compile-time constants...
EIGEN_STRONG_INLINE int absIndex() const { return m_index.value()>0 ? m_index.value() : -m_index.value(); }
@@ -73,7 +73,8 @@ template<typename MatrixType, int Index> class Diagonal
public:
- EIGEN_GENERIC_PUBLIC_INTERFACE(Diagonal)
+ typedef typename MatrixType::template MakeBase<Diagonal>::Type Base;
+ EIGEN_DENSE_PUBLIC_INTERFACE(Diagonal)
inline Diagonal(const MatrixType& matrix, int index = Index) : m_matrix(matrix), m_index(index) {}