Fix all doxygen warnings.

This commit is contained in:
C. Antonio Sanchez
2025-02-15 21:10:48 -08:00
parent 88cd53774e
commit 7312765992
51 changed files with 785 additions and 2307 deletions

View File

@@ -16,7 +16,7 @@
#include "src/util/CXX11Meta.h"
/** \defgroup CXX11_TensorSymmetry_Module Tensor Symmetry Module
/** \defgroup TensorSymmetry_Module Tensor Symmetry Module
*
* This module provides a classes that allow for the definition of
* symmetries w.r.t. tensor indices.

View File

@@ -91,7 +91,7 @@ See Assigning to a TensorRef below.
## Accessing Tensor Elements
#### <data_type> tensor(index0, index1...)
#### data_type tensor(index0, index1...)
Return the element at position `(index0, index1...)` in tensor
`tensor`. You must pass as many parameters as the rank of `tensor`.
@@ -470,7 +470,7 @@ Represents the datatype of individual tensor elements. For example, for a
`Tensor<float>`, `Scalar` is the type `float`. See
`setConstant()`.
#### <Operation>
#### (Operation)
We use this pseudo type to indicate that a tensor Operation is returned by a
method. We indicate in the text the type and dimensions of the tensor that the
@@ -776,7 +776,7 @@ The chain of Operation is evaluated lazily, typically when it is assigned to a
tensor. See "Controlling when Expression are Evaluated" for more details about
their evaluation.
### <Operation> constant(const Scalar& val)
### (Operation) constant(const Scalar& val)
Returns a tensor of the same type and dimensions as the original tensor but
where all elements have the value `val`.
@@ -804,7 +804,7 @@ tensor, or multiply every element of a tensor by a scalar.
0.6 0.6 0.6
0.6 0.6 0.6
### <Operation> random()
### (Operation) random()
Returns a tensor of the same type and dimensions as the current tensor
but where all elements have random values.
@@ -834,7 +834,7 @@ All these operations take a single input tensor as argument and return a tensor
of the same type and dimensions as the tensor to which they are applied. The
requested operations are applied to each element independently.
### <Operation> operator-()
### (Operation) operator-()
Returns a tensor of the same type and dimensions as the original tensor
containing the opposite values of the original tensor.
@@ -853,42 +853,42 @@ containing the opposite values of the original tensor.
-1 -1 -1
-1 -1 -1
### <Operation> sqrt()
### (Operation) sqrt()
Returns a tensor of the same type and dimensions as the original tensor
containing the square roots of the original tensor.
### <Operation> rsqrt()
### (Operation) rsqrt()
Returns a tensor of the same type and dimensions as the original tensor
containing the inverse square roots of the original tensor.
### <Operation> square()
### (Operation) square()
Returns a tensor of the same type and dimensions as the original tensor
containing the squares of the original tensor values.
### <Operation> inverse()
### (Operation) inverse()
Returns a tensor of the same type and dimensions as the original tensor
containing the inverse of the original tensor values.
### <Operation> exp()
### (Operation) exp()
Returns a tensor of the same type and dimensions as the original tensor
containing the exponential of the original tensor.
### <Operation> log()
### (Operation) log()
Returns a tensor of the same type and dimensions as the original tensor
containing the natural logarithms of the original tensor.
### <Operation> abs()
### (Operation) abs()
Returns a tensor of the same type and dimensions as the original tensor
containing the absolute values of the original tensor.
### <Operation> pow(Scalar exponent)
### (Operation) pow(Scalar exponent)
Returns a tensor of the same type and dimensions as the original tensor
containing the coefficients of the original tensor to the power of the
@@ -915,17 +915,17 @@ cubic roots of an int Tensor:
0 1 2
3 4 5
### <Operation> operator * (Scalar scale)
### (Operation) operator * (Scalar scale)
Multiplies all the coefficients of the input tensor by the provided scale.
### <Operation> cwiseMax(Scalar threshold)
### (Operation) cwiseMax(Scalar threshold)
TODO
### <Operation> cwiseMin(Scalar threshold)
### (Operation) cwiseMin(Scalar threshold)
TODO
### <Operation> unaryExpr(const CustomUnaryOp& func)
### (Operation) unaryExpr(const CustomUnaryOp& func)
TODO
@@ -937,39 +937,39 @@ dimensions as the tensors to which they are applied, and unless otherwise
specified it is also of the same type. The requested operations are applied to
each pair of elements independently.
### <Operation> operator+(const OtherDerived& other)
### (Operation) operator+(const OtherDerived& other)
Returns a tensor of the same type and dimensions as the input tensors
containing the coefficient wise sums of the inputs.
### <Operation> operator-(const OtherDerived& other)
### (Operation) operator-(const OtherDerived& other)
Returns a tensor of the same type and dimensions as the input tensors
containing the coefficient wise differences of the inputs.
### <Operation> operator*(const OtherDerived& other)
### (Operation) operator*(const OtherDerived& other)
Returns a tensor of the same type and dimensions as the input tensors
containing the coefficient wise products of the inputs.
### <Operation> operator/(const OtherDerived& other)
### (Operation) operator/(const OtherDerived& other)
Returns a tensor of the same type and dimensions as the input tensors
containing the coefficient wise quotients of the inputs.
This operator is not supported for integer types.
### <Operation> cwiseMax(const OtherDerived& other)
### (Operation) cwiseMax(const OtherDerived& other)
Returns a tensor of the same type and dimensions as the input tensors
containing the coefficient wise maximums of the inputs.
### <Operation> cwiseMin(const OtherDerived& other)
### (Operation) cwiseMin(const OtherDerived& other)
Returns a tensor of the same type and dimensions as the input tensors
containing the coefficient wise mimimums of the inputs.
### <Operation> Logical operators
### (Operation) Logical operators
The following logical operators are supported as well:
@@ -1127,50 +1127,50 @@ scalar, represented as a zero-dimension tensor.
276
### <Operation> sum(const Dimensions& new_dims)
### <Operation> sum()
### (Operation) sum(const Dimensions& new_dims)
### (Operation) sum()
Reduce a tensor using the sum() operator. The resulting values
are the sum of the reduced values.
### <Operation> mean(const Dimensions& new_dims)
### <Operation> mean()
### (Operation) mean(const Dimensions& new_dims)
### (Operation) mean()
Reduce a tensor using the mean() operator. The resulting values
are the mean of the reduced values.
### <Operation> maximum(const Dimensions& new_dims)
### <Operation> maximum()
### (Operation) maximum(const Dimensions& new_dims)
### (Operation) maximum()
Reduce a tensor using the maximum() operator. The resulting values are the
largest of the reduced values.
### <Operation> minimum(const Dimensions& new_dims)
### <Operation> minimum()
### (Operation) minimum(const Dimensions& new_dims)
### (Operation) minimum()
Reduce a tensor using the minimum() operator. The resulting values
are the smallest of the reduced values.
### <Operation> prod(const Dimensions& new_dims)
### <Operation> prod()
### (Operation) prod(const Dimensions& new_dims)
### (Operation) prod()
Reduce a tensor using the prod() operator. The resulting values
are the product of the reduced values.
### <Operation> all(const Dimensions& new_dims)
### <Operation> all()
### (Operation) all(const Dimensions& new_dims)
### (Operation) all()
Reduce a tensor using the all() operator. Casts tensor to bool and then checks
whether all elements are true. Runs through all elements rather than
short-circuiting, so may be significantly inefficient.
### <Operation> any(const Dimensions& new_dims)
### <Operation> any()
### (Operation) any(const Dimensions& new_dims)
### (Operation) any()
Reduce a tensor using the any() operator. Casts tensor to bool and then checks
whether any element is true. Runs through all elements rather than
short-circuiting, so may be significantly inefficient.
### <Operation> reduce(const Dimensions& new_dims, const Reducer& reducer)
### (Operation) reduce(const Dimensions& new_dims, const Reducer& reducer)
Reduce a tensor using a user-defined reduction operator. See `SumReducer`
in TensorFunctors.h for information on how to implement a reduction operator.
@@ -1206,8 +1206,8 @@ Example: Trace along 2 dimensions.
15
### <Operation> trace(const Dimensions& new_dims)
### <Operation> trace()
### (Operation) trace(const Dimensions& new_dims)
### (Operation) trace()
As a special case, if no parameter is passed to the operation, trace is computed
along *all* dimensions of the input tensor.
@@ -1257,18 +1257,18 @@ dd a comment to this line
1 3 6
4 9 15
### <Operation> cumsum(const Index& axis)
### (Operation) cumsum(const Index& axis)
Perform a scan by summing consecutive entries.
### <Operation> cumprod(const Index& axis)
### (Operation) cumprod(const Index& axis)
Perform a scan by multiplying consecutive entries.
## Convolutions
### <Operation> convolve(const Kernel& kernel, const Dimensions& dims)
### (Operation) convolve(const Kernel& kernel, const Dimensions& dims)
Returns a tensor that is the output of the convolution of the input tensor with the kernel,
along the specified dimensions of the input tensor. The dimension size for dimensions of the output tensor
@@ -1311,7 +1311,7 @@ These operations return a Tensor with different dimensions than the original
Tensor. They can be used to access slices of tensors, see them with different
dimensions, or pad tensors with additional data.
### <Operation> reshape(const Dimensions& new_dims)
### (Operation) reshape(const Dimensions& new_dims)
Returns a view of the input tensor that has been reshaped to the specified
new dimensions. The argument new_dims is an array of Index values. The
@@ -1390,7 +1390,7 @@ Note that "b" itself was not reshaped but that instead the assignment is done to
the reshape view of b.
### <Operation> shuffle(const Shuffle& shuffle)
### (Operation) shuffle(const Shuffle& shuffle)
Returns a copy of the input tensor whose dimensions have been
reordered according to the specified permutation. The argument shuffle
@@ -1431,7 +1431,7 @@ Let's rewrite the previous example to take advantage of this feature:
output.shuffle({2, 0, 1}) = input;
### <Operation> stride(const Strides& strides)
### (Operation) stride(const Strides& strides)
Returns a view of the input tensor that strides (skips stride-1
elements) along each of the dimensions. The argument strides is an
@@ -1457,7 +1457,7 @@ It is possible to assign a tensor to a stride:
output.stride({2, 3, 4}) = input;
### <Operation> slice(const StartIndices& offsets, const Sizes& extents)
### (Operation) slice(const StartIndices& offsets, const Sizes& extents)
Returns a sub-tensor of the given tensor. For each dimension i, the slice is
made of the coefficients stored between offset[i] and offset[i] + extents[i] in
@@ -1483,7 +1483,7 @@ the input tensor.
600 700
### <Operation> chip(const Index offset, const Index dim)
### (Operation) chip(const Index offset, const Index dim)
A chip is a special kind of slice. It is the subtensor at the given offset in
the dimension dim. The returned tensor has one fewer dimension than the input
@@ -1534,7 +1534,7 @@ lvalue. For example:
0 0 0
### <Operation> reverse(const ReverseDimensions& reverse)
### (Operation) reverse(const ReverseDimensions& reverse)
Returns a view of the input tensor that reverses the order of the coefficients
along a subset of the dimensions. The argument reverse is an array of boolean
@@ -1564,7 +1564,7 @@ of a 2D tensor:
0 100 200
### <Operation> broadcast(const Broadcast& broadcast)
### (Operation) broadcast(const Broadcast& broadcast)
Returns a view of the input tensor in which the input is replicated one to many
times.
@@ -1588,11 +1588,11 @@ made in each of the dimensions.
0 100 200 0 100 200
300 400 500 300 400 500
### <Operation> concatenate(const OtherDerived& other, Axis axis)
### (Operation) concatenate(const OtherDerived& other, Axis axis)
TODO
### <Operation> pad(const PaddingDimensions& padding)
### (Operation) pad(const PaddingDimensions& padding)
Returns a view of the input tensor in which the input is padded with zeros.
@@ -1617,7 +1617,7 @@ Returns a view of the input tensor in which the input is padded with zeros.
0 0 0 0
### <Operation> extract_patches(const PatchDims& patch_dims)
### (Operation) extract_patches(const PatchDims& patch_dims)
Returns a tensor of coefficient patches extracted from the input tensor, where
each patch is of dimension specified by 'patch_dims'. The returned tensor has
@@ -1704,7 +1704,7 @@ This code results in the following output when the data layout is RowMajor:
6 7
10 11
### <Operation> extract_image_patches(const Index patch_rows, const Index patch_cols, const Index row_stride, const Index col_stride, const PaddingType padding_type)
### (Operation) extract_image_patches(const Index patch_rows, const Index patch_cols, const Index row_stride, const Index col_stride, const PaddingType padding_type)
Returns a tensor of coefficient image patches extracted from the input tensor,
which is expected to have dimensions ordered as follows (depending on the data
@@ -1761,7 +1761,7 @@ sizes:
## Special Operations
### <Operation> cast<T>()
### (Operation) cast<T>()
Returns a tensor of type T with the same dimensions as the original tensor.
The returned tensor contains the values of the original tensor converted to
@@ -1790,7 +1790,7 @@ but you can easily cast the tensors to floats to do the division:
1 2 2
### <Operation> eval()
### (Operation) eval()
TODO

View File

@@ -424,7 +424,7 @@ struct ThreadProperties {
* \tparam input_mapper_properties : determine if the input tensors are matrix. If they are matrix, special memory
access is used to guarantee that always the memory access are coalesced.
*
* \tptaram IsFinal : determine if this is the final kernel. If so, the result will be written in a final output.
* \tparam IsFinal : determine if this is the final kernel. If so, the result will be written in a final output.
Otherwise, the result of contraction will be written iin a temporary buffer. This is the case when Tall/Skinny
contraction is used. So in this case, a final reduction step is required to compute final output.

View File

@@ -106,7 +106,7 @@ namespace group_theory {
/** \internal
*
* \class strip_identities
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Cleanse a list of group elements of the identity element
*
@@ -148,7 +148,7 @@ struct strip_identities<Equality, id, type_list<EIGEN_TPL_PP_SPEC_HACK_USE(ts)>>
/** \internal
*
* \class dimino_first_step_elements_helper
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Recursive template that adds powers of the first generator to the list of group elements
*
@@ -198,7 +198,7 @@ struct dimino_first_step_elements_helper<Multiply, Equality, id, g, current_elem
/** \internal
*
* \class dimino_first_step_elements
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Add all powers of the first generator to the list of group elements
*
@@ -236,7 +236,7 @@ struct dimino_first_step_elements
/** \internal
*
* \class dimino_get_coset_elements
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Generate all elements of a specific coset
*
@@ -277,7 +277,7 @@ struct dimino_get_coset_elements<Multiply, sub_group_elements, new_coset_rep, fa
/** \internal
*
* \class dimino_add_cosets_for_rep
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Recursive template for adding coset spaces
*
@@ -365,7 +365,7 @@ struct dimino_add_cosets_for_rep<Multiply, Equality, id, sub_group_elements, ele
/** \internal
*
* \class dimino_add_all_coset_spaces
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Recursive template for adding all coset spaces for a new generator
*
@@ -440,7 +440,7 @@ struct dimino_add_all_coset_spaces<Multiply, Equality, id, sub_group_elements, e
/** \internal
*
* \class dimino_add_generator
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Enlarge the group by adding a new generator.
*
@@ -502,7 +502,7 @@ struct dimino_add_generator<Multiply, Equality, id, elements, generators_done, c
/** \internal
*
* \class dimino_add_remaining_generators
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Recursive template that adds all remaining generators to a group
*
@@ -570,7 +570,7 @@ struct dimino_add_remaining_generators<Multiply, Equality, id, generators_done,
/** \internal
*
* \class enumerate_group_elements_noid
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Helper template that implements group element enumeration
*
@@ -625,7 +625,7 @@ struct enumerate_group_elements_noid<Multiply, Equality, id, type_list<>, initia
/** \internal
*
* \class enumerate_group_elements
* \ingroup CXX11_TensorSymmetry_Module
* \ingroup TensorSymmetry_Module
*
* \brief Enumerate all elements in a finite group
*

View File

@@ -13,7 +13,7 @@
namespace Eigen {
/** \class MaxSizeVector
* \ingroup Core
* \ingroup Core_Module
*
* \brief The MaxSizeVector class.
*

View File

@@ -16,7 +16,7 @@
/**
* \defgroup IterativeLinearSolvers_Module Iterative solvers module
* \defgroup IterativeLinearSolvers_Module IterativeLinearSolvers module
* This module aims to provide various iterative linear and non linear solver algorithms.
* It currently provides:
* - a constrained conjugate gradient

View File

@@ -299,6 +299,7 @@ namespace Eigen
#define EIGEN_EULER_ANGLES_SINGLE_TYPEDEF(AXES, SCALAR_TYPE, SCALAR_POSTFIX) \
/** \ingroup EulerAngles_Module */ \
/** \brief \noop */ \
typedef EulerAngles<SCALAR_TYPE, EulerSystem##AXES> EulerAngles##AXES##SCALAR_POSTFIX;
#define EIGEN_EULER_ANGLES_TYPEDEFS(SCALAR_TYPE, SCALAR_POSTFIX) \

