Main MRPT website > C++ reference
MRPT logo
Public Types | Public Member Functions | Protected Types | Protected Attributes

Reverse< MatrixType, Direction > Class Template Reference


Detailed Description

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

Expression of the reverse of a vector or matrix.

Parameters:
MatrixTypethe 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()

Definition at line 83 of file Reverse.h.

#include <src/Core/Reverse.h>

Inheritance diagram for Reverse< MatrixType, Direction >:
Inheritance graph
[legend]

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

Member Typedef Documentation

template<typename MatrixType , int Direction>
typedef internal::dense_xpr_base<Reverse>::type Reverse< MatrixType, Direction >::Base

Definition at line 88 of file Reverse.h.

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

Definition at line 108 of file Reverse.h.


Member Enumeration Documentation

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

Definition at line 97 of file Reverse.h.


Constructor & Destructor Documentation

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

Definition at line 111 of file Reverse.h.


Member Function Documentation

template<typename MatrixType , int Direction>
CoeffReturnType Reverse< MatrixType, Direction >::coeff ( Index  row,
Index  col 
) const [inline]

Definition at line 135 of file Reverse.h.

References col(), and row().

template<typename MatrixType , int Direction>
CoeffReturnType Reverse< MatrixType, Direction >::coeff ( Index  index) const [inline]

Definition at line 141 of file Reverse.h.

template<typename MatrixType , int Direction>
Scalar& Reverse< MatrixType, Direction >::coeffRef ( Index  index) [inline]

Definition at line 146 of file Reverse.h.

template<typename MatrixType , int Direction>
Scalar& Reverse< MatrixType, Direction >::coeffRef ( Index  row,
Index  col 
) [inline]

Definition at line 129 of file Reverse.h.

References col(), and row().

template<typename MatrixType , int Direction>
Index Reverse< MatrixType, Direction >::cols ( void  ) const [inline]

Definition at line 116 of file Reverse.h.

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

Definition at line 118 of file Reverse.h.

template<typename MatrixType , int Direction>
Scalar& Reverse< MatrixType, Direction >::operator() ( Index  index) [inline]

Definition at line 151 of file Reverse.h.

References eigen_assert.

template<typename MatrixType , int Direction>
Scalar& Reverse< MatrixType, Direction >::operator() ( Index  row,
Index  col 
) [inline]

Definition at line 123 of file Reverse.h.

References eigen_assert.

template<typename MatrixType , int Direction>
template<int LoadMode>
const PacketScalar Reverse< MatrixType, Direction >::packet ( Index  row,
Index  col 
) const [inline]

Definition at line 158 of file Reverse.h.

References col(), and row().

template<typename MatrixType , int Direction>
template<int LoadMode>
const PacketScalar Reverse< MatrixType, Direction >::packet ( Index  index) const [inline]

Definition at line 175 of file Reverse.h.

References internal::preverse().

template<typename MatrixType , int Direction>
Index Reverse< MatrixType, Direction >::rows ( void  ) const [inline]

Definition at line 115 of file Reverse.h.

template<typename MatrixType , int Direction>
template<int LoadMode>
void Reverse< MatrixType, Direction >::writePacket ( Index  row,
Index  col,
const PacketScalar &  x 
) [inline]

Definition at line 166 of file Reverse.h.

References col(), and row().

template<typename MatrixType , int Direction>
template<int LoadMode>
void Reverse< MatrixType, Direction >::writePacket ( Index  index,
const PacketScalar &  x 
) [inline]

Definition at line 181 of file Reverse.h.

References internal::preverse().


Member Data Documentation

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

Definition at line 187 of file Reverse.h.




Page generated by Doxygen 1.7.3 for MRPT 0.9.4 SVN: at Sat Mar 26 06:40:17 UTC 2011