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

EigenBase< Derived > Struct Template Reference


Detailed Description

template<typename Derived>
struct EigenBase< Derived >

Common base class for all classes T such that MatrixBase has an operator=(T) and a constructor MatrixBase(T).

In other words, an EigenBase object is an object that can be copied into a MatrixBase.

Besides MatrixBase-derived classes, this also includes special matrix classes such as diagonal matrices, etc.

Notice that this class is trivial, it is only used to disambiguate overloaded functions.

See also:
TopicClassHierarchy

Definition at line 40 of file EigenBase.h.

#include <src/Core/EigenBase.h>

Inheritance diagram for EigenBase< Derived >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef internal::traits
< Derived >::StorageKind 
StorageKind
typedef internal::traits
< Derived >::Index 
Index

Public Member Functions

Derived & derived ()
const Derived & derived () const
Derived & const_cast_derived () const
const Derived & const_derived () const
Index rows () const
Index cols () const
Index size () const
template<typename Dest >
void evalTo (Dest &dst) const
template<typename Dest >
void addTo (Dest &dst) const
template<typename Dest >
void subTo (Dest &dst) const
template<typename Dest >
void applyThisOnTheRight (Dest &dst) const
template<typename Dest >
void applyThisOnTheLeft (Dest &dst) const

Member Typedef Documentation

template<typename Derived>
typedef internal::traits<Derived>::Index EigenBase< Derived >::Index

Reimplemented in internal::BandMatrix< _Scalar, Rows, Cols, Supers, Subs, Options >, internal::TridiagonalMatrix< Scalar, Size, Options >, DenseCoeffsBase< Derived, ReadOnlyAccessors >, DenseCoeffsBase< Derived, WriteAccessors >, DenseCoeffsBase< Derived, DirectAccessors >, DenseCoeffsBase< Derived, DirectWriteAccessors >, SelfAdjointView< MatrixType, UpLo >, TriangularBase< Derived >, TriangularView< _MatrixType, _Mode >, HouseholderSequence< VectorsType, CoeffsType, Side >, SparseMatrixBase< Derived >, SparseSelfAdjointView< MatrixType, UpLo >, SparseSymmetricPermutationProduct< MatrixType, UpLo >, internal::BandMatrix< RealScalar, ColsAtCompileTime, ColsAtCompileTime, 1, 0 >, internal::BandMatrix< Scalar, Size, Size, Options &SelfAdjoint?0:1, 1, Options|RowMajor >, TriangularBase< TriangularView< _MatrixType, _Mode > >, TriangularBase< SelfAdjointView< MatrixType, UpLo > >, SparseMatrixBase< CwiseUnaryOp< UnaryOp, MatrixType > >, SparseMatrixBase< Transpose< MatrixType > >, SparseMatrixBase< SparseDiagonalProduct< Lhs, Rhs > >, SparseMatrixBase< CwiseUnaryView< ViewOp, MatrixType > >, SparseMatrixBase< SparseMatrix< _Scalar, _Options, _Index > >, SparseMatrixBase< SparseInnerVectorSet< DynamicSparseMatrix< _Scalar, _Options >, Size > >, SparseMatrixBase< SparseInnerVectorSet< SparseMatrix< _Scalar, _Options >, Size > >, SparseMatrixBase< SparseInnerVectorSet< MatrixType, Size > >, SparseMatrixBase< SparseDenseOuterProduct< Lhs, Rhs, Tr > >, SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >, SparseMatrixBase< SparseSparseProduct< LhsNested, RhsNested > >, SparseMatrixBase< SparseTriangularView< MatrixType, Mode > >, SparseMatrixBase< SparseVector< _Scalar, _Options, _Index > >, SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >, SparseMatrixBase< SparseView< MatrixType > >, and SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >.

Definition at line 45 of file EigenBase.h.

template<typename Derived>
typedef internal::traits<Derived>::StorageKind EigenBase< Derived >::StorageKind

Member Function Documentation

template<typename Derived>
template<typename Dest >
void EigenBase< Derived >::addTo ( Dest &  dst) const [inline]

Definition at line 70 of file EigenBase.h.

template<typename Derived>
template<typename Dest >
void EigenBase< Derived >::applyThisOnTheLeft ( Dest &  dst) const [inline]

Reimplemented in HouseholderSequence< VectorsType, CoeffsType, Side >.

Definition at line 98 of file EigenBase.h.

template<typename Derived>
template<typename Dest >
void EigenBase< Derived >::applyThisOnTheRight ( Dest &  dst) const [inline]

Reimplemented in HouseholderSequence< VectorsType, CoeffsType, Side >.

Definition at line 90 of file EigenBase.h.

template<typename Derived>
Index EigenBase< Derived >::cols ( void  ) const [inline]
Returns:
the number of columns.
See also:
rows(), ColsAtCompileTime

Reimplemented in internal::BandMatrix< _Scalar, Rows, Cols, Supers, Subs, Options >, PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime >, Transpose< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime > >, SelfAdjointView< MatrixType, UpLo >, TriangularBase< Derived >, TriangularView< _MatrixType, _Mode >, HouseholderSequence< VectorsType, CoeffsType, Side >, DynamicSparseMatrix< _Scalar, _Options, _Index >, MappedSparseMatrix< _Scalar, _Flags, _Index >, SparseInnerVectorSet< MatrixType, Size >, SparseInnerVectorSet< DynamicSparseMatrix< _Scalar, _Options >, Size >, SparseInnerVectorSet< SparseMatrix< _Scalar, _Options, _Index >, Size >, SparseDenseOuterProduct< Lhs, Rhs, Tr >, SparseDiagonalProduct< Lhs, Rhs >, SparseMatrix< _Scalar, _Options, _Index >, SparseMatrixBase< Derived >, SparseSparseProduct< LhsNested, RhsNested >, SparseSelfAdjointView< MatrixType, UpLo >, SparseSymmetricPermutationProduct< MatrixType, UpLo >, SparseTriangularView< MatrixType, Mode >, SparseVector< _Scalar, _Options, _Index >, SparseView< MatrixType >, internal::BandMatrix< RealScalar, ColsAtCompileTime, ColsAtCompileTime, 1, 0 >, internal::BandMatrix< Scalar, Size, Size, Options &SelfAdjoint?0:1, 1, Options|RowMajor >, PermutationMatrix< ColsAtCompileTime, MaxColsAtCompileTime >, PermutationMatrix< RowsAtCompileTime, MaxRowsAtCompileTime >, TriangularBase< TriangularView< _MatrixType, _Mode > >, TriangularBase< SelfAdjointView< MatrixType, UpLo > >, SparseMatrixBase< CwiseUnaryOp< UnaryOp, MatrixType > >, SparseMatrixBase< Transpose< MatrixType > >, SparseMatrixBase< SparseDiagonalProduct< Lhs, Rhs > >, SparseMatrixBase< CwiseUnaryView< ViewOp, MatrixType > >, SparseMatrixBase< SparseMatrix< _Scalar, _Options, _Index > >, SparseMatrixBase< SparseInnerVectorSet< DynamicSparseMatrix< _Scalar, _Options >, Size > >, SparseMatrixBase< SparseInnerVectorSet< SparseMatrix< _Scalar, _Options >, Size > >, SparseMatrixBase< SparseInnerVectorSet< MatrixType, Size > >, SparseMatrixBase< SparseDenseOuterProduct< Lhs, Rhs, Tr > >, SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >, SparseMatrixBase< SparseSparseProduct< LhsNested, RhsNested > >, SparseMatrixBase< SparseTriangularView< MatrixType, Mode > >, SparseMatrixBase< SparseVector< _Scalar, _Options, _Index > >, SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >, SparseMatrixBase< SparseView< MatrixType > >, and SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >.

Definition at line 60 of file EigenBase.h.

Referenced by PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::_resize_to_match(), EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::addTo(), Array< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols >::Array(), Matrix< Scalar, Rows, HDim >::Matrix(), EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::size(), and EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::subTo().

template<typename Derived>
Derived& EigenBase< Derived >::const_cast_derived ( ) const [inline]
template<typename Derived>
const Derived& EigenBase< Derived >::const_derived ( ) const [inline]

Definition at line 54 of file EigenBase.h.

template<typename Derived>
const Derived& EigenBase< Derived >::derived ( ) const [inline]
Returns:
a const reference to the derived object

Definition at line 50 of file EigenBase.h.

