Public Member Functions | Protected Attributes | List of all members
Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus > Class Template Reference

Expression of a fixed-size or dynamic-size block. More...

Public Member Functions

 Block (const MatrixType &matrix, int i)
 
 Block (const MatrixType &matrix, int startRow, int startCol)
 
 Block (const MatrixType &matrix, int startRow, int startCol, int blockRows, int blockCols)
 
const Scalar coeff (int row, int col) const
 
const Scalar coeff (int index) const
 
Scalar & coeffRef (int row, int col)
 
Scalar & coeffRef (int index)
 
int cols () const
 
template<int LoadMode>
PacketScalar packet (int row, int col) const
 
template<int LoadMode>
PacketScalar packet (int index) const
 
int rows () const
 
template<int LoadMode>
void writePacket (int row, int col, const PacketScalar &x)
 
template<int LoadMode>
void writePacket (int index, const PacketScalar &x)
 
- Public Member Functions inherited from MatrixBase< Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus > >
const AdjointReturnType adjoint () const
 
bool all (void) const
 
bool any (void) const
 
const DiagonalMatrix< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
asDiagonal () const
 
const CwiseBinaryOp
< CustomBinaryOp, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, OtherDerived > 
binaryExpr (const MatrixBase< OtherDerived > &other, const CustomBinaryOp &func=CustomBinaryOp()) const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > >::Type 
block (int startRow, int startCol, int blockRows, int blockCols)
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > >::Type 
block (int startRow, int startCol, int blockRows, int blockCols) const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, BlockRows, BlockCols >::Type 
block (int startRow, int startCol)
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, BlockRows, BlockCols >::Type 
block (int startRow, int startCol) const
 
const CwiseUnaryOp
< ei_scalar_cast_op< typename
ei_traits< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >
>::Scalar, NewType >, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
cast () const
 
const Scalar coeff (int row, int col) const
 
const Scalar coeff (int index) const
 
Scalar & coeffRef (int row, int col)
 
Scalar & coeffRef (int index)
 
ColXpr col (int i)
 
const ColXpr col (int i) const
 
int cols () const
 
const PartialRedux< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, Vertical > 
colwise () const
 
void computeInverse (MatrixBase< ResultType > *result) const
 
ConjugateReturnType conjugate () const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > >::Type 
corner (CornerType type, int cRows, int cCols)
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > >::Type 
corner (CornerType type, int cRows, int cCols) const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, CRows,
CCols >::Type 
corner (CornerType type)
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, CRows,
CCols >::Type 
corner (CornerType type) const
 
int count () const
 
PlainMatrixType cross (const MatrixBase< OtherDerived > &other) const
 
const Cwise< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus > > 
cwise () const
 
Cwise< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus > > 
cwise ()
 
Scalar determinant () const
 
DiagonalCoeffs< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
diagonal ()
 
const DiagonalCoeffs< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
diagonal () const
 
Scalar dot (const MatrixBase< OtherDerived > &other) const
 
EigenvaluesReturnType eigenvalues () const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Dynamic >
::SubVectorType 
end (int size)
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Dynamic >
::SubVectorType 
end (int size) const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Size >
::SubVectorType 
end ()
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Size >
::SubVectorType 
end () const
 
Matrix< Scalar, 3, 1 > eulerAngles (int a0, int a1, int a2) const
 
const ei_eval< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > >::type 
eval () const
 
void fill (const Scalar &value)
 
const WithFormat< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
format (const IOFormat &fmt) const
 
const ImagReturnType imag () const
 
int innerSize () const
 
const PlainMatrixType inverse () const
 
bool isApprox (const MatrixBase< OtherDerived > &other, RealScalar prec=precision< Scalar >()) const
 
bool isApproxToConstant (const Scalar &value, RealScalar prec=precision< Scalar >()) const
 
bool isConstant (const Scalar &value, RealScalar prec=precision< Scalar >()) const
 
bool isDiagonal (RealScalar prec=precision< Scalar >()) const
 
bool isIdentity (RealScalar prec=precision< Scalar >()) const
 
bool isLowerTriangular (RealScalar prec=precision< Scalar >()) const
 
bool isMuchSmallerThan (const RealScalar &other, RealScalar prec=precision< Scalar >()) const
 
bool isMuchSmallerThan (const MatrixBase< OtherDerived > &other, RealScalar prec=precision< Scalar >()) const
 
bool isOnes (RealScalar prec=precision< Scalar >()) const
 
bool isOrthogonal (const MatrixBase< OtherDerived > &other, RealScalar prec=precision< Scalar >()) const
 
bool isUnitary (RealScalar prec=precision< Scalar >()) const
 
bool isUpperTriangular (RealScalar prec=precision< Scalar >()) const
 
bool isVector () const
 
bool isZero (RealScalar prec=precision< Scalar >()) const
 
const Flagged< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, 0, EvalBeforeNestingBit|EvalBeforeAssigningBit > 
lazy () const
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
lazyAssign (const SparseProduct< Derived1, Derived2, SparseTimeDenseProduct > &product)
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
lazyAssign (const SparseProduct< Derived1, Derived2, DenseTimeSparseProduct > &product)
 
