# Doxyfile 1.13.0
PROJECT_NAME           = ${EIGEN_DOXY_PROJECT_NAME}
PROJECT_NUMBER         = ${EIGEN_VERSION_STRING}
PROJECT_LOGO           = ${Eigen_SOURCE_DIR}/doc/Eigen_Silly_Professor_64x64.png
OUTPUT_DIRECTORY       = ${Eigen_BINARY_DIR}/doc${EIGEN_DOXY_OUTPUT_DIRECTORY_SUFFIX}
FULL_PATH_NAMES        = YES
STRIP_FROM_INC_PATH    = ${Eigen_SOURCE_DIR}/
TAB_SIZE               = 8
ALIASES                = "only_for_vectors=This is only for vectors (either row-vectors or column-vectors), i.e. matrices which are known at compile-time to have either one row or one column." \
                         "not_reentrant=\warning This function is not re-entrant." \
                         "array_module=This is defined in the %Array module. \code #include <Eigen/Array> \endcode" \
                         "cholesky_module=This is defined in the %Cholesky module. \code #include <Eigen/Cholesky> \endcode" \
                         "eigenvalues_module=This is defined in the %Eigenvalues module. \code #include <Eigen/Eigenvalues> \endcode" \
                         "geometry_module=This is defined in the %Geometry module. \code #include <Eigen/Geometry> \endcode" \
                         "householder_module=This is defined in the %Householder module. \code #include <Eigen/Householder> \endcode" \
                         "jacobi_module=This is defined in the %Jacobi module. \code #include <Eigen/Jacobi> \endcode" \
                         "lu_module=This is defined in the %LU module. \code #include <Eigen/LU> \endcode" \
                         "qr_module=This is defined in the %QR module. \code #include <Eigen/QR> \endcode" \
                         "svd_module=This is defined in the %SVD module. \code #include <Eigen/SVD> \endcode" \
                         "specialfunctions_module=This is defined in the \b unsupported SpecialFunctions module. \code #include <Eigen/SpecialFunctions> \endcode" \
                         label=\bug \
                         "matrixworld=<a href='#matrixonly' style='color:green;text-decoration: none;'>*</a>" \
                         "arrayworld=<a href='#arrayonly' style='color:blue;text-decoration: none;'>*</a>" \
                         "note_about_arbitrary_choice_of_solution=If there exists more than one solution, this method will arbitrarily choose one." \
                         "note_about_using_kernel_to_study_multiple_solutions=If you need a complete analysis of the space of solutions, take the one solution obtained by this method and add to it elements of the kernel, as determined by kernel()." \
                         "note_about_checking_solutions=This method just tries to find as good a solution as possible. If you want to check whether a solution exists or if it is accurate, just call this function to get a result and then compute the error of this result, or use MatrixBase::isApprox() directly, for instance like this: \code bool a_solution_exists = (A*result).isApprox(b, precision); \endcode This method avoids dividing by zero, so that the non-existence of a solution doesn't by itself mean that you'll get \c inf or \c nan values." \
                         "note_try_to_help_rvo=This function returns the result by value. In order to make that efficient, it is implemented as just a return statement using a special constructor, hopefully allowing the compiler to perform a RVO (return value optimization)." \
                         "nonstableyet=\warning This is not considered to be part of the stable public API yet. Changes may happen in future releases. See \ref Experimental \"Experimental parts of Eigen\"" \
                         "implsparsesolverconcept=This class follows the \link TutorialSparseSolverConcept sparse solver concept \endlink." \
                         blank= \
                         "cpp11=<span class='cpp11'>[c++11]</span>" \
                         "cpp14=<span class='cpp14'>[c++14]</span>" \
                         "cpp17=<span class='cpp17'>[c++17]</span>" \
                         "newin{1}=<span class='newin3x'>New in %Eigen \1.</span>" \
                         "eigenAutoToc=<!-- TOC placeholder -->" \
                         eigenManualPage=\defgroup
EXTENSION_MAPPING      = .h=C++ \
                         no_extension=C++