View File

@@ -284,6 +284,7 @@ namespace Eigen
#define EIGEN_EULER_SYSTEM_TYPEDEF(A, B, C) \
/** \ingroup EulerAngles_Module */ \
/** \brief \noop */ \
typedef EulerSystem<EULER_##A, EULER_##B, EULER_##C> EulerSystem##A##B##C;
EIGEN_EULER_SYSTEM_TYPEDEF(X,Y,Z)

View File

@@ -13,7 +13,7 @@
namespace Eigen {
/**
* \ingroup IterativeSolvers_Module
* \ingroup IterativeLinearSolvers_Module
* \brief iterative scaling algorithm to equilibrate rows and column norms in matrices
*
* This class can be used as a preprocessing tool to accelerate the convergence of iterative methods

View File

@@ -1,7 +1,7 @@
/// \brief Namespace containing all symbols from the %Eigen library.
namespace Eigen {
/** \mainpage %Eigen's unsupported modules
/** \mainpage notitle
This is the API documentation for %Eigen's unsupported modules.

View File

@@ -1,66 +1,103 @@
<?xml version="1.0"?>
<?xml version="1.0" encoding="UTF-8"?>
<doxygenlayout version="1.0">
<!-- Generated by doxygen 1.13.0 -->
<!-- Navigation index tabs for HTML output -->
<navindex>
<tab type="user" url="index.html" title="Overview" />
<tab type="modules" visible="yes" title="Unsupported Modules" intro=""/>
<!-- <tab type="mainpage" visible="yes" title=""/> -->
<tab type="classlist" visible="yes" title="" intro=""/>
<!-- <tab type="classmembers" visible="yes" title="" intro=""/> -->
<tab type="mainpage" visible="no" title="main"/>
<tab type="pages" visible="yes" title="" intro=""/>
<tab type="topics" visible="yes" title="Chapters" intro=""/>
<tab type="modules" visible="yes" title="" intro="">
<tab type="modulelist" visible="yes" title="" intro=""/>
<tab type="modulemembers" visible="yes" title="" intro=""/>
</tab>
<tab type="namespaces" visible="no" title="">
<tab type="namespacelist" visible="yes" title="" intro=""/>
<tab type="namespacemembers" visible="yes" title="" intro=""/>
</tab>
<tab type="concepts" visible="yes" title="">
</tab>
<tab type="interfaces" visible="yes" title="">
<tab type="interfacelist" visible="yes" title="" intro=""/>
<tab type="interfaceindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="interfacehierarchy" visible="yes" title="" intro=""/>
</tab>
<tab type="classes" visible="yes" title="">
<tab type="classlist" visible="yes" title="" intro=""/>
<tab type="classindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="hierarchy" visible="yes" title="" intro=""/>
<tab type="classmembers" visible="yes" title="" intro=""/>
</tab>
<tab type="structs" visible="yes" title="">
<tab type="structlist" visible="yes" title="" intro=""/>
<tab type="structindex" visible="$ALPHABETICAL_INDEX" title=""/>
</tab>
<tab type="exceptions" visible="yes" title="">
<tab type="exceptionlist" visible="yes" title="" intro=""/>
<tab type="exceptionindex" visible="$ALPHABETICAL_INDEX" title=""/>
<tab type="exceptionhierarchy" visible="yes" title="" intro=""/>
</tab>
<tab type="files" visible="yes" title="">
<tab type="filelist" visible="yes" title="" intro=""/>
<tab type="globals" visible="yes" title="" intro=""/>
</tab>
<tab type="examples" visible="yes" title="" intro=""/>
</navindex>
<!-- Layout definition for a class page -->
<class>
<briefdescription visible="no"/>
<includes visible="$SHOW_INCLUDE_FILES"/>
<detaileddescription title=""/>
<includes visible="$SHOW_HEADERFILE"/>
<detaileddescription visible="yes" title=""/>
<inheritancegraph visible="$CLASS_GRAPH"/>
<collaborationgraph visible="$COLLABORATION_GRAPH"/>
<allmemberslink visible="yes"/>
<memberdecl>
<nestedclasses visible="yes" title=""/>
<publictypes title=""/>
<publicslots title=""/>
<signals title=""/>
<publicmethods title=""/>
<publicstaticmethods title=""/>
<publicattributes title=""/>
<publicstaticattributes title=""/>
<protectedtypes title=""/>
<protectedslots title=""/>
<protectedmethods title=""/>
<protectedstaticmethods title=""/>
<protectedattributes title=""/>
<protectedstaticattributes title=""/>
<packagetypes title=""/>
<packagemethods title=""/>
<packagestaticmethods title=""/>
<packageattributes title=""/>
<packagestaticattributes title=""/>
<properties title=""/>
<events title=""/>
<privatetypes title=""/>
<privateslots title=""/>
<privatemethods title=""/>
<privatestaticmethods title=""/>
<privateattributes title=""/>
<privatestaticattributes title=""/>
<friends title=""/>
<related title="" subtitle=""/>
<publictypes visible="yes" title=""/>
<services visible="yes" title=""/>
<interfaces visible="yes" title=""/>
<publicslots visible="yes" title=""/>
<signals visible="yes" title=""/>
<publicmethods visible="yes" title=""/>
<publicstaticmethods visible="yes" title=""/>
<publicattributes visible="yes" title=""/>
<publicstaticattributes visible="yes" title=""/>
<protectedtypes visible="yes" title=""/>
<protectedslots visible="yes" title=""/>
<protectedmethods visible="yes" title=""/>
<protectedstaticmethods visible="yes" title=""/>
<protectedattributes visible="yes" title=""/>
<protectedstaticattributes visible="yes" title=""/>
<packagetypes visible="yes" title=""/>
<packagemethods visible="yes" title=""/>
<packagestaticmethods visible="yes" title=""/>
<packageattributes visible="yes" title=""/>
<packagestaticattributes visible="yes" title=""/>
<properties visible="yes" title=""/>
<events visible="yes" title=""/>
<privatetypes visible="yes" title=""/>
<privateslots visible="yes" title=""/>
<privatemethods visible="yes" title=""/>
<privatestaticmethods visible="yes" title=""/>
<privateattributes visible="yes" title=""/>
<privatestaticattributes visible="yes" title=""/>
<friends visible="yes" title=""/>
<related visible="yes" title="" subtitle=""/>
<membergroups visible="yes"/>
</memberdecl>
<memberdef>
<inlineclasses title=""/>
<typedefs title=""/>
<enums title=""/>
<constructors title=""/>
<functions title=""/>
<related title=""/>
<variables title=""/>
<properties title=""/>
<events title=""/>
<inlineclasses visible="yes" title=""/>
<typedefs visible="yes" title=""/>
<enums visible="yes" title=""/>
<services visible="yes" title=""/>
<interfaces visible="yes" title=""/>
<constructors visible="yes" title=""/>
<functions visible="yes" title=""/>
<related visible="yes" title=""/>
<variables visible="yes" title=""/>
<properties visible="yes" title=""/>
<events visible="yes" title=""/>
</memberdef>
<allmemberslink visible="yes"/>
<usedfiles visible="$SHOW_USED_FILES"/>
<authorsection visible="yes"/>
</class>
@@ -70,24 +107,44 @@
<briefdescription visible="yes"/>
<memberdecl>
<nestednamespaces visible="yes" title=""/>
<constantgroups visible="yes" title=""/>
<interfaces visible="yes" title=""/>
<classes visible="yes" title=""/>
<typedefs title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
<membergroups visible="yes"/>
<concepts visible="yes" title=""/>
<structs visible="yes" title=""/>
<exceptions visible="yes" title=""/>
<typedefs visible="yes" title=""/>
<sequences visible="yes" title=""/>
<dictionaries visible="yes" title=""/>
<enums visible="yes" title=""/>
<functions visible="yes" title=""/>
<variables visible="yes" title=""/>
<properties visible="yes" title=""/>
<membergroups visible="yes" visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<detaileddescription visible="yes" title=""/>
<memberdef>
<inlineclasses title=""/>
<typedefs title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
<inlineclasses visible="yes" title=""/>
<typedefs visible="yes" title=""/>
<sequences visible="yes" title=""/>
<dictionaries visible="yes" title=""/>
<enums visible="yes" title=""/>
<functions visible="yes" title=""/>
<variables visible="yes" title=""/>
<properties visible="yes" title=""/>
</memberdef>
<authorsection visible="yes"/>
</namespace>
<!-- Layout definition for a concept page -->
<concept>
<briefdescription visible="yes"/>
<includes visible="$SHOW_HEADERFILE"/>
<definition visible="yes" title=""/>
<detaileddescription visible="yes" title=""/>
<authorsection visible="yes"/>
</concept>
<!-- Layout definition for a file page -->
<file>
<briefdescription visible="yes"/>
@@ -96,23 +153,34 @@
<includedbygraph visible="$INCLUDED_BY_GRAPH"/>
<sourcelink visible="yes"/>
<memberdecl>
<interfaces visible="yes" title=""/>
<classes visible="yes" title=""/>
<structs visible="yes" title=""/>
<exceptions visible="yes" title=""/>
<namespaces visible="yes" title=""/>
<defines title=""/>
<typedefs title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
<membergroups visible="yes"/>
<concepts visible="yes" title=""/>
<constantgroups visible="yes" title=""/>
<defines visible="yes" title=""/>
<typedefs visible="yes" title=""/>
<sequences visible="yes" title=""/>
<dictionaries visible="yes" title=""/>
<enums visible="yes" title=""/>
<functions visible="yes" title=""/>
<variables visible="yes" title=""/>
<properties visible="yes" title=""/>
<membergroups visible="yes" visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<detaileddescription visible="yes" title=""/>
<memberdef>
<inlineclasses title=""/>
<defines title=""/>
<typedefs title=""/>
<enums title=""/>
<functions title=""/>
<variables title=""/>
<inlineclasses visible="yes" title=""/>
<defines visible="yes" title=""/>
<typedefs visible="yes" title=""/>
<sequences visible="yes" title=""/>
<dictionaries visible="yes" title=""/>
<enums visible="yes" title=""/>
<functions visible="yes" title=""/>
<variables visible="yes" title=""/>
<properties visible="yes" title=""/>
</memberdef>
<authorsection/>
</file>
@@ -120,50 +188,74 @@
<!-- Layout definition for a group page -->
<group>
<briefdescription visible="no"/>
<detaileddescription title=""/>
<detaileddescription visible="yes" title=""/>
<groupgraph visible="$GROUP_GRAPHS"/>
<memberdecl>
<nestedgroups visible="yes" title=""/>
<modules visible="yes" title=""/>
<dirs visible="yes" title=""/>
<files visible="yes" title=""/>
<namespaces visible="yes" title=""/>
<concepts visible="yes" title=""/>
<classes visible="yes" title=""/>
<defines title=""/>
<typedefs title=""/>
<enums title=""/>
<enumvalues title=""/>
<functions title=""/>
<variables title=""/>
<signals title=""/>
<publicslots title=""/>
<protectedslots title=""/>
<privateslots title=""/>
<events title=""/>
<properties title=""/>
<friends title=""/>
<defines visible="yes" title=""/>
<typedefs visible="yes" title=""/>
<sequences visible="yes" title=""/>
<dictionaries visible="yes" title=""/>
<enums visible="yes" title=""/>
<enumvalues visible="yes" title=""/>
<functions visible="yes" title=""/>
<variables visible="yes" title=""/>
<signals visible="yes" title=""/>
<publicslots visible="yes" title=""/>
<protectedslots visible="yes" title=""/>
<privateslots visible="yes" title=""/>
<events visible="yes" title=""/>
<properties visible="yes" title=""/>
<friends visible="yes" title=""/>
<membergroups visible="yes"/>
</memberdecl>
<memberdef>
<pagedocs/>
<inlineclasses title=""/>
<defines title=""/>
<typedefs title=""/>
<enums title=""/>
<enumvalues title=""/>
<functions title=""/>
<variables title=""/>
<signals title=""/>
<publicslots title=""/>
<protectedslots title=""/>
<privateslots title=""/>
<events title=""/>
<properties title=""/>
<friends title=""/>
<inlineclasses visible="yes" title=""/>
<defines visible="yes" title=""/>
<typedefs visible="yes" title=""/>
<sequences visible="yes" title=""/>
<dictionaries visible="yes" title=""/>
<enums visible="yes" title=""/>
<enumvalues visible="yes" title=""/>
<functions visible="yes" title=""/>
<variables visible="yes" title=""/>
<signals visible="yes" title=""/>
<publicslots visible="yes" title=""/>
<protectedslots visible="yes" title=""/>
<privateslots visible="yes" title=""/>
<events visible="yes" title=""/>
<properties visible="yes" title=""/>
<friends visible="yes" title=""/>
</memberdef>
<authorsection visible="yes"/>
</group>
<!-- Layout definition for a C++20 module page -->
<module>
<briefdescription visible="yes"/>
<exportedmodules visible="yes"/>
<memberdecl>
<concepts visible="yes" title=""/>
<classes visible="yes" title=""/>
<enums visible="yes" title=""/>
<typedefs visible="yes" title=""/>
<functions visible="yes" title=""/>
<variables visible="yes" title=""/>
<membergroups visible="yes" title=""/>
</memberdecl>
<detaileddescription visible="yes" title=""/>
<memberdecl>
<files visible="yes"/>
</memberdecl>
</module>
<!-- Layout definition for a directory page -->
<directory>
<briefdescription visible="yes"/>
@@ -172,6 +264,6 @@
<dirs visible="yes"/>
<files visible="yes"/>
</memberdecl>
<detaileddescription title=""/>
<detaileddescription visible="yes" title=""/>
</directory>
</doxygenlayout>

View File

@@ -2,14 +2,13 @@ file(GLOB examples_SRCS "*.cpp")
add_custom_target(unsupported_examples)
include_directories(../../../unsupported ../../../unsupported/test)
foreach(example_src ${examples_SRCS})
get_filename_component(example ${example_src} NAME_WE)
add_executable(example_${example} ${example_src})
if(EIGEN_STANDARD_LIBRARIES_TO_LINK_TO)
target_link_libraries(example_${example} ${EIGEN_STANDARD_LIBRARIES_TO_LINK_TO})
endif()
target_link_libraries(example_${example} Eigen3::Eigen)
add_custom_command(
TARGET example_${example}
POST_BUILD

View File

@@ -2,16 +2,11 @@ FILE(GLOB examples_SRCS "*.cpp")
set(EIGEN_SYCL ON)
list(APPEND CMAKE_EXE_LINKER_FLAGS -pthread)
if(EIGEN_SYCL_TRISYCL)
set(CMAKE_CXX_STANDARD 17)
else(EIGEN_SYCL_TRISYCL)
set(CMAKE_CXX_STANDARD 17)
if(EIGEN_SYCL_ComputeCpp)
if(MSVC)
# Set the host and device compilers C++ standard to C++14. On Windows setting this to C++11
# can cause issues with the ComputeCpp device compiler parsing Visual Studio Headers.
set(CMAKE_CXX_STANDARD 14)
list(APPEND COMPUTECPP_USER_FLAGS -DWIN32)
else()
set(CMAKE_CXX_STANDARD 11)
list(APPEND COMPUTECPP_USER_FLAGS -Wall)
endif()
# The following flags are not supported by Clang and can cause warnings
@@ -20,14 +15,13 @@ else(EIGEN_SYCL_TRISYCL)
set(CMAKE_CXX_COMPILER ${ComputeCpp_DEVICE_COMPILER_EXECUTABLE})
string(REPLACE "-Wlogical-op" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
string(REPLACE "-Wno-psabi" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
string(REPLACE "-ansi" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
endif()
list(APPEND COMPUTECPP_USER_FLAGS
-DEIGEN_NO_ASSERTION_CHECKING=1
-no-serial-memop
-Xclang
-cl-mad-enable)
endif(EIGEN_SYCL_TRISYCL)
endif(EIGEN_SYCL_ComputeCpp)
FOREACH(example_src ${examples_SRCS})
GET_FILENAME_COMPONENT(example ${example_src} NAME_WE)