const LDLT< PlainMatrixType > ldlt () const
 
const LLT< PlainMatrixType > llt () const
 
RealScalar lpNorm () const
 
const LU< PlainMatrixType > lu () const
 
const Flagged< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Added, 0 > 
marked () const
 
ei_traits< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >
>::Scalar 
maxCoeff () const
 
ei_traits< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >
>::Scalar 
maxCoeff (int *row, int *col) const
 
ei_traits< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >
>::Scalar 
maxCoeff (int *index) const
 
ei_traits< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >
>::Scalar 
minCoeff () const
 
ei_traits< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >
>::Scalar 
minCoeff (int *row, int *col) const
 
ei_traits< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >
>::Scalar 
minCoeff (int *index) const
 
Minor< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus > > 
minor (int row, int col)
 
const Minor< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus > > 
minor (int row, int col) const
 
const NestByValue< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
nestByValue () const
 
int nonZeros () const
 
RealScalar norm () const
 
void normalize ()
 
const PlainMatrixType normalized () const
 
bool operator!= (const MatrixBase< OtherDerived > &other) const
 
const Scalar operator() (int row, int col) const
 
Scalar & operator() (int row, int col)
 
const Scalar operator() (int index) const
 
Scalar & operator() (int index)
 
const ScalarMultipleReturnType operator* (const Scalar &scalar) const
 
const ProductReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, OtherDerived >::Type 
operator* (const MatrixBase< OtherDerived > &other) const
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
operator*= (const Scalar &other)
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
operator*= (const MatrixBase< OtherDerived > &other)
 
const CwiseBinaryOp
< ei_scalar_sum_op< typename
ei_traits< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >
>::Scalar >, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, OtherDerived > 
operator+ (const MatrixBase< OtherDerived > &other) const
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
operator+= (const MatrixBase< OtherDerived > &other)
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
operator+= (const Flagged< Product< Lhs, Rhs, CacheFriendlyProduct >, 0, EvalBeforeNestingBit|EvalBeforeAssigningBit > &other)
 
const CwiseUnaryOp
< ei_scalar_opposite_op
< typename ei_traits< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
>::Scalar >, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
operator- () const
 
const CwiseBinaryOp
< ei_scalar_difference_op
< typename ei_traits< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
>::Scalar >, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, OtherDerived > 
operator- (const MatrixBase< OtherDerived > &other) const
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
operator-= (const MatrixBase< OtherDerived > &other)
 
const CwiseUnaryOp
< ei_scalar_quotient1_op
< typename ei_traits< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
>::Scalar >, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
operator/ (const Scalar &scalar) const
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
operator/= (const Scalar &other)
 
CommaInitializer< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
operator<< (const Scalar &s)
 
CommaInitializer< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
operator<< (const MatrixBase< OtherDerived > &other)
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
operator= (const MatrixBase< OtherDerived > &other)
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
operator= (const MatrixBase &other)
 
bool operator== (const MatrixBase< OtherDerived > &other) const
 
const Scalar operator[] (int index) const
 
Scalar & operator[] (int index)
 
RealScalar operatorNorm () const
 
int outerSize () const
 
PacketScalar packet (int row, int col) const
 
PacketScalar packet (int index) const
 
Part< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >, Mode > 
part ()
 
const Part< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >, Mode > 
part () const
 
const QR< PlainMatrixType > qr () const
 
const RealReturnType real () const
 
ei_result_of< BinaryOp(typename
ei_traits< Block< MatrixType,
BlockRows, BlockCols,
PacketAccess,
_DirectAccessStatus >
>::Scalar)>::type 
redux (const BinaryOp &func) const
 
RowXpr row (int i)
 
const RowXpr row (int i) const
 
int rows () const
 
const PartialRedux< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, Horizontal > 
rowwise () const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
>::SubVectorType 
segment (int start, int size)
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
>::SubVectorType 
segment (int start, int size) const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Size >
::SubVectorType 
segment (int start)
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Size >
::SubVectorType 
segment (int start) const
 
const Select< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, ThenDerived, ElseDerived > 
select (const MatrixBase< ThenDerived > &thenMatrix, const MatrixBase< ElseDerived > &elseMatrix) const
 
const Select< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, ThenDerived, NestByValue
< typename
ThenDerived::ConstantReturnType > > 
select (const MatrixBase< ThenDerived > &thenMatrix, typename ThenDerived::Scalar elseScalar) const
 
const Select< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >
, NestByValue< typename
ElseDerived::ConstantReturnType >
, ElseDerived > 
select (typename ElseDerived::Scalar thenScalar, const MatrixBase< ElseDerived > &elseMatrix) const
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
setConstant (const Scalar &value)
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
setIdentity ()
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
setOnes ()
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
setRandom ()
 
Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > & 
setZero ()
 
int size () const
 
ei_plain_matrix_type_column_major
< OtherDerived >::type 
solveTriangular (const MatrixBase< OtherDerived > &other) const
 