template<typename Derived>
Derived& EigenBase< Derived >::derived ( ) [inline]
Returns:
a reference to the derived object

Definition at line 48 of file EigenBase.h.

Referenced by MatrixBase< Derived >::applyOnTheLeft(), MatrixBase< Derived >::applyOnTheRight(), EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::applyThisOnTheLeft(), EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::applyThisOnTheRight(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::assignGeneric(), TriangularBase< SelfAdjointView< MatrixType, UpLo > >::coeff(), TriangularBase< SelfAdjointView< MatrixType, UpLo > >::coeffRef(), TriangularBase< SelfAdjointView< MatrixType, UpLo > >::cols(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::cols(), EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::cols(), TriangularBase< SelfAdjointView< MatrixType, UpLo > >::copyCoeff(), SparseMatrixBase< Derived >::dot(), DynamicSparseMatrix< _Scalar, _Options, _Index >::DynamicSparseMatrix(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::eval(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::evalTo(), EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::evalTo(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::imag(), TriangularBase< SelfAdjointView< MatrixType, UpLo > >::innerStride(), TriangularView< _MatrixType, _Mode >::lazyAssign(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::markAsRValue(), TransposeImpl< MatrixType, Sparse >::nonZeros(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::nonZeros(), Translation< _Scalar, _Dim >::operator*(), Transform< _Scalar, _Dim, _Mode >::operator*(), SparseMatrixBase< Derived >::operator*(), RotationBase< Derived, 3 >::operator*(), MatrixBase< Derived >::operator*=(), SparseMatrixBase< Derived >::operator+=(), DenseBase< Derived >::operator+=(), SparseMatrixBase< Derived >::operator-=(), DenseBase< Derived >::operator-=(), TriangularView< _MatrixType, _Mode >::operator=(), Transform< _Scalar, _Dim, _Mode >::operator=(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::operator=(), SparseMatrix< _Scalar, _Options, _Index >::operator=(), PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::operator=(), DenseBase< Derived >::operator=(), DynamicSparseMatrix< _Scalar, _Options, _Index >::operator=(), MatrixBase< Derived >::operator=(), TriangularBase< SelfAdjointView< MatrixType, UpLo > >::outerStride(), PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::PlainObjectBase(), PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::resizeLike(), TriangularBase< SelfAdjointView< MatrixType, UpLo > >::rows(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::rows(), EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::rows(), SparseTriangularView< MatrixType, Mode >::solveInPlace(), SparseMatrix< _Scalar, _Options, _Index >::SparseMatrix(), SparseVector< _Scalar, _Options, _Index >::SparseVector(), TriangularView< _MatrixType, _Mode >::swap(), SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::toDense(), Transform< _Scalar, _Dim, _Mode >::Transform(), and SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >::transpose().

template<typename Derived>
template<typename Dest >
void EigenBase< Derived >::evalTo ( Dest &  dst) const [inline]
template<typename Derived>
Index EigenBase< Derived >::rows ( void  ) const [inline]
Returns:
the number of rows.
See also:
cols(), RowsAtCompileTime

Reimplemented in internal::BandMatrix< _Scalar, Rows, Cols, Supers, Subs, Options >, PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime >, Transpose< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime > >, SelfAdjointView< MatrixType, UpLo >, TriangularBase< Derived >, TriangularView< _MatrixType, _Mode >, HouseholderSequence< VectorsType, CoeffsType, Side >, DynamicSparseMatrix< _Scalar, _Options, _Index >, MappedSparseMatrix< _Scalar, _Flags, _Index >, SparseInnerVectorSet< MatrixType, Size >, SparseInnerVectorSet< DynamicSparseMatrix< _Scalar, _Options >, Size >, SparseInnerVectorSet< SparseMatrix< _Scalar, _Options, _Index >, Size >, SparseDenseOuterProduct< Lhs, Rhs, Tr >, SparseDiagonalProduct< Lhs, Rhs >, SparseMatrix< _Scalar, _Options, _Index >, SparseMatrixBase< Derived >, SparseSparseProduct< LhsNested, RhsNested >, SparseSelfAdjointView< MatrixType, UpLo >, SparseSymmetricPermutationProduct< MatrixType, UpLo >, SparseTriangularView< MatrixType, Mode >, SparseVector< _Scalar, _Options, _Index >, SparseView< MatrixType >, internal::BandMatrix< RealScalar, ColsAtCompileTime, ColsAtCompileTime, 1, 0 >, internal::BandMatrix< Scalar, Size, Size, Options &SelfAdjoint?0:1, 1, Options|RowMajor >, PermutationMatrix< ColsAtCompileTime, MaxColsAtCompileTime >, PermutationMatrix< RowsAtCompileTime, MaxRowsAtCompileTime >, TriangularBase< TriangularView< _MatrixType, _Mode > >, TriangularBase< SelfAdjointView< MatrixType, UpLo > >, SparseMatrixBase< CwiseUnaryOp< UnaryOp, MatrixType > >, SparseMatrixBase< Transpose< MatrixType > >, SparseMatrixBase< SparseDiagonalProduct< Lhs, Rhs > >, SparseMatrixBase< CwiseUnaryView< ViewOp, MatrixType > >, SparseMatrixBase< SparseMatrix< _Scalar, _Options, _Index > >, SparseMatrixBase< SparseInnerVectorSet< DynamicSparseMatrix< _Scalar, _Options >, Size > >, SparseMatrixBase< SparseInnerVectorSet< SparseMatrix< _Scalar, _Options >, Size > >, SparseMatrixBase< SparseInnerVectorSet< MatrixType, Size > >, SparseMatrixBase< SparseDenseOuterProduct< Lhs, Rhs, Tr > >, SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >, SparseMatrixBase< SparseSparseProduct< LhsNested, RhsNested > >, SparseMatrixBase< SparseTriangularView< MatrixType, Mode > >, SparseMatrixBase< SparseVector< _Scalar, _Options, _Index > >, SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >, SparseMatrixBase< SparseView< MatrixType > >, and SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >.

Definition at line 58 of file EigenBase.h.

Referenced by PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::_resize_to_match(), EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::addTo(), Array< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols >::Array(), Matrix< Scalar, Rows, HDim >::Matrix(), EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::size(), and EigenBase< SparseSymmetricPermutationProduct< MatrixType, UpLo > >::subTo().

template<typename Derived>
Index EigenBase< Derived >::size ( ) const [inline]
Returns:
the number of coefficients, which is rows()*cols().
See also:
rows(), cols(), SizeAtCompileTime.

Reimplemented in PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime >, SparseMatrixBase< Derived >, PermutationMatrix< ColsAtCompileTime, MaxColsAtCompileTime >, PermutationMatrix< RowsAtCompileTime, MaxRowsAtCompileTime >, SparseMatrixBase< CwiseUnaryOp< UnaryOp, MatrixType > >, SparseMatrixBase< Transpose< MatrixType > >, SparseMatrixBase< SparseDiagonalProduct< Lhs, Rhs > >, SparseMatrixBase< CwiseUnaryView< ViewOp, MatrixType > >, SparseMatrixBase< SparseMatrix< _Scalar, _Options, _Index > >, SparseMatrixBase< SparseInnerVectorSet< DynamicSparseMatrix< _Scalar, _Options >, Size > >, SparseMatrixBase< SparseInnerVectorSet< SparseMatrix< _Scalar, _Options >, Size > >, SparseMatrixBase< SparseInnerVectorSet< MatrixType, Size > >, SparseMatrixBase< SparseDenseOuterProduct< Lhs, Rhs, Tr > >, SparseMatrixBase< MappedSparseMatrix< _Scalar, _Flags, _Index > >, SparseMatrixBase< SparseSparseProduct< LhsNested, RhsNested > >, SparseMatrixBase< SparseTriangularView< MatrixType, Mode > >, SparseMatrixBase< SparseVector< _Scalar, _Options, _Index > >, SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >, SparseMatrixBase< SparseView< MatrixType > >, and SparseMatrixBase< DynamicSparseMatrix< _Scalar, _Options, _Index > >.

Definition at line 63 of file EigenBase.h.

Referenced by PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::_resize_to_match().

template<typename Derived>
template<typename Dest >
void EigenBase< Derived >::subTo ( Dest &  dst) const [inline]

Definition at line 80 of file EigenBase.h.




Page generated by Doxygen 1.7.3 for MRPT 0.9.4 SVN:exported at Tue Jan 25 21:56:31 UTC 2011