Public Types | Public Member Functions | Protected Types | Protected Attributes

Reverse< MatrixType, Direction > Class Template Reference

Expression of the reverse of a vector or matrix. More...

#include <Reverse.h>

List of all members.

Public Types

typedef
internal::dense_xpr_base
< Reverse >::type 
Base

Public Member Functions

 Reverse (const MatrixType &matrix)
Index rows () const
Index cols () const
Index innerStride () const
Scalar & operator() (Index row, Index col)
Scalar & coeffRef (Index row, Index col)
CoeffReturnType coeff (Index row, Index col) const
CoeffReturnType coeff (Index index) const
Scalar & coeffRef (Index index)
Scalar & operator() (Index index)
template<int LoadMode>
const PacketScalar packet (Index row, Index col) const
template<int LoadMode>
void writePacket (Index row, Index col, const PacketScalar &x)
template<int LoadMode>
const PacketScalar packet (Index index) const
template<int LoadMode>
void writePacket (Index index, const PacketScalar &x)

Protected Types

enum  {
  PacketSize = internal::packet_traits<Scalar>::size, IsColMajor = !IsRowMajor, ReverseRow = (Direction == Vertical) || (Direction == BothDirections), ReverseCol = (Direction == Horizontal) || (Direction == BothDirections),
  OffsetRow = ReverseRow && IsColMajor ? PacketSize : 1, OffsetCol = ReverseCol && IsRowMajor ? PacketSize : 1, ReversePacket
}
typedef
internal::reverse_packet_cond
< PacketScalar, ReversePacket > 
reverse_packet

Protected Attributes

const MatrixType::Nested m_matrix

Detailed Description

template<typename MatrixType, int Direction>
class Reverse< MatrixType, Direction >

Expression of the reverse of a vector or matrix.

Parameters:
MatrixType the type of the object of which we are taking the reverse

This class represents an expression of the reverse of a vector. It is the return type of MatrixBase::reverse() and VectorwiseOp::reverse() and most of the time this is the only way it is used.

See also:
MatrixBase::reverse(), VectorwiseOp::reverse()

Member Typedef Documentation

template<typename MatrixType , int Direction>
typedef internal::dense_xpr_base<Reverse>::type Reverse< MatrixType, Direction >::Base
template<typename MatrixType , int Direction>
typedef internal::reverse_packet_cond<PacketScalar,ReversePacket> Reverse< MatrixType, Direction >::reverse_packet [protected]

Member Enumeration Documentation

template<typename MatrixType , int Direction>
anonymous enum [protected]
Enumerator:
PacketSize 
IsColMajor 
ReverseRow 
ReverseCol 
OffsetRow 
OffsetCol 
ReversePacket 

Constructor & Destructor Documentation

template<typename MatrixType , int Direction>
Reverse< MatrixType, Direction >::Reverse ( const MatrixType &  matrix  )  [inline]

Member Function Documentation

template<typename MatrixType , int Direction>
CoeffReturnType Reverse< MatrixType, Direction >::coeff ( Index  row,
Index  col 
) const [inline]
template<typename MatrixType , int Direction>
CoeffReturnType Reverse< MatrixType, Direction >::coeff ( Index  index  )  const [inline]
template<typename MatrixType , int Direction>
Scalar& Reverse< MatrixType, Direction >::coeffRef ( Index  index  )  [inline]
template<typename MatrixType , int Direction>
Scalar& Reverse< MatrixType, Direction >::coeffRef ( Index  row,
Index  col 
) [inline]
template<typename MatrixType , int Direction>
Index Reverse< MatrixType, Direction >::cols ( void   )  const [inline]
template<typename MatrixType , int Direction>
Index Reverse< MatrixType, Direction >::innerStride (  )  const [inline]
template<typename MatrixType , int Direction>
Scalar& Reverse< MatrixType, Direction >::operator() ( Index  index  )  [inline]
template<typename MatrixType , int Direction>
Scalar& Reverse< MatrixType, Direction >::operator() ( Index  row,
Index  col 
) [inline]
template<typename MatrixType , int Direction>
template<int LoadMode>
const PacketScalar Reverse< MatrixType, Direction >::packet ( Index  row,
Index  col 
) const [inline]
template<typename MatrixType , int Direction>
template<int LoadMode>
const PacketScalar Reverse< MatrixType, Direction >::packet ( Index  index  )  const [inline]
template<typename MatrixType , int Direction>
Index Reverse< MatrixType, Direction >::rows ( void   )  const [inline]
template<typename MatrixType , int Direction>
template<int LoadMode>
void Reverse< MatrixType, Direction >::writePacket ( Index  row,
Index  col,
const PacketScalar &  x 
) [inline]
template<typename MatrixType , int Direction>
template<int LoadMode>
void Reverse< MatrixType, Direction >::writePacket ( Index  index,
const PacketScalar &  x 
) [inline]

Member Data Documentation

template<typename MatrixType , int Direction>
const MatrixType::Nested Reverse< MatrixType, Direction >::m_matrix [protected]

The documentation for this class was generated from the following file: