3# This file describes the settings to be used by the documentation system
4# doxygen (www.doxygen.org) for a project.
6# All text after a double hash (##) is considered a comment and is placed in
7# front of the TAG it is preceding.
9# All text after a single hash (#) is considered a comment and will be ignored.
11# TAG = value [value, ...]
12# For lists, items can also be appended using:
13# TAG += value [value, ...]
14# Values that contain spaces should be placed between quotes (\" \").
18# Use doxygen to compare the used configuration file with the template
20# doxygen -x [configFile]
21# Use doxygen to compare the used configuration file with the template
22# configuration file without replacing the environment variables or CMake type
23# replacement variables:
24# doxygen -x_noenv [configFile]
26#---------------------------------------------------------------------------
27# Project related configuration options
28#---------------------------------------------------------------------------
30# This tag specifies the encoding used for all characters in the configuration
31# file that follow. The default is UTF-8 which is also the encoding used for all
32# text before the first occurrence of this tag. Doxygen uses libiconv (or the
33# iconv built into libc) for the transcoding. See
34# https://www.gnu.org/software/libiconv/ for the list of possible encodings.
35# The default value is: UTF-8.
37DOXYFILE_ENCODING = UTF-8
39# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
40# double-quotes, unless you are using Doxywizard) that should identify the
41# project for which the documentation is generated. This name is used in the
42# title of most generated pages and in a few other places.
43# The default value is: My Project.
47# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
48# could be handy for archiving the generated documentation or if some version
49# control system is used.
53# Using the PROJECT_BRIEF tag one can provide an optional one line description
54# for a project that appears at the top of each page and should give viewer a
55# quick idea about the purpose of the project. Keep the description short.
59# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
60# in the documentation. The maximum height of the logo should not exceed 55
61# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
62# the logo to the output directory.
64PROJECT_LOGO = /doc/Eigen_Silly_Professor_64x64.png
66# With the PROJECT_ICON tag one can specify an icon that is included in the tabs
67# when the HTML document is shown. Doxygen will copy the logo to the output
72# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
73# into which the generated documentation will be written. If a relative path is
74# entered, it will be relative to the location where doxygen was started. If
75# left blank the current directory will be used.
77OUTPUT_DIRECTORY = /doc
79# If the CREATE_SUBDIRS tag is set to YES then doxygen will create up to 4096
80# sub-directories (in 2 levels) under the output directory of each output format
81# and will distribute the generated files over these directories. Enabling this
82# option can be useful when feeding doxygen a huge amount of source files, where
83# putting all generated files in the same directory would otherwise causes
84# performance problems for the file system. Adapt CREATE_SUBDIRS_LEVEL to
85# control the number of sub-directories.
86# The default value is: NO.
90# Controls the number of sub-directories that will be created when
91# CREATE_SUBDIRS tag is set to YES. Level 0 represents 16 directories, and every
92# level increment doubles the number of directories, resulting in 4096
93# directories at level 8 which is the default and also the maximum value. The
94# sub-directories are organized in 2 levels, the first level always has a fixed
95# number of 16 directories.
96# Minimum value: 0, maximum value: 8, default value: 8.
97# This tag requires that the tag CREATE_SUBDIRS is set to YES.
99CREATE_SUBDIRS_LEVEL = 8
101# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
102# characters to appear in the names of generated files. If set to NO, non-ASCII
103# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
105# The default value is: NO.
107ALLOW_UNICODE_NAMES = NO
109# The OUTPUT_LANGUAGE tag is used to specify the language in which all
110# documentation generated by doxygen is written. Doxygen will use this
111# information to generate all constant output in the proper language.
112# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Bulgarian,
113# Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch, English
114# (United States), Esperanto, Farsi (Persian), Finnish, French, German, Greek,
115# Hindi, Hungarian, Indonesian, Italian, Japanese, Japanese-en (Japanese with
116# English messages), Korean, Korean-en (Korean with English messages), Latvian,
117# Lithuanian, Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese,
118# Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish,
119# Swedish, Turkish, Ukrainian and Vietnamese.
120# The default value is: English.
122OUTPUT_LANGUAGE = English
124# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
125# descriptions after the members that are listed in the file and class
126# documentation (similar to Javadoc). Set to NO to disable this.
127# The default value is: YES.
129BRIEF_MEMBER_DESC = YES
131# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
132# description of a member or function before the detailed description
134# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
135# brief descriptions will be completely suppressed.
136# The default value is: YES.
140# This tag implements a quasi-intelligent brief description abbreviator that is
141# used to form the text in various listings. Each string in this list, if found
142# as the leading text of the brief description, will be stripped from the text
143# and the result, after processing the whole list, is used as the annotated
144# text. Otherwise, the brief description is used as-is. If left blank, the
145# following values are used ($name is automatically replaced with the name of
146# the entity):The $name class, The $name widget, The $name file, is, provides,
147# specifies, contains, represents, a, an and the.
149ABBREVIATE_BRIEF = "The $name class" \
161# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
162# doxygen will generate a detailed section even if there is only a brief
164# The default value is: NO.
166ALWAYS_DETAILED_SEC = NO
168# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
169# inherited members of a class in the documentation of that class as if those
170# members were ordinary class members. Constructors, destructors and assignment
171# operators of the base classes will not be shown.
172# The default value is: NO.
174INLINE_INHERITED_MEMB = NO
176# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
177# before files name in the file list and in the header files. If set to NO the
178# shortest path that makes the file name unique will be used
179# The default value is: YES.
183# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
184# Stripping is only done if one of the specified strings matches the left-hand
185# part of the path. The tag can be used to show relative paths in the file list.
186# If left blank the directory from which doxygen is run is used as the path to
189# Note that you can specify absolute paths here, but also relative paths, which
190# will be relative from the directory where doxygen is started.
191# This tag requires that the tag FULL_PATH_NAMES is set to YES.
195# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
196# path mentioned in the documentation of a class, which tells the reader which
197# header file to include in order to use a class. If left blank only the name of
198# the header file containing the class definition is used. Otherwise one should
199# specify the list of include paths that are normally passed to the compiler
204# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
205# less readable) file names. This can be useful is your file systems doesn't
206# support long names like on DOS, Mac, or CD-ROM.
207# The default value is: NO.
211# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
212# first line (until the first dot) of a Javadoc-style comment as the brief
213# description. If set to NO, the Javadoc-style will behave just like regular Qt-
214# style comments (thus requiring an explicit @brief command for a brief
216# The default value is: NO.
218JAVADOC_AUTOBRIEF = NO
220# If the JAVADOC_BANNER tag is set to YES then doxygen will interpret a line
223# as being the beginning of a Javadoc-style comment "banner". If set to NO, the
224# Javadoc-style will behave just like regular comments and it will not be
225# interpreted by doxygen.
226# The default value is: NO.
230# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
231# line (until the first dot) of a Qt-style comment as the brief description. If
232# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
233# requiring an explicit \brief command for a brief description.)
234# The default value is: NO.
238# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
239# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
240# a brief description. This used to be the default behavior. The new default is
241# to treat a multi-line C++ comment block as a detailed description. Set this
242# tag to YES if you prefer the old behavior instead.
244# Note that setting this tag to YES also means that rational rose comments are
245# not recognized any more.
246# The default value is: NO.
248MULTILINE_CPP_IS_BRIEF = NO
250# By default Python docstrings are displayed as preformatted text and doxygen's
251# special commands cannot be used. By setting PYTHON_DOCSTRING to NO the
252# doxygen's special commands can be used and the contents of the docstring
253# documentation blocks is shown as doxygen documentation.
254# The default value is: YES.
256PYTHON_DOCSTRING = YES
258# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
259# documentation from any documented member that it re-implements.
260# The default value is: YES.
264# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
265# page for each member. If set to NO, the documentation of a member will be part
266# of the file/class/namespace that contains it.
267# The default value is: NO.
269SEPARATE_MEMBER_PAGES = NO
271# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
272# uses this value to replace tabs by spaces in code fragments.
273# Minimum value: 1, maximum value: 16, default value: 4.
277# This tag can be used to specify a number of aliases that act as commands in
278# the documentation. An alias has the form:
281# "sideeffect=@par Side Effects:^^"
282# will allow you to put the command \sideeffect (or @sideeffect) in the
283# documentation, which will result in a user-defined paragraph with heading
284# "Side Effects:". Note that you cannot put \n's in the value part of an alias
285# to insert newlines (in the resulting output). You can put ^^ in the value part
286# of an alias to insert a newline as if a physical newline was in the original
287# file. When you need a literal { or } or , in the value part of an alias you
288# have to escape them by means of a backslash (\), this can lead to conflicts
289# with the commands \{ and \} for these it is advised to use the version @{ and
290# @} or use a double escape (\\{ and \\})
292ALIASES = "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." \
293 "not_reentrant=\warning This function is not re-entrant." \
294 "array_module=This is defined in the %Array module. \code #include <Eigen/Array> \endcode" \
295 "cholesky_module=This is defined in the %Cholesky module. \code #include <Eigen/Cholesky> \endcode" \
296 "eigenvalues_module=This is defined in the %Eigenvalues module. \code #include <Eigen/Eigenvalues> \endcode" \
297 "geometry_module=This is defined in the %Geometry module. \code #include <Eigen/Geometry> \endcode" \
298 "householder_module=This is defined in the %Householder module. \code #include <Eigen/Householder> \endcode" \
299 "jacobi_module=This is defined in the %Jacobi module. \code #include <Eigen/Jacobi> \endcode" \
300 "lu_module=This is defined in the %LU module. \code #include <Eigen/LU> \endcode" \
301 "qr_module=This is defined in the %QR module. \code #include <Eigen/QR> \endcode" \
302 "svd_module=This is defined in the %SVD module. \code #include <Eigen/SVD> \endcode" \
303 "specialfunctions_module=This is defined in the \b unsupported SpecialFunctions module. \code #include <Eigen/SpecialFunctions> \endcode" \
305 "matrixworld=<a href='#matrixonly' style='color:green;text-decoration: none;'>*</a>" \
306 "arrayworld=<a href='#arrayonly' style='color:blue;text-decoration: none;'>*</a>" \
307 "note_about_arbitrary_choice_of_solution=If there exists more than one solution, this method will arbitrarily choose one." \
308 "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()." \
309 "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." \
310 "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)." \
311 "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\"" \
312 "implsparsesolverconcept=This class follows the \link TutorialSparseSolverConcept sparse solver concept \endlink." \
314 "cpp11=<span class='cpp11'>[c++11]</span>" \
315 "cpp14=<span class='cpp14'>[c++14]</span>" \
316 "cpp17=<span class='cpp17'>[c++17]</span>" \
317 "newin{1}=<span class='newin3x'>New in %Eigen \1.</span>" \
319 "eigenManualPage=\defgroup"
321# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
322# only. Doxygen will then generate output that is more tailored for C. For
323# instance, some of the names that are used will be different. The list of all
324# members will be omitted, etc.
325# The default value is: NO.
327OPTIMIZE_OUTPUT_FOR_C = NO
329# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
330# Python sources only. Doxygen will then generate output that is more tailored
331# for that language. For instance, namespaces will be presented as packages,
332# qualified scopes will look different, etc.
333# The default value is: NO.
335OPTIMIZE_OUTPUT_JAVA = NO
337# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
338# sources. Doxygen will then generate output that is tailored for Fortran.
339# The default value is: NO.
341OPTIMIZE_FOR_FORTRAN = NO
343# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
344# sources. Doxygen will then generate output that is tailored for VHDL.
345# The default value is: NO.
347OPTIMIZE_OUTPUT_VHDL = NO
349# Set the OPTIMIZE_OUTPUT_SLICE tag to YES if your project consists of Slice
350# sources only. Doxygen will then generate output that is more tailored for that
351# language. For instance, namespaces will be presented as modules, types will be
352# separated into more groups, etc.
353# The default value is: NO.
355OPTIMIZE_OUTPUT_SLICE = NO
357# Doxygen selects the parser to use depending on the extension of the files it
358# parses. With this tag you can assign which parser to use for a given
359# extension. Doxygen has a built-in mapping, but you can override or extend it
360# using this tag. The format is ext=language, where ext is a file extension, and
361# language is one of the parsers supported by doxygen: IDL, Java, JavaScript,
362# Csharp (C#), C, C++, Lex, D, PHP, md (Markdown), Objective-C, Python, Slice,
363# VHDL, Fortran (fixed format Fortran: FortranFixed, free formatted Fortran:
364# FortranFree, unknown formatted Fortran: Fortran. In the later case the parser
365# tries to guess whether the code is fixed or free formatted code, this is the
366# default for Fortran type files). For instance to make doxygen treat .inc files
367# as Fortran files (default is PHP), and .f files as C (default is Fortran),
368# use: inc=Fortran f=C.
370# Note: For files without extension you can use no_extension as a placeholder.
372# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
373# the files are not read by doxygen. When specifying no_extension you should add
374# * to the FILE_PATTERNS.
376# Note see also the list of default file extension mappings.
378EXTENSION_MAPPING = .h=C++ \
381# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
382# according to the Markdown format, which allows for more readable
383# documentation. See https:
384# The output of markdown processing is further processed by doxygen, so you can
385# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
386# case of backward compatibilities issues.
387# The default value is: YES.
389MARKDOWN_SUPPORT = YES
391# When the TOC_INCLUDE_HEADINGS tag is set to a non-zero value, all headings up
392# to that level are automatically included in the table of contents, even if
393# they do not have an id attribute.
394# Note: This feature currently applies only to Markdown headings.
395# Minimum value: 0, maximum value: 99, default value: 6.
396# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
398TOC_INCLUDE_HEADINGS = 6
400# The MARKDOWN_ID_STYLE tag can be used to specify the algorithm used to
401# generate identifiers for the Markdown headings. Note: Every identifier is
403# Possible values are: DOXYGEN use a fixed 'autotoc_md' string followed by a
404# sequence number starting at 0 and GITHUB use the lower case version of title
405# with any whitespace replaced by '-' and punctuation characters removed.
406# The default value is: DOXYGEN.
407# This tag requires that the tag MARKDOWN_SUPPORT is set to YES.
409MARKDOWN_ID_STYLE = DOXYGEN
411# When enabled doxygen tries to link words that correspond to documented
412# classes, or namespaces to their corresponding documentation. Such a link can
413# be prevented in individual cases by putting a % sign in front of the word or
414# globally by setting AUTOLINK_SUPPORT to NO.
415# The default value is: YES.
417AUTOLINK_SUPPORT = YES
419# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
420# to include (a tag file for) the STL sources as input, then you should set this
421# tag to YES in order to let doxygen match functions declarations and
422# definitions whose arguments contain STL classes (e.g. func(std::string);
423# versus func(std::string) {}). This also makes the inheritance and
424# collaboration diagrams that involve STL classes more complete and accurate.
425# The default value is: NO.
427BUILTIN_STL_SUPPORT = NO
429# If you use Microsoft's C++/CLI language, you should set this option to YES to
430# enable parsing support.
431# The default value is: NO.
435# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
437# them like normal C++ but will assume all classes use public instead of private
438# inheritance when no explicit protection keyword is present.
439# The default value is: NO.
443# For Microsoft's IDL there are propget and propput attributes to indicate
444# getter and setter methods for a property. Setting this option to YES will make
445# doxygen to replace the get and set methods by a property in the documentation.
446# This will only work if the methods are indeed getting or setting a simple
447# type. If this is not the case, or you want to show the methods anyway, you
448# should set this option to NO.
449# The default value is: YES.
451IDL_PROPERTY_SUPPORT = YES
453# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
454# tag is set to YES then doxygen will reuse the documentation of the first
455# member in the group (if any) for the other members of the group. By default
456# all members of a group must be documented explicitly.
457# The default value is: NO.
459DISTRIBUTE_GROUP_DOC = YES
461# If one adds a struct or class to a group and this option is enabled, then also
462# any nested class or struct is added to the same group. By default this option
463# is disabled and one has to add nested compounds explicitly via \ingroup.
464# The default value is: NO.
466GROUP_NESTED_COMPOUNDS = NO
468# Set the SUBGROUPING tag to YES to allow class member groups of the same type
469# (for instance a group of public functions) to be put as a subgroup of that
470# type (e.g. under the Public Functions section). Set it to NO to prevent
471# subgrouping. Alternatively, this can be done per class using the
472# \nosubgrouping command.
473# The default value is: YES.
477# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
478# are shown inside the group in which they are included (e.g. using \ingroup)
479# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
482# Note that this feature does not work in combination with
483# SEPARATE_MEMBER_PAGES.
484# The default value is: NO.
486INLINE_GROUPED_CLASSES = NO
488# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
489# with only public data fields or simple typedef fields will be shown inline in
490# the documentation of the scope in which they are defined (i.e. file,
491# namespace, or group documentation), provided this scope is documented. If set
492# to NO, structs, classes, and unions are shown on a separate page (for HTML and
493# Man pages) or section (for LaTeX and RTF).
494# The default value is: NO.
496INLINE_SIMPLE_STRUCTS = NO
498# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
499# enum is documented as struct, union, or enum with the name of the typedef. So
500# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
501# with name TypeT. When disabled the typedef will appear as a member of a file,
502# namespace, or class. And the struct will be named TypeS. This can typically be
503# useful for C code in case the coding convention dictates that all compound
504# types are typedef'ed and only the typedef is referenced, never the tag name.
505# The default value is: NO.
507TYPEDEF_HIDES_STRUCT = NO
509# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
510# cache is used to resolve symbols given their name and scope. Since this can be
511# an expensive process and often the same symbol appears multiple times in the
512# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
513# doxygen will become slower. If the cache is too large, memory is wasted. The
514# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
515# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
516# symbols. At the end of a run doxygen will report the cache usage and suggest
517# the optimal cache size from a speed point of view.
518# Minimum value: 0, maximum value: 9, default value: 0.
522# The NUM_PROC_THREADS specifies the number of threads doxygen is allowed to use
523# during processing. When set to 0 doxygen will based this on the number of
524# cores available in the system. You can set it explicitly to a value larger
525# than 0 to get more control over the balance between CPU load and processing
526# speed. At this moment only the input processing can be done using multiple
527# threads. Since this is still an experimental feature the default is set to 1,
528# which effectively disables parallel processing. Please report any issues you
529# encounter. Generating dot graphs in parallel is controlled by the
530# DOT_NUM_THREADS setting.
531# Minimum value: 0, maximum value: 32, default value: 1.
535# If the TIMESTAMP tag is set different from NO then each generated page will
536# contain the date or date and time when the page was generated. Setting this to
537# NO can help when comparing the output of multiple runs.
538# Possible values are: YES, NO, DATETIME and DATE.
539# The default value is: NO.
543#---------------------------------------------------------------------------
544# Build related configuration options
545#---------------------------------------------------------------------------
547# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
548# documentation are documented, even if no documentation was available. Private
549# class members and static file members will be hidden unless the
550# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
551# Note: This will also disable the warnings about undocumented members that are
552# normally produced when WARNINGS is set to YES.
553# The default value is: NO.
557# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
558# be included in the documentation.
559# The default value is: NO.
563# If the EXTRACT_PRIV_VIRTUAL tag is set to YES, documented private virtual
564# methods of a class will be included in the documentation.
565# The default value is: NO.
567EXTRACT_PRIV_VIRTUAL = NO
569# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
570# scope will be included in the documentation.
571# The default value is: NO.
575# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
576# included in the documentation.
577# The default value is: NO.
581# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
582# locally in source files will be included in the documentation. If set to NO,
583# only classes defined in header files are included. Does not have any effect
585# The default value is: YES.
587EXTRACT_LOCAL_CLASSES = NO
589# This flag is only useful for Objective-C code. If set to YES, local methods,
590# which are defined in the implementation section but not in the interface are
591# included in the documentation. If set to NO, only methods in the interface are
593# The default value is: NO.
595EXTRACT_LOCAL_METHODS = NO
597# If this flag is set to YES, the members of anonymous namespaces will be
598# extracted and appear in the documentation as a namespace called
599# 'anonymous_namespace{file}', where file will be replaced with the base name of
600# the file that contains the anonymous namespace. By default anonymous namespace
602# The default value is: NO.
604EXTRACT_ANON_NSPACES = NO
606# If this flag is set to YES, the name of an unnamed parameter in a declaration
607# will be determined by the corresponding definition. By default unnamed
608# parameters remain unnamed in the output.
609# The default value is: YES.
611RESOLVE_UNNAMED_PARAMS = YES
613# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
614# undocumented members inside documented classes or files. If set to NO these
615# members will be included in the various overviews, but no documentation
616# section is generated. This option has no effect if EXTRACT_ALL is enabled.
617# The default value is: NO.
619HIDE_UNDOC_MEMBERS = YES
621# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
622# undocumented classes that are normally visible in the class hierarchy. If set
623# to NO, these classes will be included in the various overviews. This option
624# will also hide undocumented C++ concepts if enabled. This option has no effect
625# if EXTRACT_ALL is enabled.
626# The default value is: NO.
628HIDE_UNDOC_CLASSES = YES
630# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
631# declarations. If set to NO, these declarations will be included in the
633# The default value is: NO.
635HIDE_FRIEND_COMPOUNDS = YES
637# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
638# documentation blocks found inside the body of a function. If set to NO, these
639# blocks will be appended to the function's detailed documentation block.
640# The default value is: NO.
642HIDE_IN_BODY_DOCS = NO
644# The INTERNAL_DOCS tag determines if documentation that is typed after a
645# \internal command is included. If the tag is set to NO then the documentation
646# will be excluded. Set it to YES to include the internal documentation.
647# The default value is: NO.
651# With the correct setting of option CASE_SENSE_NAMES doxygen will better be
652# able to match the capabilities of the underlying filesystem. In case the
653# filesystem is case sensitive (i.e. it supports files in the same directory
654# whose names only differ in casing), the option must be set to YES to properly
655# deal with such files in case they appear in the input. For filesystems that
656# are not case sensitive the option should be set to NO to properly deal with
657# output files written for symbols that only differ in casing, such as for two
658# classes, one named CLASS and the other named Class, and to also support
659# references to files without having to specify the exact matching casing. On
660# Windows (including Cygwin) and MacOS, users should typically set this option
661# to NO, whereas on Linux or other Unix flavors it should typically be set to
663# Possible values are: SYSTEM, NO and YES.
664# The default value is: SYSTEM.
666CASE_SENSE_NAMES = YES
668# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
669# their full class and namespace scopes in the documentation. If set to YES, the
670# scope will be hidden.
671# The default value is: NO.
675# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
676# append additional text to a page's title, such as Class Reference. If set to
677# YES the compound reference will be hidden.
678# The default value is: NO.
680HIDE_COMPOUND_REFERENCE= NO
682# If the SHOW_HEADERFILE tag is set to YES then the documentation for a class
683# will show which file needs to be included to use the class.
684# The default value is: YES.
688# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
689# the files that are included by a file in the documentation of that file.
690# The default value is: YES.
692SHOW_INCLUDE_FILES = NO
694# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
695# grouped member an include statement to the documentation, telling the reader
696# which file to include in order to use the member.
697# The default value is: NO.
699SHOW_GROUPED_MEMB_INC = NO
701# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
702# files with double quotes in the documentation rather than with sharp brackets.
703# The default value is: NO.
705FORCE_LOCAL_INCLUDES = NO
707# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
708# documentation for inline members.
709# The default value is: YES.
713# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
714# (detailed) documentation of file and class members alphabetically by member
715# name. If set to NO, the members will appear in declaration order.
716# The default value is: YES.
718SORT_MEMBER_DOCS = YES
720# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
721# descriptions of file, namespace and class members alphabetically by member
722# name. If set to NO, the members will appear in declaration order. Note that
723# this will also influence the order of the classes in the class list.
724# The default value is: NO.
728# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
729# (brief and detailed) documentation of class members so that constructors and
730# destructors are listed first. If set to NO the constructors will appear in the
731# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
732# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
733# member documentation.
734# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
735# detailed member documentation.
736# The default value is: NO.
738SORT_MEMBERS_CTORS_1ST = NO
740# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
741# of group names into alphabetical order. If set to NO the group names will
742# appear in their defined order.
743# The default value is: NO.
747# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
748# fully-qualified names, including namespaces. If set to NO, the class list will
749# be sorted only by class name, not including the namespace part.
750# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
751# Note: This option applies only to the class list, not to the alphabetical
753# The default value is: NO.
755SORT_BY_SCOPE_NAME = NO
757# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
758# type resolution of all parameters of a function it will reject a match between
759# the prototype and the implementation of a member function even if there is
760# only one candidate or it is obvious which candidate to choose by doing a
761# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
762# accept a match between prototype and implementation in such cases.
763# The default value is: NO.
765STRICT_PROTO_MATCHING = NO
767# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
768# list. This list is created by putting \todo commands in the documentation.
769# The default value is: YES.
771GENERATE_TODOLIST = NO
773# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
774# list. This list is created by putting \test commands in the documentation.
775# The default value is: YES.
777GENERATE_TESTLIST = NO
779# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
780# list. This list is created by putting \bug commands in the documentation.
781# The default value is: YES.
785# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
786# the deprecated list. This list is created by putting \deprecated commands in
788# The default value is: YES.
790GENERATE_DEPRECATEDLIST= YES
792# The ENABLED_SECTIONS tag can be used to enable conditional documentation
793# sections, marked by \if <section_label> ... \endif and \cond <section_label>
794# ... \endcond blocks.
798# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
799# initial value of a variable or macro / define can have for it to appear in the
800# documentation. If the initializer consists of more lines than specified here
801# it will be hidden. Use a value of 0 to hide initializers completely. The
802# appearance of the value of individual variables and macros / defines can be
803# controlled using \showinitializer or \hideinitializer command in the
804# documentation regardless of this setting.
805# Minimum value: 0, maximum value: 10000, default value: 30.
807MAX_INITIALIZER_LINES = 0
809# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
810# the bottom of the documentation of classes and structs. If set to YES, the
811# list will mention the files that were used to generate the documentation.
812# The default value is: YES.
816# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
817# will remove the Files entry from the Quick Index and from the Folder Tree View
819# The default value is: YES.
823# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
824# page. This will remove the Namespaces entry from the Quick Index and from the
825# Folder Tree View (if specified).
826# The default value is: YES.
830# The FILE_VERSION_FILTER tag can be used to specify a program or script that
831# doxygen should invoke to get the current version for each file (typically from
832# the version control system). Doxygen will invoke the program by executing (via
833# popen()) the command command input-file, where command is the value of the
834# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
835# by doxygen. Whatever the program writes to standard output is used as the file
836# version. For an example see the documentation.
840# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
841# by doxygen. The layout file controls the global structure of the generated
842# output files in an output format independent way. To create the layout file
843# that represents doxygen's defaults, run doxygen with the -l option. You can
844# optionally specify a file name after the option, if omitted DoxygenLayout.xml
845# will be used as the name of the layout file. See also section "Changing the
846# layout of pages" for information.
848# Note that if you run doxygen from a directory containing a file called
849# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
852LAYOUT_FILE = /doc/eigendoxy_layout.xml
854# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
855# the reference definitions. This must be a list of .bib files. The .bib
856# extension is automatically appended if omitted. This requires the bibtex tool
857# to be installed. See also https:
858# For LaTeX the style of the bibliography can be controlled using
859# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
860# search path. See also \cite for info how to create references.
864#---------------------------------------------------------------------------
865# Configuration options related to warning and progress messages
866#---------------------------------------------------------------------------
868# The QUIET tag can be used to turn on/off the messages that are generated to
869# standard output by doxygen. If QUIET is set to YES this implies that the
871# The default value is: NO.
875# The WARNINGS tag can be used to turn on/off the warning messages that are
876# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
877# this implies that the warnings are on.
879# Tip: Turn warnings on while writing the documentation.
880# The default value is: YES.
884# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
885# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
886# will automatically be disabled.
887# The default value is: YES.
889WARN_IF_UNDOCUMENTED = NO
891# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
892# potential errors in the documentation, such as documenting some parameters in
893# a documented function twice, or documenting parameters that don't exist or
894# using markup commands wrongly.
895# The default value is: YES.
897WARN_IF_DOC_ERROR = YES
899# If WARN_IF_INCOMPLETE_DOC is set to YES, doxygen will warn about incomplete
900# function parameter documentation. If set to NO, doxygen will accept that some
901# parameters have no documentation without warning.
902# The default value is: YES.
904WARN_IF_INCOMPLETE_DOC = YES
906# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
907# are documented, but have no documentation for their parameters or return
908# value. If set to NO, doxygen will only warn about wrong parameter
909# documentation, but not about the absence of documentation. If EXTRACT_ALL is
910# set to YES then this flag will automatically be disabled. See also
911# WARN_IF_INCOMPLETE_DOC
912# The default value is: NO.
916# If WARN_IF_UNDOC_ENUM_VAL option is set to YES, doxygen will warn about
917# undocumented enumeration values. If set to NO, doxygen will accept
918# undocumented enumeration values. If EXTRACT_ALL is set to YES then this flag
919# will automatically be disabled.
920# The default value is: NO.
922WARN_IF_UNDOC_ENUM_VAL = NO
924# If the WARN_AS_ERROR tag is set to YES then doxygen will immediately stop when
925# a warning is encountered. If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS
926# then doxygen will continue running as if WARN_AS_ERROR tag is set to NO, but
927# at the end of the doxygen process doxygen will return with a non-zero status.
928# If the WARN_AS_ERROR tag is set to FAIL_ON_WARNINGS_PRINT then doxygen behaves
929# like FAIL_ON_WARNINGS but in case no WARN_LOGFILE is defined doxygen will not
930# write the warning messages in between other messages but write them at the end
931# of a run, in case a WARN_LOGFILE is defined the warning messages will be
932# besides being in the defined file also be shown at the end of a run, unless
933# the WARN_LOGFILE is defined as - i.e. standard output (stdout) in that case
934# the behavior will remain as with the setting FAIL_ON_WARNINGS.
935# Possible values are: NO, YES, FAIL_ON_WARNINGS and FAIL_ON_WARNINGS_PRINT.
936# The default value is: NO.
940# The WARN_FORMAT tag determines the format of the warning messages that doxygen
941# can produce. The string should contain the $file, $line, and $text tags, which
942# will be replaced by the file and line number from which the warning originated
943# and the warning text. Optionally the format may contain $version, which will
944# be replaced by the version of the file (if it could be obtained via
945# FILE_VERSION_FILTER)
946# See also: WARN_LINE_FORMAT
947# The default value is: $file:$line: $text.
949WARN_FORMAT =
"$file:$line: $text"
951# In the $text part of the WARN_FORMAT command it is possible that a reference
952# to a more specific place is given. To make it easier to jump to this place
953# (outside of doxygen) the user can define a custom "cut" / "paste" string.
955# WARN_LINE_FORMAT = "'vi $file +$line'"
956# See also: WARN_FORMAT
957# The default value is: at line $line of file $file.
959WARN_LINE_FORMAT =
"at line $line of file $file"
961# The WARN_LOGFILE tag can be used to specify a file to which warning and error
962# messages should be written. If left blank the output is written to standard
963# error (stderr). In case the file specified cannot be opened for writing the
964# warning and error messages are written to standard error. When as file - is
965# specified the warning and error messages are written to standard output
970#---------------------------------------------------------------------------
971# Configuration options related to the input files
972#---------------------------------------------------------------------------
974# The INPUT tag is used to specify the files and/or directories that contain
975# documented source files. You may enter file names like myfile.cpp or
976# directories like /usr/src/myproject. Separate the files or directories with
977# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
978# Note: If this tag is empty the current directory is searched.
983# This tag can be used to specify the character encoding of the source files
984# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
985# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
988# See also: INPUT_FILE_ENCODING
989# The default value is: UTF-8.
991INPUT_ENCODING = UTF-8
993# This tag can be used to specify the character encoding of the source files
994# that doxygen parses The INPUT_FILE_ENCODING tag can be used to specify
995# character encoding on a per file pattern basis. Doxygen will compare the file
996# name with each pattern and apply the encoding instead of the default
997# INPUT_ENCODING) if there is a match. The character encodings are a list of the
998# form: pattern=encoding (like *.php=ISO-8859-1).
999# See also: INPUT_ENCODING for further information on supported encodings.
1001INPUT_FILE_ENCODING =
1003# If the value of the INPUT tag contains directories, you can use the
1004# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
1005# *.h) to filter out the source-files in the directories.
1007# Note that for custom extensions or not directly supported extensions you also
1008# need to set EXTENSION_MAPPING for the extension otherwise the files are not
1011# Note the list of default checked file patterns might differ from the list of
1012# default file extension mappings.
1014# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cxxm,
1015# *.cpp, *.cppm, *.ccm, *.c++, *.c++m, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl,
1016# *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp, *.h++, *.ixx, *.l, *.cs, *.d,
1017# *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown, *.md, *.mm, *.dox (to
1018# be provided as doxygen C comment), *.py, *.pyw, *.f90, *.f95, *.f03, *.f08,
1019# *.f18, *.f, *.for, *.vhd, *.vhdl, *.ucf, *.qsf and *.ice.
1023# The RECURSIVE tag can be used to specify whether or not subdirectories should
1024# be searched for input files as well.
1025# The default value is: NO.
1029# The EXCLUDE tag can be used to specify files and/or directories that should be
1030# excluded from the INPUT source files. This way you can easily exclude a
1031# subdirectory from a directory tree whose root is specified with the INPUT tag.
1033# Note that relative paths are relative to the directory from which doxygen is
1036EXCLUDE =
"/Eigen/src/Core/products" \
1037 "/Eigen/Eigen2Support" \
1038 "/Eigen/src/Eigen2Support" \
1040 "/doc/special_examples" \
1042 "/unsupported/doc/examples" \
1043 "/unsupported/doc/snippets" \
1044 "/Eigen/src/Core/util/ForwardDeclarations.h"
1046# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
1047# directories that are symbolic links (a Unix file system feature) are excluded
1049# The default value is: NO.
1051EXCLUDE_SYMLINKS = NO
1053# If the value of the INPUT tag contains directories, you can use the
1054# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
1055# certain files from those directories.
1057# Note that the wildcards are matched against the file with absolute path, so to
1058# exclude all test directories for example use the pattern */test