aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--Eigen/src/Core/DenseCoeffsBase.h30
-rw-r--r--Eigen/src/Core/DenseStorageBase.h2
-rw-r--r--doc/Doxyfile.in5
-rw-r--r--doc/I12_ClassHierarchy.dox2
4 files changed, 36 insertions, 3 deletions
diff --git a/Eigen/src/Core/DenseCoeffsBase.h b/Eigen/src/Core/DenseCoeffsBase.h
index 0b348c81d..5fef6f276 100644
--- a/Eigen/src/Core/DenseCoeffsBase.h
+++ b/Eigen/src/Core/DenseCoeffsBase.h
@@ -25,6 +25,16 @@
#ifndef EIGEN_DENSECOEFFSBASE_H
#define EIGEN_DENSECOEFFSBASE_H
+/** \brief Base class providing read-only coefficient access to matrices and arrays.
+ * \ingroup Core_Module
+ * \tparam Derived Type of the derived class
+ * \tparam ReadOnlyAccessors Constant indicating read-only access
+ *
+ * This class defines the \c operator() \c const function and friends, which can be used to read specific
+ * entries of a matrix or array.
+ *
+ * \sa DenseCoeffsBase<Derived, WriteAccessors>, DenseCoeffsBase<Derived, DirectAccessors>
+ */
template<typename Derived>
class DenseCoeffsBase<Derived,ReadOnlyAccessors> : public EigenBase<Derived>
{
@@ -238,6 +248,17 @@ class DenseCoeffsBase<Derived,ReadOnlyAccessors> : public EigenBase<Derived>
void colStride();
};
+/** \brief Base class providing read/write coefficient access to matrices and arrays.
+ * \ingroup Core_Module
+ * \tparam Derived Type of the derived class
+ * \tparam WriteAccessors Constant indicating read/write access
+ *
+ * This class defines the non-const \c operator() function and friends, which can be used to write specific
+ * entries of a matrix or array. This class inherits DenseCoeffsBase<Derived, ReadOnlyAccessors> which
+ * defines the const variant for reading specific entries.
+ *
+ * \sa DenseCoeffsBase<Derived, DirectAccessors>
+ */
template<typename Derived>
class DenseCoeffsBase<Derived, WriteAccessors> : public DenseCoeffsBase<Derived, ReadOnlyAccessors>
{
@@ -514,6 +535,15 @@ class DenseCoeffsBase<Derived, WriteAccessors> : public DenseCoeffsBase<Derived,
};
+/** \brief Base class providing direct coefficient access to matrices and arrays.
+ * \ingroup Core_Module
+ * \tparam Derived Type of the derived class
+ * \tparam DirectAccessors Constant indicating direct access
+ *
+ * This class defines functions to work with strides which can be used to access entries directly. This class
+ * inherits DenseCoeffsBase<Derived, WriteAccessors> which defines functions to access entries using
+ * \c operator() .
+ */
template<typename Derived>
class DenseCoeffsBase<Derived, DirectAccessors> : public DenseCoeffsBase<Derived, WriteAccessors>
{
diff --git a/Eigen/src/Core/DenseStorageBase.h b/Eigen/src/Core/DenseStorageBase.h
index e818d40a1..eb5170bfe 100644
--- a/Eigen/src/Core/DenseStorageBase.h
+++ b/Eigen/src/Core/DenseStorageBase.h
@@ -36,7 +36,7 @@ template <typename Derived, typename OtherDerived = Derived, bool IsVector = sta
template<typename MatrixTypeA, typename MatrixTypeB, bool SwapPointers> struct ei_matrix_swap_impl;
/**
-* \brief Dense storage base class for matrices and arrays.
+* \brief %Dense storage base class for matrices and arrays.
**/
template<typename Derived>
class DenseStorageBase : public ei_dense_xpr_base<Derived>::type
diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in
index a0c8f73fa..6f132412d 100644
--- a/doc/Doxyfile.in
+++ b/doc/Doxyfile.in
@@ -627,7 +627,10 @@ EXCLUDE_PATTERNS = CMake* \
# wildcard * is used, a substring. Examples: ANamespace, AClass,
# AClass::ANamespace, ANamespace::*Test
-EXCLUDE_SYMBOLS = *Base<* Matrix<* ProductReturnType<* RotationBase<* Stride<* BandMatrix<* Block<*
+# This is used to clean up the "class hierarchy" page
+
+EXCLUDE_SYMBOLS = EigenBase<* SparseMatrixBase<* DenseBase<* MatrixBase<* Matrix<* \
+ ProductReturnType<* RotationBase<* Stride<* BandMatrix<* Block<*
# The EXAMPLE_PATH tag can be used to specify one or more files or
# directories that contain example code fragments that are included (see
diff --git a/doc/I12_ClassHierarchy.dox b/doc/I12_ClassHierarchy.dox
index a725e3245..2351957f1 100644
--- a/doc/I12_ClassHierarchy.dox
+++ b/doc/I12_ClassHierarchy.dox
@@ -53,7 +53,7 @@ These classes serve as base classes for the five core classes mentioned above. T
less interesting for users of the Eigen library.
- DenseStorageBase means dense (matrix or array) plain object, i.e. something that stores its own dense
- array of coefficients. This is where, for instance, the \link DenseStoreBase::resize() resize() \endlink
+ array of coefficients. This is where, for instance, the \link DenseStorageBase::resize() resize() \endlink
methods go. \c %DenseStorageBase is inherited by \c %Matrix and by \c %Array. But above, we said that
\c %Matrix inherits \c %MatrixBase and \c %Array inherits \c %ArrayBase. So does that mean multiple
inheritance? No, because \c %DenseStorageBase \e itself inherits \c %MatrixBase or \c %ArrayBase depending