diff options
Diffstat (limited to 'Eigen')
43 files changed, 72 insertions, 7 deletions
diff --git a/Eigen/src/Core/Array.h b/Eigen/src/Core/Array.h index 0a9366254..61e1950eb 100644 --- a/Eigen/src/Core/Array.h +++ b/Eigen/src/Core/Array.h @@ -25,6 +25,20 @@ #ifndef EIGEN_ARRAY_H #define EIGEN_ARRAY_H +/** \class Array + * \ingroup Core_Module + * + * \brief General-purpose arrays with easy API for coefficient-wise operations + * + * The %Array class is very similar to the Matrix class. It provides + * general-purpose one- and two-dimensional arrays. The difference between the + * %Array and the %Matrix class is primarily in the API: the API for the + * %Array class provides easy access to coefficient-wise operations, while the + * API for the %Matrix class provides easy access to linear-algebra + * operations. + * + * \sa \ref TutorialArrayClass + */ template<typename _Scalar, int _Rows, int _Cols, int _Options, int _MaxRows, int _MaxCols> struct ei_traits<Array<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols> > : ei_traits<Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols> > { @@ -231,6 +245,7 @@ class Array }; /** \defgroup arraytypedefs Global array typedefs + * \ingroup Core_Module * * Eigen defines several typedef shortcuts for most common 1D and 2D array types. * diff --git a/Eigen/src/Core/ArrayBase.h b/Eigen/src/Core/ArrayBase.h index 20782e2cf..1a54b2335 100644 --- a/Eigen/src/Core/ArrayBase.h +++ b/Eigen/src/Core/ArrayBase.h @@ -28,6 +28,7 @@ template<typename ExpressionType> class MatrixWrapper; /** \class ArrayBase + * \ingroup Core_Module * * \brief Base class for all 1D and 2D array, and related expressions * diff --git a/Eigen/src/Core/ArrayWrapper.h b/Eigen/src/Core/ArrayWrapper.h index d4b7c45c0..dc5bba443 100644 --- a/Eigen/src/Core/ArrayWrapper.h +++ b/Eigen/src/Core/ArrayWrapper.h @@ -26,6 +26,7 @@ #define EIGEN_ARRAYWRAPPER_H /** \class ArrayWrapper + * \ingroup Core_Module * * \brief Expression of a mathematical vector or matrix as an array object * @@ -110,6 +111,7 @@ class ArrayWrapper : public ArrayBase<ArrayWrapper<ExpressionType> > }; /** \class MatrixWrapper + * \ingroup Core_Module * * \brief Expression of an array as a mathematical vector or matrix * diff --git a/Eigen/src/Core/BandMatrix.h b/Eigen/src/Core/BandMatrix.h index 51b38aa7f..e846b38e5 100644 --- a/Eigen/src/Core/BandMatrix.h +++ b/Eigen/src/Core/BandMatrix.h @@ -27,6 +27,7 @@ /** * \class BandMatrix + * \ingroup Core_Module * * \brief Represents a rectangular matrix with a banded storage * @@ -205,6 +206,7 @@ class BandMatrix : public EigenBase<BandMatrix<_Scalar,Rows,Cols,Supers,Subs,Opt /** * \class TridiagonalMatrix + * \ingroup Core_Module * * \brief Represents a tridiagonal matrix * diff --git a/Eigen/src/Core/Block.h b/Eigen/src/Core/Block.h index 79f1d738d..f888d5ea0 100644 --- a/Eigen/src/Core/Block.h +++ b/Eigen/src/Core/Block.h @@ -27,6 +27,7 @@ #define EIGEN_BLOCK_H /** \class Block + * \ingroup Core_Module * * \brief Expression of a fixed-size or dynamic-size block * diff --git a/Eigen/src/Core/CommaInitializer.h b/Eigen/src/Core/CommaInitializer.h index 2b09e9daa..da8df5592 100644 --- a/Eigen/src/Core/CommaInitializer.h +++ b/Eigen/src/Core/CommaInitializer.h @@ -27,6 +27,7 @@ #define EIGEN_COMMAINITIALIZER_H /** \class CommaInitializer + * \ingroup Core_Module * * \brief Helper class used by the comma initializer operator * diff --git a/Eigen/src/Core/CwiseBinaryOp.h b/Eigen/src/Core/CwiseBinaryOp.h index 2639c5f8d..7f4587b53 100644 --- a/Eigen/src/Core/CwiseBinaryOp.h +++ b/Eigen/src/Core/CwiseBinaryOp.h @@ -27,6 +27,7 @@ #define EIGEN_CWISE_BINARY_OP_H /** \class CwiseBinaryOp + * \ingroup Core_Module * * \brief Generic expression where a coefficient-wise binary operator is applied to two expressions * diff --git a/Eigen/src/Core/CwiseNullaryOp.h b/Eigen/src/Core/CwiseNullaryOp.h index f053ddc90..25041d1b7 100644 --- a/Eigen/src/Core/CwiseNullaryOp.h +++ b/Eigen/src/Core/CwiseNullaryOp.h @@ -26,6 +26,7 @@ #define EIGEN_CWISE_NULLARY_OP_H /** \class CwiseNullaryOp + * \ingroup Core_Module * * \brief Generic expression of a matrix where all coefficients are defined by a functor * diff --git a/Eigen/src/Core/CwiseUnaryOp.h b/Eigen/src/Core/CwiseUnaryOp.h index b5cdf22a2..4c92f36bb 100644 --- a/Eigen/src/Core/CwiseUnaryOp.h +++ b/Eigen/src/Core/CwiseUnaryOp.h @@ -27,6 +27,7 @@ #define EIGEN_CWISE_UNARY_OP_H /** \class CwiseUnaryOp + * \ingroup Core_Module * * \brief Generic expression where a coefficient-wise unary operator is applied to an expression * diff --git a/Eigen/src/Core/CwiseUnaryView.h b/Eigen/src/Core/CwiseUnaryView.h index 3888b86b2..612b28f1f 100644 --- a/Eigen/src/Core/CwiseUnaryView.h +++ b/Eigen/src/Core/CwiseUnaryView.h @@ -26,6 +26,7 @@ #define EIGEN_CWISE_UNARY_VIEW_H /** \class CwiseUnaryView + * \ingroup Core_Module * * \brief Generic lvalue expression of a coefficient-wise unary operator of a matrix or a vector * diff --git a/Eigen/src/Core/DenseBase.h b/Eigen/src/Core/DenseBase.h index f45af7e97..8c1e24fec 100644 --- a/Eigen/src/Core/DenseBase.h +++ b/Eigen/src/Core/DenseBase.h @@ -27,6 +27,7 @@ #define EIGEN_DENSEBASE_H /** \class DenseBase + * \ingroup Core_Module * * \brief Base class for all dense matrices, vectors, and arrays * diff --git a/Eigen/src/Core/DenseStorageBase.h b/Eigen/src/Core/DenseStorageBase.h index a5282e316..6886e3f97 100644 --- a/Eigen/src/Core/DenseStorageBase.h +++ b/Eigen/src/Core/DenseStorageBase.h @@ -432,8 +432,9 @@ class DenseStorageBase : public ei_dense_xpr_base<Derived>::type ei_assert((this->size()==0 || (IsVectorAtCompileTime ? (this->size() == other.size()) : (rows() == other.rows() && cols() == other.cols()))) && "Size mismatch. Automatic resizing is disabled because EIGEN_NO_AUTOMATIC_RESIZING is defined"); - #endif + #else resizeLike(other); + #endif } /** diff --git a/Eigen/src/Core/Diagonal.h b/Eigen/src/Core/Diagonal.h index a77710565..8c2eacd96 100644 --- a/Eigen/src/Core/Diagonal.h +++ b/Eigen/src/Core/Diagonal.h @@ -26,6 +26,7 @@ #define EIGEN_DIAGONAL_H /** \class Diagonal + * \ingroup Core_Module * * \brief Expression of a diagonal/subdiagonal/superdiagonal in a matrix * diff --git a/Eigen/src/Core/DiagonalMatrix.h b/Eigen/src/Core/DiagonalMatrix.h index c4391819a..8c4200a6f 100644 --- a/Eigen/src/Core/DiagonalMatrix.h +++ b/Eigen/src/Core/DiagonalMatrix.h @@ -87,6 +87,7 @@ void DiagonalBase<Derived>::evalTo(MatrixBase<DenseDerived> &other) const #endif /** \class DiagonalMatrix + * \ingroup Core_Module * * \brief Represents a diagonal matrix with its storage * @@ -188,6 +189,7 @@ class DiagonalMatrix }; /** \class DiagonalWrapper + * \ingroup Core_Module * * \brief Expression of a diagonal matrix * diff --git a/Eigen/src/Core/Flagged.h b/Eigen/src/Core/Flagged.h index 7936f9dcf..9211c50e8 100644 --- a/Eigen/src/Core/Flagged.h +++ b/Eigen/src/Core/Flagged.h @@ -26,6 +26,7 @@ #define EIGEN_FLAGGED_H /** \class Flagged + * \ingroup Core_Module * * \brief Expression with modified flags * diff --git a/Eigen/src/Core/ForceAlignedAccess.h b/Eigen/src/Core/ForceAlignedAccess.h index 114d7bf97..06d78fbe2 100644 --- a/Eigen/src/Core/ForceAlignedAccess.h +++ b/Eigen/src/Core/ForceAlignedAccess.h @@ -26,6 +26,7 @@ #define EIGEN_FORCEALIGNEDACCESS_H /** \class ForceAlignedAccess + * \ingroup Core_Module * * \brief Enforce aligned packet loads and stores regardless of what is requested * diff --git a/Eigen/src/Core/IO.h b/Eigen/src/Core/IO.h index 7a823d225..7c742d867 100644 --- a/Eigen/src/Core/IO.h +++ b/Eigen/src/Core/IO.h @@ -31,6 +31,7 @@ enum { StreamPrecision = -1, FullPrecision = -2 }; /** \class IOFormat + * \ingroup Core_Module * * \brief Stores a set of parameters controlling the way matrices are printed * @@ -80,6 +81,7 @@ struct IOFormat }; /** \class WithFormat + * \ingroup Core_Module * * \brief Pseudo expression providing matrix output with given format * diff --git a/Eigen/src/Core/Map.h b/Eigen/src/Core/Map.h index 0c4d08a17..3386c6d69 100644 --- a/Eigen/src/Core/Map.h +++ b/Eigen/src/Core/Map.h @@ -27,6 +27,7 @@ #define EIGEN_MAP_H /** \class Map + * \ingroup Core_Module * * \brief A matrix or vector expression mapping an existing array of data. * diff --git a/Eigen/src/Core/MapBase.h b/Eigen/src/Core/MapBase.h index 4dfa8f82d..6af7bb793 100644 --- a/Eigen/src/Core/MapBase.h +++ b/Eigen/src/Core/MapBase.h @@ -27,6 +27,7 @@ #define EIGEN_MAPBASE_H /** \class MapBase + * \ingroup Core_Module * * \brief Base class for Map and Block expression with direct access * diff --git a/Eigen/src/Core/Matrix.h b/Eigen/src/Core/Matrix.h index 726969720..1c9d32a29 100644 --- a/Eigen/src/Core/Matrix.h +++ b/Eigen/src/Core/Matrix.h @@ -27,6 +27,7 @@ #define EIGEN_MATRIX_H /** \class Matrix + * \ingroup Core_Module * * \brief The matrix class, also used for vectors and row-vectors * diff --git a/Eigen/src/Core/MatrixBase.h b/Eigen/src/Core/MatrixBase.h index 94ddb8691..0c2bbf5bf 100644 --- a/Eigen/src/Core/MatrixBase.h +++ b/Eigen/src/Core/MatrixBase.h @@ -27,6 +27,7 @@ #define EIGEN_MATRIXBASE_H /** \class MatrixBase + * \ingroup Core_Module * * \brief Base class for all dense matrices, vectors, and expressions * diff --git a/Eigen/src/Core/MatrixStorage.h b/Eigen/src/Core/MatrixStorage.h index 5dc8640c0..c6e7e20b2 100644 --- a/Eigen/src/Core/MatrixStorage.h +++ b/Eigen/src/Core/MatrixStorage.h @@ -79,6 +79,7 @@ struct ei_matrix_array<T, 0, MatrixOptions, Alignment> /** \internal * * \class ei_matrix_storage + * \ingroup Core_Module * * \brief Stores the data of a matrix * diff --git a/Eigen/src/Core/NestByValue.h b/Eigen/src/Core/NestByValue.h index f01e1e38d..885002e26 100644 --- a/Eigen/src/Core/NestByValue.h +++ b/Eigen/src/Core/NestByValue.h @@ -27,6 +27,7 @@ #define EIGEN_NESTBYVALUE_H /** \class NestByValue + * \ingroup Core_Module * * \brief Expression which must be nested by value * diff --git a/Eigen/src/Core/NoAlias.h b/Eigen/src/Core/NoAlias.h index ac889c565..d34f83b7b 100644 --- a/Eigen/src/Core/NoAlias.h +++ b/Eigen/src/Core/NoAlias.h @@ -26,6 +26,7 @@ #define EIGEN_NOALIAS_H /** \class NoAlias + * \ingroup Core_Module * * \brief Pseudo expression providing an operator = assuming no aliasing * diff --git a/Eigen/src/Core/NumTraits.h b/Eigen/src/Core/NumTraits.h index a0ffa4645..9e6e35a04 100644 --- a/Eigen/src/Core/NumTraits.h +++ b/Eigen/src/Core/NumTraits.h @@ -26,6 +26,7 @@ #define EIGEN_NUMTRAITS_H /** \class NumTraits + * \ingroup Core_Module * * \brief Holds information about the various numeric (i.e. scalar) types allowed by Eigen. * diff --git a/Eigen/src/Core/PermutationMatrix.h b/Eigen/src/Core/PermutationMatrix.h index 1b212efd7..afe37ef6d 100644 --- a/Eigen/src/Core/PermutationMatrix.h +++ b/Eigen/src/Core/PermutationMatrix.h @@ -27,6 +27,7 @@ #define EIGEN_PERMUTATIONMATRIX_H /** \class PermutationMatrix + * \ingroup Core_Module * * \brief Permutation matrix * diff --git a/Eigen/src/Core/Product.h b/Eigen/src/Core/Product.h index 6a205eda9..ca30c4dce 100644 --- a/Eigen/src/Core/Product.h +++ b/Eigen/src/Core/Product.h @@ -27,6 +27,7 @@ #define EIGEN_PRODUCT_H /** \class GeneralProduct + * \ingroup Core_Module * * \brief Expression of the product of two general matrices or vectors * @@ -120,6 +121,7 @@ template<> struct ei_product_type_selector<Small,Large,Small> { en template<> struct ei_product_type_selector<Large,Large,Small> { enum { ret = GemmProduct }; }; /** \class ProductReturnType + * \ingroup Core_Module * * \brief Helper class to get the correct and optimized returned type of operator* * diff --git a/Eigen/src/Core/ProductBase.h b/Eigen/src/Core/ProductBase.h index 8f8052756..b3504f9d0 100644 --- a/Eigen/src/Core/ProductBase.h +++ b/Eigen/src/Core/ProductBase.h @@ -26,6 +26,7 @@ #define EIGEN_PRODUCTBASE_H /** \class ProductBase + * \ingroup Core_Module * */ template<typename Derived, typename _Lhs, typename _Rhs> diff --git a/Eigen/src/Core/Replicate.h b/Eigen/src/Core/Replicate.h index 23f02c2d9..87dea0533 100644 --- a/Eigen/src/Core/Replicate.h +++ b/Eigen/src/Core/Replicate.h @@ -27,6 +27,7 @@ /** * \class Replicate + * \ingroup Core_Module * * \brief Expression of the multiple replication of a matrix or vector * diff --git a/Eigen/src/Core/ReturnByValue.h b/Eigen/src/Core/ReturnByValue.h index 52326b0e1..82f194b56 100644 --- a/Eigen/src/Core/ReturnByValue.h +++ b/Eigen/src/Core/ReturnByValue.h @@ -27,6 +27,7 @@ #define EIGEN_RETURNBYVALUE_H /** \class ReturnByValue + * \ingroup Core_Module * */ template<typename Derived> diff --git a/Eigen/src/Core/Reverse.h b/Eigen/src/Core/Reverse.h index a581d9f27..5a96aeeb3 100644 --- a/Eigen/src/Core/Reverse.h +++ b/Eigen/src/Core/Reverse.h @@ -28,6 +28,7 @@ #define EIGEN_REVERSE_H /** \class Reverse + * \ingroup Core_Module * * \brief Expression of the reverse of a vector or matrix * diff --git a/Eigen/src/Core/Select.h b/Eigen/src/Core/Select.h index f5f220bff..000c70905 100644 --- a/Eigen/src/Core/Select.h +++ b/Eigen/src/Core/Select.h @@ -26,6 +26,7 @@ #define EIGEN_SELECT_H /** \class Select + * \ingroup Core_Module * * \brief Expression of a coefficient wise version of the C++ ternary operator ?: * diff --git a/Eigen/src/Core/SelfAdjointView.h b/Eigen/src/Core/SelfAdjointView.h index dadea9c09..bb8ab168d 100644 --- a/Eigen/src/Core/SelfAdjointView.h +++ b/Eigen/src/Core/SelfAdjointView.h @@ -26,6 +26,7 @@ #define EIGEN_SELFADJOINTMATRIX_H /** \class SelfAdjointView + * \ingroup Core_Module * * * \brief Expression of a selfadjoint matrix from a triangular part of a dense matrix diff --git a/Eigen/src/Core/SelfCwiseBinaryOp.h b/Eigen/src/Core/SelfCwiseBinaryOp.h index fbeb5bff2..acdbb8658 100644 --- a/Eigen/src/Core/SelfCwiseBinaryOp.h +++ b/Eigen/src/Core/SelfCwiseBinaryOp.h @@ -26,6 +26,7 @@ #define EIGEN_SELFCWISEBINARYOP_H /** \class SelfCwiseBinaryOp + * \ingroup Core_Module * * \internal * diff --git a/Eigen/src/Core/Stride.h b/Eigen/src/Core/Stride.h index 5f9a18523..47515b548 100644 --- a/Eigen/src/Core/Stride.h +++ b/Eigen/src/Core/Stride.h @@ -26,6 +26,7 @@ #define EIGEN_STRIDE_H /** \class Stride + * \ingroup Core_Module * * \brief Holds strides information for Map * diff --git a/Eigen/src/Core/Swap.h b/Eigen/src/Core/Swap.h index 8e5994aa9..086d7f32c 100644 --- a/Eigen/src/Core/Swap.h +++ b/Eigen/src/Core/Swap.h @@ -26,6 +26,7 @@ #define EIGEN_SWAP_H /** \class SwapWrapper + * \ingroup Core_Module * * \internal * diff --git a/Eigen/src/Core/Transpose.h b/Eigen/src/Core/Transpose.h index f9c82fb77..3a84b84ff 100644 --- a/Eigen/src/Core/Transpose.h +++ b/Eigen/src/Core/Transpose.h @@ -27,6 +27,7 @@ #define EIGEN_TRANSPOSE_H /** \class Transpose + * \ingroup Core_Module * * \brief Expression of the transpose of a matrix * diff --git a/Eigen/src/Core/Transpositions.h b/Eigen/src/Core/Transpositions.h index 012b74159..6703b1e58 100644 --- a/Eigen/src/Core/Transpositions.h +++ b/Eigen/src/Core/Transpositions.h @@ -26,6 +26,7 @@ #define EIGEN_TRANSPOSITIONS_H /** \class Transpositions + * \ingroup Core_Module * * \brief Represents a sequence of transpositions (row/column interchange) * diff --git a/Eigen/src/Core/TriangularMatrix.h b/Eigen/src/Core/TriangularMatrix.h index 99e8e426c..c66bbb9fa 100644 --- a/Eigen/src/Core/TriangularMatrix.h +++ b/Eigen/src/Core/TriangularMatrix.h @@ -29,6 +29,7 @@ /** \internal * * \class TriangularBase + * \ingroup Core_Module * * \brief Base class for triangular part in a matrix */ @@ -112,6 +113,7 @@ template<typename Derived> class TriangularBase : public EigenBase<Derived> }; /** \class TriangularView + * \ingroup Core_Module * * \brief Base class for triangular part in a matrix * diff --git a/Eigen/src/Core/VectorBlock.h b/Eigen/src/Core/VectorBlock.h index 1840095cf..84040bca1 100644 --- a/Eigen/src/Core/VectorBlock.h +++ b/Eigen/src/Core/VectorBlock.h @@ -27,6 +27,7 @@ #define EIGEN_VECTORBLOCK_H /** \class VectorBlock + * \ingroup Core_Module * * \brief Expression of a fixed-size or dynamic-size sub-vector * diff --git a/Eigen/src/Core/VectorwiseOp.h b/Eigen/src/Core/VectorwiseOp.h index 93373b49b..1867961f5 100644 --- a/Eigen/src/Core/VectorwiseOp.h +++ b/Eigen/src/Core/VectorwiseOp.h @@ -27,6 +27,7 @@ #define EIGEN_PARTIAL_REDUX_H /** \class PartialReduxExpr + * \ingroup Core_Module * * \brief Generic expression of a partially reduxed matrix * @@ -154,6 +155,7 @@ struct ei_member_redux { }; /** \class VectorwiseOp + * \ingroup Core_Module * * \brief Pseudo expression providing partial reduction operations * diff --git a/Eigen/src/Core/util/Constants.h b/Eigen/src/Core/util/Constants.h index 0c24d2fa9..d758c2a0b 100644 --- a/Eigen/src/Core/util/Constants.h +++ b/Eigen/src/Core/util/Constants.h @@ -38,7 +38,7 @@ const int Dynamic = -1; */ const int Infinity = -1; -/** \defgroup flags flags +/** \defgroup flags Flags * \ingroup Core_Module * * These are the possible bits which can be OR'ed to constitute the flags of a matrix or diff --git a/Eigen/src/Core/util/Memory.h b/Eigen/src/Core/util/Memory.h index 022c9b70d..1b89525a8 100644 --- a/Eigen/src/Core/util/Memory.h +++ b/Eigen/src/Core/util/Memory.h @@ -495,6 +495,7 @@ inline static Index ei_first_aligned(const Scalar* array, Index size) /****************************************************************************/ /** \class aligned_allocator +* \ingroup Core_Module * * \brief STL compatible allocator to use with with 16 byte aligned types * @@ -588,17 +589,17 @@ public: //---------- Cache sizes ---------- #if defined(__GNUC__) -# if defined(__PIC__) && defined(__i386__) +# if defined(__PIC__) && defined(__i386__) # define EIGEN_CPUID(abcd,func,id) \ __asm__ __volatile__ ("xchgl %%ebx, %%esi;cpuid; xchgl %%ebx,%%esi": "=a" (abcd[0]), "=S" (abcd[1]), "=c" (abcd[2]), "=d" (abcd[3]) : "a" (func), "c" (id)); -# else +# elif !defined(__arm__) && !defined(__powerpc__) # define EIGEN_CPUID(abcd,func,id) \ __asm__ __volatile__ ("cpuid": "=a" (abcd[0]), "=b" (abcd[1]), "=c" (abcd[2]), "=d" (abcd[3]) : "a" (func), "c" (id) ); -# endif +# endif #elif defined(_MSC_VER) -#if (_MSC_VER > 1500) /* newer than MSVC++ 9.0 */ || (_MSC_VER == 1500 && _MSC_FULL_VER >= 150030729) /* MSVC++ 9.0 with SP1*/ +# if (_MSC_VER > 1500) /* newer than MSVC++ 9.0 */ || (_MSC_VER == 1500 && _MSC_FULL_VER >= 150030729) /* MSVC++ 9.0 with SP1*/ # define EIGEN_CPUID(abcd,func,id) __cpuidex((int*)abcd,func,id) -#endif +# endif #endif #ifdef EIGEN_CPUID @@ -771,6 +772,8 @@ inline void ei_queryCacheSizes(int& l1, int& l2, int& l3) // ||ei_cpuid_is_vendor(abcd,"NexGenDriven") // ||ei_cpuid_is_vendor(abcd,"CentaurHauls") // ||ei_cpuid_is_vendor(abcd,"CentaurHauls") + #else + l1 = l2 = l3 = -1; #endif } |