aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Array/Reverse.h
diff options
context:
space:
mode:
Diffstat (limited to 'Eigen/src/Array/Reverse.h')
-rw-r--r--Eigen/src/Array/Reverse.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/Eigen/src/Array/Reverse.h b/Eigen/src/Array/Reverse.h
index 4807bea55..a8d8310a9 100644
--- a/Eigen/src/Array/Reverse.h
+++ b/Eigen/src/Array/Reverse.h
@@ -43,8 +43,10 @@
*/
template<typename MatrixType, int Direction>
struct ei_traits<Reverse<MatrixType, Direction> >
+ : ei_traits<MatrixType>
{
typedef typename MatrixType::Scalar Scalar;
+ typedef typename ei_traits<MatrixType>::StorageType StorageType;
typedef typename ei_nested<MatrixType>::type MatrixTypeNested;
typedef typename ei_unref<MatrixTypeNested>::type _MatrixTypeNested;
enum {
@@ -75,11 +77,12 @@ template<typename PacketScalar> struct ei_reverse_packet_cond<PacketScalar,false
};
template<typename MatrixType, int Direction> class Reverse
- : public MatrixBase<Reverse<MatrixType, Direction> >
+ : public MatrixType::template MakeBase< Reverse<MatrixType, Direction> >::Type
{
public:
- EIGEN_GENERIC_PUBLIC_INTERFACE(Reverse)
+ typedef typename MatrixType::template MakeBase< Reverse<MatrixType, Direction> >::Type Base;
+ _EIGEN_GENERIC_PUBLIC_INTERFACE(Reverse)
protected:
enum {
@@ -167,7 +170,7 @@ template<typename MatrixType, int Direction> class Reverse
*/
template<typename Derived>
inline Reverse<Derived, BothDirections>
-MatrixBase<Derived>::reverse()
+DenseBase<Derived>::reverse()
{
return derived();
}
@@ -175,7 +178,7 @@ MatrixBase<Derived>::reverse()
/** This is the const version of reverse(). */
template<typename Derived>
inline const Reverse<Derived, BothDirections>
-MatrixBase<Derived>::reverse() const
+DenseBase<Derived>::reverse() const
{
return derived();
}
@@ -193,7 +196,7 @@ MatrixBase<Derived>::reverse() const
*
* \sa reverse() */
template<typename Derived>
-inline void MatrixBase<Derived>::reverseInPlace()
+inline void DenseBase<Derived>::reverseInPlace()
{
derived() = derived().reverse().eval();
}