Add a SparseCompressedBase class providing (un)compressed accessors (like data()/*Stride() for dense matrices),

and a CompressedAccessBit flag (similar to DirectAccessBit for dense matrices).
This commit is contained in:
Gael Guennebaud
2015-02-07 22:00:46 +01:00
parent b1eca55328
commit 7838fda82c
5 changed files with 231 additions and 119 deletions

View File

@@ -163,6 +163,19 @@ const unsigned int NestByRefBit = 0x100;
* \sa \ref RowMajorBit, \ref TopicStorageOrders */
const unsigned int NoPreferredStorageOrderBit = 0x200;
/** \ingroup flags
*
* Means that the underlying coefficients can be accessed through pointers to the sparse (un)compressed storage format,
* that is, the expression provides:
* \code
inline const Scalar* valuePtr() const;
inline const Index* innerIndexPtr() const;
inline const Index* outerIndexPtr() const;
inline const Index* innerNonZeroPtr() const;
\endcode
*/
const unsigned int CompressedAccessBit = 0x400;
// list of flags that are inherited by default
const unsigned int HereditaryBits = RowMajorBit