void solveTriangularInPlace (const MatrixBase< OtherDerived > &other) const
 
RealScalar squaredNorm () const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Dynamic >
::SubVectorType 
start (int size)
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Dynamic >
::SubVectorType 
start (int size) const
 
BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Size >
::SubVectorType 
start (void)
 
const BlockReturnType< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus >, Size >
::SubVectorType 
start () const
 
int stride (void) const
 
Scalar sum () const
 
SVD< PlainMatrixType > svd () const
 
void swap (const MatrixBase< OtherDerived > &other)
 
Scalar trace () const
 
Eigen::Transpose< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
transpose ()
 
const Eigen::Transpose< Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
transpose () const
 
void transposeInPlace ()
 
const CwiseUnaryOp
< CustomUnaryOp, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
unaryExpr (const CustomUnaryOp &func=CustomUnaryOp()) const
 
PlainMatrixType unitOrthogonal (void) const
 
void visit (Visitor &func) const
 
const Scalar w () const
 
Scalar & w ()
 
void writePacket (int row, int col, const PacketScalar &x)
 
void writePacket (int index, const PacketScalar &x)
 
const Scalar x () const
 
Scalar & x ()
 
const Scalar y () const
 
Scalar & y ()
 
const Scalar z () const
 
Scalar & z ()
 

Protected Attributes

const ei_int_if_dynamic
< ColsAtCompileTime
m_blockCols
 
const ei_int_if_dynamic
< RowsAtCompileTime
m_blockRows
 
const MatrixType::Nested m_matrix
 
const ei_int_if_dynamic
< MatrixType::ColsAtCompileTime==1?0:Dynamic > 
m_startCol
 
const ei_int_if_dynamic
< MatrixType::RowsAtCompileTime==1?0:Dynamic > 
m_startRow
 

Additional Inherited Members

- Public Types inherited from MatrixBase< Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus > >
enum  
 
- Static Public Member Functions inherited from MatrixBase< Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus > >
static const ConstantReturnType Constant (int rows, int cols, const Scalar &value)
 
static const ConstantReturnType Constant (int size, const Scalar &value)
 
static const ConstantReturnType Constant (const Scalar &value)
 
static const IdentityReturnType Identity ()
 
static const IdentityReturnType Identity (int rows, int cols)
 
static const CwiseNullaryOp
< CustomNullaryOp, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
NullaryExpr (int rows, int cols, const CustomNullaryOp &func)
 
static const CwiseNullaryOp
< CustomNullaryOp, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
NullaryExpr (int size, const CustomNullaryOp &func)
 
static const CwiseNullaryOp
< CustomNullaryOp, Block
< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
NullaryExpr (const CustomNullaryOp &func)
 
static const ConstantReturnType Ones (int rows, int cols)
 
static const ConstantReturnType Ones (int size)
 
static const ConstantReturnType Ones ()
 
static const CwiseNullaryOp
< ei_scalar_random_op< Scalar >
, Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
Random (int rows, int cols)
 
static const CwiseNullaryOp
< ei_scalar_random_op< Scalar >
, Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
Random (int size)
 
static const CwiseNullaryOp
< ei_scalar_random_op< Scalar >
, Block< MatrixType, BlockRows,
BlockCols, PacketAccess,
_DirectAccessStatus > > 
Random ()
 
static const BasisReturnType Unit (int size, int i)
 
static const BasisReturnType Unit (int i)
 
static const BasisReturnType UnitW ()
 
static const BasisReturnType UnitX ()
 
static const BasisReturnType UnitY ()
 
static const BasisReturnType UnitZ ()
 
static const ConstantReturnType Zero (int rows, int cols)
 
static const ConstantReturnType Zero (int size)
 
static const ConstantReturnType Zero ()
 
- Protected Member Functions inherited from MatrixBase< Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus > >
 MatrixBase ()
 

Detailed Description

template<typename MatrixType, int BlockRows = Dynamic, int BlockCols = Dynamic, int PacketAccess = AsRequested, int _DirectAccessStatus = ei_traits<MatrixType>::Flags&DirectAccessBit ? DirectAccessBit : ei_traits<MatrixType>::Flags&SparseBit>
class Eigen::Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >

Expression of a fixed-size or dynamic-size block.

Parameters
MatrixTypethe type of the object in which we are taking a block
BlockRowsthe number of rows of the block we are taking at compile time (optional)
BlockColsthe number of columns of the block we are taking at compile time (optional)
_PacketAccessallows to enforce aligned loads and stores if set to ForceAligned. The default is AsRequested. This parameter is internaly used by Eigen in expressions such as
mat.block() += other;
and most of the time this is the only way it is used.
_DirectAccessStatus

Constructor & Destructor Documentation

Block ( const MatrixType &  matrix,
int  i 
)
inline

Column or Row constructor

Block ( const MatrixType &  matrix,
int  startRow,
int  startCol 
)
inline

Fixed-size constructor

Block ( const MatrixType &  matrix,
int  startRow,
int  startCol,
int  blockRows,
int  blockCols 
)
inline

Dynamic-size constructor


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