aboutsummaryrefslogtreecommitdiffhomepage
path: root/Eigen/src/Core
diff options
context:
space:
mode:
Diffstat (limited to 'Eigen/src/Core')
-rw-r--r--Eigen/src/Core/Block.h5
-rw-r--r--Eigen/src/Core/MatrixBase.h2
-rw-r--r--Eigen/src/Core/util/Constants.h3
-rw-r--r--Eigen/src/Core/util/ForwardDeclarations.h3
4 files changed, 10 insertions, 3 deletions
diff --git a/Eigen/src/Core/Block.h b/Eigen/src/Core/Block.h
index 11583d042..18fcdbb2b 100644
--- a/Eigen/src/Core/Block.h
+++ b/Eigen/src/Core/Block.h
@@ -65,6 +65,8 @@ template<typename MatrixType, int BlockRows, int BlockCols, int _PacketAccess, i
struct ei_traits<Block<MatrixType, BlockRows, BlockCols, _PacketAccess, _DirectAccessStatus> >
{
typedef typename MatrixType::Scalar Scalar;
+ typedef typename MatrixType::Nested MatrixTypeNested;
+ typedef typename ei_unref<MatrixTypeNested>::type _MatrixTypeNested;
enum{
RowsAtCompileTime = MatrixType::RowsAtCompileTime == 1 ? 1 : BlockRows,
ColsAtCompileTime = MatrixType::ColsAtCompileTime == 1 ? 1 : BlockCols,
@@ -94,6 +96,8 @@ template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, in
EIGEN_GENERIC_PUBLIC_INTERFACE(Block)
+ class InnerIterator;
+
/** Column or Row constructor
*/
inline Block(const MatrixType& matrix, int i)
@@ -217,6 +221,7 @@ class Block<MatrixType,BlockRows,BlockCols,PacketAccess,HasDirectAccess>
_EIGEN_GENERIC_PUBLIC_INTERFACE(Block, MapBase<Block>)
+ class InnerIterator;
typedef typename ei_traits<Block>::AlignedDerivedType AlignedDerivedType;
EIGEN_INHERIT_ASSIGNMENT_OPERATORS(Block)
diff --git a/Eigen/src/Core/MatrixBase.h b/Eigen/src/Core/MatrixBase.h
index dbb481914..4248ae523 100644
--- a/Eigen/src/Core/MatrixBase.h
+++ b/Eigen/src/Core/MatrixBase.h
@@ -155,7 +155,7 @@ template<typename Derived> class MatrixBase
/** \returns the number of rows. \sa cols(), RowsAtCompileTime */
inline int rows() const { return derived().rows(); }
- /** \returns the number of columns. \sa row(), ColsAtCompileTime*/
+ /** \returns the number of columns. \sa rows(), ColsAtCompileTime*/
inline int cols() const { return derived().cols(); }
/** \returns the number of coefficients, which is \a rows()*cols().
* \sa rows(), cols(), SizeAtCompileTime. */
diff --git a/Eigen/src/Core/util/Constants.h b/Eigen/src/Core/util/Constants.h
index 9576ac6d8..d08af60e0 100644
--- a/Eigen/src/Core/util/Constants.h
+++ b/Eigen/src/Core/util/Constants.h
@@ -211,7 +211,8 @@ enum {
enum {
NoDirectAccess = 0,
- HasDirectAccess = DirectAccessBit
+ HasDirectAccess = DirectAccessBit,
+ IsSparse = SparseBit
};
const int FullyCoherentAccessPattern = 0x1;
diff --git a/Eigen/src/Core/util/ForwardDeclarations.h b/Eigen/src/Core/util/ForwardDeclarations.h
index fca47bad4..92852cbfa 100644
--- a/Eigen/src/Core/util/ForwardDeclarations.h
+++ b/Eigen/src/Core/util/ForwardDeclarations.h
@@ -36,7 +36,8 @@ template<typename ExpressionType> class NestByValue;
template<typename ExpressionType> class SwapWrapper;
template<typename MatrixType> class Minor;
template<typename MatrixType, int BlockRows=Dynamic, int BlockCols=Dynamic, int PacketAccess=AsRequested,
- int _DirectAccessStatus = ei_traits<MatrixType>::Flags&DirectAccessBit> class Block;
+ int _DirectAccessStatus = ei_traits<MatrixType>::Flags&DirectAccessBit ? DirectAccessBit
+ : ei_traits<MatrixType>::Flags&SparseBit> class Block;
template<typename MatrixType> class Transpose;
template<typename MatrixType> class Conjugate;
template<typename NullaryOp, typename MatrixType> class CwiseNullaryOp;