DISTRIBUTE_GROUP_DOC   = YES
NUM_PROC_THREADS       = 0
EXTRACT_ALL            = NO
EXTRACT_PRIVATE        = NO
EXTRACT_PRIV_VIRTUAL   = NO
EXTRACT_PACKAGE        = NO
EXTRACT_STATIC         = YES
EXTRACT_LOCAL_CLASSES  = NO
EXTRACT_LOCAL_METHODS  = NO
EXTRACT_ANON_NSPACES   = NO
HIDE_UNDOC_MEMBERS     = YES
HIDE_UNDOC_CLASSES     = YES
HIDE_FRIEND_COMPOUNDS  = YES
CASE_SENSE_NAMES       = YES
SORT_BRIEF_DOCS        = YES
GENERATE_TESTLIST      = NO
MAX_INITIALIZER_LINES  = 0
SHOW_NAMESPACES        = NO
LAYOUT_FILE            = ${Eigen_BINARY_DIR}/doc${EIGEN_DOXY_OUTPUT_DIRECTORY_SUFFIX}/eigendoxy_layout.xml
WARN_IF_UNDOCUMENTED   = NO
INPUT                  = ${EIGEN_DOXY_INPUT}
FILE_PATTERNS          = *
RECURSIVE              = YES
EXCLUDE                = ${Eigen_SOURCE_DIR}/Eigen/Eigen2Support \
                         ${Eigen_SOURCE_DIR}/Eigen/src/Eigen2Support \
                         ${Eigen_SOURCE_DIR}/doc/examples \
                         ${Eigen_SOURCE_DIR}/doc/special_examples \
                         ${Eigen_SOURCE_DIR}/doc/snippets \
                         ${Eigen_SOURCE_DIR}/unsupported/doc/examples \
                         ${Eigen_SOURCE_DIR}/unsupported/doc/snippets

#                        ${Eigen_SOURCE_DIR}/Eigen/src/Core/products \
#                        ${Eigen_SOURCE_DIR}/Eigen/src/Core/util/ForwardDeclarations.h \

EXCLUDE_PATTERNS       = CMake* \
                         *.txt \
                         *.sh \
                         *.orig \
                         *.diff \
                         diff \
                         *~ \
                         *. \
                         *.sln \
                         *.sdf \
                         *.tmp \
                         *.vcxproj \
                         *.filters \
                         *.user \
                         *.suo
# The following are pseudo template bases, and not real classes.
# https://github.com/doxygen/doxygen/issues/11289
EXCLUDE_SYMBOLS        = Kernel \
                         BinaryOp
EXAMPLE_PATH           = ${Eigen_SOURCE_DIR}/doc/snippets \
                         ${Eigen_BINARY_DIR}/doc/snippets \
                         ${Eigen_SOURCE_DIR}/doc/examples \
                         ${Eigen_BINARY_DIR}/doc/examples \
                         ${Eigen_SOURCE_DIR}/doc/special_examples \
                         ${Eigen_BINARY_DIR}/doc/special_examples \
                         ${Eigen_SOURCE_DIR}/unsupported/doc/snippets \
                         ${Eigen_BINARY_DIR}/unsupported/doc/snippets \
                         ${Eigen_SOURCE_DIR}/unsupported/doc/examples \
                         ${Eigen_BINARY_DIR}/unsupported/doc/examples
IMAGE_PATH             = ${Eigen_BINARY_DIR}/doc/html
# Prevent README.md from being considered a directory description (i.e. for Tensor).
IMPLICIT_DIR_DOCS      = NO
ALPHABETICAL_INDEX     = NO
HTML_OUTPUT            = ${Eigen_BINARY_DIR}/doc/html${EIGEN_DOXY_OUTPUT_DIRECTORY_SUFFIX}
HTML_HEADER            = ${Eigen_BINARY_DIR}/doc/eigendoxy_header.html
HTML_FOOTER            = ${Eigen_BINARY_DIR}/doc/eigendoxy_footer.html
HTML_EXTRA_FILES       = ${Eigen_SOURCE_DIR}/doc/eigendoxy.css
HTML_COLORSTYLE_HUE    = ${EIGEN_DOXY_HTML_COLORSTYLE_HUE}
HTML_DYNAMIC_SECTIONS  = YES
DISABLE_INDEX          = YES
FULL_SIDEBAR           = NO
ENUM_VALUES_PER_LINE   = 1
USE_MATHJAX            = @EIGEN_DOXY_USE_MATHJAX@
MATHJAX_RELPATH        = https://cdn.jsdelivr.net/npm/mathjax@2
MATHJAX_EXTENSIONS     = TeX/AMSmath \
                         TeX/AMSsymbols
GENERATE_LATEX         = NO
EXTRA_PACKAGES         = amssymb \
                         amsmath
