extend the DenseStorageMatrix mechanism to all expressions

This commit is contained in:
Gael Guennebaud
2009-12-22 17:37:11 +01:00
parent af4d8c5cec
commit e182e9c616
16 changed files with 20 additions and 22 deletions

View File

@@ -189,11 +189,6 @@ class Array
other.evalTo(*this);
}
// template<typename OtherDerived>
// Array& lazyAssign(const ArrayBase<OtherDerived>& other);
// template<typename OtherDerived>
// Array& lazyAssign(const MatrixBase<OtherDerived>& other);
/** \sa MatrixBase::operator=(const AnyMatrixBase<OtherDerived>&) */
template<typename OtherDerived>
EIGEN_STRONG_INLINE Array(const AnyMatrixBase<OtherDerived> &other)

View File

@@ -40,6 +40,7 @@
*/
template<typename MatrixType,int RowFactor,int ColFactor>
struct ei_traits<Replicate<MatrixType,RowFactor,ColFactor> >
: ei_traits<MatrixType>
{
typedef typename MatrixType::Scalar Scalar;
typedef typename ei_traits<MatrixType>::StorageType StorageType;

View File

@@ -43,6 +43,7 @@
*/
template<typename MatrixType, int Direction>
struct ei_traits<Reverse<MatrixType, Direction> >
: ei_traits<MatrixType>
{
typedef typename MatrixType::Scalar Scalar;
typedef typename ei_traits<MatrixType>::StorageType StorageType;

View File

@@ -43,6 +43,7 @@
template<typename ConditionMatrixType, typename ThenMatrixType, typename ElseMatrixType>
struct ei_traits<Select<ConditionMatrixType, ThenMatrixType, ElseMatrixType> >
: ei_traits<ThenMatrixType>
{
typedef typename ei_traits<ThenMatrixType>::Scalar Scalar;
typedef Dense StorageType;

View File

@@ -48,6 +48,7 @@ class PartialReduxExpr;
template<typename MatrixType, typename MemberOp, int Direction>
struct ei_traits<PartialReduxExpr<MatrixType, MemberOp, Direction> >
: ei_traits<MatrixType>
{
typedef typename MemberOp::result_type Scalar;
typedef typename ei_traits<MatrixType>::StorageType StorageType;