doc and use sed to clean the class hierarchy instead of

preprocessor directives.
This commit is contained in:
Gael Guennebaud 2008-08-28 23:25:27 +00:00
parent 7ea821d18e
commit 409e82be06
26 changed files with 11 additions and 94 deletions

View File

@ -69,11 +69,7 @@ struct ei_traits<PartialReduxExpr<MatrixType, MemberOp, Direction> >
template< typename MatrixType, typename MemberOp, int Direction>
class PartialReduxExpr : ei_no_assignment_operator,
#ifndef EIGEN_PARSED_BY_DOXYGEN
public MatrixBase<PartialReduxExpr<MatrixType, MemberOp, Direction> >
#else
public MapBase
#endif
{
public:

View File

@ -88,11 +88,7 @@ struct ei_traits<Block<MatrixType, BlockRows, BlockCols, _PacketAccess, _DirectA
};
template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, int _DirectAccessStatus> class Block
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MatrixBase<Block<MatrixType, BlockRows, BlockCols, PacketAccess, _DirectAccessStatus> >
#else
: public MatrixBase
#endif
{
public:
@ -215,11 +211,7 @@ template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess, in
/** \internal */
template<typename MatrixType, int BlockRows, int BlockCols, int PacketAccess>
class Block<MatrixType,BlockRows,BlockCols,PacketAccess,HasDirectAccess>
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MapBase<Block<MatrixType, BlockRows, BlockCols,PacketAccess,HasDirectAccess> >
#else
: public MapBase
#endif
{
public:

View File

@ -108,7 +108,8 @@ struct MatrixBase<Derived>::CommaInitializer
int m_currentBlockRows; // current block height
};
/** Convenient operator to set the coefficients of a matrix.
/** \anchor MatrixBaseCommaInitRef
* Convenient operator to set the coefficients of a matrix.
*
* The coefficients must be provided in a row major order and exactly match
* the size of the matrix. Otherwise an assertion is raised.

View File

@ -76,11 +76,7 @@ struct ei_traits<CwiseBinaryOp<BinaryOp, Lhs, Rhs> >
template<typename BinaryOp, typename Lhs, typename Rhs>
class CwiseBinaryOp : ei_no_assignment_operator,
#ifndef EIGEN_PARSED_BY_DOXYGEN
public MatrixBase<CwiseBinaryOp<BinaryOp, Lhs, Rhs> >
#else
public MatrixBase
#endif
{
public:

View File

@ -60,11 +60,7 @@ struct ei_traits<CwiseNullaryOp<NullaryOp, MatrixType> >
template<typename NullaryOp, typename MatrixType>
class CwiseNullaryOp : ei_no_assignment_operator,
#ifndef EIGEN_PARSED_BY_DOXYGEN
public MatrixBase<CwiseNullaryOp<NullaryOp, MatrixType> >
#else
public MatrixBase
#endif
{
public:

View File

@ -63,11 +63,7 @@ struct ei_traits<CwiseUnaryOp<UnaryOp, MatrixType> >
template<typename UnaryOp, typename MatrixType>
class CwiseUnaryOp : ei_no_assignment_operator,
#ifndef EIGEN_PARSED_BY_DOXYGEN
public MatrixBase<CwiseUnaryOp<UnaryOp, MatrixType> >
#else
public MatrixBase
#endif
{
public:

View File

@ -60,11 +60,7 @@ struct ei_traits<DiagonalCoeffs<MatrixType> >
};
template<typename MatrixType> class DiagonalCoeffs
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MatrixBase<DiagonalCoeffs<MatrixType> >
#else
: public MatrixBase
#endif
{
public:

View File

@ -56,11 +56,7 @@ struct ei_traits<DiagonalMatrix<CoeffsVectorType> >
template<typename CoeffsVectorType>
class DiagonalMatrix : ei_no_assignment_operator,
#ifndef EIGEN_PARSED_BY_DOXYGEN
public MatrixBase<DiagonalMatrix<CoeffsVectorType> >
#else
public MatrixBase
#endif
{
public:

View File

@ -61,11 +61,7 @@ struct ei_traits<Product<LhsNested, RhsNested, DiagonalProduct> >
};
template<typename LhsNested, typename RhsNested> class Product<LhsNested, RhsNested, DiagonalProduct> : ei_no_assignment_operator,
#ifndef EIGEN_PARSED_BY_DOXYGEN
public MatrixBase<Product<LhsNested, RhsNested, DiagonalProduct> >
#else
public MatrixBase
#endif
{
typedef typename ei_traits<Product>::_LhsNested _LhsNested;
typedef typename ei_traits<Product>::_RhsNested _RhsNested;

View File

@ -55,11 +55,7 @@ struct ei_traits<Flagged<ExpressionType, Added, Removed> >
};
template<typename ExpressionType, unsigned int Added, unsigned int Removed> class Flagged
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MatrixBase<Flagged<ExpressionType, Added, Removed> >
#else
: public MatrixBase
#endif
{
public:

View File

@ -57,11 +57,7 @@ struct ei_traits<Map<MatrixType, _PacketAccess> > : public ei_traits<MatrixType>
};
template<typename MatrixType, int PacketAccess> class Map
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MapBase<Map<MatrixType, PacketAccess> >
#else
: public MapBase
#endif
{
public:

View File

@ -97,11 +97,7 @@ struct ei_traits<Matrix<_Scalar, _Rows, _Cols, _StorageOrder, _MaxRows, _MaxCols
template<typename _Scalar, int _Rows, int _Cols, int _StorageOrder, int _MaxRows, int _MaxCols>
class Matrix
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MatrixBase<Matrix<_Scalar, _Rows, _Cols, _StorageOrder, _MaxRows, _MaxCols> >
#else
: public MatrixBase
#endif
{
public:
EIGEN_GENERIC_PUBLIC_INTERFACE(Matrix)

View File

@ -58,11 +58,7 @@ struct ei_traits<Minor<MatrixType> >
};
template<typename MatrixType> class Minor
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MatrixBase<Minor<MatrixType> >
#else
: public MatrixBase
#endif
{
public:

View File

@ -52,11 +52,7 @@ struct ei_traits<NestByValue<ExpressionType> >
};
template<typename ExpressionType> class NestByValue
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MatrixBase<NestByValue<ExpressionType> >
#else
: public MatrixBase
#endif
{
public:

View File

@ -59,11 +59,7 @@ struct ei_traits<Part<MatrixType, Mode> >
};
template<typename MatrixType, unsigned int Mode> class Part
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MatrixBase<Part<MatrixType, Mode> >
#else
: public MatrixBase
#endif
{
public:

View File

@ -168,11 +168,7 @@ struct ei_traits<Product<LhsNested, RhsNested, ProductMode> >
};
template<typename LhsNested, typename RhsNested, int ProductMode> class Product : ei_no_assignment_operator,
#ifndef EIGEN_PARSED_BY_DOXYGEN
public MatrixBase<Product<LhsNested, RhsNested, ProductMode> >
#else
public MatrixBase
#endif
{
public:

View File

@ -46,11 +46,7 @@ struct ei_traits<SwapWrapper<ExpressionType> >
};
template<typename ExpressionType> class SwapWrapper
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MatrixBase<SwapWrapper<ExpressionType> >
#else
: public MatrixBase
#endif
{
public:

View File

@ -57,11 +57,7 @@ struct ei_traits<Transpose<MatrixType> >
};
template<typename MatrixType> class Transpose
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public MatrixBase<Transpose<MatrixType> >
#else
: public MatrixBase
#endif
{
public:

View File

@ -43,11 +43,7 @@ struct ei_traits<HashMatrix<_Scalar, _Flags> >
// TODO reimplement this class using custom linked lists
template<typename _Scalar, int _Flags>
class HashMatrix
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public SparseMatrixBase<HashMatrix<_Scalar, _Flags> >
#else
: public SparseMatrixBase
#endif
{
public:
EIGEN_GENERIC_PUBLIC_INTERFACE(HashMatrix)

View File

@ -53,11 +53,7 @@ struct LinkedVectorChunk
template<typename _Scalar, int _Flags>
class LinkedVectorMatrix
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public SparseMatrixBase<LinkedVectorMatrix<_Scalar,_Flags> >
#else
: public SparseMatrixBase
#endif
{
public:
EIGEN_GENERIC_PUBLIC_INTERFACE(LinkedVectorMatrix)

View File

@ -53,11 +53,7 @@ struct ei_traits<SparseMatrix<_Scalar, _Flags> >
template<typename _Scalar, int _Flags>
class SparseMatrix
#ifndef EIGEN_PARSED_BY_DOXYGEN
: public SparseMatrixBase<SparseMatrix<_Scalar, _Flags> >
#else
: public SparseMatrixBase
#endif
{
public:
EIGEN_GENERIC_PUBLIC_INTERFACE(SparseMatrix)

View File

@ -88,11 +88,7 @@ struct ei_traits<Product<LhsNested, RhsNested, SparseProduct> >
};
template<typename LhsNested, typename RhsNested> class Product<LhsNested,RhsNested,SparseProduct> : ei_no_assignment_operator,
#ifndef EIGEN_PARSED_BY_DOXYGEN
public MatrixBase<Product<LhsNested, RhsNested, SparseProduct> >
#else
public MatrixBase
#endif
{
public:

View File

@ -14,6 +14,6 @@ In order to generate the documentation of Eigen, please follow these steps:
After doing that, you will find the HTML documentation in the doc/html/ subdirectory of the build directory.
<h2>Note however that the documentation is available online here:
<a href="http://eigen.tuxfamily.org/api/">http://eigen.tuxfamily.org/api</a>
<a href="http://eigen.tuxfamily.org/api/">http://eigen.tuxfamily.org/api</a></h2>
*/

View File

@ -38,6 +38,7 @@ ADD_CUSTOM_TARGET(
${CMAKE_CURRENT_BINARY_DIR}/html/
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/buildexamplelist.sh ${CMAKE_SOURCE_DIR} > ${CMAKE_CURRENT_BINARY_DIR}/ExampleList.dox
COMMAND doxygen
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/cleanhierarchy.sh ${CMAKE_CURRENT_BINARY_DIR}/html/hierarchy.html
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)

View File

@ -188,7 +188,7 @@ MatrixXi mat2x2 = Map<MatrixXi>(data,2,2);
\subsection TutorialCommaInit Comma initializer
Eigen also offer a \link MatrixBase::operator<<(const Scalar &) comma initializer syntax \endlink which allows you to set all the coefficients of a matrix to specific values:
Eigen also offer a \ref MatrixBaseCommaInitRef "comma initializer syntax" which allows you to set all the coefficients of a matrix to specific values:
<table class="tutorial_code"><tr><td>
\include Tutorial_commainit_01.cpp
</td>
@ -295,8 +295,7 @@ etc.
<td><table class="tutorial_code">
<tr><td>
\b Trigo: \n
\link Cwise::sin sin \endlink, \link Cwise::cos cos \endlink,
\link Cwise::tan tan \endlink</td><td>\code
\link Cwise::sin sin \endlink, \link Cwise::cos cos \endlink</td><td>\code
mat3 = mat1.cwise().sin();
etc.
\endcode
@ -538,7 +537,7 @@ more compact, fast and stable. AngleAxis are only useful to create other rotatio
\subsection TutorialGeoCommonRotationAPI Common API across rotation types
To some extent, Eigen's \ref Geometry_Module "geometry module" allows you to write
To some extent, Eigen's \ref GeometryModule "geometry module" allows you to write
generic algorithms working on both 2D and 3D rotations of any of the five above types.
The following operation are supported:
<table class="tutorial_code">

4
doc/cleanhierarchy.sh Executable file
View File

@ -0,0 +1,4 @@
#!/bin/sh
sed -i 's/^.li.*MatrixBase\&lt.*gt.*a.$/ /g' $1
sed -i 's/^.li.*MapBase\&lt.*gt.*a.$/ /g' $1