Logo Search packages:      
Sourcecode: eigen3 version File versions  Download package

Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Related Functions

DenseBase< Derived > Class Template Reference

Base class for all dense matrices, vectors, and arrays. More...

#include <DenseBase.h>

Inheritance diagram for DenseBase< Derived >:
Inheritance graph
[legend]
Collaboration diagram for DenseBase< Derived >:
Collaboration graph
[legend]

List of all members.

Classes

struct  ConstFixedSegmentReturnType
struct  ConstNColsBlockXpr
struct  ConstNRowsBlockXpr
struct  FixedSegmentReturnType
class  InnerIterator
struct  NColsBlockXpr
struct  NRowsBlockXpr

Public Types

enum  {
  RowsAtCompileTime = internal::traits<Derived>::RowsAtCompileTime, ColsAtCompileTime = internal::traits<Derived>::ColsAtCompileTime, SizeAtCompileTime, MaxRowsAtCompileTime = internal::traits<Derived>::MaxRowsAtCompileTime,
  MaxColsAtCompileTime = internal::traits<Derived>::MaxColsAtCompileTime, MaxSizeAtCompileTime, IsVectorAtCompileTime, Flags = internal::traits<Derived>::Flags,
  IsRowMajor = int(Flags) & RowMajorBit, InnerSizeAtCompileTime, CoeffReadCost = internal::traits<Derived>::CoeffReadCost, InnerStrideAtCompileTime = internal::inner_stride_at_compile_time<Derived>::ret,
  OuterStrideAtCompileTime = internal::outer_stride_at_compile_time<Derived>::ret
}
enum  { ThisConstantIsPrivateInPlainObjectBase }
typedef DenseCoeffsBase< Derived > Base
typedef Base::CoeffReturnType CoeffReturnType
typedef Block< Derived,
internal::traits< Derived >
::RowsAtCompileTime, Dynamic,!IsRowMajor > 
ColsBlockXpr
typedef VectorwiseOp< Derived,
Vertical > 
ColwiseReturnType
typedef Block< Derived,
internal::traits< Derived >
::RowsAtCompileTime,
1,!IsRowMajor > 
ColXpr
typedef CwiseNullaryOp
< internal::scalar_constant_op
< Scalar >, Derived > 
ConstantReturnType
typedef const Block< const
Derived, internal::traits
< Derived >::RowsAtCompileTime,
Dynamic,!IsRowMajor > 
ConstColsBlockXpr
typedef const VectorwiseOp
< const Derived, Vertical > 
ConstColwiseReturnType
typedef const Block< const
Derived, internal::traits
< Derived >::RowsAtCompileTime,
1,!IsRowMajor > 
ConstColXpr
typedef const Reverse< const
Derived, BothDirections > 
ConstReverseReturnType
typedef const Block< const
Derived, Dynamic,
internal::traits< Derived >
::ColsAtCompileTime,
IsRowMajor > 
ConstRowsBlockXpr
typedef const VectorwiseOp
< const Derived, Horizontal > 
ConstRowwiseReturnType
typedef const Block< const
Derived, 1, internal::traits
< Derived >::ColsAtCompileTime,
IsRowMajor > 
ConstRowXpr
typedef const VectorBlock
< const Derived > 
ConstSegmentReturnType
typedef const Transpose< const
Derived > 
ConstTransposeReturnType
typedef Matrix< typename
NumTraits< typename
internal::traits< Derived >
::Scalar >::Real,
internal::traits< Derived >
::ColsAtCompileTime, 1 > 
EigenvaluesReturnType
typedef internal::traits
< Derived >::Index 
Index
 The type of indices.
typedef
internal::packet_traits
< Scalar >::type 
PacketScalar
typedef CwiseNullaryOp
< internal::linspaced_op
< Scalar, true >, Derived > 
RandomAccessLinSpacedReturnType
typedef NumTraits< Scalar >::Real RealScalar
typedef Reverse< Derived,
BothDirections > 
ReverseReturnType
typedef Block< Derived,
Dynamic, internal::traits
< Derived >::ColsAtCompileTime,
IsRowMajor > 
RowsBlockXpr
typedef VectorwiseOp< Derived,
Horizontal > 
RowwiseReturnType
typedef Block< Derived,
1, internal::traits< Derived >
::ColsAtCompileTime,
IsRowMajor > 
RowXpr
typedef internal::traits
< Derived >::Scalar 
Scalar
typedef VectorBlock< Derived > SegmentReturnType
typedef CwiseNullaryOp
< internal::linspaced_op
< Scalar, false >, Derived > 
SequentialLinSpacedReturnType
typedef internal::traits
< Derived >::StorageKind 
StorageKind

