Orb/Doxygen/doc/config.doc
changeset 3 d8fccb2cd802
parent 0 42188c7ea2d9
equal deleted inserted replaced
2:932c358ece3e 3:d8fccb2cd802
       
     1 /******************************************************************************
       
     2  *
       
     3  * 
       
     4  *
       
     5  * Copyright (C) 1997-2008 by Dimitri van Heesch.
       
     6  *
       
     7  * Permission to use, copy, modify, and distribute this software and its
       
     8  * documentation under the terms of the GNU General Public License is hereby 
       
     9  * granted. No representations are made about the suitability of this software 
       
    10  * for any purpose. It is provided "as is" without express or implied warranty.
       
    11  * See the GNU General Public License for more details.
       
    12  *
       
    13  * Documents produced by Doxygen are derivative works derived from the
       
    14  * input used in their production; they are not affected by this license.
       
    15  *
       
    16  */
       
    17 /*! \page config Configuration
       
    18 
       
    19 \section config_format Format
       
    20 
       
    21 A configuration file is a free-form ASCII text file with a structure
       
    22 that is similar to that of a Makefile, with the default name \c Doxyfile. It is
       
    23 parsed by \c doxygen.  The file may contain tabs and newlines for
       
    24 formatting purposes.  The statements in the file are case-sensitive.
       
    25 Comments may be placed anywhere within the file (except within quotes).
       
    26 Comments begin with the \# character and end at the end of the line.
       
    27 
       
    28 The file essentially consists of a list of assignment statements.
       
    29 Each statement consists of a \c TAG_NAME written in capitals,
       
    30 followed by the <code>=</code> character and one or more values. If the same tag
       
    31 is assigned more than once, the last assignment overwrites any earlier
       
    32 assignment. For options that take a list as their argument,
       
    33 the <code>+=</code> operator can be used instead of <code>=</code> to append 
       
    34 new values to the list. Values are sequences of non-blanks. If the value should 
       
    35 contain one or more blanks it must be surrounded by quotes (&quot;...&quot;).
       
    36 Multiple lines can be concatenated by inserting a backslash (\\)
       
    37 as the last character of a line. Environment variables can be expanded 
       
    38 using the pattern <code>\$(ENV_VARIABLE_NAME)</code>.
       
    39 
       
    40 You can also include part of a configuration file from another configuration
       
    41 file using a <code>\@INCLUDE</code> tag as follows:
       
    42 \verbatim
       
    43 @INCLUDE = config_file_name
       
    44 \endverbatim 
       
    45 The include file is searched in the current working directory. You can 
       
    46 also specify a list of directories that should be searched before looking
       
    47 in the current working directory. Do this by putting a <code>\@INCLUDE_PATH</code> tag 
       
    48 with these paths before the <code>\@INCLUDE</code> tag, e.g:
       
    49 \verbatim
       
    50 @INCLUDE_PATH = my_config_dir
       
    51 \endverbatim
       
    52 
       
    53 The configuration options can be divided into several categories.
       
    54 Below is an alphabetical index of the tags that are recognized 
       
    55 followed by the descriptions of the tags grouped by category.
       
    56 
       
    57 \secreflist
       
    58 \refitem cfg_abbreviate_brief ABBREVIATE_BRIEF
       
    59 \refitem cfg_aliases ALIASES
       
    60 \refitem cfg_allexternals ALLEXTERNALS 
       
    61 \refitem cfg_alphabetical_index ALPHABETICAL_INDEX 
       
    62 \refitem cfg_always_detailed_sec ALWAYS_DETAILED_SEC
       
    63 \refitem cfg_binary_toc BINARY_TOC
       
    64 \refitem cfg_brief_member_desc BRIEF_MEMBER_DESC 
       
    65 \refitem cfg_builtin_stl_support BUILTIN_STL_SUPPORT
       
    66 \refitem cfg_call_graph CALL_GRAPH
       
    67 \refitem cfg_caller_graph CALLER_GRAPH
       
    68 \refitem cfg_case_sense_names CASE_SENSE_NAMES 
       
    69 \refitem cfg_chm_file CHM_FILE
       
    70 \refitem cfg_class_diagrams CLASS_DIAGRAMS 
       
    71 \refitem cfg_class_graph CLASS_GRAPH
       
    72 \refitem cfg_collaboration_graph COLLABORATION_GRAPH
       
    73 \refitem cfg_cols_in_alpha_index COLS_IN_ALPHA_INDEX
       
    74 \refitem cfg_compact_latex COMPACT_LATEX 
       
    75 \refitem cfg_compact_rtf COMPACT_RTF
       
    76 \refitem cfg_cpp_cli_support CPP_CLI_SUPPORT
       
    77 \refitem cfg_create_subdirs CREATE_SUBDIRS
       
    78 \refitem cfg_directory_graph DIRECTORY_GRAPH
       
    79 \refitem cfg_disable_index DISABLE_INDEX 
       
    80 \refitem cfg_distribute_group_doc DISTRIBUTE_GROUP_DOC
       
    81 \refitem cfg_docset_bundle_id DOCSET_BUNDLE_ID
       
    82 \refitem cfg_docset_feedname DOCSET_FEEDNAME
       
    83 \refitem cfg_dot_cleanup DOT_CLEANUP
       
    84 \refitem cfg_dot_fontname DOT_FONTNAME
       
    85 \refitem cfg_dot_fontpath DOT_FONTPATH
       
    86 \refitem cfg_dot_fontsize DOT_FONTSIZE
       
    87 \refitem cfg_dot_graph_max_nodes DOT_GRAPH_MAX_NODES
       
    88 \refitem cfg_dot_image_format DOT_IMAGE_FORMAT
       
    89 \refitem cfg_dot_multi_targets DOT_MULTI_TARGETS
       
    90 \refitem cfg_dot_path DOT_PATH
       
    91 \refitem cfg_dot_transparent DOT_TRANSPARENT
       
    92 \refitem cfg_dotfile_dirs DOTFILE_DIRS
       
    93 \refitem cfg_doxyfile_encoding DOXYFILE_ENCODING
       
    94 \refitem cfg_eclipse_doc_id ECLIPSE_DOC_ID
       
    95 \refitem cfg_enable_preprocessing ENABLE_PREPROCESSING
       
    96 \refitem cfg_enabled_sections ENABLED_SECTIONS
       
    97 \refitem cfg_enum_values_per_line ENUM_VALUES_PER_LINE
       
    98 \refitem cfg_example_path EXAMPLE_PATH
       
    99 \refitem cfg_example_patterns EXAMPLE_PATTERNS
       
   100 \refitem cfg_example_recursive EXAMPLE_RECURSIVE
       
   101 \refitem cfg_exclude EXCLUDE
       
   102 \refitem cfg_exclude_patterns EXCLUDE_PATTERNS
       
   103 \refitem cfg_exclude_symlinks EXCLUDE_SYMLINKS
       
   104 \refitem cfg_expand_as_defined EXPAND_AS_DEFINED
       
   105 \refitem cfg_expand_only_predef EXPAND_ONLY_PREDEF
       
   106 \refitem cfg_extension_mapping EXTENSION_MAPPING
       
   107 \refitem cfg_external_groups EXTERNAL_GROUPS
       
   108 \refitem cfg_extra_packages EXTRA_PACKAGES
       
   109 \refitem cfg_extract_all EXTRACT_ALL
       
   110 \refitem cfg_extract_anon_nspaces EXTRACT_ANON_NSPACES
       
   111 \refitem cfg_extract_local_classes EXTRACT_LOCAL_CLASSES
       
   112 \refitem cfg_extract_local_methods EXTRACT_LOCAL_METHODS
       
   113 \refitem cfg_extract_private EXTRACT_PRIVATE
       
   114 \refitem cfg_extract_static EXTRACT_STATIC
       
   115 \refitem cfg_file_patterns FILE_PATTERNS
       
   116 \refitem cfg_file_version_filter FILE_VERSION_FILTER
       
   117 \refitem cfg_filter_patterns FILTER_PATTERNS
       
   118 \refitem cfg_filter_source_files FILTER_SOURCE_FILES
       
   119 \refitem cfg_force_local_includes FORCE_LOCAL_INCLUDES
       
   120 \refitem cfg_formula_fontsize FORMULA_FONTSIZE
       
   121 \refitem cfg_full_path_names FULL_PATH_NAMES
       
   122 \refitem cfg_generate_autogen_def GENERATE_AUTOGEN_DEF
       
   123 \refitem cfg_generate_buglist GENERATE_BUGLIST
       
   124 \refitem cfg_generate_chi GENERATE_CHI
       
   125 \refitem cfg_generate_deprecatedlist GENERATE_DEPRECIATEDLIST
       
   126 \refitem cfg_generate_docset GENERATE_DOCSET
       
   127 \refitem cfg_generate_eclipsehelp GENERATE_ECLIPSEHELP
       
   128 \refitem cfg_generate_html GENERATE_HTML
       
   129 \refitem cfg_generate_htmlhelp GENERATE_HTMLHELP
       
   130 \refitem cfg_generate_latex GENERATE_LATEX
       
   131 \refitem cfg_generate_legend GENERATE_LEGEND
       
   132 \refitem cfg_generate_man GENERATE_MAN
       
   133 \refitem cfg_generate_perlmod GENERATE_PERLMOD
       
   134 \refitem cfg_generate_qhp GENERATE_QHP
       
   135 \refitem cfg_generate_rtf GENERATE_RTF
       
   136 \refitem cfg_generate_tagfile GENERATE_TAGFILE
       
   137 \refitem cfg_generate_testlist GENERATE_TESTLIST
       
   138 \refitem cfg_generate_todolist GENERATE_TODOLIST
       
   139 \refitem cfg_generate_treeview GENERATE_TREEVIEW
       
   140 \refitem cfg_generate_xml GENERATE_XML
       
   141 \refitem cfg_graphical_hierarchy GRAPHICAL_HIERARCHY
       
   142 \refitem cfg_group_graphs GROUP_GRAPHS
       
   143 \refitem cfg_have_dot HAVE_DOT
       
   144 \refitem cfg_hhc_location HHC_LOCATION
       
   145 \refitem cfg_hide_friend_compounds HIDE_FRIEND_COMPOUNDS
       
   146 \refitem cfg_hide_in_body_docs HIDE_IN_BODY_DOCS
       
   147 \refitem cfg_hide_scope_names HIDE_SCOPE_NAMES
       
   148 \refitem cfg_hide_undoc_classes HIDE_UNDOC_CLASSES
       
   149 \refitem cfg_hide_undoc_members HIDE_UNDOC_MEMBERS
       
   150 \refitem cfg_hide_undoc_relations HIDE_UNDOC_RELATIONS
       
   151 \refitem cfg_html_align_members HTML_ALIGN_MEMBERS
       
   152 \refitem cfg_html_dynamic_sections HTML_DYNAMIC_SECTIONS
       
   153 \refitem cfg_html_file_extension HTML_FILE_EXTENSION
       
   154 \refitem cfg_html_footer HTML_FOOTER
       
   155 \refitem cfg_html_header HTML_HEADER
       
   156 \refitem cfg_html_output HTML_OUTPUT
       
   157 \refitem cfg_html_stylesheet HTML_STYLESHEET
       
   158 \refitem cfg_html_timestamp HTML_TIMESTAMP
       
   159 \refitem cfg_idl_property_support IDL_PROPERTY_SUPPORT
       
   160 \refitem cfg_ignore_prefix IGNORE_PREFIX
       
   161 \refitem cfg_image_path IMAGE_PATH
       
   162 \refitem cfg_include_graph INCLUDE_GRAPH
       
   163 \refitem cfg_include_path INCLUDE_PATH
       
   164 \refitem cfg_included_by_graph INCLUDED_BY_GRAPH
       
   165 \refitem cfg_inherit_docs INHERIT_DOCS
       
   166 \refitem cfg_inline_info INLINE_INFO
       
   167 \refitem cfg_inline_inherited_memb INLINE_INHERITED_MEMB
       
   168 \refitem cfg_inline_sources INLINE_SOURCES
       
   169 \refitem cfg_input INPUT
       
   170 \refitem cfg_input_encoding INPUT_ENCODING
       
   171 \refitem cfg_input_filter INPUT_FILTER
       
   172 \refitem cfg_internal_docs INTERNAL_DOCS
       
   173 \refitem cfg_javadoc_autobrief JAVADOC_AUTOBRIEF
       
   174 \refitem cfg_latex_batchmode LATEX_BATCHMODE
       
   175 \refitem cfg_latex_cmd_name LATEX_CMD_NAME
       
   176 \refitem cfg_latex_header LATEX_HEADER
       
   177 \refitem cfg_latex_hide_indices LATEX_HIDE_INDICES
       
   178 \refitem cfg_latex_output LATEX_OUTPUT
       
   179 \refitem cfg_layout_file LAYOUT_FILE
       
   180 \refitem cfg_macro_expansion MACRO_EXPANSION
       
   181 \refitem cfg_makeindex_cmd_name MAKEINDEX_CMD_NAME
       
   182 \refitem cfg_man_extension MAN_EXTENSION
       
   183 \refitem cfg_man_links MAN_LINKS
       
   184 \refitem cfg_man_output MAN_OUTPUT
       
   185 \refitem cfg_max_dot_graph_depth MAX_DOT_GRAPH_DEPTH
       
   186 \refitem cfg_max_initializer_lines MAX_INITIALIZER_LINES
       
   187 \refitem cfg_mscgen_path MSCGEN_PATH
       
   188 \refitem cfg_multiline_cpp_is_brief MULTILINE_CPP_IS_BRIEF
       
   189 \refitem cfg_optimize_for_fortran OPTIMIZE_FOR_FORTRAN
       
   190 \refitem cfg_optimize_output_for_c OPTIMIZE_OUTPUT_FOR_C
       
   191 \refitem cfg_optimize_output_java OPTIMIZE_OUTPUT_JAVA
       
   192 \refitem cfg_optimize_output_vhdl OPTIMIZE_OUTPUT_VHDL
       
   193 \refitem cfg_output_directory OUTPUT_DIRECTORY
       
   194 \refitem cfg_output_language OUTPUT_LANGUAGE
       
   195 \refitem cfg_paper_type PAPER_TYPE
       
   196 \refitem cfg_pdf_hyperlinks PDF_HYPERLINKS
       
   197 \refitem cfg_perl_path PERL_PATH
       
   198 \refitem cfg_perlmod_latex PERLMOD_LATEX
       
   199 \refitem cfg_perlmod_makevar_prefix PERLMOD_MAKEVAR_PREFIX
       
   200 \refitem cfg_perlmod_pretty PERLMOD_PRETTY
       
   201 \refitem cfg_predefined PREDEFINED
       
   202 \refitem cfg_project_name PROJECT_NAME
       
   203 \refitem cfg_project_number PROJECT_NUMBER
       
   204 \refitem cfg_qhg_location QHG_LOCATION
       
   205 \refitem cfg_qhp_cust_filter_attrs QHP_CUST_FILTER_ATTRS
       
   206 \refitem cfg_qhp_cust_filter_name QHP_CUST_FILTER_NAME
       
   207 \refitem cfg_qhp_namespace QHP_NAMESPACE
       
   208 \refitem cfg_qhp_sect_filter_attrs QHP_SECT_FILTER_ATTRS
       
   209 \refitem cfg_qhp_virtual_folder QHP_VIRTUAL_FOLDER
       
   210 \refitem cfg_qt_autobrief QT_AUTOBRIEF
       
   211 \refitem cfg_quiet QUIET
       
   212 \refitem cfg_recursive RECURSIVE
       
   213 \refitem cfg_referenced_by_relation REFERENCED_BY_RELATION
       
   214 \refitem cfg_references_link_source REFERENCES_LINK_SOURCE
       
   215 \refitem cfg_references_relation REFERENCES_RELATION
       
   216 \refitem cfg_repeat_brief REPEAT_BRIEF
       
   217 \refitem cfg_rtf_extensions_file RTF_EXTENSIONS_FILE
       
   218 \refitem cfg_rtf_hyperlinks RTF_HYPERLINKS
       
   219 \refitem cfg_rtf_output RTF_OUTPUT
       
   220 \refitem cfg_rtf_stylesheet_file RTF_STYLESHEET_FILE
       
   221 \refitem cfg_search_includes SEARCH_INCLUDES
       
   222 \refitem cfg_searchengine SEARCHENGINE
       
   223 \refitem cfg_separate_member_pages SEPARATE_MEMBER_PAGES
       
   224 \refitem cfg_server_based_search SERVER_BASED_SEARCH
       
   225 \refitem cfg_short_names SHORT_NAMES
       
   226 \refitem cfg_show_dirs SHOW_DIRECTORIES
       
   227 \refitem cfg_show_files SHOW_FILES
       
   228 \refitem cfg_show_include_files SHOW_INCLUDE_FILES
       
   229 \refitem cfg_show_namespaces SHOW_NAMESPACES
       
   230 \refitem cfg_show_used_files SHOW_USED_FILES
       
   231 \refitem cfg_sip_support SIP_SUPPORT
       
   232 \refitem cfg_skip_function_macros SKIP_FUNCTION_MACROS
       
   233 \refitem cfg_sort_brief_docs SORT_BRIEF_DOCS
       
   234 \refitem cfg_sort_by_scope_name SORT_BY_SCOPE_NAME
       
   235 \refitem cfg_sort_group_names SORT_GROUP_NAMES
       
   236 \refitem cfg_sort_member_docs SORT_MEMBER_DOCS
       
   237 \refitem cfg_sort_members_constructors_first SORT_MEMBERS_CTORS_1ST
       
   238 \refitem cfg_source_browser SOURCE_BROWSER
       
   239 \refitem cfg_strip_code_comments STRIP_CODE_COMMENTS
       
   240 \refitem cfg_strip_from_inc_path STRIP_FROM_INC_PATH
       
   241 \refitem cfg_strip_from_path STRIP_FROM_PATH
       
   242 \refitem cfg_subgrouping SUBGROUPING
       
   243 \refitem cfg_symbol_cache_size SYMBOL_CACHE_SIZE
       
   244 \refitem cfg_tab_size TAB_SIZE
       
   245 \refitem cfg_tagfiles TAGFILES
       
   246 \refitem cfg_template_relations TEMPLATE_RELATIONS
       
   247 \refitem cfg_toc_expand TOC_EXPAND
       
   248 \refitem cfg_treeview_width TREEVIEW_WIDTH
       
   249 \refitem cfg_typedef_hides_struct TYPEDEF_HIDES_STRUCT
       
   250 \refitem cfg_uml_look UML_LOOK
       
   251 \refitem cfg_use_htags USE_HTAGS
       
   252 \refitem cfg_use_inline_trees USE_INLINE_TREES
       
   253 \refitem cfg_use_pdflatex USE_PDFLATEX
       
   254 \refitem cfg_verbatim_headers VERBATIM_HEADERS
       
   255 \refitem cfg_warn_format WARN_FORMAT
       
   256 \refitem cfg_warn_if_doc_error WARN_IF_DOC_ERROR
       
   257 \refitem cfg_warn_if_undocumented WARN_IF_UNDOCUMENTED
       
   258 \refitem cfg_warn_logfile WARN_LOGFILE
       
   259 \refitem cfg_warn_no_paramdoc WARN_NO_PARAMDOC
       
   260 \refitem cfg_warnings WARNINGS
       
   261 \refitem cfg_xml_dtd XML_DTD
       
   262 \refitem cfg_xml_output XML_OUTPUT
       
   263 \refitem cfg_xml_programlisting XML_PROGRAMLISTING
       
   264 \refitem cfg_xml_schema XML_SCHEMA
       
   265 \endsecreflist
       
   266 
       
   267 \section config_project Project related options
       
   268 \anchor cfg_doxyfile_encoding
       
   269 <dl>
       
   270 
       
   271 <dt>\c DOXYFILE_ENCODING <dd>
       
   272  \addindex DOXYFILE_ENCODING
       
   273  This tag specifies the encoding used for all characters in the config file that 
       
   274  follow. The default is UTF-8 which is also the encoding used for all text before
       
   275  the first occurrence of this tag. Doxygen uses libiconv (or the iconv built into
       
   276  libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of
       
   277  possible encodings.
       
   278 
       
   279 \anchor cfg_project_name
       
   280 <dt>\c PROJECT_NAME <dd>
       
   281  \addindex PROJECT_NAME
       
   282  The \c PROJECT_NAME tag is a single word (or a sequence of words
       
   283  surrounded by double-quotes) that should identify the project for which the 
       
   284  documentation is generated. This name is used in the title of most 
       
   285  generated pages and in a few other places.
       
   286 
       
   287 \anchor cfg_project_number
       
   288 <dt>\c PROJECT_NUMBER <dd>
       
   289  \addindex PROJECT_NUMBER
       
   290  The \c PROJECT_NUMBER tag can be used to enter a project or revision number.
       
   291  This could be handy for archiving the generated documentation or
       
   292  if some version control system is used.
       
   293 
       
   294 \anchor cfg_output_directory
       
   295 <dt>\c OUTPUT_DIRECTORY <dd> 
       
   296  \addindex OUTPUT_DIRECTORY
       
   297  The \c OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
       
   298  path into which the generated documentation will be written. 
       
   299  If a relative path is entered, it will be relative to the location 
       
   300  where doxygen was started. If left blank the current directory will be used.
       
   301 
       
   302 \anchor cfg_create_subdirs
       
   303 <dt>\c CREATE_SUBDIRS <dd> 
       
   304  \addindex CREATE_SUBDIRS
       
   305  If the \c CREATE_SUBDIRS tag is set to \c YES, then doxygen will create
       
   306  4096 sub-directories (in 2 levels) under the output directory of each output 
       
   307  format and will distribute the generated files over these directories. 
       
   308  Enabling this option can be useful when feeding doxygen a huge amount of source
       
   309  files, where putting all generated files in the same directory would otherwise
       
   310  causes performance problems for the file system. 
       
   311 
       
   312 \anchor cfg_output_language
       
   313 <dt>\c OUTPUT_LANGUAGE <dd>
       
   314  \addindex OUTPUT_LANGUAGE
       
   315  The \c OUTPUT_LANGUAGE tag is used to specify the language in which all
       
   316  documentation generated by doxygen is written. Doxygen will use this
       
   317  information to generate all constant output in the proper language.
       
   318  The default language is English, other supported languages are:
       
   319  Afrikaans, Arabic, Brazilian, Catalan, Chinese, Croatian, Czech, Danish, Dutch, 
       
   320  Finnish, French, German, Greek, Hungarian, Italian, Japanese, Korean, 
       
   321  Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian, 
       
   322  Slovak, Slovene, Spanish, Swedish, and Ukrainian.
       
   323 
       
   324 \anchor cfg_brief_member_desc
       
   325 <dt>\c BRIEF_MEMBER_DESC <dd>
       
   326  \addindex BRIEF_MEMBER_DESC
       
   327  If the \c BRIEF_MEMBER_DESC tag is set to \c YES (the default) doxygen will
       
   328  include brief member descriptions after the members that are listed in
       
   329  the file and class documentation (similar to JavaDoc).
       
   330  Set to NO to disable this.
       
   331 
       
   332 \anchor cfg_repeat_brief
       
   333 <dt>\c REPEAT_BRIEF <dd>
       
   334  \addindex REPEAT_BRIEF
       
   335  If the \c REPEAT_BRIEF tag is set to \c YES (the default) doxygen will 
       
   336  prepend the brief description of a member or function before the detailed 
       
   337  description 
       
   338 
       
   339  \par Note: 
       
   340  If both \c HIDE_UNDOC_MEMBERS and \c BRIEF_MEMBER_DESC are set to \c NO, the 
       
   341  brief descriptions will be completely suppressed.
       
   342 
       
   343 \anchor cfg_abbreviate_brief
       
   344 <dt>\c ABBREVIATE_BRIEF <dd>
       
   345  \addindex ABBREVIATE_BRIEF
       
   346  This tag implements a quasi-intelligent brief description abbreviator
       
   347  that is used to form the text in various listings. Each string
       
   348  in this list, if found as the leading text of the brief description, will be
       
   349  stripped from the text and the result after processing the whole list, is used
       
   350  as the annotated text. Otherwise, the brief description is used as-is. If left
       
   351  blank, the following values are used ("\$name" is automatically replaced with the
       
   352  name of the entity): "The $name class" "The $name widget" "The $name file"
       
   353  "is" "provides" "specifies" "contains" "represents" "a" "an" "the".
       
   354 
       
   355 \anchor cfg_always_detailed_sec
       
   356 <dt>\c ALWAYS_DETAILED_SEC <dd>
       
   357  \addindex ALWAYS_DETAILED_SEC
       
   358  If the \c ALWAYS_DETAILED_SEC and \c REPEAT_BRIEF tags are both set to \c YES then
       
   359  doxygen will generate a detailed section even if there is only a brief
       
   360  description.
       
   361 
       
   362 \anchor cfg_inline_inherited_memb
       
   363 <dt>\c INLINE_INHERITED_MEMB <dd>
       
   364 \addindex INLINE_INHERITED_MEMB
       
   365  If the \c INLINE_INHERITED_MEMB tag is set to \c YES, doxygen will show all inherited
       
   366  members of a class in the documentation of that class as if those members were
       
   367  ordinary class members. Constructors, destructors and assignment operators of
       
   368  the base classes will not be shown.
       
   369 
       
   370 \anchor cfg_full_path_names
       
   371 <dt>\c FULL_PATH_NAMES <dd>
       
   372  \addindex FULL_PATH_NAMES
       
   373  If the \c FULL_PATH_NAMES tag is set to \c YES doxygen will prepend the full
       
   374  path before files name in the file list and in the header files. If set
       
   375  to NO the shortest path that makes the file name unique will be used
       
   376 
       
   377 \anchor cfg_strip_from_path
       
   378 <dt>\c STRIP_FROM_PATH <dd>
       
   379  \addindex STRIP_FROM_PATH
       
   380  If the \c FULL_PATH_NAMES tag is set to \c YES then the \c STRIP_FROM_PATH tag
       
   381  can be used to strip a user-defined part of the path. Stripping is
       
   382  only done if one of the specified strings matches the left-hand part of the 
       
   383  path. The tag can be used to show relative paths in the file list.
       
   384  If left blank the directory from which doxygen is run is used as the
       
   385  path to strip.
       
   386 
       
   387 \anchor cfg_strip_from_inc_path
       
   388 <dt>\c STRIP_FROM_INC_PATH <dd>
       
   389  \addindex STRIP_FROM_INC_PATH
       
   390  The \c STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of 
       
   391  the path mentioned in the documentation of a class, which tells
       
   392  the reader which header file to include in order to use a class. 
       
   393  If left blank only the name of the header file containing the class
       
   394  definition is used. Otherwise one should specify the include paths that 
       
   395  are normally passed to the compiler using the -I flag.
       
   396 
       
   397 
       
   398 
       
   399 \anchor cfg_case_sense_names
       
   400 <dt>\c CASE_SENSE_NAMES <dd>
       
   401  \addindex CASE_SENSE_NAMES
       
   402  If the \c CASE_SENSE_NAMES tag is set to \c NO then doxygen
       
   403  will only generate file names in lower-case letters. If set to
       
   404  \c YES upper-case letters are also allowed. This is useful if you have
       
   405  classes or files whose names only differ in case and if your file system
       
   406  supports case sensitive file names. Windows users are advised to set this
       
   407  option to NO.
       
   408 
       
   409 \anchor cfg_short_names
       
   410 <dt>\c SHORT_NAMES <dd>
       
   411  \addindex SHORT_NAMES
       
   412  If the \c SHORT_NAMES tag is set to \c YES, doxygen will generate much shorter
       
   413  (but less readable) file names. This can be useful is your file systems
       
   414  doesn't support long names like on DOS, Mac, or CD-ROM.
       
   415 
       
   416 \anchor cfg_javadoc_autobrief
       
   417 <dt>\c JAVADOC_AUTOBRIEF <dd>
       
   418  \addindex JAVADOC_AUTOBRIEF
       
   419   If the \c JAVADOC_AUTOBRIEF is set to \c YES then doxygen
       
   420   will interpret the first line (until the first dot) of a JavaDoc-style
       
   421   comment as the brief description. If set to NO (the default), the 
       
   422   Javadoc-style will behave just like regular Qt-style comments
       
   423   (thus requiring an explicit \@brief command for a brief description.)
       
   424 
       
   425 \anchor cfg_qt_autobrief
       
   426 <dt>\c QT_AUTOBRIEF <dd>
       
   427  \addindex QT_AUTOBRIEF
       
   428   If the \c QT_AUTOBRIEF is set to \c YES then doxygen
       
   429   will interpret the first line (until the first dot) of a Qt-style
       
   430   comment as the brief description. If set to NO (the default), the
       
   431   Qt-style will behave just like regular Qt-style comments (thus
       
   432   requiring an explicit \\brief command for a brief description.)
       
   433 
       
   434 \anchor cfg_builtin_stl_support
       
   435 <dt>\c BUILTIN_STL_SUPPORT <dd>
       
   436  \addindex BUILTIN_STL_SUPPORT
       
   437  If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to
       
   438  include (a tag file for) the STL sources as input, then you should
       
   439  set this tag to \c YES in order to let doxygen match functions declarations and
       
   440  definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
       
   441  func(std::string) {}). This also make the inheritance and collaboration
       
   442  diagrams that involve STL classes more complete and accurate.
       
   443 
       
   444 \anchor cfg_cpp_cli_support
       
   445 <dt>\c CPP_CLI_SUPPORT <dd>
       
   446  \addindex CPP_CLI_SUPPORT
       
   447  If you use Microsoft's C++/CLI language, you should set this option to YES to
       
   448  enable parsing support.
       
   449 
       
   450 \anchor cfg_sip_support
       
   451 <dt>\c SIP_SUPPORT <dd>
       
   452  \addindex OPTIMIZE_OUTPUT_SIP
       
   453  Set the SIP_SUPPORT tag to YES if your project consists 
       
   454  of <a href="http://www.riverbankcomputing.co.uk/sip/">sip</a> sources only. 
       
   455  Doxygen will parse them like normal C++ but will assume all classes use public 
       
   456  instead of private inheritance when no explicit protection keyword is present. 
       
   457 
       
   458 \anchor cfg_idl_property_support
       
   459 <dt>\c IDL_PROPERTY_SUPPORT <dd>
       
   460  \addindex IDL_PROPERTY_SUPPORT
       
   461  For Microsoft's IDL there are propget and propput attributes to indicate getter
       
   462  and setter methods for a property. Setting this option to \c YES (the default)
       
   463  will make doxygen to replace the get and set methods by a property in the
       
   464  documentation. This will only work if the methods are indeed getting or 
       
   465  setting a simple type. If this is not the case, or you want to show the 
       
   466  methods anyway, you should set this option to \c NO.
       
   467 
       
   468 \anchor cfg_distribute_group_doc
       
   469 <dt>\c DISTRIBUTE_GROUP_DOC <dd>
       
   470  \addindex DISTRIBUTE_GROUP_DOC
       
   471  If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
       
   472  tag is set to YES, then doxygen will reuse the documentation of the first
       
   473  member in the group (if any) for the other members of the group. By default
       
   474  all members of a group must be documented explicitly.
       
   475 
       
   476 \anchor cfg_multiline_cpp_is_brief
       
   477 <dt>\c MULTILINE_CPP_IS_BRIEF <dd>
       
   478  \addindex MULTILINE_CPP_IS_BRIEF
       
   479   The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
       
   480   treat a multi-line C++ special comment block (i.e. a block of //! or ///
       
   481   comments) as a brief description. This used to be the default behaviour.
       
   482   The new default is to treat a multi-line C++ comment block as a detailed
       
   483   description. Set this tag to YES if you prefer the old behaviour instead.
       
   484   Note that setting this tag to YES also means that rational rose comments
       
   485   are not recognized any more.
       
   486 
       
   487 <!--
       
   488 \anchor cfg_details_at_top
       
   489 <dt>\c DETAILS_AT_TOP <dd>
       
   490  \addindex DETAILS_AT_TOP
       
   491   If the DETAILS_AT_TOP tag is set to YES then Doxygen
       
   492   will output the detailed description near the top, like JavaDoc.
       
   493   If set to NO, the detailed description appears after the member
       
   494   documentation.
       
   495 -->
       
   496 
       
   497 \anchor cfg_inherit_docs
       
   498 <dt>\c INHERIT_DOCS <dd>
       
   499  \addindex INHERIT_DOCS
       
   500  If the \c INHERIT_DOCS tag is set to \c YES (the default) then an undocumented
       
   501  member inherits the documentation from any documented member that it
       
   502  re-implements.
       
   503 
       
   504 \anchor cfg_separate_member_pages
       
   505 <dt>\c SEPARATE_MEMBER_PAGES <dd>
       
   506  \addindex SEPARATE_MEMBER_PAGES
       
   507  If the \c SEPARATE_MEMBER_PAGES tag is set to \c YES, then doxygen will produce
       
   508  a new page for each member. If set to \c NO, the documentation of a member will
       
   509  be part of the file/class/namespace that contains it.
       
   510 
       
   511 \anchor cfg_tab_size
       
   512 <dt>\c TAB_SIZE <dd>
       
   513  \addindex TAB_SIZE
       
   514  the \c TAB_SIZE tag can be used to set the number of spaces in a tab.
       
   515  Doxygen uses this value to replace tabs by spaces in code fragments.
       
   516 
       
   517 \anchor cfg_aliases
       
   518 <dt>\c ALIASES <dd>
       
   519  \addindex ALIASES
       
   520  This tag can be used to specify a number of aliases that acts 
       
   521  as commands in the documentation. An alias has the form 
       
   522 \verbatim
       
   523  name=value
       
   524 \endverbatim
       
   525  For example adding 
       
   526 \verbatim
       
   527  "sideeffect=\par Side Effects:\n" 
       
   528 \endverbatim
       
   529  will allow you to
       
   530  put the command \\sideeffect (or \@sideeffect) in the documentation, which 
       
   531  will result in a user-defined paragraph with heading "Side Effects:".
       
   532  You can put \\n's in the value part of an alias to insert newlines.
       
   533 
       
   534 \anchor cfg_optimize_output_for_c
       
   535 <dt>\c OPTIMIZE_OUTPUT_FOR_C <dd>
       
   536  \addindex OPTIMIZE_OUTPUT_FOR_C
       
   537  Set the \c OPTIMIZE_OUTPUT_FOR_C tag to \c YES if your project consists 
       
   538  of C sources only. Doxygen will then generate output that is more tailored 
       
   539  for C. For instance, some of the names that are used will be different. 
       
   540  The list of all members will be omitted, etc. 
       
   541 
       
   542 \anchor cfg_optimize_output_java
       
   543 <dt>\c OPTIMIZE_OUTPUT_JAVA <dd>
       
   544  \addindex OPTIMIZE_OUTPUT_JAVA
       
   545  Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
       
   546  Python sources only. Doxygen will then generate output that is more tailored 
       
   547  for that language. For instance, namespaces will be presented as packages, 
       
   548  qualified scopes will look different, etc. 
       
   549 
       
   550 \anchor cfg_optimize_for_fortran
       
   551 <dt>\c OPTIMIZE_FOR_FORTRAN <dd>
       
   552  \addindex OPTIMIZE_FOR_FORTRAN
       
   553  Set the \c OPTIMIZE_FOR_FORTRAN tag to \c YES if your project consists of Fortran 
       
   554  sources. Doxygen will then generate output that is tailored for Fortran.
       
   555 
       
   556 \anchor cfg_optimize_output_vhdl
       
   557 <dt>\c OPTIMIZE_OUTPUT_VHDL <dd>
       
   558  \addindex OPTIMIZE_OUTPUT_VHDL
       
   559  Set the \c OPTIMIZE_OUTPUT_VHDL tag to \c YES if your project consists of VHDL 
       
   560  sources. Doxygen will then generate output that is tailored for VHDL.
       
   561 
       
   562 \anchor cfg_extension_mapping
       
   563 <dt>\c EXTENSION_MAPPING <dd>
       
   564  \addindex EXTENSION_MAPPING
       
   565  Doxygen selects the parser to use depending on the extension of the files it parses.
       
   566  With this tag you can assign which parser to use for a given extension.
       
   567  Doxygen has a built-in mapping, but you can override or extend it using this tag.
       
   568  The format is ext=language, where ext is a file extension, and language is one of
       
   569  the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP,
       
   570  Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat
       
   571  .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran),
       
   572  use: inc=Fortran f=C
       
   573 
       
   574 \anchor cfg_subgrouping
       
   575 <dt>\c SUBGROUPING <dd>
       
   576  \addindex SUBGROUPING
       
   577  Set the \c SUBGROUPING tag to \c YES (the default) to allow class member groups of
       
   578  the same type (for instance a group of public functions) to be put as a
       
   579  subgroup of that type (e.g. under the Public Functions section). Set it to
       
   580  \c NO to prevent subgrouping. Alternatively, this can be done per class using
       
   581  the \ref cmdnosubgrouping "\\nosubgrouping" command. 
       
   582 
       
   583 \anchor cfg_typedef_hides_struct 
       
   584 <dt>\c TYPEDEF_HIDES_STRUCT <dd>
       
   585  \addindex TYPEDEF_HIDES_STRUCT
       
   586  When \c TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
       
   587  is documented as struct, union, or enum with the name of the typedef. So 
       
   588  <code>typedef struct TypeS {} TypeT</code>, will appear in the documentation as a struct 
       
   589  with name \c TypeT. When disabled the typedef will appear as a member of a file, 
       
   590  namespace, or class. And the struct will be named \c TypeS. This can typically 
       
   591  be useful for C code in case the coding convention dictates that all compound 
       
   592  types are typedef'ed and only the typedef is referenced, never the tag name.
       
   593 
       
   594 \anchor cfg_symbol_cache_size
       
   595 <dt>\c SYMBOL_CACHE_SIZE <dd>
       
   596  \addindex SYMBOL_CACHE_SIZE
       
   597  The \c SYMBOL_CACHE_SIZE determines the size of the internal cache use to 
       
   598  determine which symbols to keep in memory and which to flush to disk.
       
   599  When the cache is full, less often used symbols will be written to disk.
       
   600  For small to medium size projects (<1000 input files) the default value is
       
   601  probably good enough. For larger projects a too small cache size can cause 
       
   602  doxygen to be busy swapping symbols to and from disk most of the time
       
   603  causing a significant performance penality.
       
   604  If the system has enough physical memory increasing the cache will improve the
       
   605  performance by keeping more symbols in memory. Note that the value works on
       
   606  a logarithmic scale so increasing the size by one will rougly double the
       
   607  memory usage. The cache size is given by this formula: 
       
   608  \f$2^{(16+\mbox{SYMBOL\_CACHE\_SIZE})}\f$. The valid range is 0..9, the default is 0, 
       
   609  corresponding to a cache size of \f$2^{16} = 65536\f$ symbols.
       
   610 
       
   611 </dl>
       
   612 
       
   613 \section config_build Build related options
       
   614 \anchor cfg_extract_all
       
   615 <dl>
       
   616 
       
   617 <dt>\c EXTRACT_ALL <dd>
       
   618  \addindex EXTRACT_ALL
       
   619  If the \c EXTRACT_ALL tag is set to \c YES doxygen will assume all 
       
   620  entities in documentation are documented, even if no documentation was 
       
   621  available. Private class members and static file members will be hidden 
       
   622  unless the \c EXTRACT_PRIVATE and \c EXTRACT_STATIC tags are set to \c YES
       
   623 
       
   624  \par Note: 
       
   625  This will also disable the warnings about undocumented members 
       
   626  that are normally produced when \c WARNINGS is set to \c YES
       
   627 
       
   628 \anchor cfg_extract_private
       
   629 <dt>\c EXTRACT_PRIVATE <dd>
       
   630  \addindex EXTRACT_PRIVATE
       
   631  If the \c EXTRACT_PRIVATE tag is set to \c YES all private members of a 
       
   632  class will be included in the documentation.
       
   633 
       
   634 \anchor cfg_extract_static
       
   635 <dt>\c EXTRACT_STATIC <dd>
       
   636  \addindex EXTRACT_STATIC
       
   637  If the \c EXTRACT_STATIC tag is set to \c YES all static members of a file
       
   638  will be included in the documentation.
       
   639 
       
   640 \anchor cfg_extract_local_classes
       
   641 <dt>\c EXTRACT_LOCAL_CLASSES <dd>
       
   642  \addindex EXTRACT_LOCAL_CLASSES
       
   643  If the \c EXTRACT_LOCAL_CLASSES tag is set to \c YES classes (and structs) 
       
   644  defined locally in source files will be included in the documentation. 
       
   645  If set to NO only classes defined in header files are included. Does not
       
   646  have any effect for Java sources.
       
   647 
       
   648 \anchor cfg_extract_anon_nspaces
       
   649 <dt>\c EXTRACT_ANON_NSPACES <dd>
       
   650  \addindex EXTRACT_ANON_NSPACES
       
   651  If this flag is set to YES, the members of anonymous namespaces will be extracted
       
   652  and appear in the documentation as a namespace called 'anonymous_namespace{file}',
       
   653  where file will be replaced with the base name of the file that contains the anonymous
       
   654  namespace. By default anonymous namespace are hidden.
       
   655 
       
   656 \anchor cfg_extract_local_methods
       
   657 <dt>\c EXTRACT_LOCAL_METHODS <dd>
       
   658  \addindex EXTRACT_LOCAL_METHODS
       
   659  This flag is only useful for Objective-C code. When set to \c YES local 
       
   660  methods, which are defined in the implementation section but not in
       
   661  the interface are included in the documentation.
       
   662  If set to \c NO (the default) only methods in the interface are included.
       
   663 
       
   664 \anchor cfg_hide_undoc_members
       
   665 <dt>\c HIDE_UNDOC_MEMBERS <dd>
       
   666  \addindex HIDE_UNDOC_MEMBERS
       
   667  If the \c HIDE_UNDOC_MEMBERS tag is set to \c YES, doxygen will hide all
       
   668  undocumented members inside documented classes or files. 
       
   669  If set to \c NO (the default) these members will be included in the
       
   670  various overviews, but no documentation section is generated.
       
   671  This option has no effect if \c EXTRACT_ALL is enabled.
       
   672 
       
   673 \anchor cfg_hide_undoc_classes
       
   674 <dt>\c HIDE_UNDOC_CLASSES <dd>
       
   675  \addindex HIDE_UNDOC_CLASSES
       
   676  If the \c HIDE_UNDOC_CLASSESS tag is set to \c YES, doxygen will hide all
       
   677  undocumented classes.
       
   678  If set to \c NO (the default) these classes will be included in the
       
   679  various overviews.
       
   680  This option has no effect if \c EXTRACT_ALL is enabled.
       
   681 
       
   682 \anchor cfg_hide_friend_compounds
       
   683 <dt>\c HIDE_FRIEND_COMPOUNDS <dd>
       
   684  \addindex HIDE_FRIEND_COMPOUNDS
       
   685  If the \c HIDE_FRIEND_COMPOUNDS tag is set to \c YES, Doxygen will hide all
       
   686  friend (class|struct|union) declarations.
       
   687  If set to \c NO (the default) these declarations will be included in the
       
   688  documentation.
       
   689  
       
   690 \anchor cfg_hide_in_body_docs
       
   691 <dt>\c HIDE_IN_BODY_DOCS <dd>
       
   692  \addindex HIDE_IN_BODY_DOCS
       
   693 If the \c HIDE_IN_BODY_DOCS tag is set to \c YES, Doxygen will hide any 
       
   694 documentation blocks found inside the body of a function.
       
   695 If set to \c NO (the default) these blocks will be appended to the 
       
   696 function's detailed documentation block.
       
   697  
       
   698 \anchor cfg_internal_docs
       
   699 <dt>\c INTERNAL_DOCS <dd>
       
   700  \addindex INTERNAL_DOCS
       
   701  The \c INTERNAL_DOCS tag determines if documentation
       
   702  that is typed after a \ref cmdinternal "\\internal" command is included. If the tag is set
       
   703  to \c NO (the default) then the documentation will be excluded.
       
   704  Set it to \c YES to include the internal documentation.
       
   705 
       
   706 \anchor cfg_hide_scope_names
       
   707 <dt>\c HIDE_SCOPE_NAMES <dd>
       
   708  \addindex HIDE_SCOPE_NAMES
       
   709  If the \c HIDE_SCOPE_NAMES tag is set to \c NO (the default) then doxygen 
       
   710  will show members with their full class and namespace scopes in the
       
   711  documentation. If set to \c YES the scope will be hidden. 
       
   712 
       
   713 \anchor cfg_show_include_files
       
   714 <dt>\c SHOW_INCLUDE_FILES <dd>
       
   715  \addindex SHOW_INCLUDE_FILES
       
   716  If the SHOW_INCLUDE_FILES tag is set to \c YES (the default) then doxygen
       
   717  will put a list of the files that are included by a file in the documentation 
       
   718  of that file.
       
   719 
       
   720 \anchor cfg_force_local_includes
       
   721 <dt>\c FORCE_LOCAL_INCLUDES <dd>
       
   722  \addindex FORCE_LOCAL_INCLUDES
       
   723  If the \c FORCE_LOCAL_INCLUDES tag is set to \c YES then Doxygen 
       
   724  will list include files with double quotes in the documentation 
       
   725  rather than with sharp brackets.
       
   726 
       
   727 \anchor cfg_inline_info
       
   728 <dt>\c INLINE_INFO <dd>
       
   729  \addindex INLINE_INFO 
       
   730  If the \c INLINE_INFO tag is set to \c YES (the default) then a tag [inline]
       
   731  is inserted in the documentation for inline members.
       
   732 
       
   733 \anchor cfg_sort_member_docs
       
   734 <dt>\c SORT_MEMBER_DOCS <dd>
       
   735  \addindex SORT_MEMBER_DOCS
       
   736  If the \c SORT_MEMBER_DOCS tag is set to \c YES (the default) then doxygen
       
   737  will sort the (detailed) documentation of file and class members
       
   738  alphabetically by member name. If set to \c NO the members will appear in
       
   739  declaration order.
       
   740 
       
   741 \anchor cfg_sort_brief_docs
       
   742 <dt>\c SORT_BRIEF_DOCS <dd>
       
   743  \addindex SORT_BRIEF_DOCS
       
   744  If the \c SORT_BRIEF_DOCS tag is set to \c YES then doxygen will sort the
       
   745  brief descriptions of file, namespace and class members alphabetically
       
   746  by member name. If set to \c NO (the default) the members will appear in
       
   747  declaration order.
       
   748 
       
   749 
       
   750 \anchor cfg_sort_group_names
       
   751 <dt>\c SORT_GROUP_NAMES <dd>
       
   752  \addindex SORT_GROUP_NAMES
       
   753  If the \c SORT_GROUP_NAMES tag is set to \c YES then doxygen will sort the 
       
   754  hierarchy of group names into alphabetical order. If set to \c NO (the default)
       
   755  the group names will appear in their defined order. 
       
   756 
       
   757 \anchor cfg_sort_by_scope_name
       
   758 <dt>\c SORT_BY_SCOPE_NAME <dd>
       
   759  \addindex SORT_BY_SCOPE_NAME
       
   760  If the \c SORT_BY_SCOPE_NAME tag is set to \c YES, the class list will be
       
   761  sorted by fully-qualified names, including namespaces. If set to
       
   762  NO (the default), the class list will be sorted only by class name,
       
   763  not including the namespace part.
       
   764  @note This option is not very useful if \c HIDE_SCOPE_NAMES is set to \c YES.
       
   765  @note This option applies only to the class list, not to the 
       
   766        alphabetical list.
       
   767 
       
   768 \anchor cfg_sort_members_constructors_first
       
   769 <dt>\c SORT_MEMBERS_CTORS_1ST <dd>
       
   770  \addindex SORT_MEMBERS_CTORS_1ST
       
   771  If the \c SORT_MEMBERS_CTORS_1ST tag is set to \c YES then doxygen
       
   772  will sort the (brief and detailed) documentation of class members so that
       
   773  constructors and destructors are listed first. If set to NO (the default)
       
   774  the constructors will appear in the respective orders defined by
       
   775  \c SORT_MEMBER_DOCS and \c SORT_BRIEF_DOCS.
       
   776  @note If \c SORT_BRIEF_DOCS is set to \c NO this option is ignored for
       
   777        sorting brief member documentation.
       
   778  @note If \c SORT_MEMBER_DOCS is set to \c NO this option is ignored for
       
   779        sorting detailed member documentation.
       
   780 
       
   781 \anchor cfg_generate_deprecatedlist
       
   782 <dt>\c GENERATE_DEPRECATEDLIST <dd>
       
   783  \addindex GENERATE_DEPRECATEDLIST
       
   784  The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
       
   785  disable (NO) the deprecated list. This list is created by 
       
   786  putting \ref cmddeprecated "\\deprecated"
       
   787  commands in the documentation.
       
   788 
       
   789 \anchor cfg_generate_todolist
       
   790 <dt>\c GENERATE_TODOLIST <dd>
       
   791  \addindex GENERATE_TODOLIST
       
   792  The GENERATE_TODOLIST tag can be used to enable (YES) or
       
   793  disable (NO) the todo list. This list is created by 
       
   794  putting \ref cmdtodo "\\todo"
       
   795  commands in the documentation.
       
   796 
       
   797 \anchor cfg_generate_testlist
       
   798 <dt>\c GENERATE_TESTLIST <dd>
       
   799  \addindex GENERATE_TESTLIST
       
   800  The GENERATE_TESTLIST tag can be used to enable (YES) or
       
   801  disable (NO) the test list. This list is created by 
       
   802  putting \ref cmdtest "\\test" commands in the documentation.
       
   803 
       
   804 \anchor cfg_generate_buglist
       
   805 <dt>\c GENERATE_BUGLIST <dd>
       
   806  \addindex GENERATE_BUGLIST
       
   807  The GENERATE_BUGLIST tag can be used to enable (YES) or
       
   808  disable (NO) the bug list. This list is created by 
       
   809  putting \ref cmdbug "\\bug" commands in the documentation.
       
   810 
       
   811 \anchor cfg_enabled_sections
       
   812 <dt>\c ENABLED_SECTIONS <dd>
       
   813  \addindex ENABLED_SECTIONS
       
   814  The \c ENABLED_SECTIONS tag can be used to enable conditional
       
   815  documentation sections, marked by \ref cmdif "\\if" \<section-label\> ... 
       
   816  \ref cmdendif "\\endif" and \ref cmdcond "\\cond" \<section-label\> ...
       
   817  \ref cmdendcond "\\endcond" blocks.
       
   818 
       
   819 \anchor cfg_max_initializer_lines
       
   820 <dt>\c MAX_INITIALIZER_LINES <dd>
       
   821  \addindex MAX_INITIALIZER_LINES
       
   822  The \c MAX_INITIALIZER_LINES tag determines the maximum number of lines
       
   823  that the initial value of a variable or define can be. If the initializer
       
   824  consists of more lines than specified here it will be hidden. Use a value
       
   825  of 0 to hide initializers completely. The appearance of the value of
       
   826  individual variables and defines can be controlled using \ref cmdshowinitializer "\\showinitializer"
       
   827  or \ref cmdhideinitializer "\\hideinitializer" command in the documentation.
       
   828 
       
   829 \anchor cfg_show_used_files
       
   830 <dt>\c SHOW_USED_FILES <dd>
       
   831  \addindex SHOW_USED_FILES
       
   832  Set the \c SHOW_USED_FILES tag to \c NO to disable the list of files generated
       
   833  at the bottom of the documentation of classes and structs. If set to \c YES the
       
   834  list will mention the files that were used to generate the documentation.
       
   835 
       
   836 \anchor cfg_show_dirs
       
   837 <dt>\c SHOW_DIRECTORIES <dd>
       
   838  \addindex SHOW_DIRECTORIES
       
   839  If the sources in your project are distributed over multiple directories
       
   840  then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
       
   841  in the documentation.
       
   842 
       
   843 \anchor cfg_show_files
       
   844 <dt>\c SHOW_FILES <dd>
       
   845  \addindex SHOW_FILES
       
   846  Set the \c SHOW_FILES tag to \c NO to disable the generation of the Files page.
       
   847  This will remove the Files entry from the Quick Index and from the
       
   848  Folder Tree View (if specified). The default is \c YES.
       
   849 
       
   850 \anchor cfg_show_namespaces
       
   851 <dt>\c SHOW_NAMESPACES <dd>
       
   852  \addindex SHOW_NAMESPACES
       
   853  Set the \c SHOW_NAMESPACES tag to \c NO to disable the generation of the
       
   854  Namespaces page.  This will remove the Namespaces entry from the Quick Index
       
   855  and from the Folder Tree View (if specified). The default is \c YES.
       
   856 
       
   857 </dl>
       
   858 
       
   859 \section messages_input Options related to warning and progress messages 
       
   860 \anchor cfg_quiet
       
   861 <dl>
       
   862 
       
   863 <dt>\c QUIET <dd>
       
   864  \addindex QUIET
       
   865  The \c QUIET tag can be used to turn on/off the messages that are generated
       
   866  to standard output by doxygen. Possible values are \c YES and \c NO, 
       
   867  where \c YES implies that the messages are off.
       
   868  If left blank \c NO is used.
       
   869 
       
   870 \anchor cfg_warnings
       
   871 <dt>\c WARNINGS <dd>
       
   872  \addindex WARNINGS
       
   873  The \c WARNINGS tag can be used to turn on/off the warning messages that are
       
   874  generated to standard error by doxygen. Possible values are \c YES and \c NO, 
       
   875  where \c YES implies that the warnings are on. If left blank \c NO is used.
       
   876 
       
   877  \b Tip: Turn warnings on while writing the documentation.
       
   878 
       
   879 \anchor cfg_warn_if_undocumented
       
   880 <dt>\c WARN_IF_UNDOCUMENTED <dd>
       
   881  \addindex WARN_IF_UNDOCUMENTED
       
   882  If \c WARN_IF_UNDOCUMENTED is set to \c YES, then doxygen will generate warnings
       
   883  for undocumented members. If \c EXTRACT_ALL is set to \c YES then this flag will
       
   884  automatically be disabled.
       
   885 
       
   886 \anchor cfg_warn_if_doc_error
       
   887 <dt>\c WARN_IF_DOC_ERROR <dd>
       
   888  \addindex WARN_IF_DOC_ERROR
       
   889  If \c WARN_IF_DOC_ERROR is set to \c YES, doxygen will generate warnings for
       
   890  potential errors in the documentation, such as not documenting some
       
   891  parameters in a documented function, or documenting parameters that
       
   892  don't exist or using markup commands wrongly. 
       
   893 
       
   894 \anchor cfg_warn_no_paramdoc
       
   895 <dt>\c WARN_NO_PARAMDOC <dd>
       
   896  \addindex WARN_NO_PARAMDOC
       
   897  This \c WARN_NO_PARAMDOC option can be abled to get warnings for 
       
   898  functions that are documented, but have no documentation for their parameters
       
   899  or return value. If set to \c NO (the default) doxygen will only warn about
       
   900  wrong or incomplete parameter documentation, but not about the absence of
       
   901  documentation.
       
   902 
       
   903 \anchor cfg_warn_format
       
   904 <dt>\c WARN_FORMAT <dd>
       
   905  \addindex WARN_FORMAT
       
   906  The \c WARN_FORMAT tag determines the format of the warning messages that
       
   907  doxygen can produce. The string should contain the <code>\$file</code>, 
       
   908  <code>\$line</code>, and <code>\$text</code> 
       
   909  tags, which will be replaced by the file and line number from which the
       
   910  warning originated and the warning text.
       
   911 
       
   912 \anchor cfg_warn_logfile
       
   913 <dt>\c WARN_LOGFILE <dd>
       
   914  \addindex WARN_LOGFILE
       
   915  The \c WARN_LOGFILE tag can be used to specify a file to which warning
       
   916  and error messages should be written. If left blank the output is written 
       
   917  to stderr.
       
   918 
       
   919 </dl>
       
   920 
       
   921 \section config_input Input related options
       
   922 \anchor cfg_input
       
   923 <dl>
       
   924 
       
   925 <dt>\c INPUT <dd>
       
   926  \addindex INPUT
       
   927  The \c INPUT tag is used to specify the files and/or directories that contain 
       
   928  documented source files. You may enter file names like 
       
   929  \c myfile.cpp or directories like \c /usr/src/myproject. 
       
   930  Separate the files or directories with spaces.<br>
       
   931 
       
   932  \b Note: 
       
   933  If this tag is empty the current directory is searched.
       
   934 
       
   935 \anchor cfg_input_encoding
       
   936 <dt>\c INPUT_ENCODING <dd>
       
   937  \addindex INPUT_ENCODING
       
   938  This tag can be used to specify the character encoding of the source files that 
       
   939  doxygen parses. Internally doxygen uses the UTF-8 encoding, which is also the default 
       
   940  input encoding. Doxygen uses libiconv (or the iconv built into libc) for the transcoding. 
       
   941  See <a href="http://www.gnu.org/software/libiconv">the libiconv documentation</a> for 
       
   942  the list of possible encodings.
       
   943 
       
   944 \anchor cfg_file_patterns
       
   945 <dt>\c FILE_PATTERNS <dd>
       
   946  \addindex FILE_PATTERNS
       
   947  If the value of the \c INPUT tag contains directories, you can use the 
       
   948  \c FILE_PATTERNS tag to specify one or more wildcard patterns 
       
   949  (like \c *.cpp and \c *.h ) to filter out the source-files 
       
   950  in the directories. If left blank the following patterns are tested:
       
   951  <code>
       
   952  *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp 
       
   953  *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm
       
   954  </code>
       
   955 
       
   956 \anchor cfg_file_version_filter
       
   957 <dt>\c FILE_VERSION_FILTER <dd>
       
   958  \addindex FILE_VERSION_FILTER
       
   959  The \c FILE_VERSION_FILTER tag can be used to specify a program or script that
       
   960  doxygen should invoke to get the current version for each file (typically from the
       
   961  version control system). Doxygen will invoke the program by executing (via
       
   962  popen()) the command <code>command input-file</code>, where \c command is 
       
   963  the value of the \c FILE_VERSION_FILTER tag, and \c input-file is the name 
       
   964  of an input file provided by doxygen. 
       
   965  Whatever the program writes to standard output is used as the file version. 
       
   966 
       
   967 Example of using a shell script as a filter for Unix:
       
   968 \verbatim
       
   969  FILE_VERSION_FILTER = "/bin/sh versionfilter.sh"
       
   970 \endverbatim
       
   971 
       
   972 Example shell script for CVS:
       
   973 \verbatim
       
   974 #!/bin/sh
       
   975 cvs status $1 | sed -n 's/^[ \]*Working revision:[ \t]*\([0-9][0-9\.]*\).*/\1/p'
       
   976 \endverbatim 
       
   977  
       
   978 Example shell script for Subversion:
       
   979 \verbatim
       
   980 #!/bin/sh
       
   981 svn stat -v $1 | sed -n 's/^[ A-Z?\*|!]\{1,15\}/r/;s/ \{1,15\}/\/r/;s/ .*//p'
       
   982 \endverbatim
       
   983 
       
   984 Example filter for ClearCase:
       
   985 \verbatim
       
   986 FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
       
   987 \endverbatim
       
   988 
       
   989 \anchor cfg_layout_file
       
   990 <dt>\c LAYOUT_FILE <dd>
       
   991  The \c LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
       
   992  doxygen. The layout file controls the global structure of the generated output files
       
   993  in an output format independent way. The create the layout file that represents
       
   994  doxygen's defaults, run doxygen with the -l option. You can optionally specify a
       
   995  file name after the option, if omitted DoxygenLayout.xml will be used as the name
       
   996  of the layout file. Note that if you run doxygen from a directory containing 
       
   997  a file called DoxygenLayout.xml, doxygen will parse it automatically even if 
       
   998  the \c LAYOUT_FILE tag is left empty.
       
   999 
       
  1000 \anchor cfg_recursive
       
  1001 <dt>\c RECURSIVE <dd>
       
  1002  \addindex RECURSIVE
       
  1003  The \c RECURSIVE tag can be used to specify whether or not subdirectories
       
  1004  should be searched for input files as well. Possible values are \c YES 
       
  1005  and \c NO.  If left blank \c NO is used.
       
  1006 
       
  1007 \anchor cfg_exclude
       
  1008 <dt>\c EXCLUDE <dd>
       
  1009  \addindex EXCLUDE
       
  1010  The \c EXCLUDE tag can be used to specify files and/or directories that should
       
  1011  excluded from the \c INPUT source files. This way you can easily exclude a
       
  1012  subdirectory from a directory tree whose root is specified with the \c INPUT tag.
       
  1013 
       
  1014 \anchor cfg_exclude_symlinks
       
  1015 <dt>\c EXCLUDE_SYMLINKS <dd>
       
  1016  \addindex EXCLUDE_SYMLINKS
       
  1017  The \c EXCLUDE_SYMLINKS tag can be used select whether or not files or directories 
       
  1018  that are symbolic links (a Unix filesystem feature) are excluded from the input.
       
  1019 
       
  1020 \anchor cfg_exclude_patterns
       
  1021 <dt>\c EXCLUDE_PATTERNS <dd>
       
  1022  \addindex EXCLUDE_PATTERNS
       
  1023  If the value of the \c INPUT tag contains directories, you can use the
       
  1024  \c EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
       
  1025  certain files from those directories.
       
  1026 
       
  1027  Note that the wildcards are matched against the file with absolute path, 
       
  1028  so to exclude all test directories use the pattern 
       
  1029  <code>*</code><code>/test/</code><code>*</code>
       
  1030 
       
  1031 \anchor cfg_example_path
       
  1032 <dt>\c EXAMPLE_PATH <dd>
       
  1033  \addindex EXAMPLE_PATH
       
  1034  The \c EXAMPLE_PATH tag can be used to specify one or more files or
       
  1035  directories that contain example code fragments that are included (see
       
  1036  the \\include command in section \ref cmdinclude "\\include").
       
  1037 
       
  1038 \anchor cfg_example_recursive
       
  1039 <dt>\c EXAMPLE_RECURSIVE <dd>
       
  1040  \addindex EXAMPLE_RECURSIVE
       
  1041  If the \c EXAMPLE_RECURSIVE tag is set to \c YES then subdirectories will be
       
  1042  searched for input files to be used with the \\include or \\dontinclude 
       
  1043  commands irrespective of the value of the \c RECURSIVE tag. 
       
  1044  Possible values are \c YES and \c NO. If left blank \c NO is used. 
       
  1045 
       
  1046 \anchor cfg_example_patterns
       
  1047 <dt>\c EXAMPLE_PATTERNS <dd>
       
  1048  \addindex EXAMPLE_PATTERNS
       
  1049  If the value of the \c EXAMPLE_PATH tag contains directories, you can use the
       
  1050  \c EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
       
  1051  and *.h) to filter out the source-files in the directories. If left
       
  1052  blank all files are included.
       
  1053 
       
  1054 \anchor cfg_image_path
       
  1055 <dt>\c IMAGE_PATH <dd>
       
  1056  \addindex IMAGE_PATH
       
  1057  The \c IMAGE_PATH tag can be used to specify one or more files or
       
  1058  directories that contain images that are to be included in the 
       
  1059  documentation (see the \ref cmdimage "\\image" command).
       
  1060 
       
  1061 \anchor cfg_input_filter
       
  1062 <dt>\c INPUT_FILTER <dd>
       
  1063  \addindex INPUT_FILTER
       
  1064  The \c INPUT_FILTER tag can be used to specify a program that doxygen should
       
  1065  invoke to filter for each input file. Doxygen will invoke the filter program
       
  1066  by executing (via popen()) the command:
       
  1067 \verbatim <filter> <input-file>
       
  1068 \endverbatim
       
  1069  
       
  1070  where \<filter\>
       
  1071  is the value of the \c INPUT_FILTER tag, and \<input-file\> is the name of an
       
  1072  input file. Doxygen will then use the output that the filter program writes
       
  1073  to standard output.
       
  1074 
       
  1075 \anchor cfg_filter_patterns
       
  1076 <dt>\c FILTER_PATTERNS <dd>
       
  1077  \addindex FILTER_PATTERNS
       
  1078  The \c FILTER_PATTERNS tag can be used to specify filters on a per file pattern
       
  1079  basis.  Doxygen will compare the file name with each pattern and apply the
       
  1080  filter if there is a match.  The filters are a list of the form:
       
  1081  pattern=filter (like <code>*.cpp=my_cpp_filter</code>). See \c INPUT_FILTER for further
       
  1082  info on how filters are used. If \c FILTER_PATTERNS is empty, \c INPUT_FILTER
       
  1083  is applied to all files. 
       
  1084 
       
  1085 \anchor cfg_filter_source_files
       
  1086 <dt>\c FILTER_SOURCE_FILES <dd>
       
  1087  \addindex FILTER_SOURCE_FILES
       
  1088  If the \c FILTER_SOURCE_FILES tag is set to \c YES, the input filter (if set using
       
  1089  \ref cfg_input_filter "INPUT_FILTER" ) will also be used to filter the input
       
  1090  files that are used for producing the source files to browse 
       
  1091  (i.e. when SOURCE_BROWSER is set to YES).
       
  1092 
       
  1093 </dl>
       
  1094 
       
  1095 \section sourcebrowser_index Source browsing related options
       
  1096 \anchor cfg_source_browser
       
  1097 <dl>
       
  1098 
       
  1099 <dt>\c SOURCE_BROWSER <dd>
       
  1100  \addindex SOURCE_BROWSER
       
  1101  If the \c SOURCE_BROWSER tag is set to \c YES then a list of source files will
       
  1102  be generated. Documented entities will be cross-referenced with these sources.
       
  1103  Note: To get rid of all source code in the generated output, make sure also
       
  1104  \c VERBATIM_HEADERS is set to NO.
       
  1105 
       
  1106 \anchor cfg_inline_sources
       
  1107 <dt>\c INLINE_SOURCES <dd>
       
  1108  \addindex INLINE_SOURCES
       
  1109  Setting the \c INLINE_SOURCES tag to \c YES will include the body
       
  1110  of functions, classes and enums directly into the documentation.
       
  1111 
       
  1112 \anchor cfg_strip_code_comments
       
  1113 <dt>\c STRIP_CODE_COMMENTS <dd>
       
  1114  \addindex STRIP_CODE_COMMENTS
       
  1115  Setting the \c STRIP_CODE_COMMENTS tag to \c YES (the default) will instruct
       
  1116  doxygen to hide any special comment blocks from generated source code
       
  1117  fragments. Normal C and C++ comments will always remain visible.
       
  1118 
       
  1119 \anchor cfg_referenced_by_relation
       
  1120 <dt>\c REFERENCED_BY_RELATION <dd>
       
  1121  \addindex REFERENCED_BY_RELATION
       
  1122  If the \c REFERENCED_BY_RELATION tag is set to \c YES
       
  1123  then for each documented function all documented
       
  1124  functions referencing it will be listed. 
       
  1125 
       
  1126 \anchor cfg_references_relation
       
  1127 <dt>\c REFERENCES_RELATION <dd>
       
  1128  \addindex REFERENCES_RELATION
       
  1129  If the \c REFERENCES_RELATION tag is set to \c YES
       
  1130  then for each documented function all documented entities
       
  1131  called/used by that function will be listed. 
       
  1132 
       
  1133 \anchor cfg_references_link_source
       
  1134 <dt>\c REFERENCES_LINK_SOURCE <dd>
       
  1135  \addindex REFERENCES_LINK_SOURCE
       
  1136  If the \c REFERENCES_LINK_SOURCE tag is set to \c YES (the default)
       
  1137  and SOURCE_BROWSER tag is set to \c YES, then the hyperlinks from 
       
  1138  functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will 
       
  1139  link to the source code.  Otherwise they will link to the documentation.
       
  1140 
       
  1141 \anchor cfg_verbatim_headers
       
  1142 <dt>\c VERBATIM_HEADERS <dd>
       
  1143  \addindex VERBATIM_HEADERS
       
  1144   If the \c VERBATIM_HEADERS tag is set the \c YES (the default) then doxygen
       
  1145   will generate a verbatim copy of the header file for each class for
       
  1146   which an include is specified. Set to NO to disable this.
       
  1147   \sa Section \ref cmdclass "\\class".
       
  1148 
       
  1149 \anchor cfg_use_htags
       
  1150 <dt>\c USE_HTAGS <dd>
       
  1151  \addindex USE_HTAGS
       
  1152  If the \c USE_HTAGS tag is set to \c YES then the references to source code
       
  1153  will point to the HTML generated by the htags(1) tool instead of doxygen
       
  1154  built-in source browser. The htags tool is part of GNU's global source
       
  1155  tagging system (see http://www.gnu.org/software/global/global.html).
       
  1156  To use it do the following:
       
  1157 
       
  1158  -# Install the latest version of global (i.e. 4.8.6 or better)
       
  1159  -# Enable SOURCE_BROWSER and USE_HTAGS in the config file
       
  1160  -# Make sure the INPUT points to the root of the source tree
       
  1161  -# Run doxygen as normal
       
  1162 
       
  1163  Doxygen will invoke htags (and that will in turn invoke gtags), so these tools
       
  1164  must be available from the command line (i.e. in the search path).
       
  1165 
       
  1166  The result: instead of the source browser generated by doxygen, the links to
       
  1167  source code will now point to the output of htags.
       
  1168 
       
  1169 </dl>
       
  1170 
       
  1171 \section alphabetical_index Alphabetical index options
       
  1172 \anchor cfg_alphabetical_index
       
  1173 <dl>
       
  1174 
       
  1175 <dt>\c ALPHABETICAL_INDEX <dd>
       
  1176  \addindex ALPHABETICAL_INDEX
       
  1177  If the \c ALPHABETICAL_INDEX tag is set to \c YES, an alphabetical index
       
  1178  of all compounds will be generated. Enable this if the project contains 
       
  1179  a lot of classes, structs, unions or interfaces.
       
  1180 
       
  1181 <dt>\c COLS_IN_ALPHA_INDEX <dd>
       
  1182  \anchor cfg_cols_in_alpha_index
       
  1183  \addindex COLS_IN_ALPHA_INDEX
       
  1184  If the alphabetical index is enabled 
       
  1185  (see \c ALPHABETICAL_INDEX) then the \c COLS_IN_ALPHA_INDEX tag can be 
       
  1186  used to specify the number of columns in which this list will be split (can be a number in the range [1..20])
       
  1187 
       
  1188 \anchor cfg_ignore_prefix
       
  1189 <dt>\c IGNORE_PREFIX <dd>
       
  1190  \addindex IGNORE_PREFIX
       
  1191  In case all classes in a project start with a common prefix, all classes will 
       
  1192  be put under the same header in the alphabetical index.
       
  1193  The \c IGNORE_PREFIX tag can be used to specify a prefix 
       
  1194  (or a list of prefixes) that should be ignored while generating the index 
       
  1195  headers.
       
  1196 
       
  1197 </dl>
       
  1198 \section html_output HTML related options
       
  1199 \anchor cfg_generate_html
       
  1200 <dl>
       
  1201 
       
  1202 <dt>\c GENERATE_HTML <dd>
       
  1203  \addindex GENERATE_HTML
       
  1204  If the \c GENERATE_HTML tag is set to \c YES (the default) doxygen will
       
  1205  generate HTML output
       
  1206 
       
  1207 \anchor cfg_html_output
       
  1208 <dt>\c HTML_OUTPUT <dd>
       
  1209  \addindex HTML_OUTPUT
       
  1210  The \c HTML_OUTPUT tag is used to specify where the HTML docs will be put.
       
  1211  If a relative path is entered the value of \c OUTPUT_DIRECTORY will be
       
  1212  put in front of it. If left blank `html' will be used as the default path.
       
  1213 
       
  1214 \anchor cfg_html_file_extension
       
  1215 <dt>\c HTML_FILE_EXTENSION <dd>
       
  1216  \addindex HTML_FILE_EXTENSION
       
  1217  The \c HTML_FILE_EXTENSION tag can be used to specify the file extension for 
       
  1218  each generated HTML page (for example: .htm, .php, .asp). If it is left blank
       
  1219  doxygen will generate files with .html extension.
       
  1220 
       
  1221 \anchor cfg_html_header
       
  1222 <dt>\c HTML_HEADER <dd>      
       
  1223  \addindex HTML_HEADER
       
  1224  The \c HTML_HEADER tag can be used to specify a user-defined HTML 
       
  1225  header file for each generated HTML page. To get valid HTML the header file
       
  1226  should contain at least a \c \<HTML\> and a \c \<BODY\> tag, but it is
       
  1227  good idea to include the style sheet that is generated by doxygen as well. 
       
  1228  Minimal example:
       
  1229 \verbatim
       
  1230   <HTML>
       
  1231     <HEAD>
       
  1232       <TITLE>My title</TITLE>
       
  1233       <LINK HREF="doxygen.css" REL="stylesheet" TYPE="text/css">
       
  1234     </HEAD>
       
  1235     <BODY BGCOLOR="#FFFFFF">
       
  1236 \endverbatim
       
  1237  If the tag is left blank doxygen will generate a 
       
  1238  standard header. 
       
  1239 
       
  1240  The following markers have a special meaning inside the header and footer:
       
  1241  <dl>
       
  1242  <dt><code>\$title</code><dd>will be replaced with the title of the page.
       
  1243  <dt><code>\$datetime</code><dd>will be replaced with current the date and time.
       
  1244  <dt><code>\$date</code><dd>will be replaced with the current date.
       
  1245  <dt><code>\$year</code><dd>will be replaces with the current year.
       
  1246  <dt><code>\$doxygenversion</code><dd>will be replaced with the version of doxygen
       
  1247  <dt><code>\$projectname</code><dd>will be replaced with the name of 
       
  1248             the project (see \c PROJECT_NAME)
       
  1249  <dt><code>\$projectnumber</code><dd>will be replaced with the project number
       
  1250             (see \c PROJECT_NUMBER)
       
  1251  <dt><code>\$relpath\$</code><dd>
       
  1252  If \c CREATE_SUBDIRS is enabled, the command <code>\$relpath\$</code> can be 
       
  1253  used to produce a relative path to the root of the HTML output directory,
       
  1254  e.g. use \$relpath\$doxygen.css, to refer to the standard style sheet.
       
  1255  </dl>
       
  1256    
       
  1257  See also section \ref doxygen_usage for information on how to generate
       
  1258  the default header that doxygen normally uses.
       
  1259    
       
  1260 \anchor cfg_html_footer
       
  1261 <dt>\c HTML_FOOTER <dd>
       
  1262  \addindex HTML_FOOTER
       
  1263  The \c HTML_FOOTER tag can be used to specify a user-defined HTML footer for 
       
  1264  each generated HTML page. To get valid HTML the footer file should contain
       
  1265  at least a \c \</BODY\> and a \c \</HTML\> tag. A minimal example:
       
  1266 \verbatim
       
  1267     </BODY>
       
  1268   </HTML>
       
  1269 \endverbatim
       
  1270  If the tag is left blank doxygen will generate a standard footer.
       
  1271 
       
  1272  The following commands have a special meaning inside the footer:
       
  1273  <code>\$title</code>, <code>\$datetime</code>, <code>\$date</code>,
       
  1274  <code>\$doxygenversion</code>, <code>\$projectname</code>, 
       
  1275  <code>\$projectnumber</code>. 
       
  1276  Doxygen will replace them by respectively 
       
  1277  the title of the page, the current date and time, only the current date,
       
  1278  the version number of doxygen, the project name (see \c PROJECT_NAME), or the
       
  1279  project number (see \c PROJECT_NUMBER).
       
  1280 
       
  1281  See also section \ref doxygen_usage for information on how to generate
       
  1282  the default footer that doxygen normally uses.
       
  1283 
       
  1284 \anchor cfg_html_stylesheet
       
  1285 <dt>\c HTML_STYLESHEET <dd>
       
  1286  \addindex HTML_STYLESHEET
       
  1287  The \c HTML_STYLESHEET tag can be used to specify a user-defined cascading
       
  1288  style sheet that is used by each HTML page. It can be used to
       
  1289  fine-tune the look of the HTML output. If the tag is left blank doxygen
       
  1290  will generate a default style sheet. 
       
  1291 
       
  1292  See also section \ref doxygen_usage for information on how to generate
       
  1293  the style sheet that doxygen normally uses.
       
  1294 
       
  1295 \anchor cfg_html_timestamp
       
  1296 <dt>\c HTML_TIMESTAMP <dd>
       
  1297  \addindex HTML_TIMESTAMP
       
  1298  If the \c HTML_TIMESTAMP tag is set to \c YES then the footer of 
       
  1299  each generated HTML page will contain the date and time when the page 
       
  1300  was generated. Setting this to NO can help when comparing the output of 
       
  1301  multiple runs.
       
  1302 
       
  1303 \anchor cfg_html_align_members
       
  1304 <dt>\c HTML_ALIGN_MEMBERS <dd>
       
  1305  \addindex HTML_ALIGN_MEMBERS
       
  1306  If the \c HTML_ALIGN_MEMBERS tag is set to \c YES, the members of classes,
       
  1307  files or namespaces will be aligned in HTML using tables. If set to
       
  1308  \c NO a bullet list will be used. 
       
  1309 
       
  1310  <b>Note:</b>
       
  1311  Setting this tag to \c NO will become obsolete in the future, since I only
       
  1312  intent to support and test the aligned representation.
       
  1313 
       
  1314 \anchor cfg_html_dynamic_sections
       
  1315 <dt>\c HTML_DYNAMIC_SECTIONS <dd>
       
  1316  \addindex HTML_DYNAMIC_SECTIONS
       
  1317  If the \c HTML_DYNAMIC_SECTIONS tag is set to \c YES then the generated HTML
       
  1318  documentation will contain sections that can be hidden and shown after the
       
  1319  page has loaded. For this to work a browser that supports
       
  1320  JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
       
  1321  Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). 
       
  1322 
       
  1323 \anchor cfg_generate_docset
       
  1324 <dt>\c GENERATE_DOCSET <dd>
       
  1325  \addindex GENERATE_DOCSET
       
  1326  If the \c GENERATE_DOCSET tag is set to \c YES, additional index files
       
  1327  will be generated that can be used as input for 
       
  1328  <a href="http://developer.apple.com/tools/xcode/">Apple's Xcode 3
       
  1329  integrated development environment</a>, introduced with OSX 10.5 (Leopard).
       
  1330  To create a documentation set, doxygen will generate a Makefile in the
       
  1331  HTML output directory. Running \c make will produce the docset in that
       
  1332  directory and running <code>make install</code> will install the docset in 
       
  1333  <code>~/Library/Developer/Shared/Documentation/DocSets</code> 
       
  1334  so that Xcode will find it at startup. See
       
  1335  <a href="http://developer.apple.com/tools/creatingdocsetswithdoxygen.html">
       
  1336  this article</a> for more information.
       
  1337 
       
  1338 \anchor cfg_docset_feedname 
       
  1339 <dt>\c DOCSET_FEEDNAME <dd>
       
  1340  \addindex DOCSET_FEEDNAME
       
  1341  When \c GENERATE_DOCSET tag is set to \c YES, this tag determines the name of the
       
  1342  feed. A documentation feed provides an umbrella under which multiple
       
  1343  documentation sets from a single provider (such as a company or product suite) 
       
  1344  can be grouped.
       
  1345 
       
  1346 \anchor cfg_docset_bundle_id
       
  1347 <dt>\c DOCSET_BUNDLE_ID <dd>
       
  1348  When \c GENERATE_DOCSET tag is set to \c YES, this tag specifies a string that
       
  1349  should uniquely identify the documentation set bundle. This should be a
       
  1350  reverse domain-name style string, e.g. <code>com.mycompany.MyDocSet</code>. 
       
  1351  Doxygen will append <code>.docset</code> to the name.
       
  1352 
       
  1353 
       
  1354 \anchor cfg_generate_htmlhelp
       
  1355 <dt>\c GENERATE_HTMLHELP <dd>
       
  1356  \addindex GENERATE_HTMLHELP
       
  1357  If the \c GENERATE_HTMLHELP tag is set to \c YES then
       
  1358  doxygen generates three additional HTML index files: 
       
  1359  \c index.hhp, \c index.hhc, and \c index.hhk. The \c index.hhp is a 
       
  1360  project file that can be read by 
       
  1361  <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/htmlhelp/html/vsconHH1Start.asp">
       
  1362  Microsoft's HTML Help Workshop</a>
       
  1363  on Windows.
       
  1364 
       
  1365  The HTML Help Workshop contains a compiler that can convert all HTML output 
       
  1366  generated by doxygen into a single compiled HTML file (.chm). Compiled
       
  1367  HTML files are now used as the Windows 98 help format, and will replace
       
  1368  the old Windows help format (.hlp) on all Windows platforms in the future.
       
  1369  Compressed HTML files also contain an index, a table of contents,
       
  1370  and you can search for words in the documentation.
       
  1371  The HTML workshop also contains a viewer for compressed HTML files.
       
  1372 
       
  1373 \anchor cfg_chm_file 
       
  1374 <dt>\c CHM_FILE <dd>
       
  1375  \addindex CHM_FILE
       
  1376   If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c CHM_FILE tag can
       
  1377   be used to specify the file name of the resulting .chm file. You
       
  1378   can add a path in front of the file if the result should not be
       
  1379   written to the html output directory.
       
  1380 
       
  1381 \anchor cfg_hhc_location 
       
  1382 <dt>\c HHC_LOCATION <dd>
       
  1383  \addindex HHC_LOCATION
       
  1384   If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c HHC_LOCATION tag can
       
  1385   be used to specify the location (absolute path including file name) of 
       
  1386   the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
       
  1387   the HTML help compiler on the generated index.hhp.
       
  1388 
       
  1389 \anchor cfg_generate_chi
       
  1390 <dt>\c GENERATE_CHI <dd>
       
  1391  \addindex GENERATE_CHI
       
  1392  If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c GENERATE_CHI flag
       
  1393  controls if a separate .chi index file is generated (<code>YES</code>) or that
       
  1394  it should be included in the master .chm file (<code>NO</code>).
       
  1395 
       
  1396 \anchor cfg_binary_toc
       
  1397 <dt>\c BINARY_TOC <dd>
       
  1398  \addindex BINARY_TOC
       
  1399  If the \c GENERATE_HTMLHELP tag is set to \c YES, the \c BINARY_TOC flag
       
  1400  controls whether a binary table of contents is generated (<code>YES</code>) or a
       
  1401  normal table of contents (<code>NO</code>) in the .chm file.
       
  1402 
       
  1403 \anchor cfg_toc_expand
       
  1404 <dt>\c TOC_EXPAND <dd>
       
  1405  \addindex TOC_EXPAND
       
  1406  The \c TOC_EXPAND flag can be set to YES to add extra items for 
       
  1407  group members to the table of contents of the HTML help documentation 
       
  1408  and to the tree view.
       
  1409 
       
  1410 \anchor cfg_generate_qhp
       
  1411 <dt>\c GENERATE_QHP <dd>
       
  1412  \addindex GENERATE_QHP
       
  1413  If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE
       
  1414  and QHP_VIRTUAL_FOLDER are set, an additional index file will
       
  1415  be generated that can be used as input for Qt's qhelpgenerator
       
  1416  to generate a Qt Compressed Help (.qch) of the generated HTML
       
  1417  documentation.
       
  1418 
       
  1419 \anchor cfg_qhp_namespace
       
  1420 <dt>\c QHP_NAMESPACE <dd>
       
  1421  \addindex QHP_NAMESPACE
       
  1422  The QHP_NAMESPACE tag specifies the namespace to use when generating
       
  1423  Qt Help Project output. For more information please see
       
  1424  <a href="http://doc.trolltech.com/qthelpproject.html#namespace">Qt Help Project / Namespace</a>.
       
  1425 
       
  1426 \anchor cfg_qhp_virtual_folder
       
  1427 <dt>\c QHP_VIRTUAL_FOLDER <dd>
       
  1428  \addindex QHP_VIRTUAL_FOLDER
       
  1429  The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when
       
  1430  generating Qt Help Project output. For more information please see
       
  1431  <a href="http://doc.trolltech.com/qthelpproject.html#virtual-folders">Qt Help Project / Virtual Folders</a>.
       
  1432 
       
  1433 \anchor cfg_qhp_cust_filter_name
       
  1434 <dt>\c QHP_CUST_FILTER_NAME <dd>
       
  1435   \addindex QHP_CUST_FILTER_NAME
       
  1436   If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add. For more information please see
       
  1437   <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>.
       
  1438 
       
  1439 \anchor cfg_qhp_cust_filter_attrs
       
  1440 <dt>\c QHP_CUST_FILTER_ATTRS <dd>
       
  1441   \addindex QHP_CUST_FILTER_ATTRS
       
  1442   The QHP_CUST_FILTER_ATTRIBUTES tag specifies the list of the attributes of the custom filter to add.
       
  1443   For more information please see
       
  1444   <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>.
       
  1445 
       
  1446 \anchor cfg_qhp_sect_filter_attrs
       
  1447 <dt>\c QHP_SECT_FILTER_ATTRS <dd>
       
  1448   \addindex QHP_SECT_FILTER_ATTRS
       
  1449   The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's filter section matches.
       
  1450   <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">Qt Help Project / Filter Attributes</a>.
       
  1451 
       
  1452 \anchor cfg_qhg_location
       
  1453 <dt>\c QHG_LOCATION <dd>
       
  1454  \addindex QHG_LOCATION
       
  1455  If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
       
  1456  be used to specify the location of Qt's qhelpgenerator.
       
  1457  If non-empty doxygen will try to run qhelpgenerator on the generated
       
  1458  .qhp file.
       
  1459 
       
  1460 \anchor cfg_generate_eclipsehelp
       
  1461 <dt>\c GENERATE_ECLIPSEHELP <dd>
       
  1462  \addindex GENERATE_ECLIPSEHELP
       
  1463  If the \c GENERATE_ECLIPSEHELP tag is set to \c YES, additional index files  
       
  1464  will be generated, which together with the HTML files, form an Eclipse help  
       
  1465  plugin. 
       
  1466 
       
  1467  To install this plugin and make it available under the help contents 
       
  1468  menu in Eclipse, the contents of the directory containing the HTML and XML 
       
  1469  files needs to be copied into the plugins directory of eclipse. The name of 
       
  1470  the directory within the plugins directory should be the same as 
       
  1471  the \ref cfg_eclipse_doc_id "ECLIPSE_DOC_ID" value. 
       
  1472 
       
  1473  After copying Eclipse needs to be restarted before the help appears.
       
  1474 
       
  1475 \anchor cfg_eclipse_doc_id
       
  1476 <dt>\c ECLIPSE_DOC_ID <dd>
       
  1477  \addindex ECLIPSE_DOC_ID
       
  1478  A unique identifier for the eclipse help plugin. When installing the plugin 
       
  1479  the directory name containing the HTML and XML files should also have 
       
  1480  this name. Each documentation set should have its own identifier.
       
  1481 
       
  1482 \anchor cfg_searchengine
       
  1483 <dt>\c SEARCHENGINE <dd>
       
  1484  \addindex SEARCHENGINE
       
  1485 
       
  1486  When the \c SEARCHENGINE tag is enabled doxygen will generate a search box
       
  1487  for the HTML output. The underlying search engine uses javascript 
       
  1488  and DHTML and should work on any modern browser. Note that when using
       
  1489  HTML help (\ref cfg_generate_htmlhelp "GENERATE_HTMLHELP"), 
       
  1490  Qt help (\ref cfg_generate_qhp "GENERATE_QHP"), or docsets
       
  1491  (\ref cfg_generate_docset "GENERATE_DOCSET") there is already a search 
       
  1492  function so this one should typically be disabled. For large projects 
       
  1493  the javascript based search engine can be slow, then enabling 
       
  1494  \ref cfg_server_based_search "SERVER_BASED_SEARCH" may provide a 
       
  1495  better solution. 
       
  1496 
       
  1497  It is possible to search using the keyboard;
       
  1498  to jump to the search box use access key + S (what the access key is
       
  1499  depends on the OS and browser, but it is typically CTRL, ALT/option, or both).
       
  1500  Inside the search box use the cursor down key to jump into the search 
       
  1501  results window, the results can be navigated using the cursor keys.
       
  1502  Press Enter to select an item or escape to cancel the search. The
       
  1503  filter options can be selected when the cursor is inside the search box
       
  1504  by pressing Shift+cursor down. Also here use the cursor keys to 
       
  1505  select a filter and enter or escape to activate or cancel the filter option.
       
  1506 
       
  1507 \anchor cfg_server_based_search
       
  1508 <dt>\c SERVER_BASED_SEARCH <dd>
       
  1509  \addindex SERVER_BASED_SEARCH
       
  1510 
       
  1511 When the SERVER_BASED_SEARCH tag is enabled the search engine will be
       
  1512 implemented using a PHP enabled web server instead of at the web client
       
  1513 using Javascript. Doxygen will generate the search PHP script and index 
       
  1514 file to put on the web server. The advantage of the server
       
  1515 based approach is that it scales better to large projects and also allows
       
  1516 full text search. The disadvances is that it is more difficult to setup 
       
  1517 and does not have live searching capabilities.
       
  1518 
       
  1519 \anchor cfg_disable_index
       
  1520 <dt>\c DISABLE_INDEX <dd>
       
  1521  \addindex DISABLE_INDEX
       
  1522  If you want full control over the layout of the generated HTML pages it
       
  1523  might be necessary to disable the index and replace it with your own.
       
  1524  The \c DISABLE_INDEX tag can be used to turn on/off the condensed index at
       
  1525  top of each page. A value of NO (the default) enables the index and the
       
  1526  value YES disables it.
       
  1527 
       
  1528 \anchor cfg_enum_values_per_line
       
  1529 <dt>\c ENUM_VALUES_PER_LINE <dd>
       
  1530  \addindex ENUM_VALUES_PER_LINE
       
  1531  This tag can be used to set the number of enum values (range [1..20])
       
  1532  that doxygen will group on one line in the generated HTML documentation.
       
  1533 
       
  1534 \anchor cfg_generate_treeview
       
  1535 <dt>\c GENERATE_TREEVIEW <dd>
       
  1536  \addindex GENERATE_TREEVIEW
       
  1537  The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
       
  1538  structure should be generated to display hierarchical information.
       
  1539  If the tag value is set to YES, a side panel will be generated
       
  1540  containing a tree-like index structure (just like the one that
       
  1541  is generated for HTML Help). For this to work a browser that supports
       
  1542  JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
       
  1543  Windows users are probably better off using the HTML help feature.
       
  1544 
       
  1545  Via custom stylesheets (see \ref cfg_html_stylesheet "HTML_STYLESHEET")
       
  1546  one can further \ref doxygen_finetune "fine tune" the look of the index.
       
  1547  As an example, the default style sheet generated by doxygen has an
       
  1548  example that shows how to put an image at the root of the tree instead of
       
  1549  the \ref cfg_project_name "project name".
       
  1550 
       
  1551 \anchor cfg_use_inline_trees
       
  1552 <dt>\c USE_INLINE_TREES <dd>
       
  1553  \addindex USE_INLINE_TREES
       
  1554 By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, 
       
  1555 and Class Hierarchy pages using a tree view instead of an ordered list.
       
  1556 
       
  1557 \anchor cfg_treeview_width
       
  1558 <dt>\c TREEVIEW_WIDTH <dd>
       
  1559  \addindex TREEVIEW_WIDTH
       
  1560  If the treeview is enabled (see \c GENERATE_TREEVIEW) then this tag can be
       
  1561  used to set the initial width (in pixels) of the frame in which the tree
       
  1562  is shown.
       
  1563 
       
  1564 \anchor cfg_formula_fontsize
       
  1565 <dt>\c FORMULA_FONTSIZE <dd>
       
  1566  \addindex FORMULA_FONTSIZE
       
  1567  Use this tag to change the font size of Latex formulas included
       
  1568  as images in the HTML documentation. The default is 10.
       
  1569  when you change the font size after a successful doxygen run you need
       
  1570  to manually remove any <code>form_*.png</code> images from the HTML 
       
  1571  output directory to force them to be regenerated.
       
  1572  
       
  1573 </dl>
       
  1574 \section latex_output LaTeX related options
       
  1575 \anchor cfg_generate_latex
       
  1576 <dl>
       
  1577 
       
  1578 <dt>\c GENERATE_LATEX <dd>
       
  1579  \addindex GENERATE_LATEX
       
  1580  If the \c GENERATE_LATEX tag is set to \c YES (the default) doxygen will
       
  1581  generate \f$\mbox{\LaTeX}\f$ output.
       
  1582 
       
  1583 \anchor cfg_latex_output
       
  1584 <dt>\c LATEX_OUTPUT <dd>
       
  1585  \addindex LATEX_OUTPUT
       
  1586  The \c LATEX_OUTPUT tag is used to specify where the \f$\mbox{\LaTeX}\f$ 
       
  1587  docs will be put.
       
  1588  If a relative path is entered the value of \c OUTPUT_DIRECTORY will be
       
  1589  put in front of it. If left blank `latex' will be used as the default path.
       
  1590 
       
  1591 \anchor cfg_latex_cmd_name
       
  1592 <dt>\c LATEX_CMD_NAME <dd>
       
  1593  \addindex LATEX_CMD_NAME
       
  1594  The \c LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be invoked. 
       
  1595  If left blank `latex' will be used as the default command name.
       
  1596  Note that when enabling USE_PDFLATEX this option is only used for
       
  1597  generating bitmaps for formulas in the HTML output, but not in the
       
  1598  Makefile that is written to the output directory.
       
  1599 
       
  1600 \anchor cfg_makeindex_cmd_name
       
  1601 <dt>\c MAKEINDEX_CMD_NAME <dd>
       
  1602  \addindex MAKEINDEX_CMD_NAME
       
  1603  The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 
       
  1604  generate index for LaTeX. If left blank `makeindex' will be used as the 
       
  1605  default command name.
       
  1606 
       
  1607 \anchor cfg_compact_latex
       
  1608 <dt>\c COMPACT_LATEX <dd>
       
  1609  \addindex COMPACT_LATEX
       
  1610  If the \c COMPACT_LATEX tag is set to \c YES doxygen generates more compact
       
  1611  \f$\mbox{\LaTeX}\f$ documents. This may be useful for small projects and may help to
       
  1612  save some trees in general.
       
  1613 
       
  1614 \anchor cfg_paper_type
       
  1615 <dt>\c PAPER_TYPE <dd>
       
  1616  \addindex PAPER_TYPE
       
  1617  The \c PAPER_TYPE tag can be used to set the paper type that is used
       
  1618  by the printer. Possible values are: 
       
  1619  <ul>
       
  1620  <li><code>a4</code> (210 x 297 mm).
       
  1621  <li><code>a4wide</code> (same as a4, but including the a4wide package).
       
  1622  <li><code>letter</code> (8.5 x 11 inches).
       
  1623  <li><code>legal</code> (8.5 x 14 inches).
       
  1624  <li><code>executive</code> (7.25 x 10.5 inches)
       
  1625  </ul> 
       
  1626  If left blank a4wide will be used.
       
  1627 
       
  1628 \anchor cfg_extra_packages
       
  1629 <dt>\c EXTRA_PACKAGES <dd>
       
  1630  \addindex EXTRA_PACKAGES
       
  1631  The \c EXTRA_PACKAGES tag can be used to specify one or more \f$\mbox{\LaTeX}\f$ 
       
  1632  package names that should be included in the \f$\mbox{\LaTeX}\f$ output.
       
  1633  To get the times font for instance you can specify 
       
  1634 \verbatim
       
  1635 EXTRA_PACKAGES = times
       
  1636 \endverbatim
       
  1637  If left blank no extra packages will be included.
       
  1638 
       
  1639 \anchor cfg_latex_header
       
  1640 <dt>\c LATEX_HEADER <dd>
       
  1641  \addindex LATEX_HEADER
       
  1642  The \c LATEX_HEADER tag can be used to specify a personal \f$\mbox{\LaTeX}\f$ 
       
  1643  header for the generated \f$\mbox{\LaTeX}\f$ document. 
       
  1644  The header should contain everything until the first chapter. 
       
  1645 
       
  1646  If it is left blank doxygen will generate a 
       
  1647  standard header. See section \ref doxygen_usage for information on how to 
       
  1648  let doxygen write the default header to a separate file.
       
  1649  
       
  1650  \par Note: 
       
  1651    Only use a user-defined header if you know what you are doing!
       
  1652 
       
  1653  The following commands have a special meaning inside the header:
       
  1654  <code>\$title</code>, <code>\$datetime</code>, <code>\$date</code>,
       
  1655  <code>\$doxygenversion</code>, <code>\$projectname</code>, 
       
  1656  <code>\$projectnumber</code>. 
       
  1657  Doxygen will replace them by respectively 
       
  1658  the title of the page, the current date and time, only the current date,
       
  1659  the version number of doxygen, the project name (see \c PROJECT_NAME), or the
       
  1660  project number (see \c PROJECT_NUMBER).
       
  1661    
       
  1662 \anchor cfg_pdf_hyperlinks
       
  1663 <dt>\c PDF_HYPERLINKS <dd>
       
  1664  \addindex PDF_HYPERLINKS
       
  1665 
       
  1666  If the \c PDF_HYPERLINKS tag is set to \c YES, the \f$\mbox{\LaTeX}\f$ that 
       
  1667  is generated is prepared for conversion to PDF (using ps2pdf or pdflatex). 
       
  1668  The PDF file will
       
  1669  contain links (just like the HTML output) instead of page references.
       
  1670  This makes the output suitable for online browsing using a PDF viewer.
       
  1671 
       
  1672 \anchor cfg_use_pdflatex
       
  1673 <dt>\c USE_PDFLATEX <dd>
       
  1674  \addindex LATEX_PDFLATEX
       
  1675 
       
  1676  If the \c LATEX_PDFLATEX tag is set to \c YES, doxygen will use
       
  1677  pdflatex to generate the PDF file directly from the \f$\mbox{\LaTeX}\f$
       
  1678  files.
       
  1679 
       
  1680 \anchor cfg_latex_batchmode
       
  1681 <dt>\c LATEX_BATCHMODE <dd>
       
  1682  \addindex LATEX_BATCHMODE
       
  1683 
       
  1684  If the \c LATEX_BATCHMODE tag is set to \c YES, doxygen will add the \\batchmode.
       
  1685  command to the generated \f$\mbox{\LaTeX}\f$ files. This will 
       
  1686  instruct \f$\mbox{\LaTeX}\f$ to keep running if errors occur, instead of 
       
  1687  asking the user for help. This option is also used when generating formulas 
       
  1688  in HTML.
       
  1689 
       
  1690 \anchor cfg_latex_hide_indices
       
  1691 <dt>\c LATEX_HIDE_INDICES <dd>
       
  1692  \addindex LATEX_HIDE_INDICES
       
  1693 
       
  1694  If \c LATEX_HIDE_INDICES is set to \c YES then doxygen will not
       
  1695  include the index chapters (such as File Index, Compound Index, etc.) 
       
  1696  in the output. 
       
  1697 
       
  1698 </dl>
       
  1699 \section rtf_output RTF related options
       
  1700 \anchor cfg_generate_rtf
       
  1701 <dl>
       
  1702 
       
  1703 <dt>\c GENERATE_RTF <dd>
       
  1704  \addindex GENERATE_RTF
       
  1705  If the \c GENERATE_RTF tag is set to \c YES doxygen will generate RTF output.
       
  1706  The RTF output is optimized for Word 97 and may not look too pretty with
       
  1707  other readers/editors.
       
  1708 
       
  1709 \anchor cfg_rtf_output
       
  1710 <dt>\c RTF_OUTPUT <dd>
       
  1711  \addindex RTF_OUTPUT
       
  1712  The \c RTF_OUTPUT tag is used to specify where the RTF docs will be put.
       
  1713  If a relative path is entered the value of \c OUTPUT_DIRECTORY will be
       
  1714  put in front of it. If left blank \c rtf will be used as the default path.
       
  1715  
       
  1716 \anchor cfg_compact_rtf
       
  1717 <dt>\c COMPACT_RTF <dd>
       
  1718  \addindex COMPACT_RTF
       
  1719  If the \c COMPACT_RTF tag is set to \c YES doxygen generates more compact
       
  1720  RTF documents. This may be useful for small projects and may help to
       
  1721  save some trees in general.
       
  1722 
       
  1723 \anchor cfg_rtf_hyperlinks
       
  1724 <dt>\c RTF_HYPERLINKS <dd>
       
  1725  \addindex RTF_HYPERLINKS
       
  1726  If the \c RTF_HYPERLINKS tag is set to \c YES, the RTF that is generated
       
  1727  will contain hyperlink fields. The RTF file will
       
  1728  contain links (just like the HTML output) instead of page references.
       
  1729  This makes the output suitable for online browsing using Word or some other
       
  1730  Word compatible reader that support those fields.
       
  1731 
       
  1732  \par note:
       
  1733    WordPad (write) and others do not support links.
       
  1734 
       
  1735 \anchor cfg_rtf_stylesheet_file 
       
  1736 <dt>\c RTF_STYLESHEET_FILE <dd>
       
  1737  \addindex RTF_STYLESHEET_FILE
       
  1738  Load stylesheet definitions from file. Syntax is similar to doxygen's
       
  1739  config file, i.e. a series of assignments. You only have to provide
       
  1740  replacements, missing definitions are set to their default value.
       
  1741 
       
  1742  See also section \ref doxygen_usage for information on how to generate
       
  1743  the default style sheet that doxygen normally uses.
       
  1744 
       
  1745 \anchor cfg_rtf_extensions_file
       
  1746 <dt>\c RTF_EXTENSIONS_FILE <dd>
       
  1747  Set optional variables used in the generation of an RTF document.
       
  1748  Syntax is similar to doxygen's config file. 
       
  1749  A template extensions file can be generated using 
       
  1750  <code>doxygen -e rtf extensionFile</code>.
       
  1751 
       
  1752 </dl>
       
  1753 
       
  1754 \section man_output Man page related options
       
  1755 \anchor cfg_generate_man
       
  1756 <dl>
       
  1757 
       
  1758 <dt>\c GENERATE_MAN <dd>
       
  1759  \addindex GENERATE_MAN
       
  1760  If the \c GENERATE_MAN tag is set to \c YES (the default) doxygen will
       
  1761  generate man pages for classes and files.
       
  1762 
       
  1763 \anchor cfg_man_output
       
  1764 <dt>\c MAN_OUTPUT <dd>
       
  1765  \addindex MAN_OUTPUT
       
  1766  The \c MAN_OUTPUT tag is used to specify where the man pages will be put.
       
  1767  If a relative path is entered the value of \c OUTPUT_DIRECTORY will be
       
  1768  put in front of it. If left blank `man' will be used as the default path.
       
  1769  A directory man3 will be created inside the directory specified by 
       
  1770  \c MAN_OUTPUT.
       
  1771 
       
  1772 \anchor cfg_man_extension
       
  1773 <dt>\c MAN_EXTENSION <dd>
       
  1774  \addindex MAX_EXTENSION
       
  1775  The \c MAN_EXTENSION tag determines the extension that is added to
       
  1776  the generated man pages (default is the subroutine's section .3)
       
  1777 
       
  1778 \anchor cfg_man_links
       
  1779 <dt>\c MAN_LINKS <dd> 
       
  1780  \addindex MAN_LINKS
       
  1781  If the \c MAN_LINKS tag is set to \c YES and doxygen generates man output, 
       
  1782  then it will generate one additional man file for each entity documented in 
       
  1783  the real man page(s). These additional files only source the real man page, 
       
  1784  but without them the man command would be unable to find the correct page. 
       
  1785  The default is \c NO.
       
  1786 
       
  1787 </dl>
       
  1788 
       
  1789 \section xml_output XML related options
       
  1790 \anchor cfg_generate_xml
       
  1791 <dl>
       
  1792 
       
  1793 <dt>\c GENERATE_XML <dd>
       
  1794  \addindex GENERATE_XML
       
  1795  If the \c GENERATE_XML tag is set to \c YES Doxygen will
       
  1796  generate an XML file that captures the structure of
       
  1797  the code including all documentation. 
       
  1798 
       
  1799 \anchor cfg_xml_output
       
  1800 <dt>\c XML_OUTPUT <dd>
       
  1801  \addindex XML_OUTPUT
       
  1802  The \c XML_OUTPUT tag is used to specify where the XML pages will be put. 
       
  1803  If a relative path is entered the value of \c OUTPUT_DIRECTORY will be 
       
  1804  put in front of it. If left blank \c xml will be used as the default path.
       
  1805 
       
  1806 \anchor cfg_xml_schema
       
  1807 <dt>\c XML_SCHEMA <dd>
       
  1808  \addindex XML_SCHEMA
       
  1809  The \c XML_SCHEMA tag can be used to specify an XML schema,
       
  1810  which can be used by a validating XML parser to check the
       
  1811  syntax of the XML files.
       
  1812 
       
  1813 \anchor cfg_xml_dtd
       
  1814 <dt>\c XML_DTD <dd>
       
  1815  \addindex XML_DTD
       
  1816  The \c XML_DTD tag can be used to specify an XML DTD,
       
  1817  which can be used by a validating XML parser to check the
       
  1818  syntax of the XML files.
       
  1819 
       
  1820 \anchor cfg_xml_programlisting
       
  1821 <dt>\c XML_PROGRAMLISTING <dd>
       
  1822  \addindex XML_PROGRAMLISTING
       
  1823  If the \c XML_PROGRAMLISTING tag is set to \c YES Doxygen will
       
  1824  dump the program listings (including syntax highlighting
       
  1825  and cross-referencing information) to the XML output. Note that
       
  1826  enabling this will significantly increase the size of the XML output.
       
  1827 
       
  1828 </dl>
       
  1829 
       
  1830 \section autogen_output AUTOGEN_DEF related options
       
  1831 \anchor cfg_generate_autogen_def
       
  1832 <dl>
       
  1833 
       
  1834 <dt>\c GENERATE_AUTOGEN_DEF <dd>
       
  1835  \addindex GENERATE_AUTOGEN_DEF
       
  1836  If the \c GENERATE_AUTOGEN_DEF tag is set to \c YES Doxygen will
       
  1837  generate an AutoGen Definitions (see http://autogen.sf.net) file
       
  1838  that captures the structure of the code including all
       
  1839  documentation. Note that this feature is still experimental 
       
  1840  and incomplete at the moment. 
       
  1841 
       
  1842 </dl>
       
  1843 
       
  1844 \section perlmod_output PERLMOD related options
       
  1845 \anchor cfg_generate_perlmod
       
  1846 <dl>
       
  1847 
       
  1848 <dt>\c GENERATE_PERLMOD <dd>
       
  1849  \addindex GENERATE_PERLMOD
       
  1850  If the \c GENERATE_PERLMOD tag is set to \c YES Doxygen will
       
  1851  generate a Perl module file that captures the structure of
       
  1852  the code including all documentation. Note that this 
       
  1853  feature is still experimental and incomplete at the
       
  1854  moment.
       
  1855 
       
  1856 \anchor cfg_perlmod_latex
       
  1857 <dt>\c PERLMOD_LATEX <dd>
       
  1858  \addindex PERLMOD_LATEX
       
  1859  If the \c PERLMOD_LATEX tag is set to \c YES Doxygen will generate 
       
  1860  the necessary Makefile rules, Perl scripts and LaTeX code to be able 
       
  1861  to generate PDF and DVI output from the Perl module output. 
       
  1862 
       
  1863 \anchor cfg_perlmod_pretty
       
  1864 <dt>\c PERLMOD_PRETTY <dd>
       
  1865  \addindex PERLMOD_PRETTY
       
  1866  If the \c PERLMOD_PRETTY tag is set to \c YES the Perl module output will be 
       
  1867  nicely formatted so it can be parsed by a human reader.  This is useful 
       
  1868  if you want to understand what is going on. On the other hand, if this
       
  1869  tag is set to \c NO the size of the Perl module output will be much smaller
       
  1870  and Perl will parse it just the same. 
       
  1871 
       
  1872 \anchor cfg_perlmod_makevar_prefix
       
  1873 <dt>\c PERLMOD_MAKEVAR_PREFIX <dd>
       
  1874  \addindex PERLMOD_MAKEVAR_PREFIX
       
  1875  The names of the make variables in the generated doxyrules.make file 
       
  1876  are prefixed with the string contained in \c PERLMOD_MAKEVAR_PREFIX. 
       
  1877  This is useful so different doxyrules.make files included by the same
       
  1878  Makefile don't overwrite each other's variables.
       
  1879 
       
  1880 </dl>
       
  1881 
       
  1882 \section config_prepro Preprocessor related options
       
  1883 \anchor cfg_enable_preprocessing
       
  1884 <dl>
       
  1885 
       
  1886 <dt>\c ENABLE_PREPROCESSING <dd>
       
  1887  \addindex ENABLE_PREPROCESSING
       
  1888  If the \c ENABLE_PREPROCESSING tag is set to \c YES (the default) doxygen will
       
  1889  evaluate all C-preprocessor directives found in the sources and include
       
  1890  files. 
       
  1891 
       
  1892 \anchor cfg_macro_expansion
       
  1893 <dt>\c MACRO_EXPANSION <dd>
       
  1894  \addindex MACRO_EXPANSION
       
  1895  If the \c MACRO_EXPANSION tag is set to \c YES doxygen will expand all macro
       
  1896  names in the source code. If set to \c NO (the default) only conditional 
       
  1897  compilation will be performed. Macro expansion can be done in a controlled
       
  1898  way by setting \c EXPAND_ONLY_PREDEF to \c YES.
       
  1899 
       
  1900 \anchor cfg_expand_only_predef
       
  1901 <dt>\c EXPAND_ONLY_PREDEF <dd>
       
  1902  \addindex EXPAND_ONLY_PREDEF
       
  1903  If the \c EXPAND_ONLY_PREDEF and \c MACRO_EXPANSION tags are both set to YES
       
  1904  then the macro expansion is limited to the macros specified with the
       
  1905  \c PREDEFINED and \c EXPAND_AS_DEFINED tags.
       
  1906 
       
  1907 \anchor cfg_search_includes
       
  1908 <dt>\c SEARCH_INCLUDES <dd>
       
  1909  \addindex SEARCH_INCLUDES 
       
  1910  If the \c SEARCH_INCLUDES tag is set to \c YES (the default) the includes files
       
  1911  in the \c INCLUDE_PATH (see below) will be searched if a \#include is found.
       
  1912 
       
  1913 \anchor cfg_include_path
       
  1914 <dt>\c INCLUDE_PATH <dd>
       
  1915  \addindex INCLUDE_PATH
       
  1916  The \c INCLUDE_PATH tag can be used to specify one or more directories that
       
  1917  contain include files that are not input files but should be processed by
       
  1918  the preprocessor.
       
  1919 
       
  1920 \anchor cfg_predefined
       
  1921 <dt>\c PREDEFINED <dd>
       
  1922  \addindex PREDEFINED
       
  1923  The \c PREDEFINED tag can be used to specify one or more macro names that
       
  1924  are defined before the preprocessor is started (similar to the -D option of
       
  1925  gcc). The argument of the tag is a list of macros of the form:
       
  1926  <code>name</code> or <code>name=definition</code> (no spaces). 
       
  1927  If the definition and the "=" are omitted,  "=1" is assumed. To prevent
       
  1928  a macro definition from being undefined via \#undef or recursively expanded
       
  1929  use the := operator instead of the = operator.
       
  1930 
       
  1931 \anchor cfg_expand_as_defined
       
  1932 <dt>\c EXPAND_AS_DEFINED <dd>
       
  1933  \addindex EXPAND_AS_DEFINED
       
  1934  If the \c MACRO_EXPANSION and \c EXPAND_ONLY_PREDEF tags are set to \c YES then
       
  1935  this tag can be used to specify a list of macro names that should be expanded.
       
  1936  The macro definition that is found in the sources will be used.
       
  1937  Use the \c PREDEFINED tag if you want to use a different macro definition.
       
  1938 
       
  1939 \anchor cfg_skip_function_macros
       
  1940 <dt>\c SKIP_FUNCTION_MACROS <dd>
       
  1941  \addindex SKIP_FUNCTION_MACROS
       
  1942  If the \c SKIP_FUNCTION_MACROS tag is set to \c YES (the default) then 
       
  1943  doxygen's preprocessor will remove all function-like macros that are alone 
       
  1944  on a line, have an all uppercase name, and do not end with a semicolon. 
       
  1945  Such function macros are typically 
       
  1946  used for boiler-plate code, and will confuse the parser if not removed. 
       
  1947 
       
  1948 </dl>
       
  1949 \section config_extref External reference options
       
  1950 \anchor cfg_tagfiles
       
  1951 <dl>
       
  1952 
       
  1953 <dt>\c TAGFILES <dd> 
       
  1954  \addindex TAGFILES
       
  1955  The \c TAGFILES tag can be used to specify one or more tagfiles. 
       
  1956  
       
  1957  See section \ref doxytag_usage for more information about the usage of 
       
  1958  tag files.
       
  1959  
       
  1960  Optionally an initial location of the external documentation 
       
  1961  can be added for each tagfile.
       
  1962  The format of a tag file without this location is as follows:
       
  1963  <pre>
       
  1964 TAGFILES = file1 file2 ... </pre>
       
  1965  Adding location for the tag files is done as follows:
       
  1966  <pre>
       
  1967 TAGFILES = file1=loc1 "file2 = loc2" ... </pre>
       
  1968  where \c loc1 and \c loc2 can be relative or absolute paths or URLs, 
       
  1969  If a location is present for each tag, the installdox tool (see 
       
  1970  section \ref installdox_usage for more information) does not
       
  1971  have to be run to correct the links.
       
  1972 
       
  1973  \par Note:
       
  1974   Each tag file must have a unique name 
       
  1975   (where the name does \e not include the path)
       
  1976   If a tag file is not located in the directory in which doxygen 
       
  1977   is run, you must also specify the path to the tagfile here.
       
  1978 
       
  1979 \anchor cfg_generate_tagfile
       
  1980 <dt>\c GENERATE_TAGFILE <dd>
       
  1981  \addindex GENERATE_TAGFILE
       
  1982  When a file name is specified after \c GENERATE_TAGFILE, doxygen will create
       
  1983  a tag file that is based on the input files it reads.
       
  1984  See section \ref doxytag_usage for more information about the usage of 
       
  1985  tag files.
       
  1986 
       
  1987 \anchor cfg_allexternals
       
  1988 <dt>\c ALLEXTERNALS <dd>
       
  1989  \addindex ALLEXTERNALS
       
  1990  If the \c ALLEXTERNALS tag is set to \c YES all external class will be listed
       
  1991  in the class index. If set to \c NO only the inherited external classes
       
  1992  will be listed.
       
  1993 
       
  1994 \anchor cfg_external_groups
       
  1995 <dt>\c EXTERNAL_GROUPS <dd>
       
  1996  \addindex EXTERNAL_GROUPS
       
  1997  If the \c EXTERNAL_GROUPS tag is set to \c YES all external groups will be listed
       
  1998  in the modules index. If set to \c NO, only the current project's groups will
       
  1999  be listed.
       
  2000  
       
  2001 \anchor cfg_perl_path
       
  2002 <dt>\c PERL_PATH <dd>
       
  2003  \addindex PERL_PATH
       
  2004  The \c PERL_PATH should be the absolute path and name of the perl script
       
  2005  interpreter (i.e. the result of `<tt>which perl</tt>').
       
  2006 
       
  2007 </dl>
       
  2008 \section config_dot Dot options
       
  2009 \anchor cfg_class_diagrams
       
  2010 <dl>
       
  2011 
       
  2012 <dt>\c CLASS_DIAGRAMS <dd>
       
  2013  \addindex CLASS_DIAGRAMS
       
  2014  If the \c CLASS_DIAGRAMS tag is set to \c YES (the default) doxygen will
       
  2015  generate a class diagram (in HTML and \f$\mbox{\LaTeX}\f$) for classes with base or
       
  2016  super classes. Setting the tag to \c NO turns the diagrams off.
       
  2017  Note that this option is superseded by the HAVE_DOT option below. 
       
  2018  This is only a fallback. It is recommended to install and use dot, 
       
  2019  since it yields more powerful graphs. 
       
  2020 
       
  2021 \anchor cfg_mscgen_path
       
  2022 <dt>\c MSCGEN_PATH <dd>
       
  2023  \addindex MSCGEN_PATH
       
  2024  You can define message sequence charts within doxygen comments using the \ref cmdmsc "\\msc" 
       
  2025  command. Doxygen will then run the <a href="http://www.mcternan.me.uk/mscgen/">msgen tool</a>) to 
       
  2026  produce the chart and insert it in the documentation. The <code>MSCGEN_PATH</code> tag allows you to 
       
  2027  specify the directory where the mscgen tool resides. If left empty the tool is assumed to 
       
  2028  be found in the default search path.
       
  2029 
       
  2030 \anchor cfg_have_dot
       
  2031 <dt>\c HAVE_DOT <dd>
       
  2032  \addindex HAVE_DOT
       
  2033  If you set the \c HAVE_DOT tag to \c YES then doxygen will assume the dot tool is
       
  2034  available from the path. This tool is part of 
       
  2035  <a href="http://www.research.att.com/sw/tools/graphviz/">Graphviz</a>, a graph 
       
  2036  visualization toolkit from AT\&T and Lucent Bell Labs. The other options in 
       
  2037  this section have no effect if this option is set to \c NO (the default)
       
  2038 
       
  2039 \anchor cfg_dot_fontname
       
  2040 <dt>\c DOT_FONTNAME <dd>
       
  2041  \addindex DOT_FONTNAME
       
  2042  By default doxygen will write a font called \c FreeSans.ttf to the output
       
  2043  directory and reference it in all dot files that doxygen generates. This
       
  2044  font does not include all possible unicode characters however, so when you need 
       
  2045  these (or just want a differently looking font) you can specify the font name
       
  2046  using \c DOT_FONTNAME. You need need to make sure dot is able to find the font,
       
  2047  which can be done by putting it in a standard location or by setting the
       
  2048  \c DOTFONTPATH environment variable or by setting \c DOT_FONTPATH to the directory
       
  2049  containing the font.
       
  2050 
       
  2051 \anchor cfg_dot_fontsize
       
  2052 <dt>\c DOT_FONTSIZE <dd>
       
  2053 The \c DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
       
  2054 The default size is 10pt. 
       
  2055 
       
  2056 \anchor cfg_dot_fontpath
       
  2057 <dt>\c DOT_FONTPATH <dd>
       
  2058  \addindex DOT_FONTPATH
       
  2059  By default doxygen will tell dot to use the output directory to look for the 
       
  2060  \c FreeSans.ttf font (which doxygen will put there itself). If you specify a 
       
  2061  different font using \c DOT_FONTNAME you can set the path where dot 
       
  2062  can find it using this tag.
       
  2063  
       
  2064 <dt>\c DOT_FONTNAME <dd>
       
  2065  \addindex DOT_FONTNAME
       
  2066  By default doxygen will write a font called FreeSans.ttf to the output 
       
  2067  directory and reference it in all dot files that doxygen generates. This 
       
  2068  font does not include all possible unicode characters however, so when you need 
       
  2069  these (or just want a differently looking font) you can specify the font name 
       
  2070  using \c DOT_FONTNAME. You need need to make sure dot is able to find the font, 
       
  2071  which can be done by putting it in a standard location or by setting the \c DOTFONTPATH
       
  2072  environment variable or by setting \c DOT_FONTPATH to the directory containing
       
  2073  the font.
       
  2074 
       
  2075 <dt>\c DOT_FONTPATH <dd>
       
  2076  \addindex DOT_FONTPATH
       
  2077  By default doxygen will tell dot to use the output directory to look for the
       
  2078  FreeSans.ttf font (which doxygen will put there itself). If you specify a 
       
  2079  different font using \c DOT_FONTNAME you can set the path where dot 
       
  2080  can find it using this tag. 
       
  2081 
       
  2082 \anchor cfg_class_graph
       
  2083 <dt>\c CLASS_GRAPH <dd>
       
  2084  \addindex CLASS_GRAPH
       
  2085  If the \c CLASS_GRAPH and \c HAVE_DOT tags are set to \c YES then doxygen
       
  2086  will generate a graph for each documented class showing the direct and
       
  2087  indirect inheritance relations. Setting this tag to \c YES will force the
       
  2088  the \c CLASS_DIAGRAMS tag to NO.
       
  2089 
       
  2090 \anchor cfg_collaboration_graph
       
  2091 <dt>\c COLLABORATION_GRAPH <dd>
       
  2092  \addindex COLLABORATION_GRAPH
       
  2093  If the \c COLLABORATION_GRAPH and \c HAVE_DOT tags are set to \c YES then doxygen
       
  2094  will generate a graph for each documented class showing the direct and
       
  2095  indirect implementation dependencies (inheritance, containment, and
       
  2096  class references variables) of the class with other documented classes.
       
  2097 
       
  2098 \anchor cfg_group_graphs
       
  2099 <dt>\c GROUP_GRAPHS <dd>
       
  2100  \addindex GROUP_GRAPHS
       
  2101  If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
       
  2102  will generate a graph for groups, showing the direct groups dependencies.
       
  2103 
       
  2104 \anchor cfg_uml_look
       
  2105 <dt>\c UML_LOOK <dd>
       
  2106  \addindex UML_LOOK
       
  2107  If the UML_LOOK tag is set to YES doxygen will generate inheritance and
       
  2108  collaboration diagrams in a style similar to the OMG's Unified Modeling
       
  2109  Language.
       
  2110 
       
  2111 \anchor cfg_template_relations
       
  2112 <dt>\c TEMPLATE_RELATIONS <dd>
       
  2113  \addindex TEMPLATE_RELATIONS
       
  2114  If the \c TEMPLATE_RELATIONS and \c HAVE_DOT tags are set to \c YES then 
       
  2115  doxygen will show the relations between templates and their instances.
       
  2116 
       
  2117 \anchor cfg_hide_undoc_relations
       
  2118 <dt>\c HIDE_UNDOC_RELATIONS <dd>
       
  2119  \addindex HIDE_UNDOC_RELATIONS
       
  2120  If set to YES, the inheritance and collaboration graphs will hide
       
  2121  inheritance and usage relations if the target is undocumented
       
  2122  or is not a class.
       
  2123 
       
  2124 \anchor cfg_include_graph
       
  2125 <dt>\c INCLUDE_GRAPH <dd>
       
  2126  \addindex INCLUDE_GRAPH 
       
  2127  If the \c ENABLE_PREPROCESSING, \c SEARCH_INCLUDES, \c INCLUDE_GRAPH, and \c HAVE_DOT
       
  2128  tags are set to \c YES then doxygen will generate a graph for each documented file
       
  2129  showing the direct and indirect include dependencies of the file with other
       
  2130  documented files.
       
  2131 
       
  2132 \anchor cfg_included_by_graph
       
  2133 <dt>\c INCLUDED_BY_GRAPH <dd>
       
  2134  \addindex INCLUDED_BY_GRAPH 
       
  2135  If the \c ENABLE_PREPROCESSING, \c SEARCH_INCLUDES, \c INCLUDED_BY_GRAPH, and
       
  2136  \c HAVE_DOT tags are set to \c YES then doxygen will generate a graph for each
       
  2137  documented header file showing the documented files that directly or indirectly
       
  2138  include this file.
       
  2139 
       
  2140 \anchor cfg_call_graph
       
  2141 <dt>\c CALL_GRAPH <dd>
       
  2142  \addindex CALL_GRAPH
       
  2143  If the \c CALL_GRAPH and \c HAVE_DOT tags are set to \c YES then doxygen will 
       
  2144  generate a call dependency graph for every global function or class method. 
       
  2145  Note that enabling this option will significantly increase the time of a run.
       
  2146  So in most cases it will be better to enable call graphs for selected 
       
  2147  functions only using the \\callgraph command.
       
  2148 
       
  2149 \anchor cfg_caller_graph
       
  2150 <dt>\c CALLER_GRAPH <dd>
       
  2151  \addindex CALLER_GRAPH
       
  2152  If the \c CALLER_GRAPH and \c HAVE_DOT tags are set to \c YES then doxygen will 
       
  2153  generate a caller dependency graph for every global function or class method. 
       
  2154  Note that enabling this option will significantly increase the time of a run.
       
  2155  So in most cases it will be better to enable caller graphs for selected 
       
  2156  functions only using the \\callergraph command.
       
  2157 
       
  2158 \anchor cfg_graphical_hierarchy
       
  2159 <dt>\c GRAPHICAL_HIERARCHY <dd>
       
  2160  \addindex GRAPHICAL_HIERARCHY
       
  2161  If the \c GRAPHICAL_HIERARCHY and \c HAVE_DOT tags are set to \c YES then 
       
  2162  doxygen will graphical hierarchy of all classes instead of a textual one.
       
  2163 
       
  2164 \anchor cfg_directory_graph
       
  2165 <dt>\c DIRECTORY_GRAPH <dd>
       
  2166  \addindex DIRECTORY_GRAPH		    
       
  2167  If the \c DIRECTORY_GRAPH, \c SHOW_DIRECTORIES and \c HAVE_DOT options are set 
       
  2168  to \c YES then doxygen will show the dependencies a directory has on other directories
       
  2169  in a graphical way. The dependency relations are determined by the \#include
       
  2170  relations between the files in the directories.
       
  2171 
       
  2172 \anchor cfg_dot_graph_max_nodes 
       
  2173 <dt>\c DOT_GRAPH_MAX_NODES <dd>
       
  2174  \addindex DOT_GRAPH_MAX_NODES
       
  2175  The \c DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of 
       
  2176  nodes that will be shown in the graph. If the number of nodes in a graph
       
  2177  becomes larger than this value, doxygen will truncate the graph, which is 
       
  2178  visualized by representing a node as a red box. Note that doxygen if the number
       
  2179  of direct children of the root node in a graph is already larger than
       
  2180  \c DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
       
  2181  that the size of a graph can be further restricted by \c MAX_DOT_GRAPH_DEPTH.
       
  2182 
       
  2183 \anchor cfg_max_dot_graph_depth
       
  2184 <dt>\c MAX_DOT_GRAPH_DEPTH <dd>
       
  2185  \addindex MAX_DOT_GRAPH_DEPTH
       
  2186  The \c MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 
       
  2187  graphs generated by dot. A depth value of 3 means that only nodes reachable
       
  2188  from the root by following a path via at most 3 edges will be shown. Nodes
       
  2189  that lay further from the root node will be omitted. Note that setting this
       
  2190  option to 1 or 2 may greatly reduce the computation time needed for large
       
  2191  code bases. Also note that the size of a graph can be further restricted by
       
  2192  \c DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction (the default).
       
  2193 
       
  2194 \anchor cfg_dot_image_format
       
  2195 <dt>\c DOT_IMAGE_FORMAT <dd>
       
  2196  \addindex DOT_IMAGE_FORMAT
       
  2197  The \c DOT_IMAGE_FORMAT tag can be used to set the image format of the images
       
  2198  generated by dot. Possible values are gif, jpg, and png.
       
  2199  If left blank png will be used.
       
  2200 
       
  2201 \anchor cfg_dot_path
       
  2202 <dt>\c DOT_PATH <dd>
       
  2203  \addindex DOT_PATH
       
  2204  This tag can be used to specify the path where the dot tool can be found. 
       
  2205  If left blank, it is assumed the dot tool can be found on the path. 
       
  2206 
       
  2207 \anchor cfg_dotfile_dirs
       
  2208 <dt>\c DOTFILE_DIRS <dd>
       
  2209  \addindex DOTFILE_DIRS
       
  2210  This tag can be used to specify one or more directories that 
       
  2211  contain dot files that are included in the documentation (see the
       
  2212  \\dotfile command).
       
  2213 
       
  2214 \anchor cfg_dot_transparent
       
  2215 <dt>\c DOT_TRANSPARENT <dd>
       
  2216  \addindex DOT_TRANSPARENT
       
  2217  Set the \c DOT_TRANSPARENT tag to \c YES to generate images with a transparent
       
  2218  background. This is disabled by default, because dot on Windows does not 
       
  2219  seem to support this out of the box. Warning: Depending on the platform used, 
       
  2220  enabling this option may lead to badly anti-aliased labels on the edges of 
       
  2221  a graph (i.e. they become hard to read). 
       
  2222  
       
  2223 \anchor cfg_dot_multi_targets
       
  2224 <dt>\c DOT_MULTI_TARGETS <dd>
       
  2225  \addindex DOT_MULTI_TARGET
       
  2226  Set the \c DOT_MULTI_TARGETS tag to \c YES allow dot to generate multiple output
       
  2227  files in one run (i.e. multiple -o and -T options on the command line). This
       
  2228  makes dot run faster, but since only newer versions of dot (>1.8.10)
       
  2229  support this, this feature is disabled by default.
       
  2230 
       
  2231 \anchor cfg_generate_legend 
       
  2232 <dt>\c GENERATE_LEGEND <dd>
       
  2233  \addindex GENERATE_LEGEND
       
  2234  If the \c GENERATE_LEGEND tag is set to \c YES (the default) doxygen will
       
  2235  generate a legend page explaining the meaning of the various boxes and
       
  2236  arrows in the dot generated graphs.
       
  2237 
       
  2238 \anchor cfg_dot_cleanup
       
  2239 <dt>\c DOT_CLEANUP <dd>
       
  2240  \addindex DOT_CLEANUP
       
  2241 If the \c DOT_CLEANUP tag is set to \c YES (the default) doxygen will
       
  2242 remove the intermediate dot files that are used to generate the various graphs.
       
  2243 
       
  2244 
       
  2245 </dl>
       
  2246 <h2>Examples</h2>
       
  2247 
       
  2248 Suppose you have a simple project consisting of two files: a source file 
       
  2249 \c example.cc and a header file \c example.h.
       
  2250 Then a minimal configuration file is as simple as:
       
  2251 \verbatim
       
  2252 INPUT            = example.cc example.h
       
  2253 \endverbatim
       
  2254 
       
  2255 Assuming the example makes use of Qt classes and perl is located 
       
  2256 in <code>/usr/bin</code>, a more realistic configuration file would be:
       
  2257 \verbatim
       
  2258 PROJECT_NAME     = Example
       
  2259 INPUT            = example.cc example.h
       
  2260 WARNINGS         = YES
       
  2261 TAGFILES         = qt.tag
       
  2262 PERL_PATH        = /usr/bin/perl
       
  2263 SEARCHENGINE     = NO
       
  2264 \endverbatim
       
  2265 
       
  2266 To generate the documentation for the 
       
  2267 <a href="http://www.stack.nl/~dimitri/qdbttabular/index.html">QdbtTabular</a> package
       
  2268 I have used the following configuration file:
       
  2269 \verbatim
       
  2270 PROJECT_NAME     = QdbtTabular
       
  2271 OUTPUT_DIRECTORY = html
       
  2272 WARNINGS         = YES
       
  2273 INPUT            = examples/examples.doc src
       
  2274 FILE_PATTERNS    = *.cc *.h
       
  2275 INCLUDE_PATH     = examples
       
  2276 TAGFILES         = qt.tag
       
  2277 PERL_PATH        = /usr/local/bin/perl
       
  2278 SEARCHENGINE     = YES
       
  2279 \endverbatim
       
  2280 
       
  2281 To regenerate the Qt-1.44 documentation from the sources, you could use the
       
  2282 following config file:
       
  2283 \verbatim
       
  2284 PROJECT_NAME         = Qt
       
  2285 OUTPUT_DIRECTORY     = qt_docs
       
  2286 HIDE_UNDOC_MEMBERS   = YES
       
  2287 HIDE_UNDOC_CLASSES   = YES
       
  2288 ENABLE_PREPROCESSING = YES
       
  2289 MACRO_EXPANSION      = YES
       
  2290 EXPAND_ONLY_PREDEF   = YES
       
  2291 SEARCH_INCLUDES      = YES
       
  2292 FULL_PATH_NAMES      = YES
       
  2293 STRIP_FROM_PATH      = $(QTDIR)/
       
  2294 PREDEFINED           = USE_TEMPLATECLASS Q_EXPORT= \
       
  2295                        QArrayT:=QArray \
       
  2296                        QListT:=QList \
       
  2297                        QDictT:=QDict \
       
  2298                        QQueueT:=QQueue \
       
  2299                        QVectorT:=QVector \
       
  2300                        QPtrDictT:=QPtrDict \
       
  2301                        QIntDictT:=QIntDict \
       
  2302                        QStackT:=QStack \
       
  2303                        QDictIteratorT:=QDictIterator \
       
  2304                        QListIteratorT:=QListIterator \
       
  2305                        QCacheT:=QCache \
       
  2306                        QCacheIteratorT:=QCacheIterator \
       
  2307                        QIntCacheT:=QIntCache \
       
  2308                        QIntCacheIteratorT:=QIntCacheIterator \
       
  2309                        QIntDictIteratorT:=QIntDictIterator \
       
  2310                        QPtrDictIteratorT:=QPtrDictIterator
       
  2311 INPUT                = $(QTDIR)/doc \
       
  2312                        $(QTDIR)/src/widgets \
       
  2313                        $(QTDIR)/src/kernel \
       
  2314                        $(QTDIR)/src/dialogs \
       
  2315                        $(QTDIR)/src/tools
       
  2316 FILE_PATTERNS        = *.cpp *.h q*.doc
       
  2317 INCLUDE_PATH         = $(QTDIR)/include 
       
  2318 RECURSIVE            = YES
       
  2319 \endverbatim
       
  2320 
       
  2321 For the Qt-2.1 sources I recommend to use the following settings:
       
  2322 \verbatim
       
  2323 PROJECT_NAME          = Qt
       
  2324 PROJECT_NUMBER        = 2.1
       
  2325 HIDE_UNDOC_MEMBERS    = YES
       
  2326 HIDE_UNDOC_CLASSES    = YES
       
  2327 SOURCE_BROWSER        = YES
       
  2328 INPUT                 = $(QTDIR)/src
       
  2329 FILE_PATTERNS         = *.cpp *.h q*.doc
       
  2330 RECURSIVE             = YES
       
  2331 EXCLUDE_PATTERNS      = *codec.cpp moc_* */compat/* */3rdparty/*
       
  2332 ALPHABETICAL_INDEX    = YES
       
  2333 COLS_IN_ALPHA_INDEX   = 3
       
  2334 IGNORE_PREFIX         = Q
       
  2335 ENABLE_PREPROCESSING  = YES
       
  2336 MACRO_EXPANSION       = YES
       
  2337 INCLUDE_PATH          = $(QTDIR)/include
       
  2338 PREDEFINED            = Q_PROPERTY(x)= \
       
  2339                         Q_OVERRIDE(x)= \
       
  2340                         Q_EXPORT= \
       
  2341                         Q_ENUMS(x)= \
       
  2342                         "QT_STATIC_CONST=static const " \
       
  2343                         _WS_X11_ \
       
  2344                         INCLUDE_MENUITEM_DEF
       
  2345 EXPAND_ONLY_PREDEF    = YES
       
  2346 EXPAND_AS_DEFINED     = Q_OBJECT_FAKE Q_OBJECT ACTIVATE_SIGNAL_WITH_PARAM \
       
  2347                         Q_VARIANT_AS
       
  2348 \endverbatim
       
  2349 
       
  2350 Here doxygen's preprocessor is used to substitute some
       
  2351 macro names that are normally substituted by the C preprocessor,
       
  2352 but without doing full macro expansion.
       
  2353 
       
  2354 */
       
  2355