mirror of
https://gitlab.com/libeigen/eigen.git
synced 2025-04-19 08:09:36 +08:00
Add missing non-const reverse method in VectorwiseOp.
This commit is contained in:
parent
461cd819c2
commit
db9b154193
@ -284,6 +284,7 @@ template<typename ExpressionType, int Direction> class VectorwiseOp
|
|||||||
typedef typename ReturnType<internal::member_any>::Type AnyReturnType;
|
typedef typename ReturnType<internal::member_any>::Type AnyReturnType;
|
||||||
typedef PartialReduxExpr<ExpressionType, internal::member_count<Index>, Direction> CountReturnType;
|
typedef PartialReduxExpr<ExpressionType, internal::member_count<Index>, Direction> CountReturnType;
|
||||||
typedef typename ReturnType<internal::member_prod>::Type ProdReturnType;
|
typedef typename ReturnType<internal::member_prod>::Type ProdReturnType;
|
||||||
|
typedef Reverse<const ExpressionType, Direction> ConstReverseReturnType;
|
||||||
typedef Reverse<ExpressionType, Direction> ReverseReturnType;
|
typedef Reverse<ExpressionType, Direction> ReverseReturnType;
|
||||||
|
|
||||||
template<int p> struct LpNormReturnType {
|
template<int p> struct LpNormReturnType {
|
||||||
@ -456,7 +457,15 @@ template<typename ExpressionType, int Direction> class VectorwiseOp
|
|||||||
*
|
*
|
||||||
* \sa DenseBase::reverse() */
|
* \sa DenseBase::reverse() */
|
||||||
EIGEN_DEVICE_FUNC
|
EIGEN_DEVICE_FUNC
|
||||||
const ReverseReturnType reverse() const
|
const ConstReverseReturnType reverse() const
|
||||||
|
{ return ConstReverseReturnType( _expression() ); }
|
||||||
|
|
||||||
|
/** \returns a writable matrix expression
|
||||||
|
* where each column (or row) are reversed.
|
||||||
|
*
|
||||||
|
* \sa reverse() const */
|
||||||
|
EIGEN_DEVICE_FUNC
|
||||||
|
ReverseReturnType reverse()
|
||||||
{ return ReverseReturnType( _expression() ); }
|
{ return ReverseReturnType( _expression() ); }
|
||||||
|
|
||||||
typedef Replicate<ExpressionType,(isVertical?Dynamic:1),(isHorizontal?Dynamic:1)> ReplicateReturnType;
|
typedef Replicate<ExpressionType,(isVertical?Dynamic:1),(isHorizontal?Dynamic:1)> ReplicateReturnType;
|
||||||
|
@ -117,13 +117,11 @@ template<typename MatrixType> void reverse(const MatrixType& m)
|
|||||||
m2.colwise().reverseInPlace();
|
m2.colwise().reverseInPlace();
|
||||||
VERIFY_IS_APPROX(m2,m1.colwise().reverse().eval());
|
VERIFY_IS_APPROX(m2,m1.colwise().reverse().eval());
|
||||||
|
|
||||||
/*
|
|
||||||
m1.colwise().reverse()(r, c) = x;
|
m1.colwise().reverse()(r, c) = x;
|
||||||
VERIFY_IS_APPROX(x, m1(rows - 1 - r, c));
|
VERIFY_IS_APPROX(x, m1(rows - 1 - r, c));
|
||||||
|
|
||||||
m1.rowwise().reverse()(r, c) = x;
|
m1.rowwise().reverse()(r, c) = x;
|
||||||
VERIFY_IS_APPROX(x, m1(r, cols - 1 - c));
|
VERIFY_IS_APPROX(x, m1(r, cols - 1 - c));
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void test_array_reverse()
|
void test_array_reverse()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user