Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus > Class Template Reference

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

#include <Block.h>

Inheritance diagram for Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 Block (const MatrixType &matrix, int startRow, int startCol, int blockRows, int blockCols)
 Block (const MatrixType &matrix, int startRow, int startCol)
 Block (const MatrixType &matrix, int i)
const Scalar coeff (int index) const
const Scalar coeff (int row, int col) const
ScalarcoeffRef (int index)
ScalarcoeffRef (int row, int col)
int cols () const
template<int LoadMode>
PacketScalar packet (int index) const
template<int LoadMode>
PacketScalar packet (int row, int col) const
int rows () const
template<int LoadMode>
void writePacket (int index, const PacketScalar &x)
template<int LoadMode>
void writePacket (int row, int col, const PacketScalar &x)

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

Detailed Description

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
class Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >

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

Parameters:
MatrixType the type of the object in which we are taking a block
BlockRows the number of rows of the block we are taking at compile time (optional)
BlockCols the number of columns of the block we are taking at compile time (optional)
_PacketAccess allows 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 

Definition at line 93 of file Block.h.


Constructor & Destructor Documentation

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::Block ( const MatrixType &  matrix,
int  i 
) [inline]

Column or Row constructor

Definition at line 104 of file Block.h.

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::Block ( const MatrixType &  matrix,
int  startRow,
int  startCol 
) [inline]

Fixed-size constructor

Definition at line 122 of file Block.h.

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::Block ( const MatrixType &  matrix,
int  startRow,
int  startCol,
int  blockRows,
int  blockCols 
) [inline]

Dynamic-size constructor

Definition at line 133 of file Block.h.


Member Function Documentation

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
const Scalar Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::coeff ( int  index  )  const [inline]
template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
const Scalar Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::coeff ( int  row,
int  col 
) const [inline]
template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
Scalar& Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::coeffRef ( int  index  )  [inline]
template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
Scalar& Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::coeffRef ( int  row,
int  col 
) [inline]
template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
int Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::cols (  )  const [inline]
Returns:
the number of columns.
See also:
rows(), ColsAtCompileTime

Reimplemented from MatrixBase< Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus > >.

Definition at line 148 of file Block.h.

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
template<int LoadMode>
PacketScalar Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::packet ( int  index  )  const [inline]
template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
template<int LoadMode>
PacketScalar Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::packet ( int  row,
int  col 
) const [inline]
template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
int Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::rows (  )  const [inline]
Returns:
the number of rows.
See also:
cols(), RowsAtCompileTime

Reimplemented from MatrixBase< Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus > >.

Definition at line 147 of file Block.h.

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
template<int LoadMode>
void Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::writePacket ( int  index,
const PacketScalar x 
) [inline]
template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
template<int LoadMode>
void Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::writePacket ( int  row,
int  col,
const PacketScalar x 
) [inline]

Member Data Documentation

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
const ei_int_if_dynamic<ColsAtCompileTime> Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::m_blockCols [protected]

Definition at line 211 of file Block.h.

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
const ei_int_if_dynamic<RowsAtCompileTime> Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::m_blockRows [protected]

Definition at line 210 of file Block.h.

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
const MatrixType::Nested Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::m_matrix [protected]

Definition at line 207 of file Block.h.

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
const ei_int_if_dynamic<MatrixType::ColsAtCompileTime == 1 ? 0 : Dynamic> Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::m_startCol [protected]

Definition at line 209 of file Block.h.

template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus>
const ei_int_if_dynamic<MatrixType::RowsAtCompileTime == 1 ? 0 : Dynamic> Block< MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus >::m_startRow [protected]

Definition at line 208 of file Block.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


vcglib
Author(s): Christian Bersch
autogenerated on Fri Jan 11 09:21:49 2013