mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
* Implement the ByOuterInner accessors
* use them (big simplification in Assign.h) * axe (Inner|Outer)StrideAtCompileTime that were just introduced * ei_int_if_dynamic now asserts that the size is the expected one: adapt to that in Block.h * add rowStride() / colStride() in DenseBase * implement innerStride() / outerStride() everywhere needed
This commit is contained in:
@@ -56,14 +56,8 @@ struct ei_traits<Map<MatrixType, Options, StrideType> >
|
||||
Flags0 = ei_traits<MatrixType>::Flags,
|
||||
Flags1 = ((Options&Aligned)==Aligned ? Flags0 | AlignedBit
|
||||
: Flags0 & ~AlignedBit),
|
||||
Flags = int(StrideType::InnerStrideAtCompileTime)==1 ? Flags1 : (Flags1 & ~PacketAccessBit),
|
||||
InnerStrideAtCompileTime = int(StrideType::InnerStrideAtCompileTime) != 0 ? int(StrideType::InnerStrideAtCompileTime) : 1,
|
||||
OuterStrideAtCompileTime =
|
||||
int(StrideType::OuterStrideAtCompileTime != 0) ? int(StrideType::OuterStrideAtCompileTime)
|
||||
: int(MatrixType::IsVectorAtCompileTime) ? int(MatrixType::SizeAtCompileTime)
|
||||
: int(Flags)&RowMajorBit ? int(MatrixType::ColsAtCompileTime)
|
||||
: int(MatrixType::RowsAtCompileTime)
|
||||
};
|
||||
Flags = int(StrideType::InnerStrideAtCompileTime)==1 ? Flags1 : (Flags1 & ~PacketAccessBit)
|
||||
};
|
||||
};
|
||||
|
||||
template<typename MatrixType, int Options, typename StrideType> class Map
|
||||
|
||||
Reference in New Issue
Block a user