MACRO_EXPANSION        = YES
EXPAND_ONLY_PREDEF     = YES
PREDEFINED             = EIGEN_EMPTY_STRUCT \
                         EIGEN_PARSED_BY_DOXYGEN \
                         EIGEN_VECTORIZE \
                         EIGEN_QT_SUPPORT \
                         EIGEN_STRONG_INLINE=inline \
                         EIGEN_DEVICE_FUNC= \
                         "EIGEN_MAKE_CWISE_BINARY_OP(METHOD,FUNCTOR)=template<typename OtherDerived> const CwiseBinaryOp<FUNCTOR<Scalar>, const Derived, const OtherDerived> METHOD(const EIGEN_CURRENT_STORAGE_BASE_CLASS<OtherDerived> &other) const;" \
                         "EIGEN_CWISE_PRODUCT_RETURN_TYPE(LHS,RHS)=CwiseBinaryOp<internal::scalar_product_op<LHS::Scalar,RHS::Scalar>, const LHS, const RHS>" \
                         "EIGEN_CAT2(a,b)= a ## b" \
                         "EIGEN_CAT(a,b)=EIGEN_CAT2(a,b)" \
                         "EIGEN_CWISE_BINARY_RETURN_TYPE(LHS,RHS,OPNAME)=CwiseBinaryOp<EIGEN_CAT(EIGEN_CAT(internal::scalar_,OPNAME),_op)<LHS::Scalar, RHS::Scalar>, const LHS, const RHS>" \
                         EIGEN_ALIGN_TO_BOUNDARY(x)= \
                         "DOXCOMMA=," \
                         "EIGEN_STATIC_ASSERT(COND,MSG)="
EXPAND_AS_DEFINED      = EIGEN_MAKE_TYPEDEFS \
                         EIGEN_MAKE_FIXED_TYPEDEFS \
                         EIGEN_MAKE_TYPEDEFS_ALL_SIZES \
                         EIGEN_MAKE_ARRAY_TYPEDEFS \
                         EIGEN_MAKE_ARRAY_FIXED_TYPEDEFS \
                         EIGEN_MAKE_ARRAY_TYPEDEFS_ALL_SIZES \
                         EIGEN_CWISE_UNOP_RETURN_TYPE \
                         EIGEN_CWISE_BINOP_RETURN_TYPE \
                         EIGEN_CURRENT_STORAGE_BASE_CLASS \
                         EIGEN_MATHFUNC_IMPL \
                         _EIGEN_GENERIC_PUBLIC_INTERFACE \
                         EIGEN_ARRAY_DECLARE_GLOBAL_UNARY \
                         EIGEN_EMPTY \
                         EIGEN_EULER_ANGLES_TYPEDEFS \
                         EIGEN_EULER_ANGLES_SINGLE_TYPEDEF \
                         EIGEN_EULER_SYSTEM_TYPEDEF \
                         EIGEN_AUTODIFF_DECLARE_GLOBAL_UNARY \
                         EIGEN_MATRIX_FUNCTION \
                         EIGEN_MATRIX_FUNCTION_1 \
                         EIGEN_DOC_UNARY_ADDONS \
                         EIGEN_DOC_BLOCK_ADDONS_NOT_INNER_PANEL \
                         EIGEN_DOC_BLOCK_ADDONS_INNER_PANEL_IF \
                         EIGEN_MAKE_SCALAR_BINARY_OP \
                         EIGEN_MAKE_SCALAR_BINARY_OP_ONTHERIGHT
TAGFILES               = ${EIGEN_DOXY_TAGFILES}
GENERATE_TAGFILE       = ${Eigen_BINARY_DIR}/doc/${EIGEN_DOXY_PROJECT_NAME}.doxytags
EXTERNAL_GROUPS        = NO
EXTERNAL_PAGES         = NO
HIDE_UNDOC_RELATIONS   = NO
HAVE_DOT               = YES
COLLABORATION_GRAPH    = NO
GROUP_GRAPHS           = NO
UML_LOOK               = YES
INCLUDE_GRAPH          = NO
INCLUDED_BY_GRAPH      = NO
GRAPHICAL_HIERARCHY    = NO
DIRECTORY_GRAPH        = NO
DOT_GRAPH_MAX_NODES    = 300
GENERATE_DEPRECATEDLIST = NO
GENERATE_TODOLIST      = NO
WARN_AS_ERROR          = FAIL_ON_WARNINGS_PRINT