Public Member Functions

bool all (void) const
bool any (void) const
Block< Derived > block (Index startRow, Index startCol, Index blockRows, Index blockCols)
const Block< const Derived > block (Index startRow, Index startCol, Index blockRows, Index blockCols) const
template<int BlockRows, int BlockCols>
Block< Derived, BlockRows,
BlockCols > 
block (Index startRow, Index startCol)
template<int BlockRows, int BlockCols>
const Block< const Derived,
BlockRows, BlockCols > 
block (Index startRow, Index startCol) const
const Block< const Derived > bottomLeftCorner (Index cRows, Index cCols) const
template<int CRows, int CCols>
Block< Derived, CRows, CCols > bottomLeftCorner ()
template<int CRows, int CCols>
const Block< const Derived,
CRows, CCols > 
bottomLeftCorner () const
Block< Derived > bottomLeftCorner (Index cRows, Index cCols)
Block< Derived > bottomRightCorner (Index cRows, Index cCols)
const Block< const Derived > bottomRightCorner (Index cRows, Index cCols) const
template<int CRows, int CCols>
const Block< const Derived,
CRows, CCols > 
bottomRightCorner () const
template<int CRows, int CCols>
Block< Derived, CRows, CCols > bottomRightCorner ()
RowsBlockXpr bottomRows (Index n)
ConstRowsBlockXpr bottomRows (Index n) const
template<int N>
NRowsBlockXpr< N >::Type bottomRows ()
template<int N>
ConstNRowsBlockXpr< N >::Type bottomRows () const
ColXpr col (Index i)
ConstColXpr col (Index i) const
ConstColwiseReturnType colwise () const
ColwiseReturnType colwise ()
Index count () const
EIGEN_STRONG_INLINE const
internal::eval< Derived >
::type 
eval () const
template<typename Dest >
void evalTo (Dest &) const
void fill (const Scalar &value)
template<unsigned int Added, unsigned int Removed>
const Flagged< Derived, Added,
Removed > 
flagged () const
const ForceAlignedAccess< Derived > forceAlignedAccess () const
ForceAlignedAccess< Derived > forceAlignedAccess ()
template<bool Enable>
const internal::conditional
< Enable, ForceAlignedAccess
< Derived >, Derived & >::type 
forceAlignedAccessIf () const
template<bool Enable>
internal::conditional< Enable,
ForceAlignedAccess< Derived >
, Derived & >::type 
forceAlignedAccessIf ()
const WithFormat< Derived > format (const IOFormat &fmt) const
SegmentReturnType head (Index size)
DenseBase::ConstSegmentReturnType head (Index size) const
template<int Size>
ConstFixedSegmentReturnType
< Size >::Type 
head () const
template<int Size>
FixedSegmentReturnType< Size >
::Type 
head ()
Index innerSize () const
template<typename OtherDerived >
bool isApprox (const DenseBase< OtherDerived > &other, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
bool isApproxToConstant (const Scalar &value, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
bool isConstant (const Scalar &value, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
template<typename Derived >
bool isMuchSmallerThan (const typename NumTraits< Scalar >::Real &other, RealScalar prec) const
bool isMuchSmallerThan (const RealScalar &other, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
template<typename OtherDerived >
bool isMuchSmallerThan (const DenseBase< OtherDerived > &other, RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
bool isOnes (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
bool isZero (RealScalar prec=NumTraits< Scalar >::dummy_precision()) const
template<typename OtherDerived >
Derived & lazyAssign (const DenseBase< OtherDerived > &other)
ColsBlockXpr leftCols (Index n)
ConstColsBlockXpr leftCols (Index n) const
template<int N>
NColsBlockXpr< N >::Type leftCols ()
template<int N>
ConstNColsBlockXpr< N >::Type leftCols () const
template<int p>
RealScalar lpNorm () const
template<typename IndexType >
internal::traits< Derived >::Scalar maxCoeff (IndexType *index) const
internal::traits< Derived >::Scalar maxCoeff () const
template<typename IndexType >
internal::traits< Derived >::Scalar maxCoeff (IndexType *row, IndexType *col) const
Scalar mean () const
template<int N>
ConstNColsBlockXpr< N >::Type middleCols (Index startCol) const
ConstColsBlockXpr middleCols (Index startCol, Index numCols) const
ColsBlockXpr middleCols (Index startCol, Index numCols)
template<int N>
NColsBlockXpr< N >::Type middleCols (Index startCol)
ConstRowsBlockXpr middleRows (Index startRow, Index numRows) const
template<int N>
NRowsBlockXpr< N >::Type middleRows (Index startRow)
RowsBlockXpr middleRows (Index startRow, Index numRows)
template<int N>
ConstNRowsBlockXpr< N >::Type middleRows (Index startRow) const
internal::traits< Derived >::Scalar minCoeff () const
template<typename IndexType >
internal::traits< Derived >::Scalar minCoeff (IndexType *row, IndexType *col) const
template<typename IndexType >
internal::traits< Derived >::Scalar minCoeff (IndexType *index) const
const NestByValue< Derived > nestByValue () const
Index nonZeros () const
void operator* () const
Derived & operator*= (const Scalar &other)
template<typename OtherDerived >
Derived & operator+= (const EigenBase< OtherDerived > &other)
template<typename OtherDerived >
Derived & operator-= (const EigenBase< OtherDerived > &other)
Derived & operator/= (const Scalar &other)
template<typename OtherDerived >
CommaInitializer< Derived > operator<< (const DenseBase< OtherDerived > &other)
CommaInitializer< Derived > operator<< (const Scalar &s)
Derived & operator= (const DenseBase &other)
template<typename OtherDerived >
Derived & operator= (const EigenBase< OtherDerived > &other)
 Copies the generic expression other into *this.
template<typename OtherDerived >
Derived & operator= (const ReturnByValue< OtherDerived > &func)
template<typename OtherDerived >
Derived & operator= (const DenseBase< OtherDerived > &other)
Index outerSize () const
Scalar prod () const
template<int RowFactor, int ColFactor>
const Replicate< Derived,
RowFactor, ColFactor > 
replicate () const
const Replicate< Derived,
Dynamic, Dynamic > 
replicate (Index rowFacor, Index colFactor) const
void resize (Index rows, Index cols)
void resize (Index size)
ReverseReturnType reverse ()
ConstReverseReturnType reverse () const
void reverseInPlace ()
ColsBlockXpr rightCols (Index n)
ConstColsBlockXpr rightCols (Index n) const
template<int N>
ConstNColsBlockXpr< N >::Type rightCols () const
template<int N>
NColsBlockXpr< N >::Type rightCols ()
RowXpr row (Index i)
ConstRowXpr row (Index i) const
ConstRowwiseReturnType rowwise () const
RowwiseReturnType rowwise ()
template<int Size>
FixedSegmentReturnType< Size >
::Type 
segment (Index start)
SegmentReturnType segment (Index start, Index size)
template<int Size>
ConstFixedSegmentReturnType
< Size >::Type 
segment (Index start) const
DenseBase::ConstSegmentReturnType segment (Index start, Index size) const
template<typename ThenDerived , typename ElseDerived >
const Select< Derived,
ThenDerived, ElseDerived > 
select (const DenseBase< ThenDerived > &thenMatrix, const DenseBase< ElseDerived > &elseMatrix) const
template<typename ThenDerived >
const Select< Derived,
ThenDerived, typename
ThenDerived::ConstantReturnType > 
select (const DenseBase< ThenDerived > &thenMatrix, typename ThenDerived::Scalar elseScalar) const
template<typename ElseDerived >
const Select< Derived,
typename
ElseDerived::ConstantReturnType,
ElseDerived > 
select (typename ElseDerived::Scalar thenScalar, const DenseBase< ElseDerived > &elseMatrix) const
Derived & setConstant (const Scalar &value)
Derived & setLinSpaced (const Scalar &low, const Scalar &high)
Derived & setLinSpaced (Index size, const Scalar &low, const Scalar &high)
 Sets a linearly space vector.
Derived & setOnes ()
Derived & setRandom ()
Derived & setZero ()
Scalar sum () const
template<typename OtherDerived >
void swap (PlainObjectBase< OtherDerived > &other)
template<typename OtherDerived >
void swap (const DenseBase< OtherDerived > &other, int=OtherDerived::ThisConstantIsPrivateInPlainObjectBase)
template<int Size>
ConstFixedSegmentReturnType
< Size >::Type 
tail () const
SegmentReturnType tail (Index size)
template<int Size>
FixedSegmentReturnType< Size >
::Type 
tail ()
DenseBase::ConstSegmentReturnType tail (Index size) const
Block< Derived > topLeftCorner (Index cRows, Index cCols)
template<int CRows, int CCols>
const Block< const Derived,
CRows, CCols > 
topLeftCorner () const
const Block< const Derived > topLeftCorner (Index cRows, Index cCols) const
template<int CRows, int CCols>
Block< Derived, CRows, CCols > topLeftCorner ()
template<int CRows, int CCols>
Block< Derived, CRows, CCols > topRightCorner ()
const Block< const Derived > topRightCorner (Index cRows, Index cCols) const
template<int CRows, int CCols>
const Block< const Derived,
CRows, CCols > 
topRightCorner () const
Block< Derived > topRightCorner (Index cRows, Index cCols)
template<int N>
NRowsBlockXpr< N >::Type topRows ()
ConstRowsBlockXpr topRows (Index n) const
template<int N>
ConstNRowsBlockXpr< N >::Type topRows () const
RowsBlockXpr topRows (Index n)
Scalar trace () const
ConstTransposeReturnType transpose () const
Eigen::Transpose< Derived > transpose ()
void transposeInPlace ()
CoeffReturnType value () const
template<typename Visitor >
void visit (Visitor &func) const

Static Public Member Functions

static const ConstantReturnType Constant (Index rows, Index cols, const Scalar &value)
static const ConstantReturnType Constant (Index size, const Scalar &value)
static const ConstantReturnType Constant (const Scalar &value)
static const
SequentialLinSpacedReturnType 
LinSpaced (Sequential_t, Index size, const Scalar &low, const Scalar &high)
 Sets a linearly space vector.
static const
RandomAccessLinSpacedReturnType 
LinSpaced (Index size, const Scalar &low, const Scalar &high)
 Sets a linearly space vector.
static const
SequentialLinSpacedReturnType 
LinSpaced (Sequential_t, const Scalar &low, const Scalar &high)
static const
RandomAccessLinSpacedReturnType 
LinSpaced (const Scalar &low, const Scalar &high)
template<typename CustomNullaryOp >
static const CwiseNullaryOp
< CustomNullaryOp, Derived > 
NullaryExpr (Index rows, Index cols, const CustomNullaryOp &func)
template<typename CustomNullaryOp >
static const CwiseNullaryOp
< CustomNullaryOp, Derived > 
NullaryExpr (Index size, const CustomNullaryOp &func)
template<typename CustomNullaryOp >
static const CwiseNullaryOp
< CustomNullaryOp, Derived > 
NullaryExpr (const CustomNullaryOp &func)
static const ConstantReturnType Ones ()
static const ConstantReturnType Ones (Index rows, Index cols)
static const ConstantReturnType Ones (Index size)
static const CwiseNullaryOp
< internal::scalar_random_op
< Scalar >, Derived > 
Random ()
static const CwiseNullaryOp
< internal::scalar_random_op
< Scalar >, Derived > 
Random (Index rows, Index cols)
static const CwiseNullaryOp
< internal::scalar_random_op
< Scalar >, Derived > 
Random (Index size)
static const ConstantReturnType Zero (Index size)
static const ConstantReturnType Zero (Index rows, Index cols)
static const ConstantReturnType Zero ()

Protected Member Functions

template<typename OtherDerived >
void checkTransposeAliasing (const OtherDerived &other) const
 DenseBase ()

Private Member Functions

 DenseBase (int)
template<typename OtherDerived >
 DenseBase (const DenseBase< OtherDerived > &)
 DenseBase (int, int)

Related Functions

(Note that these are not member functions.)


template<typename Derived >
std::ostream & operator<< (std::ostream &s, const DenseBase< Derived > &m)

Detailed Description

template<typename Derived>
class DenseBase< Derived >

Base class for all dense matrices, vectors, and arrays.

This class is the base that is inherited by all dense objects (matrix, vector, arrays, and related expression types). The common Eigen API for dense objects is contained in this class.

Template Parameters:
Derivedis the derived type, e.g., a matrix type or an expression.

This class can be extended with the help of the plugin mechanism described on the page Customizing/Extending Eigen by defining the preprocessor symbol EIGEN_DENSEBASE_PLUGIN.

See also:
The class hierarchy

Definition at line 44 of file DenseBase.h.


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

Generated by  Doxygen 1.6.0   Back to index