Simplify away redundant test, and document what's going on.
[llvm.git] / docs / doxygen.cfg.in
blob45b8f42e5d562be12d34957b2b35970074f95a9a
1 # Doxyfile 1.5.6
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 hash (#) is considered a comment and will be ignored
7 # The format is:
8 #       TAG = value [value, ...]
9 # For lists items can also be appended using:
10 #       TAG += value [value, ...]
11 # Values that contain spaces should be placed between quotes (" ")
13 #---------------------------------------------------------------------------
14 # Project related configuration options 
15 #---------------------------------------------------------------------------
17 # This tag specifies the encoding used for all characters in the config file 
18 # that follow. The default is UTF-8 which is also the encoding used for all 
19 # text before the first occurrence of this tag. Doxygen uses libiconv (or the 
20 # iconv built into libc) for the transcoding. See 
21 # http://www.gnu.org/software/libiconv for the list of possible encodings.
23 DOXYFILE_ENCODING      = UTF-8
25 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
26 # by quotes) that should identify the project.
28 PROJECT_NAME           = LLVM
30 # The PROJECT_NUMBER tag can be used to enter a project or revision number. 
31 # This could be handy for archiving the generated documentation or 
32 # if some version control system is used.
34 PROJECT_NUMBER         = @PACKAGE_VERSION@
36 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
37 # base path where the generated documentation will be put. 
38 # If a relative path is entered, it will be relative to the location 
39 # where doxygen was started. If left blank the current directory will be used.
41 OUTPUT_DIRECTORY       = @abs_top_builddir@/docs/doxygen
43 # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 
44 # 4096 sub-directories (in 2 levels) under the output directory of each output 
45 # format and will distribute the generated files over these directories. 
46 # Enabling this option can be useful when feeding doxygen a huge amount of 
47 # source files, where putting all generated files in the same directory would 
48 # otherwise cause performance problems for the file system.
50 CREATE_SUBDIRS         = NO
52 # The OUTPUT_LANGUAGE tag is used to specify the language in which all 
53 # documentation generated by doxygen is written. Doxygen will use this 
54 # information to generate all constant output in the proper language. 
55 # The default language is English, other supported languages are: 
56 # Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, 
57 # Croatian, Czech, Danish, Dutch, Farsi, Finnish, French, German, Greek, 
58 # Hungarian, Italian, Japanese, Japanese-en (Japanese with English messages), 
59 # Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, Polish, 
60 # Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, 
61 # and Ukrainian.
63 OUTPUT_LANGUAGE        = English
65 # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
66 # include brief member descriptions after the members that are listed in 
67 # the file and class documentation (similar to JavaDoc). 
68 # Set to NO to disable this.
70 BRIEF_MEMBER_DESC      = YES
72 # If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
73 # the brief description of a member or function before the detailed description. 
74 # Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
75 # brief descriptions will be completely suppressed.
77 REPEAT_BRIEF           = YES
79 # This tag implements a quasi-intelligent brief description abbreviator 
80 # that is used to form the text in various listings. Each string 
81 # in this list, if found as the leading text of the brief description, will be 
82 # stripped from the text and the result after processing the whole list, is 
83 # used as the annotated text. Otherwise, the brief description is used as-is. 
84 # If left blank, the following values are used ("$name" is automatically 
85 # replaced with the name of the entity): "The $name class" "The $name widget" 
86 # "The $name file" "is" "provides" "specifies" "contains" 
87 # "represents" "a" "an" "the"
89 ABBREVIATE_BRIEF       = 
91 # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
92 # Doxygen will generate a detailed section even if there is only a brief 
93 # description.
95 ALWAYS_DETAILED_SEC    = NO
97 # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all 
98 # inherited members of a class in the documentation of that class as if those 
99 # members were ordinary class members. Constructors, destructors and assignment 
100 # operators of the base classes will not be shown.
102 INLINE_INHERITED_MEMB  = NO
104 # If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
105 # path before files name in the file list and in the header files. If set 
106 # to NO the shortest path that makes the file name unique will be used.
108 FULL_PATH_NAMES        = NO
110 # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
111 # can be used to strip a user-defined part of the path. Stripping is 
112 # only done if one of the specified strings matches the left-hand part of 
113 # the path. The tag can be used to show relative paths in the file list. 
114 # If left blank the directory from which doxygen is run is used as the 
115 # path to strip.
117 STRIP_FROM_PATH        = ../..
119 # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of 
120 # the path mentioned in the documentation of a class, which tells 
121 # the reader which header file to include in order to use a class. 
122 # If left blank only the name of the header file containing the class 
123 # definition is used. Otherwise one should specify the include paths that 
124 # are normally passed to the compiler using the -I flag.
126 STRIP_FROM_INC_PATH    = 
128 # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
129 # (but less readable) file names. This can be useful is your file systems 
130 # doesn't support long names like on DOS, Mac, or CD-ROM.
132 SHORT_NAMES            = NO
134 # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
135 # will interpret the first line (until the first dot) of a JavaDoc-style 
136 # comment as the brief description. If set to NO, the JavaDoc 
137 # comments will behave just like regular Qt-style comments 
138 # (thus requiring an explicit @brief command for a brief description.)
140 JAVADOC_AUTOBRIEF      = NO
142 # If the QT_AUTOBRIEF tag is set to YES then Doxygen will 
143 # interpret the first line (until the first dot) of a Qt-style 
144 # comment as the brief description. If set to NO, the comments 
145 # will behave just like regular Qt-style comments (thus requiring 
146 # an explicit \brief command for a brief description.)
148 QT_AUTOBRIEF           = NO
150 # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen 
151 # treat a multi-line C++ special comment block (i.e. a block of //! or /// 
152 # comments) as a brief description. This used to be the default behaviour. 
153 # The new default is to treat a multi-line C++ comment block as a detailed 
154 # description. Set this tag to YES if you prefer the old behaviour instead.
156 MULTILINE_CPP_IS_BRIEF = NO
158 # If the DETAILS_AT_TOP tag is set to YES then Doxygen 
159 # will output the detailed description near the top, like JavaDoc.
160 # If set to NO, the detailed description appears after the member 
161 # documentation.
163 DETAILS_AT_TOP         = NO
165 # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
166 # member inherits the documentation from any documented member that it 
167 # re-implements.
169 INHERIT_DOCS           = YES
171 # If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce 
172 # a new page for each member. If set to NO, the documentation of a member will 
173 # be part of the file/class/namespace that contains it.
175 SEPARATE_MEMBER_PAGES  = NO
177 # The TAB_SIZE tag can be used to set the number of spaces in a tab. 
178 # Doxygen uses this value to replace tabs by spaces in code fragments.
180 TAB_SIZE               = 2
182 # This tag can be used to specify a number of aliases that acts 
183 # as commands in the documentation. An alias has the form "name=value". 
184 # For example adding "sideeffect=\par Side Effects:\n" will allow you to 
185 # put the command \sideeffect (or @sideeffect) in the documentation, which 
186 # will result in a user-defined paragraph with heading "Side Effects:". 
187 # You can put \n's in the value part of an alias to insert newlines.
189 ALIASES                = 
191 # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C 
192 # sources only. Doxygen will then generate output that is more tailored for C. 
193 # For instance, some of the names that are used will be different. The list 
194 # of all members will be omitted, etc.
196 OPTIMIZE_OUTPUT_FOR_C  = NO
198 # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java 
199 # sources only. Doxygen will then generate output that is more tailored for 
200 # Java. For instance, namespaces will be presented as packages, qualified 
201 # scopes will look different, etc.
203 OPTIMIZE_OUTPUT_JAVA   = NO
205 # Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran 
206 # sources only. Doxygen will then generate output that is more tailored for 
207 # Fortran.
209 OPTIMIZE_FOR_FORTRAN   = NO
211 # Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL 
212 # sources. Doxygen will then generate output that is tailored for 
213 # VHDL.
215 OPTIMIZE_OUTPUT_VHDL   = NO
217 # If you use STL classes (i.e. std::string, std::vector, etc.) but do not want 
218 # to include (a tag file for) the STL sources as input, then you should 
219 # set this tag to YES in order to let doxygen match functions declarations and 
220 # definitions whose arguments contain STL classes (e.g. func(std::string); v.s. 
221 # func(std::string) {}). This also make the inheritance and collaboration 
222 # diagrams that involve STL classes more complete and accurate.
224 BUILTIN_STL_SUPPORT    = NO
226 # If you use Microsoft's C++/CLI language, you should set this option to YES to
227 # enable parsing support.
229 CPP_CLI_SUPPORT        = NO
231 # Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. 
232 # Doxygen will parse them like normal C++ but will assume all classes use public 
233 # instead of private inheritance when no explicit protection keyword is present.
235 SIP_SUPPORT            = NO
237 # For Microsoft's IDL there are propget and propput attributes to indicate getter 
238 # and setter methods for a property. Setting this option to YES (the default) 
239 # will make doxygen to replace the get and set methods by a property in the 
240 # documentation. This will only work if the methods are indeed getting or 
241 # setting a simple type. If this is not the case, or you want to show the 
242 # methods anyway, you should set this option to NO.
244 IDL_PROPERTY_SUPPORT   = YES
246 # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
247 # tag is set to YES, then doxygen will reuse the documentation of the first 
248 # member in the group (if any) for the other members of the group. By default 
249 # all members of a group must be documented explicitly.
251 DISTRIBUTE_GROUP_DOC   = NO
253 # Set the SUBGROUPING tag to YES (the default) to allow class member groups of 
254 # the same type (for instance a group of public functions) to be put as a 
255 # subgroup of that type (e.g. under the Public Functions section). Set it to 
256 # NO to prevent subgrouping. Alternatively, this can be done per class using 
257 # the \nosubgrouping command.
259 SUBGROUPING            = YES
261 # When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum 
262 # is documented as struct, union, or enum with the name of the typedef. So 
263 # typedef struct TypeS {} TypeT, will appear in the documentation as a struct 
264 # with name TypeT. When disabled the typedef will appear as a member of a file, 
265 # namespace, or class. And the struct will be named TypeS. This can typically 
266 # be useful for C code in case the coding convention dictates that all compound 
267 # types are typedef'ed and only the typedef is referenced, never the tag name.
269 TYPEDEF_HIDES_STRUCT   = NO
271 #---------------------------------------------------------------------------
272 # Build related configuration options
273 #---------------------------------------------------------------------------
275 # If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
276 # documentation are documented, even if no documentation was available. 
277 # Private class members and static file members will be hidden unless 
278 # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
280 EXTRACT_ALL            = YES
282 # If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
283 # will be included in the documentation.
285 EXTRACT_PRIVATE        = NO
287 # If the EXTRACT_STATIC tag is set to YES all static members of a file 
288 # will be included in the documentation.
290 EXTRACT_STATIC         = YES
292 # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 
293 # defined locally in source files will be included in the documentation. 
294 # If set to NO only classes defined in header files are included.
296 EXTRACT_LOCAL_CLASSES  = YES
298 # This flag is only useful for Objective-C code. When set to YES local 
299 # methods, which are defined in the implementation section but not in 
300 # the interface are included in the documentation. 
301 # If set to NO (the default) only methods in the interface are included.
303 EXTRACT_LOCAL_METHODS  = NO
305 # If this flag is set to YES, the members of anonymous namespaces will be 
306 # extracted and appear in the documentation as a namespace called 
307 # 'anonymous_namespace{file}', where file will be replaced with the base 
308 # name of the file that contains the anonymous namespace. By default 
309 # anonymous namespace are hidden.
311 EXTRACT_ANON_NSPACES   = NO
313 # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
314 # undocumented members of documented classes, files or namespaces. 
315 # If set to NO (the default) these members will be included in the 
316 # various overviews, but no documentation section is generated. 
317 # This option has no effect if EXTRACT_ALL is enabled.
319 HIDE_UNDOC_MEMBERS     = NO
321 # If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
322 # undocumented classes that are normally visible in the class hierarchy. 
323 # If set to NO (the default) these classes will be included in the various 
324 # overviews. This option has no effect if EXTRACT_ALL is enabled.
326 HIDE_UNDOC_CLASSES     = NO
328 # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all 
329 # friend (class|struct|union) declarations. 
330 # If set to NO (the default) these declarations will be included in the 
331 # documentation.
333 HIDE_FRIEND_COMPOUNDS  = NO
335 # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any 
336 # documentation blocks found inside the body of a function. 
337 # If set to NO (the default) these blocks will be appended to the 
338 # function's detailed documentation block.
340 HIDE_IN_BODY_DOCS      = NO
342 # The INTERNAL_DOCS tag determines if documentation 
343 # that is typed after a \internal command is included. If the tag is set 
344 # to NO (the default) then the documentation will be excluded. 
345 # Set it to YES to include the internal documentation.
347 INTERNAL_DOCS          = NO
349 # If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
350 # file names in lower-case letters. If set to YES upper-case letters are also 
351 # allowed. This is useful if you have classes or files whose names only differ 
352 # in case and if your file system supports case sensitive file names. Windows 
353 # and Mac users are advised to set this option to NO.
355 CASE_SENSE_NAMES       = YES
357 # If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
358 # will show members with their full class and namespace scopes in the 
359 # documentation. If set to YES the scope will be hidden.
361 HIDE_SCOPE_NAMES       = NO
363 # If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
364 # will put a list of the files that are included by a file in the documentation 
365 # of that file.
367 SHOW_INCLUDE_FILES     = YES
369 # If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
370 # is inserted in the documentation for inline members.
372 INLINE_INFO            = YES
374 # If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
375 # will sort the (detailed) documentation of file and class members 
376 # alphabetically by member name. If set to NO the members will appear in 
377 # declaration order.
379 SORT_MEMBER_DOCS       = YES
381 # If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the 
382 # brief documentation of file, namespace and class members alphabetically 
383 # by member name. If set to NO (the default) the members will appear in 
384 # declaration order.
386 SORT_BRIEF_DOCS        = NO
388 # If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the 
389 # hierarchy of group names into alphabetical order. If set to NO (the default) 
390 # the group names will appear in their defined order.
392 SORT_GROUP_NAMES       = NO
394 # If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be 
395 # sorted by fully-qualified names, including namespaces. If set to 
396 # NO (the default), the class list will be sorted only by class name, 
397 # not including the namespace part. 
398 # Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
399 # Note: This option applies only to the class list, not to the 
400 # alphabetical list.
402 SORT_BY_SCOPE_NAME     = NO
404 # The GENERATE_TODOLIST tag can be used to enable (YES) or 
405 # disable (NO) the todo list. This list is created by putting \todo 
406 # commands in the documentation.
408 GENERATE_TODOLIST      = YES
410 # The GENERATE_TESTLIST tag can be used to enable (YES) or 
411 # disable (NO) the test list. This list is created by putting \test 
412 # commands in the documentation.
414 GENERATE_TESTLIST      = YES
416 # The GENERATE_BUGLIST tag can be used to enable (YES) or 
417 # disable (NO) the bug list. This list is created by putting \bug 
418 # commands in the documentation.
420 GENERATE_BUGLIST       = YES
422 # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or 
423 # disable (NO) the deprecated list. This list is created by putting 
424 # \deprecated commands in the documentation.
426 GENERATE_DEPRECATEDLIST= YES
428 # The ENABLED_SECTIONS tag can be used to enable conditional 
429 # documentation sections, marked by \if sectionname ... \endif.
431 ENABLED_SECTIONS       = 
433 # The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
434 # the initial value of a variable or define consists of for it to appear in 
435 # the documentation. If the initializer consists of more lines than specified 
436 # here it will be hidden. Use a value of 0 to hide initializers completely. 
437 # The appearance of the initializer of individual variables and defines in the 
438 # documentation can be controlled using \showinitializer or \hideinitializer 
439 # command in the documentation regardless of this setting.
441 MAX_INITIALIZER_LINES  = 30
443 # Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
444 # at the bottom of the documentation of classes and structs. If set to YES the 
445 # list will mention the files that were used to generate the documentation.
447 SHOW_USED_FILES        = YES
449 # If the sources in your project are distributed over multiple directories 
450 # then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 
451 # in the documentation. The default is NO.
453 SHOW_DIRECTORIES       = YES
455 # Set the SHOW_FILES tag to NO to disable the generation of the Files page.
456 # This will remove the Files entry from the Quick Index and from the 
457 # Folder Tree View (if specified). The default is YES.
459 SHOW_FILES             = YES
461 # Set the SHOW_NAMESPACES tag to NO to disable the generation of the 
462 # Namespaces page.  This will remove the Namespaces entry from the Quick Index
463 # and from the Folder Tree View (if specified). The default is YES.
465 SHOW_NAMESPACES        = YES
467 # The FILE_VERSION_FILTER tag can be used to specify a program or script that 
468 # doxygen should invoke to get the current version for each file (typically from 
469 # the version control system). Doxygen will invoke the program by executing (via 
470 # popen()) the command <command> <input-file>, where <command> is the value of 
471 # the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file 
472 # provided by doxygen. Whatever the program writes to standard output 
473 # is used as the file version. See the manual for examples.
475 FILE_VERSION_FILTER    = 
477 #---------------------------------------------------------------------------
478 # configuration options related to warning and progress messages
479 #---------------------------------------------------------------------------
481 # The QUIET tag can be used to turn on/off the messages that are generated 
482 # by doxygen. Possible values are YES and NO. If left blank NO is used.
484 QUIET                  = NO
486 # The WARNINGS tag can be used to turn on/off the warning messages that are 
487 # generated by doxygen. Possible values are YES and NO. If left blank 
488 # NO is used.
490 WARNINGS               = NO
492 # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
493 # for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
494 # automatically be disabled.
496 WARN_IF_UNDOCUMENTED   = NO
498 # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 
499 # potential errors in the documentation, such as not documenting some 
500 # parameters in a documented function, or documenting parameters that 
501 # don't exist or using markup commands wrongly.
503 WARN_IF_DOC_ERROR      = YES
505 # This WARN_NO_PARAMDOC option can be abled to get warnings for 
506 # functions that are documented, but have no documentation for their parameters 
507 # or return value. If set to NO (the default) doxygen will only warn about 
508 # wrong or incomplete parameter documentation, but not about the absence of 
509 # documentation.
511 WARN_NO_PARAMDOC       = NO
513 # The WARN_FORMAT tag determines the format of the warning messages that 
514 # doxygen can produce. The string should contain the $file, $line, and $text 
515 # tags, which will be replaced by the file and line number from which the 
516 # warning originated and the warning text. Optionally the format may contain 
517 # $version, which will be replaced by the version of the file (if it could 
518 # be obtained via FILE_VERSION_FILTER)
520 WARN_FORMAT            = 
522 # The WARN_LOGFILE tag can be used to specify a file to which warning 
523 # and error messages should be written. If left blank the output is written 
524 # to stderr.
526 WARN_LOGFILE           = 
528 #---------------------------------------------------------------------------
529 # configuration options related to the input files
530 #---------------------------------------------------------------------------
532 # The INPUT tag can be used to specify the files and/or directories that contain 
533 # documented source files. You may enter file names like "myfile.cpp" or 
534 # directories like "/usr/src/myproject". Separate the files or directories 
535 # with spaces.
537 INPUT                  = @abs_top_srcdir@/include \
538                          @abs_top_srcdir@/lib \
539                          @abs_top_srcdir@/docs/doxygen.intro
541 # This tag can be used to specify the character encoding of the source files 
542 # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is 
543 # also the default input encoding. Doxygen uses libiconv (or the iconv built 
544 # into libc) for the transcoding. See http://www.gnu.org/software/libiconv for 
545 # the list of possible encodings.
547 INPUT_ENCODING         = UTF-8
549 # If the value of the INPUT tag contains directories, you can use the 
550 # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
551 # and *.h) to filter out the source-files in the directories. If left 
552 # blank the following patterns are tested: 
553 # *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx 
554 # *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90
556 FILE_PATTERNS          = 
558 # The RECURSIVE tag can be used to turn specify whether or not subdirectories 
559 # should be searched for input files as well. Possible values are YES and NO. 
560 # If left blank NO is used.
562 RECURSIVE              = YES
564 # The EXCLUDE tag can be used to specify files and/or directories that should 
565 # excluded from the INPUT source files. This way you can easily exclude a 
566 # subdirectory from a directory tree whose root is specified with the INPUT tag.
568 EXCLUDE                = 
570 # The EXCLUDE_SYMLINKS tag can be used select whether or not files or 
571 # directories that are symbolic links (a Unix filesystem feature) are excluded 
572 # from the input.
574 EXCLUDE_SYMLINKS       = NO
576 # If the value of the INPUT tag contains directories, you can use the 
577 # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
578 # certain files from those directories. Note that the wildcards are matched 
579 # against the file with absolute path, so to exclude all test directories 
580 # for example use the pattern */test/*
582 EXCLUDE_PATTERNS       = 
584 # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names 
585 # (namespaces, classes, functions, etc.) that should be excluded from the 
586 # output. The symbol name can be a fully qualified name, a word, or if the 
587 # wildcard * is used, a substring. Examples: ANamespace, AClass, 
588 # AClass::ANamespace, ANamespace::*Test
590 EXCLUDE_SYMBOLS        = 
592 # The EXAMPLE_PATH tag can be used to specify one or more files or 
593 # directories that contain example code fragments that are included (see 
594 # the \include command).
596 EXAMPLE_PATH           = @abs_top_srcdir@/examples
598 # If the value of the EXAMPLE_PATH tag contains directories, you can use the 
599 # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
600 # and *.h) to filter out the source-files in the directories. If left 
601 # blank all files are included.
603 EXAMPLE_PATTERNS       = 
605 # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
606 # searched for input files to be used with the \include or \dontinclude 
607 # commands irrespective of the value of the RECURSIVE tag. 
608 # Possible values are YES and NO. If left blank NO is used.
610 EXAMPLE_RECURSIVE      = YES
612 # The IMAGE_PATH tag can be used to specify one or more files or 
613 # directories that contain image that are included in the documentation (see 
614 # the \image command).
616 IMAGE_PATH             = @abs_top_srcdir@/docs/img
618 # The INPUT_FILTER tag can be used to specify a program that doxygen should 
619 # invoke to filter for each input file. Doxygen will invoke the filter program 
620 # by executing (via popen()) the command <filter> <input-file>, where <filter> 
621 # is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
622 # input file. Doxygen will then use the output that the filter program writes 
623 # to standard output.  If FILTER_PATTERNS is specified, this tag will be 
624 # ignored.
626 INPUT_FILTER           = 
628 # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern 
629 # basis.  Doxygen will compare the file name with each pattern and apply the 
630 # filter if there is a match.  The filters are a list of the form: 
631 # pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further 
632 # info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER 
633 # is applied to all files.
635 FILTER_PATTERNS        = 
637 # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
638 # INPUT_FILTER) will be used to filter the input files when producing source 
639 # files to browse (i.e. when SOURCE_BROWSER is set to YES).
641 FILTER_SOURCE_FILES    = NO
643 #---------------------------------------------------------------------------
644 # configuration options related to source browsing
645 #---------------------------------------------------------------------------
647 # If the SOURCE_BROWSER tag is set to YES then a list of source files will 
648 # be generated. Documented entities will be cross-referenced with these sources. 
649 # Note: To get rid of all source code in the generated output, make sure also 
650 # VERBATIM_HEADERS is set to NO.
652 SOURCE_BROWSER         = YES
654 # Setting the INLINE_SOURCES tag to YES will include the body 
655 # of functions and classes directly in the documentation.
657 INLINE_SOURCES         = NO
659 # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
660 # doxygen to hide any special comment blocks from generated source code 
661 # fragments. Normal C and C++ comments will always remain visible.
663 STRIP_CODE_COMMENTS    = NO
665 # If the REFERENCED_BY_RELATION tag is set to YES 
666 # then for each documented function all documented 
667 # functions referencing it will be listed.
669 REFERENCED_BY_RELATION = YES
671 # If the REFERENCES_RELATION tag is set to YES 
672 # then for each documented function all documented entities 
673 # called/used by that function will be listed.
675 REFERENCES_RELATION    = YES
677 # If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
678 # and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
679 # functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
680 # link to the source code.  Otherwise they will link to the documentstion.
682 REFERENCES_LINK_SOURCE = YES
684 # If the USE_HTAGS tag is set to YES then the references to source code 
685 # will point to the HTML generated by the htags(1) tool instead of doxygen 
686 # built-in source browser. The htags tool is part of GNU's global source 
687 # tagging system (see http://www.gnu.org/software/global/global.html). You 
688 # will need version 4.8.6 or higher.
690 USE_HTAGS              = NO
692 # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
693 # will generate a verbatim copy of the header file for each class for 
694 # which an include is specified. Set to NO to disable this.
696 VERBATIM_HEADERS       = YES
698 #---------------------------------------------------------------------------
699 # configuration options related to the alphabetical class index
700 #---------------------------------------------------------------------------
702 # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
703 # of all compounds will be generated. Enable this if the project 
704 # contains a lot of classes, structs, unions or interfaces.
706 ALPHABETICAL_INDEX     = YES
708 # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
709 # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
710 # in which this list will be split (can be a number in the range [1..20])
712 COLS_IN_ALPHA_INDEX    = 4
714 # In case all classes in a project start with a common prefix, all 
715 # classes will be put under the same header in the alphabetical index. 
716 # The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
717 # should be ignored while generating the index headers.
719 IGNORE_PREFIX          = llvm::
721 #---------------------------------------------------------------------------
722 # configuration options related to the HTML output
723 #---------------------------------------------------------------------------
725 # If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
726 # generate HTML output.
728 GENERATE_HTML          = YES
730 # The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
731 # If a relative path is entered the value of OUTPUT_DIRECTORY will be 
732 # put in front of it. If left blank `html' will be used as the default path.
734 HTML_OUTPUT            = html
736 # The HTML_FILE_EXTENSION tag can be used to specify the file extension for 
737 # each generated HTML page (for example: .htm,.php,.asp). If it is left blank 
738 # doxygen will generate files with .html extension.
740 HTML_FILE_EXTENSION    = .html
742 # The HTML_HEADER tag can be used to specify a personal HTML header for 
743 # each generated HTML page. If it is left blank doxygen will generate a 
744 # standard header.
746 HTML_HEADER            = @abs_top_srcdir@/docs/doxygen.header
748 # The HTML_FOOTER tag can be used to specify a personal HTML footer for 
749 # each generated HTML page. If it is left blank doxygen will generate a 
750 # standard footer.
752 HTML_FOOTER            = @abs_top_srcdir@/docs/doxygen.footer
754 # The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
755 # style sheet that is used by each HTML page. It can be used to 
756 # fine-tune the look of the HTML output. If the tag is left blank doxygen 
757 # will generate a default style sheet. Note that doxygen will try to copy 
758 # the style sheet file to the HTML output directory, so don't put your own 
759 # stylesheet in the HTML output directory as well, or it will be erased!
761 HTML_STYLESHEET        = @abs_top_srcdir@/docs/doxygen.css
763 # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
764 # files or namespaces will be aligned in HTML using tables. If set to 
765 # NO a bullet list will be used.
767 HTML_ALIGN_MEMBERS     = YES
769 # If the GENERATE_HTMLHELP tag is set to YES, additional index files 
770 # will be generated that can be used as input for tools like the 
771 # Microsoft HTML help workshop to generate a compiled HTML help file (.chm) 
772 # of the generated HTML documentation.
774 GENERATE_HTMLHELP      = NO
776 # If the GENERATE_DOCSET tag is set to YES, additional index files 
777 # will be generated that can be used as input for Apple's Xcode 3 
778 # integrated development environment, introduced with OSX 10.5 (Leopard). 
779 # To create a documentation set, doxygen will generate a Makefile in the 
780 # HTML output directory. Running make will produce the docset in that 
781 # directory and running "make install" will install the docset in 
782 # ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find 
783 # it at startup.
785 GENERATE_DOCSET        = NO
787 # When GENERATE_DOCSET tag is set to YES, this tag determines the name of the 
788 # feed. A documentation feed provides an umbrella under which multiple 
789 # documentation sets from a single provider (such as a company or product suite) 
790 # can be grouped.
792 DOCSET_FEEDNAME        = "Doxygen generated docs"
794 # When GENERATE_DOCSET tag is set to YES, this tag specifies a string that 
795 # should uniquely identify the documentation set bundle. This should be a 
796 # reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen 
797 # will append .docset to the name.
799 DOCSET_BUNDLE_ID       = org.doxygen.Project
801 # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML 
802 # documentation will contain sections that can be hidden and shown after the 
803 # page has loaded. For this to work a browser that supports 
804 # JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox 
805 # Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
807 HTML_DYNAMIC_SECTIONS  = NO
809 # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 
810 # be used to specify the file name of the resulting .chm file. You 
811 # can add a path in front of the file if the result should not be 
812 # written to the html output directory.
814 CHM_FILE               = 
816 # If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can 
817 # be used to specify the location (absolute path including file name) of 
818 # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run 
819 # the HTML help compiler on the generated index.hhp.
821 HHC_LOCATION           = 
823 # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
824 # controls if a separate .chi index file is generated (YES) or that 
825 # it should be included in the master .chm file (NO).
827 GENERATE_CHI           = NO
829 # If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
830 # is used to encode HtmlHelp index (hhk), content (hhc) and project file
831 # content.
833 CHM_INDEX_ENCODING     = 
835 # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
836 # controls whether a binary table of contents is generated (YES) or a 
837 # normal table of contents (NO) in the .chm file.
839 BINARY_TOC             = NO
841 # The TOC_EXPAND flag can be set to YES to add extra items for group members 
842 # to the contents of the HTML help documentation and to the tree view.
844 TOC_EXPAND             = NO
846 # The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
847 # top of each HTML page. The value NO (the default) enables the index and 
848 # the value YES disables it.
850 DISABLE_INDEX          = NO
852 # This tag can be used to set the number of enum values (range [1..20]) 
853 # that doxygen will group on one line in the generated HTML documentation.
855 ENUM_VALUES_PER_LINE   = 4
857 # The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
858 # structure should be generated to display hierarchical information.
859 # If the tag value is set to FRAME, a side panel will be generated
860 # containing a tree-like index structure (just like the one that 
861 # is generated for HTML Help). For this to work a browser that supports 
862 # JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, 
863 # Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are 
864 # probably better off using the HTML help feature. Other possible values 
865 # for this tag are: HIERARCHIES, which will generate the Groups, Directories,
866 # and Class Hiererachy pages using a tree view instead of an ordered list;
867 # ALL, which combines the behavior of FRAME and HIERARCHIES; and NONE, which
868 # disables this behavior completely. For backwards compatibility with previous
869 # releases of Doxygen, the values YES and NO are equivalent to FRAME and NONE
870 # respectively.
872 GENERATE_TREEVIEW      = NO
874 # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
875 # used to set the initial width (in pixels) of the frame in which the tree 
876 # is shown.
878 TREEVIEW_WIDTH         = 250
880 # Use this tag to change the font size of Latex formulas included 
881 # as images in the HTML documentation. The default is 10. Note that 
882 # when you change the font size after a successful doxygen run you need 
883 # to manually remove any form_*.png images from the HTML output directory 
884 # to force them to be regenerated.
886 FORMULA_FONTSIZE       = 10
888 #---------------------------------------------------------------------------
889 # configuration options related to the LaTeX output
890 #---------------------------------------------------------------------------
892 # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
893 # generate Latex output.
895 GENERATE_LATEX         = NO
897 # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
898 # If a relative path is entered the value of OUTPUT_DIRECTORY will be 
899 # put in front of it. If left blank `latex' will be used as the default path.
901 LATEX_OUTPUT           = 
903 # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be 
904 # invoked. If left blank `latex' will be used as the default command name.
906 LATEX_CMD_NAME         = latex
908 # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 
909 # generate index for LaTeX. If left blank `makeindex' will be used as the 
910 # default command name.
912 MAKEINDEX_CMD_NAME     = makeindex
914 # If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
915 # LaTeX documents. This may be useful for small projects and may help to 
916 # save some trees in general.
918 COMPACT_LATEX          = NO
920 # The PAPER_TYPE tag can be used to set the paper type that is used 
921 # by the printer. Possible values are: a4, a4wide, letter, legal and 
922 # executive. If left blank a4wide will be used.
924 PAPER_TYPE             = letter
926 # The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
927 # packages that should be included in the LaTeX output.
929 EXTRA_PACKAGES         = 
931 # The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
932 # the generated latex document. The header should contain everything until 
933 # the first chapter. If it is left blank doxygen will generate a 
934 # standard header. Notice: only use this tag if you know what you are doing!
936 LATEX_HEADER           = 
938 # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
939 # is prepared for conversion to pdf (using ps2pdf). The pdf file will 
940 # contain links (just like the HTML output) instead of page references 
941 # This makes the output suitable for online browsing using a pdf viewer.
943 PDF_HYPERLINKS         = NO
945 # If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
946 # plain latex in the generated Makefile. Set this option to YES to get a 
947 # higher quality PDF documentation.
949 USE_PDFLATEX           = NO
951 # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
952 # command to the generated LaTeX files. This will instruct LaTeX to keep 
953 # running if errors occur, instead of asking the user for help. 
954 # This option is also used when generating formulas in HTML.
956 LATEX_BATCHMODE        = NO
958 # If LATEX_HIDE_INDICES is set to YES then doxygen will not 
959 # include the index chapters (such as File Index, Compound Index, etc.) 
960 # in the output.
962 LATEX_HIDE_INDICES     = NO
964 #---------------------------------------------------------------------------
965 # configuration options related to the RTF output
966 #---------------------------------------------------------------------------
968 # If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
969 # The RTF output is optimized for Word 97 and may not look very pretty with 
970 # other RTF readers or editors.
972 GENERATE_RTF           = NO
974 # The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
975 # If a relative path is entered the value of OUTPUT_DIRECTORY will be 
976 # put in front of it. If left blank `rtf' will be used as the default path.
978 RTF_OUTPUT             = 
980 # If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
981 # RTF documents. This may be useful for small projects and may help to 
982 # save some trees in general.
984 COMPACT_RTF            = NO
986 # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
987 # will contain hyperlink fields. The RTF file will 
988 # contain links (just like the HTML output) instead of page references. 
989 # This makes the output suitable for online browsing using WORD or other 
990 # programs which support those fields. 
991 # Note: wordpad (write) and others do not support links.
993 RTF_HYPERLINKS         = NO
995 # Load stylesheet definitions from file. Syntax is similar to doxygen's 
996 # config file, i.e. a series of assignments. You only have to provide 
997 # replacements, missing definitions are set to their default value.
999 RTF_STYLESHEET_FILE    = 
1001 # Set optional variables used in the generation of an rtf document. 
1002 # Syntax is similar to doxygen's config file.
1004 RTF_EXTENSIONS_FILE    = 
1006 #---------------------------------------------------------------------------
1007 # configuration options related to the man page output
1008 #---------------------------------------------------------------------------
1010 # If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
1011 # generate man pages
1013 GENERATE_MAN           = NO
1015 # The MAN_OUTPUT tag is used to specify where the man pages will be put. 
1016 # If a relative path is entered the value of OUTPUT_DIRECTORY will be 
1017 # put in front of it. If left blank `man' will be used as the default path.
1019 MAN_OUTPUT             = 
1021 # The MAN_EXTENSION tag determines the extension that is added to 
1022 # the generated man pages (default is the subroutine's section .3)
1024 MAN_EXTENSION          = 
1026 # If the MAN_LINKS tag is set to YES and Doxygen generates man output, 
1027 # then it will generate one additional man file for each entity 
1028 # documented in the real man page(s). These additional files 
1029 # only source the real man page, but without them the man command 
1030 # would be unable to find the correct page. The default is NO.
1032 MAN_LINKS              = NO
1034 #---------------------------------------------------------------------------
1035 # configuration options related to the XML output
1036 #---------------------------------------------------------------------------
1038 # If the GENERATE_XML tag is set to YES Doxygen will 
1039 # generate an XML file that captures the structure of 
1040 # the code including all documentation.
1042 GENERATE_XML           = NO
1044 # The XML_OUTPUT tag is used to specify where the XML pages will be put. 
1045 # If a relative path is entered the value of OUTPUT_DIRECTORY will be 
1046 # put in front of it. If left blank `xml' will be used as the default path.
1048 XML_OUTPUT             = xml
1050 # The XML_SCHEMA tag can be used to specify an XML schema, 
1051 # which can be used by a validating XML parser to check the 
1052 # syntax of the XML files.
1054 XML_SCHEMA             = 
1056 # The XML_DTD tag can be used to specify an XML DTD, 
1057 # which can be used by a validating XML parser to check the 
1058 # syntax of the XML files.
1060 XML_DTD                = 
1062 # If the XML_PROGRAMLISTING tag is set to YES Doxygen will 
1063 # dump the program listings (including syntax highlighting 
1064 # and cross-referencing information) to the XML output. Note that 
1065 # enabling this will significantly increase the size of the XML output.
1067 XML_PROGRAMLISTING     = YES
1069 #---------------------------------------------------------------------------
1070 # configuration options for the AutoGen Definitions output
1071 #---------------------------------------------------------------------------
1073 # If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will 
1074 # generate an AutoGen Definitions (see autogen.sf.net) file 
1075 # that captures the structure of the code including all 
1076 # documentation. Note that this feature is still experimental 
1077 # and incomplete at the moment.
1079 GENERATE_AUTOGEN_DEF   = NO
1081 #---------------------------------------------------------------------------
1082 # configuration options related to the Perl module output
1083 #---------------------------------------------------------------------------
1085 # If the GENERATE_PERLMOD tag is set to YES Doxygen will 
1086 # generate a Perl module file that captures the structure of 
1087 # the code including all documentation. Note that this 
1088 # feature is still experimental and incomplete at the 
1089 # moment.
1091 GENERATE_PERLMOD       = NO
1093 # If the PERLMOD_LATEX tag is set to YES Doxygen will generate 
1094 # the necessary Makefile rules, Perl scripts and LaTeX code to be able 
1095 # to generate PDF and DVI output from the Perl module output.
1097 PERLMOD_LATEX          = NO
1099 # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be 
1100 # nicely formatted so it can be parsed by a human reader.  This is useful 
1101 # if you want to understand what is going on.  On the other hand, if this 
1102 # tag is set to NO the size of the Perl module output will be much smaller 
1103 # and Perl will parse it just the same.
1105 PERLMOD_PRETTY         = YES
1107 # The names of the make variables in the generated doxyrules.make file 
1108 # are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. 
1109 # This is useful so different doxyrules.make files included by the same 
1110 # Makefile don't overwrite each other's variables.
1112 PERLMOD_MAKEVAR_PREFIX = 
1114 #---------------------------------------------------------------------------
1115 # Configuration options related to the preprocessor   
1116 #---------------------------------------------------------------------------
1118 # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
1119 # evaluate all C-preprocessor directives found in the sources and include 
1120 # files.
1122 ENABLE_PREPROCESSING   = YES
1124 # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
1125 # names in the source code. If set to NO (the default) only conditional 
1126 # compilation will be performed. Macro expansion can be done in a controlled 
1127 # way by setting EXPAND_ONLY_PREDEF to YES.
1129 MACRO_EXPANSION        = NO
1131 # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
1132 # then the macro expansion is limited to the macros specified with the 
1133 # PREDEFINED and EXPAND_AS_DEFINED tags.
1135 EXPAND_ONLY_PREDEF     = NO
1137 # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
1138 # in the INCLUDE_PATH (see below) will be search if a #include is found.
1140 SEARCH_INCLUDES        = YES
1142 # The INCLUDE_PATH tag can be used to specify one or more directories that 
1143 # contain include files that are not input files but should be processed by 
1144 # the preprocessor.
1146 INCLUDE_PATH           = ../include
1148 # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
1149 # patterns (like *.h and *.hpp) to filter out the header-files in the 
1150 # directories. If left blank, the patterns specified with FILE_PATTERNS will 
1151 # be used.
1153 INCLUDE_FILE_PATTERNS  = 
1155 # The PREDEFINED tag can be used to specify one or more macro names that 
1156 # are defined before the preprocessor is started (similar to the -D option of 
1157 # gcc). The argument of the tag is a list of macros of the form: name 
1158 # or name=definition (no spaces). If the definition and the = are 
1159 # omitted =1 is assumed. To prevent a macro definition from being 
1160 # undefined via #undef or recursively expanded use the := operator 
1161 # instead of the = operator.
1163 PREDEFINED             = 
1165 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then 
1166 # this tag can be used to specify a list of macro names that should be expanded. 
1167 # The macro definition that is found in the sources will be used. 
1168 # Use the PREDEFINED tag if you want to use a different macro definition.
1170 EXPAND_AS_DEFINED      = 
1172 # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 
1173 # doxygen's preprocessor will remove all function-like macros that are alone 
1174 # on a line, have an all uppercase name, and do not end with a semicolon. Such 
1175 # function macros are typically used for boiler-plate code, and will confuse 
1176 # the parser if not removed.
1178 SKIP_FUNCTION_MACROS   = YES
1180 #---------------------------------------------------------------------------
1181 # Configuration::additions related to external references   
1182 #---------------------------------------------------------------------------
1184 # The TAGFILES option can be used to specify one or more tagfiles. 
1185 # Optionally an initial location of the external documentation 
1186 # can be added for each tagfile. The format of a tag file without 
1187 # this location is as follows: 
1188 #   TAGFILES = file1 file2 ... 
1189 # Adding location for the tag files is done as follows: 
1190 #   TAGFILES = file1=loc1 "file2 = loc2" ... 
1191 # where "loc1" and "loc2" can be relative or absolute paths or 
1192 # URLs. If a location is present for each tag, the installdox tool 
1193 # does not have to be run to correct the links.
1194 # Note that each tag file must have a unique name
1195 # (where the name does NOT include the path)
1196 # If a tag file is not located in the directory in which doxygen 
1197 # is run, you must also specify the path to the tagfile here.
1199 TAGFILES               = 
1201 # When a file name is specified after GENERATE_TAGFILE, doxygen will create 
1202 # a tag file that is based on the input files it reads.
1204 GENERATE_TAGFILE       = 
1206 # If the ALLEXTERNALS tag is set to YES all external classes will be listed 
1207 # in the class index. If set to NO only the inherited external classes 
1208 # will be listed.
1210 ALLEXTERNALS           = YES
1212 # If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed 
1213 # in the modules index. If set to NO, only the current project's groups will 
1214 # be listed.
1216 EXTERNAL_GROUPS        = YES
1218 # The PERL_PATH should be the absolute path and name of the perl script 
1219 # interpreter (i.e. the result of `which perl').
1221 PERL_PATH              = 
1223 #---------------------------------------------------------------------------
1224 # Configuration options related to the dot tool   
1225 #---------------------------------------------------------------------------
1227 # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
1228 # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base 
1229 # or super classes. Setting the tag to NO turns the diagrams off. Note that 
1230 # this option is superseded by the HAVE_DOT option below. This is only a 
1231 # fallback. It is recommended to install and use dot, since it yields more 
1232 # powerful graphs.
1234 CLASS_DIAGRAMS         = YES
1236 # You can define message sequence charts within doxygen comments using the \msc 
1237 # command. Doxygen will then run the mscgen tool (see 
1238 # http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the 
1239 # documentation. The MSCGEN_PATH tag allows you to specify the directory where 
1240 # the mscgen tool resides. If left empty the tool is assumed to be found in the 
1241 # default search path.
1243 MSCGEN_PATH            = 
1245 # If set to YES, the inheritance and collaboration graphs will hide 
1246 # inheritance and usage relations if the target is undocumented 
1247 # or is not a class.
1249 HIDE_UNDOC_RELATIONS   = NO
1251 # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
1252 # available from the path. This tool is part of Graphviz, a graph visualization 
1253 # toolkit from AT&T and Lucent Bell Labs. The other options in this section 
1254 # have no effect if this option is set to NO (the default)
1256 HAVE_DOT               = YES
1258 # By default doxygen will write a font called FreeSans.ttf to the output 
1259 # directory and reference it in all dot files that doxygen generates. This 
1260 # font does not include all possible unicode characters however, so when you need 
1261 # these (or just want a differently looking font) you can specify the font name 
1262 # using DOT_FONTNAME. You need need to make sure dot is able to find the font, 
1263 # which can be done by putting it in a standard location or by setting the 
1264 # DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory 
1265 # containing the font.
1267 DOT_FONTNAME           = FreeSans
1269 # By default doxygen will tell dot to use the output directory to look for the 
1270 # FreeSans.ttf font (which doxygen will put there itself). If you specify a 
1271 # different font using DOT_FONTNAME you can set the path where dot 
1272 # can find it using this tag.
1274 DOT_FONTPATH           = 
1276 # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
1277 # will generate a graph for each documented class showing the direct and 
1278 # indirect inheritance relations. Setting this tag to YES will force the 
1279 # the CLASS_DIAGRAMS tag to NO.
1281 CLASS_GRAPH            = YES
1283 # If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
1284 # will generate a graph for each documented class showing the direct and 
1285 # indirect implementation dependencies (inheritance, containment, and 
1286 # class references variables) of the class with other documented classes.
1288 COLLABORATION_GRAPH    = YES
1290 # If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen 
1291 # will generate a graph for groups, showing the direct groups dependencies
1293 GROUP_GRAPHS           = YES
1295 # If the UML_LOOK tag is set to YES doxygen will generate inheritance and 
1296 # collaboration diagrams in a style similar to the OMG's Unified Modeling 
1297 # Language.
1299 UML_LOOK               = NO
1301 # If set to YES, the inheritance and collaboration graphs will show the 
1302 # relations between templates and their instances.
1304 TEMPLATE_RELATIONS     = YES
1306 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
1307 # tags are set to YES then doxygen will generate a graph for each documented 
1308 # file showing the direct and indirect include dependencies of the file with 
1309 # other documented files.
1311 INCLUDE_GRAPH          = YES
1313 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
1314 # HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
1315 # documented header file showing the documented files that directly or 
1316 # indirectly include this file.
1318 INCLUDED_BY_GRAPH      = YES
1320 # If the CALL_GRAPH and HAVE_DOT options are set to YES then 
1321 # doxygen will generate a call dependency graph for every global function 
1322 # or class method. Note that enabling this option will significantly increase 
1323 # the time of a run. So in most cases it will be better to enable call graphs 
1324 # for selected functions only using the \callgraph command.
1326 CALL_GRAPH             = NO
1328 # If the CALLER_GRAPH and HAVE_DOT tags are set to YES then 
1329 # doxygen will generate a caller dependency graph for every global function 
1330 # or class method. Note that enabling this option will significantly increase 
1331 # the time of a run. So in most cases it will be better to enable caller 
1332 # graphs for selected functions only using the \callergraph command.
1334 CALLER_GRAPH           = NO
1336 # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
1337 # will graphical hierarchy of all classes instead of a textual one.
1339 GRAPHICAL_HIERARCHY    = YES
1341 # If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES 
1342 # then doxygen will show the dependencies a directory has on other directories 
1343 # in a graphical way. The dependency relations are determined by the #include
1344 # relations between the files in the directories.
1346 DIRECTORY_GRAPH        = YES
1348 # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images 
1349 # generated by dot. Possible values are png, jpg, or gif
1350 # If left blank png will be used.
1352 DOT_IMAGE_FORMAT       = png
1354 # The tag DOT_PATH can be used to specify the path where the dot tool can be 
1355 # found. If left blank, it is assumed the dot tool can be found in the path.
1357 DOT_PATH               = @DOT@
1359 # The DOTFILE_DIRS tag can be used to specify one or more directories that 
1360 # contain dot files that are included in the documentation (see the 
1361 # \dotfile command).
1363 DOTFILE_DIRS           = 
1365 # The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of 
1366 # nodes that will be shown in the graph. If the number of nodes in a graph 
1367 # becomes larger than this value, doxygen will truncate the graph, which is 
1368 # visualized by representing a node as a red box. Note that doxygen if the 
1369 # number of direct children of the root node in a graph is already larger than 
1370 # DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note 
1371 # that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
1373 DOT_GRAPH_MAX_NODES    = 50
1375 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 
1376 # graphs generated by dot. A depth value of 3 means that only nodes reachable 
1377 # from the root by following a path via at most 3 edges will be shown. Nodes 
1378 # that lay further from the root node will be omitted. Note that setting this 
1379 # option to 1 or 2 may greatly reduce the computation time needed for large 
1380 # code bases. Also note that the size of a graph can be further restricted by 
1381 # DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
1383 MAX_DOT_GRAPH_DEPTH    = 0
1385 # Set the DOT_TRANSPARENT tag to YES to generate images with a transparent 
1386 # background. This is enabled by default, which results in a transparent 
1387 # background. Warning: Depending on the platform used, enabling this option 
1388 # may lead to badly anti-aliased labels on the edges of a graph (i.e. they 
1389 # become hard to read).
1391 DOT_TRANSPARENT        = YES
1393 # Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output 
1394 # files in one run (i.e. multiple -o and -T options on the command line). This 
1395 # makes dot run faster, but since only newer versions of dot (>1.8.10) 
1396 # support this, this feature is disabled by default.
1398 DOT_MULTI_TARGETS      = NO
1400 # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
1401 # generate a legend page explaining the meaning of the various boxes and 
1402 # arrows in the dot generated graphs.
1404 GENERATE_LEGEND        = YES
1406 # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
1407 # remove the intermediate dot files that are used to generate 
1408 # the various graphs.
1410 DOT_CLEANUP            = YES
1412 #---------------------------------------------------------------------------
1413 # Configuration::additions related to the search engine   
1414 #---------------------------------------------------------------------------
1416 # The SEARCHENGINE tag specifies whether or not a search engine should be 
1417 # used. If set to NO the values of all tags below this one will be ignored.
1419 SEARCHENGINE           = NO