Commit 5f3cba022a184dcd2df3df174e49c6ba1566ad2c

Authored by David Mayerich
0 parents

initial public commit

.gitignore 0 → 100644
  1 +++ a/.gitignore
  1 +html/*
  2 +latex/*
0 3 \ No newline at end of file
... ...
.gitmodules 0 → 100644
  1 +++ a/.gitmodules
  1 +[submodule "CImg"]
  2 + path = CImg
  3 + url = http://git.code.sf.net/p/cimg/source
  4 +[submodule "stimlib"]
  5 + path = stimlib
  6 + url = git@git.stim.ee.uh.edu:codebase/stimlib.git
... ...
CMakeLists.txt 0 → 100644
  1 +++ a/CMakeLists.txt
  1 +#Specify the version being used aswell as the language
  2 +cmake_minimum_required(VERSION 3.12)
  3 +
  4 +#Name your project here
  5 +project(siproc)
  6 +
  7 +#set the module directory
  8 +set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}")
  9 +
  10 +#default to release mode
  11 +if(NOT CMAKE_BUILD_TYPE)
  12 + set(CMAKE_BUILD_TYPE Release)
  13 +endif(NOT CMAKE_BUILD_TYPE)
  14 +
  15 +#build the executable in the binary directory on MS Visual Studio
  16 +if ( MSVC )
  17 + SET( CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG "${OUTPUT_DIRECTORY}")
  18 + SET( CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE "${OUTPUT_DIRECTORY}")
  19 + SET( LIBRARY_OUTPUT_DIRECTORY_DEBUG "${OUTPUT_DIRECTORY}")
  20 + SET( LIBRARY_OUTPUT_DIRECTORY_RELEASE "${OUTPUT_DIRECTORY}")
  21 + add_definitions(-D_CRT_SECURE_NO_WARNINGS)
  22 + add_definitions(-D_SCL_SECURE_NO_WARNINGS)
  23 +endif ( MSVC )
  24 +#MAYBE REMOVE-----------------
  25 +#set C++11 flags if using GCC
  26 +if( CMAKE_COMPILER_IS_GNUCC )
  27 + SET( CMAKE_CXX_FLAGS "-std=c++11")
  28 + SET( CUDA_NVCC_FLAGS "-std=c++11")
  29 +endif( CMAKE_COMPILER_IS_GNUCC )
  30 +#-----------------------------
  31 +
  32 +#find packages-----------------------------------
  33 +#find the pthreads package
  34 +find_package(Threads)
  35 +
  36 +#find the X11 package
  37 +find_package(X11)
  38 +
  39 +#find the STIM library
  40 +find_package(STIM REQUIRED)
  41 +
  42 +#find CUDA, mostly for LA stuff using cuBLAS
  43 +find_package(CUDA REQUIRED)
  44 +
  45 +#find Boost for Unix-based file lists
  46 +if( CMAKE_COMPILER_IS_GNUCC )
  47 + find_package(Boost COMPONENTS filesystem system)
  48 + if(Boost_FOUND)
  49 + include_directories(${Boost_INCLUDE_DIR})
  50 + add_definitions(-DBOOST_PRECOMPILED)
  51 + else()
  52 + message(FATAL_ERROR "HSIproc requires Boost::filesystem and Boost::system when using GCC")
  53 + endif()
  54 +else()
  55 + find_package(Boost)
  56 +endif()
  57 +
  58 +#find the GLUT library for visualization
  59 +find_package(OpenGL REQUIRED)
  60 +find_package(GLUT REQUIRED)
  61 +if(WIN32)
  62 + find_package(GLEW REQUIRED)
  63 + include_directories(${GLEW_INCLUDE_DIR})
  64 +endif(WIN32)
  65 +
  66 +#find LAPACK and supporting link_libraries
  67 +find_package(LAPACKE REQUIRED)
  68 +#if(MSVC)
  69 +# message("Warning: VS2015 made a change to printf and scanf functions that requires linking to legacy_stdio_definitions.lib")
  70 +#endif()
  71 +
  72 +#include include directories
  73 +include_directories(${CUDA_INCLUDE_DIRS}
  74 + ${LAPACKE_INCLUDE_DIR}
  75 + ${STIM_INCLUDE_DIRS}
  76 + ${OpenGL_INCLUDE_DIRS}
  77 + ${GLUT_INCLUDE_DIR}
  78 + "${CMAKE_SOURCE_DIR}/src"
  79 +)
  80 +
  81 +#Assign source files to the appropriate variables to easily associate them with executables
  82 +file(GLOB HSIGLOBAL_SRC "${CMAKE_SOURCE_DIR}/src/*.cpp")
  83 +file(GLOB HSIPROC_SRC "${CMAKE_SOURCE_DIR}/src/proc/*.cpp")
  84 +file(GLOB STIM_CU "${STIM_INCLUDE_DIRS}/stim/envi/*.cu")
  85 +file(GLOB HSIVIEW_SRC "${CMAKE_SOURCE_DIR}/src/view/*.cpp")
  86 +file(GLOB CARY_FTIR_SRC "${CMAKE_SOURCE_DIR}/src/cary-ftir/*.cpp")
  87 +file(GLOB SPERO_SRC "${CMAKE_SOURCE_DIR}/src/spero/*.cpp")
  88 +file(GLOB PROGRESS_SRC "${CMAKE_SOURCE_DIR}/src/progress_t.cpp")
  89 +
  90 +#create the PROC executable----------------------------------------------
  91 +add_executable(siproc
  92 + ${HSIPROC_SRC}
  93 + ${HSIGLOBAL_SRC}
  94 +)
  95 +
  96 +target_link_libraries(siproc ${CUDA_LIBRARIES}
  97 + ${CUDA_CUBLAS_LIBRARIES}
  98 + ${CUDA_CUFFT_LIBRARIES}
  99 + ${LAPACKE_LIBRARIES}
  100 + ${CMAKE_THREAD_LIBS_INIT}
  101 + ${X11_LIBRARIES}
  102 +)
  103 +
  104 +#create the VIEW executable----------------------------------------------
  105 +add_executable(siview
  106 + ${HSIVIEW_SRC}
  107 +)
  108 +target_link_libraries(siview
  109 + ${CMAKE_THREAD_LIBS_INIT}
  110 + ${X11_LIBRARIES}
  111 + ${OPENGL_gl_LIBRARY}
  112 + ${OPENGL_glu_LIBRARY}
  113 + ${GLUT_LIBRARIES}
  114 +)
  115 +if(WIN32)
  116 + target_link_libraries(siview ${GLEW_GLEW_LIBRARY})
  117 +endif(WIN32)
  118 +
  119 +#create instrument-specific subroutine executables
  120 +add_executable(cary-ftir
  121 + ${CARY_FTIR_SRC}
  122 + ${PROGRESS_SRC}
  123 +)
  124 +target_link_libraries(cary-ftir
  125 + ${CUDA_LIBRARIES}
  126 + ${CUDA_CUBLAS_LIBRARIES}
  127 + ${CUDA_CUFFT_LIBRARIES}
  128 +)
  129 +
  130 +#create the Agilent system-specific subroutine executable
  131 +add_executable(spero
  132 + ${SPERO_SRC}
  133 + ${PROGRESS_SRC}
  134 +)
  135 +target_link_libraries(spero
  136 + ${CUDA_LIBRARIES}
  137 + ${CUDA_CUBLAS_LIBRARIES}
  138 + ${CUDA_CUFFT_LIBRARIES}
  139 +)
  140 +
  141 +#if Boost is found, set an environment variable to use with preprocessor directives
  142 +if(Boost_FILESYSTEM_FOUND)
  143 + target_link_libraries(siproc ${Boost_FILESYSTEM_LIBRARIES}
  144 + ${Boost_SYSTEM_LIBRARY}
  145 + )
  146 + target_link_libraries(siview
  147 + ${Boost_FILESYSTEM_LIBRARIES}
  148 + ${Boost_SYSTEM_LIBRARY}
  149 + )
  150 + target_link_libraries(spero
  151 + ${Boost_FILESYSTEM_LIBRARIES}
  152 + ${Boost_SYSTEM_LIBRARY}
  153 + )
  154 +
  155 + target_link_libraries(cary-ftir
  156 + ${Boost_FILESYSTEM_LIBRARIES}
  157 + ${Boost_SYSTEM_LIBRARY}
  158 + )
  159 +endif(Boost_FILESYSTEM_FOUND)
  160 +
  161 +
... ...
Doxyfile 0 → 100644
  1 +++ a/Doxyfile
  1 +# Doxyfile 1.8.9.1
  2 +
  3 +# This file describes the settings to be used by the documentation system
  4 +# doxygen (www.doxygen.org) for a project.
  5 +#
  6 +# All text after a double hash (##) is considered a comment and is placed in
  7 +# front of the TAG it is preceding.
  8 +#
  9 +# All text after a single hash (#) is considered a comment and will be ignored.
  10 +# The format is:
  11 +# TAG = value [value, ...]
  12 +# For lists, items can also be appended using:
  13 +# TAG += value [value, ...]
  14 +# Values that contain spaces should be placed between quotes (\" \").
  15 +
  16 +#---------------------------------------------------------------------------
  17 +# Project related configuration options
  18 +#---------------------------------------------------------------------------
  19 +
  20 +# This tag specifies the encoding used for all characters in the config file
  21 +# that follow. The default is UTF-8 which is also the encoding used for all text
  22 +# before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
  23 +# built into libc) for the transcoding. See http://www.gnu.org/software/libiconv
  24 +# for the list of possible encodings.
  25 +# The default value is: UTF-8.
  26 +
  27 +DOXYFILE_ENCODING = UTF-8
  28 +
  29 +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
  30 +# double-quotes, unless you are using Doxywizard) that should identify the
  31 +# project for which the documentation is generated. This name is used in the
  32 +# title of most generated pages and in a few other places.
  33 +# The default value is: My Project.
  34 +
  35 +PROJECT_NAME = "stimlab"
  36 +
  37 +# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
  38 +# could be handy for archiving the generated documentation or if some version
  39 +# control system is used.
  40 +
  41 +PROJECT_NUMBER =
  42 +
  43 +# Using the PROJECT_BRIEF tag one can provide an optional one line description
  44 +# for a project that appears at the top of each page and should give viewer a
  45 +# quick idea about the purpose of the project. Keep the description short.
  46 +
  47 +PROJECT_BRIEF =
  48 +
  49 +# With the PROJECT_LOGO tag one can specify a logo or an icon that is included
  50 +# in the documentation. The maximum height of the logo should not exceed 55
  51 +# pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
  52 +# the logo to the output directory.
  53 +
  54 +PROJECT_LOGO =
  55 +
  56 +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
  57 +# into which the generated documentation will be written. If a relative path is
  58 +# entered, it will be relative to the location where doxygen was started. If
  59 +# left blank the current directory will be used.
  60 +
  61 +OUTPUT_DIRECTORY =
  62 +
  63 +# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
  64 +# directories (in 2 levels) under the output directory of each output format and
  65 +# will distribute the generated files over these directories. Enabling this
  66 +# option can be useful when feeding doxygen a huge amount of source files, where
  67 +# putting all generated files in the same directory would otherwise causes
  68 +# performance problems for the file system.
  69 +# The default value is: NO.
  70 +
  71 +CREATE_SUBDIRS = NO
  72 +
  73 +# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
  74 +# characters to appear in the names of generated files. If set to NO, non-ASCII
  75 +# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
  76 +# U+3044.
  77 +# The default value is: NO.
  78 +
  79 +ALLOW_UNICODE_NAMES = NO
  80 +
  81 +# The OUTPUT_LANGUAGE tag is used to specify the language in which all
  82 +# documentation generated by doxygen is written. Doxygen will use this
  83 +# information to generate all constant output in the proper language.
  84 +# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
  85 +# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
  86 +# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
  87 +# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
  88 +# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
  89 +# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
  90 +# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
  91 +# Ukrainian and Vietnamese.
  92 +# The default value is: English.
  93 +
  94 +OUTPUT_LANGUAGE = English
  95 +
  96 +# If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
  97 +# descriptions after the members that are listed in the file and class
  98 +# documentation (similar to Javadoc). Set to NO to disable this.
  99 +# The default value is: YES.
  100 +
  101 +BRIEF_MEMBER_DESC = YES
  102 +
  103 +# If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
  104 +# description of a member or function before the detailed description
  105 +#
  106 +# Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
  107 +# brief descriptions will be completely suppressed.
  108 +# The default value is: YES.
  109 +
  110 +REPEAT_BRIEF = YES
  111 +
  112 +# This tag implements a quasi-intelligent brief description abbreviator that is
  113 +# used to form the text in various listings. Each string in this list, if found
  114 +# as the leading text of the brief description, will be stripped from the text
  115 +# and the result, after processing the whole list, is used as the annotated
  116 +# text. Otherwise, the brief description is used as-is. If left blank, the
  117 +# following values are used ($name is automatically replaced with the name of
  118 +# the entity):The $name class, The $name widget, The $name file, is, provides,
  119 +# specifies, contains, represents, a, an and the.
  120 +
  121 +ABBREVIATE_BRIEF =
  122 +
  123 +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
  124 +# doxygen will generate a detailed section even if there is only a brief
  125 +# description.
  126 +# The default value is: NO.
  127 +
  128 +ALWAYS_DETAILED_SEC = NO
  129 +
  130 +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
  131 +# inherited members of a class in the documentation of that class as if those
  132 +# members were ordinary class members. Constructors, destructors and assignment
  133 +# operators of the base classes will not be shown.
  134 +# The default value is: NO.
  135 +
  136 +INLINE_INHERITED_MEMB = NO
  137 +
  138 +# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
  139 +# before files name in the file list and in the header files. If set to NO the
  140 +# shortest path that makes the file name unique will be used
  141 +# The default value is: YES.
  142 +
  143 +FULL_PATH_NAMES = YES
  144 +
  145 +# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
  146 +# Stripping is only done if one of the specified strings matches the left-hand
  147 +# part of the path. The tag can be used to show relative paths in the file list.
  148 +# If left blank the directory from which doxygen is run is used as the path to
  149 +# strip.
  150 +#
  151 +# Note that you can specify absolute paths here, but also relative paths, which
  152 +# will be relative from the directory where doxygen is started.
  153 +# This tag requires that the tag FULL_PATH_NAMES is set to YES.
  154 +
  155 +STRIP_FROM_PATH =
  156 +
  157 +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
  158 +# path mentioned in the documentation of a class, which tells the reader which
  159 +# header file to include in order to use a class. If left blank only the name of
  160 +# the header file containing the class definition is used. Otherwise one should
  161 +# specify the list of include paths that are normally passed to the compiler
  162 +# using the -I flag.
  163 +
  164 +STRIP_FROM_INC_PATH =
  165 +
  166 +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
  167 +# less readable) file names. This can be useful is your file systems doesn't
  168 +# support long names like on DOS, Mac, or CD-ROM.
  169 +# The default value is: NO.
  170 +
  171 +SHORT_NAMES = NO
  172 +
  173 +# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
  174 +# first line (until the first dot) of a Javadoc-style comment as the brief
  175 +# description. If set to NO, the Javadoc-style will behave just like regular Qt-
  176 +# style comments (thus requiring an explicit @brief command for a brief
  177 +# description.)
  178 +# The default value is: NO.
  179 +
  180 +JAVADOC_AUTOBRIEF = NO
  181 +
  182 +# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
  183 +# line (until the first dot) of a Qt-style comment as the brief description. If
  184 +# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
  185 +# requiring an explicit \brief command for a brief description.)
  186 +# The default value is: NO.
  187 +
  188 +QT_AUTOBRIEF = NO
  189 +
  190 +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
  191 +# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
  192 +# a brief description. This used to be the default behavior. The new default is
  193 +# to treat a multi-line C++ comment block as a detailed description. Set this
  194 +# tag to YES if you prefer the old behavior instead.
  195 +#
  196 +# Note that setting this tag to YES also means that rational rose comments are
  197 +# not recognized any more.
  198 +# The default value is: NO.
  199 +
  200 +MULTILINE_CPP_IS_BRIEF = NO
  201 +
  202 +# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
  203 +# documentation from any documented member that it re-implements.
  204 +# The default value is: YES.
  205 +
  206 +INHERIT_DOCS = YES
  207 +
  208 +# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
  209 +# page for each member. If set to NO, the documentation of a member will be part
  210 +# of the file/class/namespace that contains it.
  211 +# The default value is: NO.
  212 +
  213 +SEPARATE_MEMBER_PAGES = NO
  214 +
  215 +# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
  216 +# uses this value to replace tabs by spaces in code fragments.
  217 +# Minimum value: 1, maximum value: 16, default value: 4.
  218 +
  219 +TAB_SIZE = 4
  220 +
  221 +# This tag can be used to specify a number of aliases that act as commands in
  222 +# the documentation. An alias has the form:
  223 +# name=value
  224 +# For example adding
  225 +# "sideeffect=@par Side Effects:\n"
  226 +# will allow you to put the command \sideeffect (or @sideeffect) in the
  227 +# documentation, which will result in a user-defined paragraph with heading
  228 +# "Side Effects:". You can put \n's in the value part of an alias to insert
  229 +# newlines.
  230 +
  231 +ALIASES =
  232 +
  233 +# This tag can be used to specify a number of word-keyword mappings (TCL only).
  234 +# A mapping has the form "name=value". For example adding "class=itcl::class"
  235 +# will allow you to use the command class in the itcl::class meaning.
  236 +
  237 +TCL_SUBST =
  238 +
  239 +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
  240 +# only. Doxygen will then generate output that is more tailored for C. For
  241 +# instance, some of the names that are used will be different. The list of all
  242 +# members will be omitted, etc.
  243 +# The default value is: NO.
  244 +
  245 +OPTIMIZE_OUTPUT_FOR_C = NO
  246 +
  247 +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
  248 +# Python sources only. Doxygen will then generate output that is more tailored
  249 +# for that language. For instance, namespaces will be presented as packages,
  250 +# qualified scopes will look different, etc.
  251 +# The default value is: NO.
  252 +
  253 +OPTIMIZE_OUTPUT_JAVA = NO
  254 +
  255 +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
  256 +# sources. Doxygen will then generate output that is tailored for Fortran.
  257 +# The default value is: NO.
  258 +
  259 +OPTIMIZE_FOR_FORTRAN = NO
  260 +
  261 +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
  262 +# sources. Doxygen will then generate output that is tailored for VHDL.
  263 +# The default value is: NO.
  264 +
  265 +OPTIMIZE_OUTPUT_VHDL = NO
  266 +
  267 +# Doxygen selects the parser to use depending on the extension of the files it
  268 +# parses. With this tag you can assign which parser to use for a given
  269 +# extension. Doxygen has a built-in mapping, but you can override or extend it
  270 +# using this tag. The format is ext=language, where ext is a file extension, and
  271 +# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
  272 +# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
  273 +# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
  274 +# Fortran. In the later case the parser tries to guess whether the code is fixed
  275 +# or free formatted code, this is the default for Fortran type files), VHDL. For
  276 +# instance to make doxygen treat .inc files as Fortran files (default is PHP),
  277 +# and .f files as C (default is Fortran), use: inc=Fortran f=C.
  278 +#
  279 +# Note: For files without extension you can use no_extension as a placeholder.
  280 +#
  281 +# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
  282 +# the files are not read by doxygen.
  283 +
  284 +EXTENSION_MAPPING =
  285 +
  286 +# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
  287 +# according to the Markdown format, which allows for more readable
  288 +# documentation. See http://daringfireball.net/projects/markdown/ for details.
  289 +# The output of markdown processing is further processed by doxygen, so you can
  290 +# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
  291 +# case of backward compatibilities issues.
  292 +# The default value is: YES.
  293 +
  294 +MARKDOWN_SUPPORT = YES
  295 +
  296 +# When enabled doxygen tries to link words that correspond to documented
  297 +# classes, or namespaces to their corresponding documentation. Such a link can
  298 +# be prevented in individual cases by putting a % sign in front of the word or
  299 +# globally by setting AUTOLINK_SUPPORT to NO.
  300 +# The default value is: YES.
  301 +
  302 +AUTOLINK_SUPPORT = YES
  303 +
  304 +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
  305 +# to include (a tag file for) the STL sources as input, then you should set this
  306 +# tag to YES in order to let doxygen match functions declarations and
  307 +# definitions whose arguments contain STL classes (e.g. func(std::string);
  308 +# versus func(std::string) {}). This also make the inheritance and collaboration
  309 +# diagrams that involve STL classes more complete and accurate.
  310 +# The default value is: NO.
  311 +
  312 +BUILTIN_STL_SUPPORT = NO
  313 +
  314 +# If you use Microsoft's C++/CLI language, you should set this option to YES to
  315 +# enable parsing support.
  316 +# The default value is: NO.
  317 +
  318 +CPP_CLI_SUPPORT = NO
  319 +
  320 +# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
  321 +# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen
  322 +# will parse them like normal C++ but will assume all classes use public instead
  323 +# of private inheritance when no explicit protection keyword is present.
  324 +# The default value is: NO.
  325 +
  326 +SIP_SUPPORT = NO
  327 +
  328 +# For Microsoft's IDL there are propget and propput attributes to indicate
  329 +# getter and setter methods for a property. Setting this option to YES will make
  330 +# doxygen to replace the get and set methods by a property in the documentation.
  331 +# This will only work if the methods are indeed getting or setting a simple
  332 +# type. If this is not the case, or you want to show the methods anyway, you
  333 +# should set this option to NO.
  334 +# The default value is: YES.
  335 +
  336 +IDL_PROPERTY_SUPPORT = YES
  337 +
  338 +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
  339 +# tag is set to YES then doxygen will reuse the documentation of the first
  340 +# member in the group (if any) for the other members of the group. By default
  341 +# all members of a group must be documented explicitly.
  342 +# The default value is: NO.
  343 +
  344 +DISTRIBUTE_GROUP_DOC = NO
  345 +
  346 +# Set the SUBGROUPING tag to YES to allow class member groups of the same type
  347 +# (for instance a group of public functions) to be put as a subgroup of that
  348 +# type (e.g. under the Public Functions section). Set it to NO to prevent
  349 +# subgrouping. Alternatively, this can be done per class using the
  350 +# \nosubgrouping command.
  351 +# The default value is: YES.
  352 +
  353 +SUBGROUPING = YES
  354 +
  355 +# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
  356 +# are shown inside the group in which they are included (e.g. using \ingroup)
  357 +# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
  358 +# and RTF).
  359 +#
  360 +# Note that this feature does not work in combination with
  361 +# SEPARATE_MEMBER_PAGES.
  362 +# The default value is: NO.
  363 +
  364 +INLINE_GROUPED_CLASSES = NO
  365 +
  366 +# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
  367 +# with only public data fields or simple typedef fields will be shown inline in
  368 +# the documentation of the scope in which they are defined (i.e. file,
  369 +# namespace, or group documentation), provided this scope is documented. If set
  370 +# to NO, structs, classes, and unions are shown on a separate page (for HTML and
  371 +# Man pages) or section (for LaTeX and RTF).
  372 +# The default value is: NO.
  373 +
  374 +INLINE_SIMPLE_STRUCTS = NO
  375 +
  376 +# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
  377 +# enum is documented as struct, union, or enum with the name of the typedef. So
  378 +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
  379 +# with name TypeT. When disabled the typedef will appear as a member of a file,
  380 +# namespace, or class. And the struct will be named TypeS. This can typically be
  381 +# useful for C code in case the coding convention dictates that all compound
  382 +# types are typedef'ed and only the typedef is referenced, never the tag name.
  383 +# The default value is: NO.
  384 +
  385 +TYPEDEF_HIDES_STRUCT = NO
  386 +
  387 +# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
  388 +# cache is used to resolve symbols given their name and scope. Since this can be
  389 +# an expensive process and often the same symbol appears multiple times in the
  390 +# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
  391 +# doxygen will become slower. If the cache is too large, memory is wasted. The
  392 +# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
  393 +# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
  394 +# symbols. At the end of a run doxygen will report the cache usage and suggest
  395 +# the optimal cache size from a speed point of view.
  396 +# Minimum value: 0, maximum value: 9, default value: 0.
  397 +
  398 +LOOKUP_CACHE_SIZE = 0
  399 +
  400 +#---------------------------------------------------------------------------
  401 +# Build related configuration options
  402 +#---------------------------------------------------------------------------
  403 +
  404 +# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
  405 +# documentation are documented, even if no documentation was available. Private
  406 +# class members and static file members will be hidden unless the
  407 +# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
  408 +# Note: This will also disable the warnings about undocumented members that are
  409 +# normally produced when WARNINGS is set to YES.
  410 +# The default value is: NO.
  411 +
  412 +EXTRACT_ALL = NO
  413 +
  414 +# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
  415 +# be included in the documentation.
  416 +# The default value is: NO.
  417 +
  418 +EXTRACT_PRIVATE = NO
  419 +
  420 +# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
  421 +# scope will be included in the documentation.
  422 +# The default value is: NO.
  423 +
  424 +EXTRACT_PACKAGE = NO
  425 +
  426 +# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
  427 +# included in the documentation.
  428 +# The default value is: NO.
  429 +
  430 +EXTRACT_STATIC = NO
  431 +
  432 +# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
  433 +# locally in source files will be included in the documentation. If set to NO,
  434 +# only classes defined in header files are included. Does not have any effect
  435 +# for Java sources.
  436 +# The default value is: YES.
  437 +
  438 +EXTRACT_LOCAL_CLASSES = YES
  439 +
  440 +# This flag is only useful for Objective-C code. If set to YES, local methods,
  441 +# which are defined in the implementation section but not in the interface are
  442 +# included in the documentation. If set to NO, only methods in the interface are
  443 +# included.
  444 +# The default value is: NO.
  445 +
  446 +EXTRACT_LOCAL_METHODS = NO
  447 +
  448 +# If this flag is set to YES, the members of anonymous namespaces will be
  449 +# extracted and appear in the documentation as a namespace called
  450 +# 'anonymous_namespace{file}', where file will be replaced with the base name of
  451 +# the file that contains the anonymous namespace. By default anonymous namespace
  452 +# are hidden.
  453 +# The default value is: NO.
  454 +
  455 +EXTRACT_ANON_NSPACES = NO
  456 +
  457 +# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
  458 +# undocumented members inside documented classes or files. If set to NO these
  459 +# members will be included in the various overviews, but no documentation
  460 +# section is generated. This option has no effect if EXTRACT_ALL is enabled.
  461 +# The default value is: NO.
  462 +
  463 +HIDE_UNDOC_MEMBERS = NO
  464 +
  465 +# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
  466 +# undocumented classes that are normally visible in the class hierarchy. If set
  467 +# to NO, these classes will be included in the various overviews. This option
  468 +# has no effect if EXTRACT_ALL is enabled.
  469 +# The default value is: NO.
  470 +
  471 +HIDE_UNDOC_CLASSES = NO
  472 +
  473 +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
  474 +# (class|struct|union) declarations. If set to NO, these declarations will be
  475 +# included in the documentation.
  476 +# The default value is: NO.
  477 +
  478 +HIDE_FRIEND_COMPOUNDS = NO
  479 +
  480 +# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
  481 +# documentation blocks found inside the body of a function. If set to NO, these
  482 +# blocks will be appended to the function's detailed documentation block.
  483 +# The default value is: NO.
  484 +
  485 +HIDE_IN_BODY_DOCS = NO
  486 +
  487 +# The INTERNAL_DOCS tag determines if documentation that is typed after a
  488 +# \internal command is included. If the tag is set to NO then the documentation
  489 +# will be excluded. Set it to YES to include the internal documentation.
  490 +# The default value is: NO.
  491 +
  492 +INTERNAL_DOCS = NO
  493 +
  494 +# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
  495 +# names in lower-case letters. If set to YES, upper-case letters are also
  496 +# allowed. This is useful if you have classes or files whose names only differ
  497 +# in case and if your file system supports case sensitive file names. Windows
  498 +# and Mac users are advised to set this option to NO.
  499 +# The default value is: system dependent.
  500 +
  501 +CASE_SENSE_NAMES = NO
  502 +
  503 +# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
  504 +# their full class and namespace scopes in the documentation. If set to YES, the
  505 +# scope will be hidden.
  506 +# The default value is: NO.
  507 +
  508 +HIDE_SCOPE_NAMES = NO
  509 +
  510 +# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
  511 +# append additional text to a page's title, such as Class Reference. If set to
  512 +# YES the compound reference will be hidden.
  513 +# The default value is: NO.
  514 +
  515 +HIDE_COMPOUND_REFERENCE= NO
  516 +
  517 +# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
  518 +# the files that are included by a file in the documentation of that file.
  519 +# The default value is: YES.
  520 +
  521 +SHOW_INCLUDE_FILES = YES
  522 +
  523 +# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
  524 +# grouped member an include statement to the documentation, telling the reader
  525 +# which file to include in order to use the member.
  526 +# The default value is: NO.
  527 +
  528 +SHOW_GROUPED_MEMB_INC = NO
  529 +
  530 +# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
  531 +# files with double quotes in the documentation rather than with sharp brackets.
  532 +# The default value is: NO.
  533 +
  534 +FORCE_LOCAL_INCLUDES = NO
  535 +
  536 +# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
  537 +# documentation for inline members.
  538 +# The default value is: YES.
  539 +
  540 +INLINE_INFO = YES
  541 +
  542 +# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
  543 +# (detailed) documentation of file and class members alphabetically by member
  544 +# name. If set to NO, the members will appear in declaration order.
  545 +# The default value is: YES.
  546 +
  547 +SORT_MEMBER_DOCS = YES
  548 +
  549 +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
  550 +# descriptions of file, namespace and class members alphabetically by member
  551 +# name. If set to NO, the members will appear in declaration order. Note that
  552 +# this will also influence the order of the classes in the class list.
  553 +# The default value is: NO.
  554 +
  555 +SORT_BRIEF_DOCS = NO
  556 +
  557 +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
  558 +# (brief and detailed) documentation of class members so that constructors and
  559 +# destructors are listed first. If set to NO the constructors will appear in the
  560 +# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
  561 +# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
  562 +# member documentation.
  563 +# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
  564 +# detailed member documentation.
  565 +# The default value is: NO.
  566 +
  567 +SORT_MEMBERS_CTORS_1ST = NO
  568 +
  569 +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
  570 +# of group names into alphabetical order. If set to NO the group names will
  571 +# appear in their defined order.
  572 +# The default value is: NO.
  573 +
  574 +SORT_GROUP_NAMES = NO
  575 +
  576 +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
  577 +# fully-qualified names, including namespaces. If set to NO, the class list will
  578 +# be sorted only by class name, not including the namespace part.
  579 +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
  580 +# Note: This option applies only to the class list, not to the alphabetical
  581 +# list.
  582 +# The default value is: NO.
  583 +
  584 +SORT_BY_SCOPE_NAME = NO
  585 +
  586 +# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
  587 +# type resolution of all parameters of a function it will reject a match between
  588 +# the prototype and the implementation of a member function even if there is
  589 +# only one candidate or it is obvious which candidate to choose by doing a
  590 +# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
  591 +# accept a match between prototype and implementation in such cases.
  592 +# The default value is: NO.
  593 +
  594 +STRICT_PROTO_MATCHING = NO
  595 +
  596 +# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
  597 +# list. This list is created by putting \todo commands in the documentation.
  598 +# The default value is: YES.
  599 +
  600 +GENERATE_TODOLIST = YES
  601 +
  602 +# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
  603 +# list. This list is created by putting \test commands in the documentation.
  604 +# The default value is: YES.
  605 +
  606 +GENERATE_TESTLIST = YES
  607 +
  608 +# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
  609 +# list. This list is created by putting \bug commands in the documentation.
  610 +# The default value is: YES.
  611 +
  612 +GENERATE_BUGLIST = YES
  613 +
  614 +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
  615 +# the deprecated list. This list is created by putting \deprecated commands in
  616 +# the documentation.
  617 +# The default value is: YES.
  618 +
  619 +GENERATE_DEPRECATEDLIST= YES
  620 +
  621 +# The ENABLED_SECTIONS tag can be used to enable conditional documentation
  622 +# sections, marked by \if <section_label> ... \endif and \cond <section_label>
  623 +# ... \endcond blocks.
  624 +
  625 +ENABLED_SECTIONS =
  626 +
  627 +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
  628 +# initial value of a variable or macro / define can have for it to appear in the
  629 +# documentation. If the initializer consists of more lines than specified here
  630 +# it will be hidden. Use a value of 0 to hide initializers completely. The
  631 +# appearance of the value of individual variables and macros / defines can be
  632 +# controlled using \showinitializer or \hideinitializer command in the
  633 +# documentation regardless of this setting.
  634 +# Minimum value: 0, maximum value: 10000, default value: 30.
  635 +
  636 +MAX_INITIALIZER_LINES = 30
  637 +
  638 +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
  639 +# the bottom of the documentation of classes and structs. If set to YES, the
  640 +# list will mention the files that were used to generate the documentation.
  641 +# The default value is: YES.
  642 +
  643 +SHOW_USED_FILES = YES
  644 +
  645 +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
  646 +# will remove the Files entry from the Quick Index and from the Folder Tree View
  647 +# (if specified).
  648 +# The default value is: YES.
  649 +
  650 +SHOW_FILES = YES
  651 +
  652 +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
  653 +# page. This will remove the Namespaces entry from the Quick Index and from the
  654 +# Folder Tree View (if specified).
  655 +# The default value is: YES.
  656 +
  657 +SHOW_NAMESPACES = YES
  658 +
  659 +# The FILE_VERSION_FILTER tag can be used to specify a program or script that
  660 +# doxygen should invoke to get the current version for each file (typically from
  661 +# the version control system). Doxygen will invoke the program by executing (via
  662 +# popen()) the command command input-file, where command is the value of the
  663 +# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
  664 +# by doxygen. Whatever the program writes to standard output is used as the file
  665 +# version. For an example see the documentation.
  666 +
  667 +FILE_VERSION_FILTER =
  668 +
  669 +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
  670 +# by doxygen. The layout file controls the global structure of the generated
  671 +# output files in an output format independent way. To create the layout file
  672 +# that represents doxygen's defaults, run doxygen with the -l option. You can
  673 +# optionally specify a file name after the option, if omitted DoxygenLayout.xml
  674 +# will be used as the name of the layout file.
  675 +#
  676 +# Note that if you run doxygen from a directory containing a file called
  677 +# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
  678 +# tag is left empty.
  679 +
  680 +LAYOUT_FILE =
  681 +
  682 +# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
  683 +# the reference definitions. This must be a list of .bib files. The .bib
  684 +# extension is automatically appended if omitted. This requires the bibtex tool
  685 +# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.
  686 +# For LaTeX the style of the bibliography can be controlled using
  687 +# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
  688 +# search path. See also \cite for info how to create references.
  689 +
  690 +CITE_BIB_FILES =
  691 +
  692 +#---------------------------------------------------------------------------
  693 +# Configuration options related to warning and progress messages
  694 +#---------------------------------------------------------------------------
  695 +
  696 +# The QUIET tag can be used to turn on/off the messages that are generated to
  697 +# standard output by doxygen. If QUIET is set to YES this implies that the
  698 +# messages are off.
  699 +# The default value is: NO.
  700 +
  701 +QUIET = NO
  702 +
  703 +# The WARNINGS tag can be used to turn on/off the warning messages that are
  704 +# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
  705 +# this implies that the warnings are on.
  706 +#
  707 +# Tip: Turn warnings on while writing the documentation.
  708 +# The default value is: YES.
  709 +
  710 +WARNINGS = YES
  711 +
  712 +# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
  713 +# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
  714 +# will automatically be disabled.
  715 +# The default value is: YES.
  716 +
  717 +WARN_IF_UNDOCUMENTED = YES
  718 +
  719 +# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
  720 +# potential errors in the documentation, such as not documenting some parameters
  721 +# in a documented function, or documenting parameters that don't exist or using
  722 +# markup commands wrongly.
  723 +# The default value is: YES.
  724 +
  725 +WARN_IF_DOC_ERROR = YES
  726 +
  727 +# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
  728 +# are documented, but have no documentation for their parameters or return
  729 +# value. If set to NO, doxygen will only warn about wrong or incomplete
  730 +# parameter documentation, but not about the absence of documentation.
  731 +# The default value is: NO.
  732 +
  733 +WARN_NO_PARAMDOC = NO
  734 +
  735 +# The WARN_FORMAT tag determines the format of the warning messages that doxygen
  736 +# can produce. The string should contain the $file, $line, and $text tags, which
  737 +# will be replaced by the file and line number from which the warning originated
  738 +# and the warning text. Optionally the format may contain $version, which will
  739 +# be replaced by the version of the file (if it could be obtained via
  740 +# FILE_VERSION_FILTER)
  741 +# The default value is: $file:$line: $text.
  742 +
  743 +WARN_FORMAT = "$file:$line: $text"
  744 +
  745 +# The WARN_LOGFILE tag can be used to specify a file to which warning and error
  746 +# messages should be written. If left blank the output is written to standard
  747 +# error (stderr).
  748 +
  749 +WARN_LOGFILE =
  750 +
  751 +#---------------------------------------------------------------------------
  752 +# Configuration options related to the input files
  753 +#---------------------------------------------------------------------------
  754 +
  755 +# The INPUT tag is used to specify the files and/or directories that contain
  756 +# documented source files. You may enter file names like myfile.cpp or
  757 +# directories like /usr/src/myproject. Separate the files or directories with
  758 +# spaces.
  759 +# Note: If this tag is empty the current directory is searched.
  760 +
  761 +INPUT =
  762 +
  763 +# This tag can be used to specify the character encoding of the source files
  764 +# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
  765 +# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
  766 +# documentation (see: http://www.gnu.org/software/libiconv) for the list of
  767 +# possible encodings.
  768 +# The default value is: UTF-8.
  769 +
  770 +INPUT_ENCODING = UTF-8
  771 +
  772 +# If the value of the INPUT tag contains directories, you can use the
  773 +# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
  774 +# *.h) to filter out the source-files in the directories. If left blank the
  775 +# following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii,
  776 +# *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp,
  777 +# *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown,
  778 +# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf,
  779 +# *.qsf, *.as and *.js.
  780 +
  781 +FILE_PATTERNS =
  782 +
  783 +# The RECURSIVE tag can be used to specify whether or not subdirectories should
  784 +# be searched for input files as well.
  785 +# The default value is: NO.
  786 +
  787 +RECURSIVE = YES
  788 +
  789 +# The EXCLUDE tag can be used to specify files and/or directories that should be
  790 +# excluded from the INPUT source files. This way you can easily exclude a
  791 +# subdirectory from a directory tree whose root is specified with the INPUT tag.
  792 +#
  793 +# Note that relative paths are relative to the directory from which doxygen is
  794 +# run.
  795 +
  796 +EXCLUDE =
  797 +
  798 +# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
  799 +# directories that are symbolic links (a Unix file system feature) are excluded
  800 +# from the input.
  801 +# The default value is: NO.
  802 +
  803 +EXCLUDE_SYMLINKS = NO
  804 +
  805 +# If the value of the INPUT tag contains directories, you can use the
  806 +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
  807 +# certain files from those directories.
  808 +#
  809 +# Note that the wildcards are matched against the file with absolute path, so to
  810 +# exclude all test directories for example use the pattern */test/*
  811 +
  812 +EXCLUDE_PATTERNS = CImg.h
  813 +
  814 +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
  815 +# (namespaces, classes, functions, etc.) that should be excluded from the
  816 +# output. The symbol name can be a fully qualified name, a word, or if the
  817 +# wildcard * is used, a substring. Examples: ANamespace, AClass,
  818 +# AClass::ANamespace, ANamespace::*Test
  819 +#
  820 +# Note that the wildcards are matched against the file with absolute path, so to
  821 +# exclude all test directories use the pattern */test/*
  822 +
  823 +EXCLUDE_SYMBOLS =
  824 +
  825 +# The EXAMPLE_PATH tag can be used to specify one or more files or directories
  826 +# that contain example code fragments that are included (see the \include
  827 +# command).
  828 +
  829 +EXAMPLE_PATH =
  830 +
  831 +# If the value of the EXAMPLE_PATH tag contains directories, you can use the
  832 +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
  833 +# *.h) to filter out the source-files in the directories. If left blank all
  834 +# files are included.
  835 +
  836 +EXAMPLE_PATTERNS =
  837 +
  838 +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
  839 +# searched for input files to be used with the \include or \dontinclude commands
  840 +# irrespective of the value of the RECURSIVE tag.
  841 +# The default value is: NO.
  842 +
  843 +EXAMPLE_RECURSIVE = NO
  844 +
  845 +# The IMAGE_PATH tag can be used to specify one or more files or directories
  846 +# that contain images that are to be included in the documentation (see the
  847 +# \image command).
  848 +
  849 +IMAGE_PATH =
  850 +
  851 +# The INPUT_FILTER tag can be used to specify a program that doxygen should
  852 +# invoke to filter for each input file. Doxygen will invoke the filter program
  853 +# by executing (via popen()) the command:
  854 +#
  855 +# <filter> <input-file>
  856 +#
  857 +# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
  858 +# name of an input file. Doxygen will then use the output that the filter
  859 +# program writes to standard output. If FILTER_PATTERNS is specified, this tag
  860 +# will be ignored.
  861 +#
  862 +# Note that the filter must not add or remove lines; it is applied before the
  863 +# code is scanned, but not when the output code is generated. If lines are added
  864 +# or removed, the anchors will not be placed correctly.
  865 +
  866 +INPUT_FILTER =
  867 +
  868 +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
  869 +# basis. Doxygen will compare the file name with each pattern and apply the
  870 +# filter if there is a match. The filters are a list of the form: pattern=filter
  871 +# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
  872 +# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
  873 +# patterns match the file name, INPUT_FILTER is applied.
  874 +
  875 +FILTER_PATTERNS =
  876 +
  877 +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
  878 +# INPUT_FILTER) will also be used to filter the input files that are used for
  879 +# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
  880 +# The default value is: NO.
  881 +
  882 +FILTER_SOURCE_FILES = NO
  883 +
  884 +# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
  885 +# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
  886 +# it is also possible to disable source filtering for a specific pattern using
  887 +# *.ext= (so without naming a filter).
  888 +# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
  889 +
  890 +FILTER_SOURCE_PATTERNS =
  891 +
  892 +# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
  893 +# is part of the input, its contents will be placed on the main page
  894 +# (index.html). This can be useful if you have a project on for instance GitHub
  895 +# and want to reuse the introduction page also for the doxygen output.
  896 +
  897 +USE_MDFILE_AS_MAINPAGE =
  898 +
  899 +#---------------------------------------------------------------------------
  900 +# Configuration options related to source browsing
  901 +#---------------------------------------------------------------------------
  902 +
  903 +# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
  904 +# generated. Documented entities will be cross-referenced with these sources.
  905 +#
  906 +# Note: To get rid of all source code in the generated output, make sure that
  907 +# also VERBATIM_HEADERS is set to NO.
  908 +# The default value is: NO.
  909 +
  910 +SOURCE_BROWSER = NO
  911 +
  912 +# Setting the INLINE_SOURCES tag to YES will include the body of functions,
  913 +# classes and enums directly into the documentation.
  914 +# The default value is: NO.
  915 +
  916 +INLINE_SOURCES = NO
  917 +
  918 +# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
  919 +# special comment blocks from generated source code fragments. Normal C, C++ and
  920 +# Fortran comments will always remain visible.
  921 +# The default value is: YES.
  922 +
  923 +STRIP_CODE_COMMENTS = YES
  924 +
  925 +# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
  926 +# function all documented functions referencing it will be listed.
  927 +# The default value is: NO.
  928 +
  929 +REFERENCED_BY_RELATION = NO
  930 +
  931 +# If the REFERENCES_RELATION tag is set to YES then for each documented function
  932 +# all documented entities called/used by that function will be listed.
  933 +# The default value is: NO.
  934 +
  935 +REFERENCES_RELATION = NO
  936 +
  937 +# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
  938 +# to YES then the hyperlinks from functions in REFERENCES_RELATION and
  939 +# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
  940 +# link to the documentation.
  941 +# The default value is: YES.
  942 +
  943 +REFERENCES_LINK_SOURCE = YES
  944 +
  945 +# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
  946 +# source code will show a tooltip with additional information such as prototype,
  947 +# brief description and links to the definition and documentation. Since this
  948 +# will make the HTML file larger and loading of large files a bit slower, you
  949 +# can opt to disable this feature.
  950 +# The default value is: YES.
  951 +# This tag requires that the tag SOURCE_BROWSER is set to YES.
  952 +
  953 +SOURCE_TOOLTIPS = YES
  954 +
  955 +# If the USE_HTAGS tag is set to YES then the references to source code will
  956 +# point to the HTML generated by the htags(1) tool instead of doxygen built-in
  957 +# source browser. The htags tool is part of GNU's global source tagging system
  958 +# (see http://www.gnu.org/software/global/global.html). You will need version
  959 +# 4.8.6 or higher.
  960 +#
  961 +# To use it do the following:
  962 +# - Install the latest version of global
  963 +# - Enable SOURCE_BROWSER and USE_HTAGS in the config file
  964 +# - Make sure the INPUT points to the root of the source tree
  965 +# - Run doxygen as normal
  966 +#
  967 +# Doxygen will invoke htags (and that will in turn invoke gtags), so these
  968 +# tools must be available from the command line (i.e. in the search path).
  969 +#
  970 +# The result: instead of the source browser generated by doxygen, the links to
  971 +# source code will now point to the output of htags.
  972 +# The default value is: NO.
  973 +# This tag requires that the tag SOURCE_BROWSER is set to YES.
  974 +
  975 +USE_HTAGS = NO
  976 +
  977 +# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
  978 +# verbatim copy of the header file for each class for which an include is
  979 +# specified. Set to NO to disable this.
  980 +# See also: Section \class.
  981 +# The default value is: YES.
  982 +
  983 +VERBATIM_HEADERS = YES
  984 +
  985 +# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the
  986 +# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the
  987 +# cost of reduced performance. This can be particularly helpful with template
  988 +# rich C++ code for which doxygen's built-in parser lacks the necessary type
  989 +# information.
  990 +# Note: The availability of this option depends on whether or not doxygen was
  991 +# compiled with the --with-libclang option.
  992 +# The default value is: NO.
  993 +
  994 +CLANG_ASSISTED_PARSING = NO
  995 +
  996 +# If clang assisted parsing is enabled you can provide the compiler with command
  997 +# line options that you would normally use when invoking the compiler. Note that
  998 +# the include paths will already be set by doxygen for the files and directories
  999 +# specified with INPUT and INCLUDE_PATH.
  1000 +# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
  1001 +
  1002 +CLANG_OPTIONS =
  1003 +
  1004 +#---------------------------------------------------------------------------
  1005 +# Configuration options related to the alphabetical class index
  1006 +#---------------------------------------------------------------------------
  1007 +
  1008 +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
  1009 +# compounds will be generated. Enable this if the project contains a lot of
  1010 +# classes, structs, unions or interfaces.
  1011 +# The default value is: YES.
  1012 +
  1013 +ALPHABETICAL_INDEX = YES
  1014 +
  1015 +# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
  1016 +# which the alphabetical index list will be split.
  1017 +# Minimum value: 1, maximum value: 20, default value: 5.
  1018 +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
  1019 +
  1020 +COLS_IN_ALPHA_INDEX = 5
  1021 +
  1022 +# In case all classes in a project start with a common prefix, all classes will
  1023 +# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
  1024 +# can be used to specify a prefix (or a list of prefixes) that should be ignored
  1025 +# while generating the index headers.
  1026 +# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
  1027 +
  1028 +IGNORE_PREFIX =
  1029 +
  1030 +#---------------------------------------------------------------------------
  1031 +# Configuration options related to the HTML output
  1032 +#---------------------------------------------------------------------------
  1033 +
  1034 +# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
  1035 +# The default value is: YES.
  1036 +
  1037 +GENERATE_HTML = YES
  1038 +
  1039 +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
  1040 +# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
  1041 +# it.
  1042 +# The default directory is: html.
  1043 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1044 +
  1045 +HTML_OUTPUT = html
  1046 +
  1047 +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
  1048 +# generated HTML page (for example: .htm, .php, .asp).
  1049 +# The default value is: .html.
  1050 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1051 +
  1052 +HTML_FILE_EXTENSION = .html
  1053 +
  1054 +# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
  1055 +# each generated HTML page. If the tag is left blank doxygen will generate a
  1056 +# standard header.
  1057 +#
  1058 +# To get valid HTML the header file that includes any scripts and style sheets
  1059 +# that doxygen needs, which is dependent on the configuration options used (e.g.
  1060 +# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
  1061 +# default header using
  1062 +# doxygen -w html new_header.html new_footer.html new_stylesheet.css
  1063 +# YourConfigFile
  1064 +# and then modify the file new_header.html. See also section "Doxygen usage"
  1065 +# for information on how to generate the default header that doxygen normally
  1066 +# uses.
  1067 +# Note: The header is subject to change so you typically have to regenerate the
  1068 +# default header when upgrading to a newer version of doxygen. For a description
  1069 +# of the possible markers and block names see the documentation.
  1070 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1071 +
  1072 +HTML_HEADER =
  1073 +
  1074 +# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
  1075 +# generated HTML page. If the tag is left blank doxygen will generate a standard
  1076 +# footer. See HTML_HEADER for more information on how to generate a default
  1077 +# footer and what special commands can be used inside the footer. See also
  1078 +# section "Doxygen usage" for information on how to generate the default footer
  1079 +# that doxygen normally uses.
  1080 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1081 +
  1082 +HTML_FOOTER =
  1083 +
  1084 +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
  1085 +# sheet that is used by each HTML page. It can be used to fine-tune the look of
  1086 +# the HTML output. If left blank doxygen will generate a default style sheet.
  1087 +# See also section "Doxygen usage" for information on how to generate the style
  1088 +# sheet that doxygen normally uses.
  1089 +# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
  1090 +# it is more robust and this tag (HTML_STYLESHEET) will in the future become
  1091 +# obsolete.
  1092 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1093 +
  1094 +HTML_STYLESHEET =
  1095 +
  1096 +# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
  1097 +# cascading style sheets that are included after the standard style sheets
  1098 +# created by doxygen. Using this option one can overrule certain style aspects.
  1099 +# This is preferred over using HTML_STYLESHEET since it does not replace the
  1100 +# standard style sheet and is therefore more robust against future updates.
  1101 +# Doxygen will copy the style sheet files to the output directory.
  1102 +# Note: The order of the extra style sheet files is of importance (e.g. the last
  1103 +# style sheet in the list overrules the setting of the previous ones in the
  1104 +# list). For an example see the documentation.
  1105 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1106 +
  1107 +HTML_EXTRA_STYLESHEET =
  1108 +
  1109 +# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
  1110 +# other source files which should be copied to the HTML output directory. Note
  1111 +# that these files will be copied to the base HTML output directory. Use the
  1112 +# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
  1113 +# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
  1114 +# files will be copied as-is; there are no commands or markers available.
  1115 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1116 +
  1117 +HTML_EXTRA_FILES =
  1118 +
  1119 +# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
  1120 +# will adjust the colors in the style sheet and background images according to
  1121 +# this color. Hue is specified as an angle on a colorwheel, see
  1122 +# http://en.wikipedia.org/wiki/Hue for more information. For instance the value
  1123 +# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
  1124 +# purple, and 360 is red again.
  1125 +# Minimum value: 0, maximum value: 359, default value: 220.
  1126 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1127 +
  1128 +HTML_COLORSTYLE_HUE = 220
  1129 +
  1130 +# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
  1131 +# in the HTML output. For a value of 0 the output will use grayscales only. A
  1132 +# value of 255 will produce the most vivid colors.
  1133 +# Minimum value: 0, maximum value: 255, default value: 100.
  1134 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1135 +
  1136 +HTML_COLORSTYLE_SAT = 100
  1137 +
  1138 +# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
  1139 +# luminance component of the colors in the HTML output. Values below 100
  1140 +# gradually make the output lighter, whereas values above 100 make the output
  1141 +# darker. The value divided by 100 is the actual gamma applied, so 80 represents
  1142 +# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
  1143 +# change the gamma.
  1144 +# Minimum value: 40, maximum value: 240, default value: 80.
  1145 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1146 +
  1147 +HTML_COLORSTYLE_GAMMA = 80
  1148 +
  1149 +# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
  1150 +# page will contain the date and time when the page was generated. Setting this
  1151 +# to NO can help when comparing the output of multiple runs.
  1152 +# The default value is: YES.
  1153 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1154 +
  1155 +HTML_TIMESTAMP = YES
  1156 +
  1157 +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
  1158 +# documentation will contain sections that can be hidden and shown after the
  1159 +# page has loaded.
  1160 +# The default value is: NO.
  1161 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1162 +
  1163 +HTML_DYNAMIC_SECTIONS = NO
  1164 +
  1165 +# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
  1166 +# shown in the various tree structured indices initially; the user can expand
  1167 +# and collapse entries dynamically later on. Doxygen will expand the tree to
  1168 +# such a level that at most the specified number of entries are visible (unless
  1169 +# a fully collapsed tree already exceeds this amount). So setting the number of
  1170 +# entries 1 will produce a full collapsed tree by default. 0 is a special value
  1171 +# representing an infinite number of entries and will result in a full expanded
  1172 +# tree by default.
  1173 +# Minimum value: 0, maximum value: 9999, default value: 100.
  1174 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1175 +
  1176 +HTML_INDEX_NUM_ENTRIES = 100
  1177 +
  1178 +# If the GENERATE_DOCSET tag is set to YES, additional index files will be
  1179 +# generated that can be used as input for Apple's Xcode 3 integrated development
  1180 +# environment (see: http://developer.apple.com/tools/xcode/), introduced with
  1181 +# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
  1182 +# Makefile in the HTML output directory. Running make will produce the docset in
  1183 +# that directory and running make install will install the docset in
  1184 +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
  1185 +# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
  1186 +# for more information.
  1187 +# The default value is: NO.
  1188 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1189 +
  1190 +GENERATE_DOCSET = NO
  1191 +
  1192 +# This tag determines the name of the docset feed. A documentation feed provides
  1193 +# an umbrella under which multiple documentation sets from a single provider
  1194 +# (such as a company or product suite) can be grouped.
  1195 +# The default value is: Doxygen generated docs.
  1196 +# This tag requires that the tag GENERATE_DOCSET is set to YES.
  1197 +
  1198 +DOCSET_FEEDNAME = "Doxygen generated docs"
  1199 +
  1200 +# This tag specifies a string that should uniquely identify the documentation
  1201 +# set bundle. This should be a reverse domain-name style string, e.g.
  1202 +# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
  1203 +# The default value is: org.doxygen.Project.
  1204 +# This tag requires that the tag GENERATE_DOCSET is set to YES.
  1205 +
  1206 +DOCSET_BUNDLE_ID = org.doxygen.Project
  1207 +
  1208 +# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
  1209 +# the documentation publisher. This should be a reverse domain-name style
  1210 +# string, e.g. com.mycompany.MyDocSet.documentation.
  1211 +# The default value is: org.doxygen.Publisher.
  1212 +# This tag requires that the tag GENERATE_DOCSET is set to YES.
  1213 +
  1214 +DOCSET_PUBLISHER_ID = org.doxygen.Publisher
  1215 +
  1216 +# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
  1217 +# The default value is: Publisher.
  1218 +# This tag requires that the tag GENERATE_DOCSET is set to YES.
  1219 +
  1220 +DOCSET_PUBLISHER_NAME = Publisher
  1221 +
  1222 +# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
  1223 +# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
  1224 +# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
  1225 +# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
  1226 +# Windows.
  1227 +#
  1228 +# The HTML Help Workshop contains a compiler that can convert all HTML output
  1229 +# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
  1230 +# files are now used as the Windows 98 help format, and will replace the old
  1231 +# Windows help format (.hlp) on all Windows platforms in the future. Compressed
  1232 +# HTML files also contain an index, a table of contents, and you can search for
  1233 +# words in the documentation. The HTML workshop also contains a viewer for
  1234 +# compressed HTML files.
  1235 +# The default value is: NO.
  1236 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1237 +
  1238 +GENERATE_HTMLHELP = NO
  1239 +
  1240 +# The CHM_FILE tag can be used to specify the file name of the resulting .chm
  1241 +# file. You can add a path in front of the file if the result should not be
  1242 +# written to the html output directory.
  1243 +# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
  1244 +
  1245 +CHM_FILE =
  1246 +
  1247 +# The HHC_LOCATION tag can be used to specify the location (absolute path
  1248 +# including file name) of the HTML help compiler (hhc.exe). If non-empty,
  1249 +# doxygen will try to run the HTML help compiler on the generated index.hhp.
  1250 +# The file has to be specified with full path.
  1251 +# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
  1252 +
  1253 +HHC_LOCATION =
  1254 +
  1255 +# The GENERATE_CHI flag controls if a separate .chi index file is generated
  1256 +# (YES) or that it should be included in the master .chm file (NO).
  1257 +# The default value is: NO.
  1258 +# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
  1259 +
  1260 +GENERATE_CHI = NO
  1261 +
  1262 +# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
  1263 +# and project file content.
  1264 +# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
  1265 +
  1266 +CHM_INDEX_ENCODING =
  1267 +
  1268 +# The BINARY_TOC flag controls whether a binary table of contents is generated
  1269 +# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
  1270 +# enables the Previous and Next buttons.
  1271 +# The default value is: NO.
  1272 +# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
  1273 +
  1274 +BINARY_TOC = NO
  1275 +
  1276 +# The TOC_EXPAND flag can be set to YES to add extra items for group members to
  1277 +# the table of contents of the HTML help documentation and to the tree view.
  1278 +# The default value is: NO.
  1279 +# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
  1280 +
  1281 +TOC_EXPAND = NO
  1282 +
  1283 +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
  1284 +# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
  1285 +# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
  1286 +# (.qch) of the generated HTML documentation.
  1287 +# The default value is: NO.
  1288 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1289 +
  1290 +GENERATE_QHP = NO
  1291 +
  1292 +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
  1293 +# the file name of the resulting .qch file. The path specified is relative to
  1294 +# the HTML output folder.
  1295 +# This tag requires that the tag GENERATE_QHP is set to YES.
  1296 +
  1297 +QCH_FILE =
  1298 +
  1299 +# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
  1300 +# Project output. For more information please see Qt Help Project / Namespace
  1301 +# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).
  1302 +# The default value is: org.doxygen.Project.
  1303 +# This tag requires that the tag GENERATE_QHP is set to YES.
  1304 +
  1305 +QHP_NAMESPACE = org.doxygen.Project
  1306 +
  1307 +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
  1308 +# Help Project output. For more information please see Qt Help Project / Virtual
  1309 +# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-
  1310 +# folders).
  1311 +# The default value is: doc.
  1312 +# This tag requires that the tag GENERATE_QHP is set to YES.
  1313 +
  1314 +QHP_VIRTUAL_FOLDER = doc
  1315 +
  1316 +# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
  1317 +# filter to add. For more information please see Qt Help Project / Custom
  1318 +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
  1319 +# filters).
  1320 +# This tag requires that the tag GENERATE_QHP is set to YES.
  1321 +
  1322 +QHP_CUST_FILTER_NAME =
  1323 +
  1324 +# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
  1325 +# custom filter to add. For more information please see Qt Help Project / Custom
  1326 +# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
  1327 +# filters).
  1328 +# This tag requires that the tag GENERATE_QHP is set to YES.
  1329 +
  1330 +QHP_CUST_FILTER_ATTRS =
  1331 +
  1332 +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
  1333 +# project's filter section matches. Qt Help Project / Filter Attributes (see:
  1334 +# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
  1335 +# This tag requires that the tag GENERATE_QHP is set to YES.
  1336 +
  1337 +QHP_SECT_FILTER_ATTRS =
  1338 +
  1339 +# The QHG_LOCATION tag can be used to specify the location of Qt's
  1340 +# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
  1341 +# generated .qhp file.
  1342 +# This tag requires that the tag GENERATE_QHP is set to YES.
  1343 +
  1344 +QHG_LOCATION =
  1345 +
  1346 +# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
  1347 +# generated, together with the HTML files, they form an Eclipse help plugin. To
  1348 +# install this plugin and make it available under the help contents menu in
  1349 +# Eclipse, the contents of the directory containing the HTML and XML files needs
  1350 +# to be copied into the plugins directory of eclipse. The name of the directory
  1351 +# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
  1352 +# After copying Eclipse needs to be restarted before the help appears.
  1353 +# The default value is: NO.
  1354 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1355 +
  1356 +GENERATE_ECLIPSEHELP = NO
  1357 +
  1358 +# A unique identifier for the Eclipse help plugin. When installing the plugin
  1359 +# the directory name containing the HTML and XML files should also have this
  1360 +# name. Each documentation set should have its own identifier.
  1361 +# The default value is: org.doxygen.Project.
  1362 +# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
  1363 +
  1364 +ECLIPSE_DOC_ID = org.doxygen.Project
  1365 +
  1366 +# If you want full control over the layout of the generated HTML pages it might
  1367 +# be necessary to disable the index and replace it with your own. The
  1368 +# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
  1369 +# of each HTML page. A value of NO enables the index and the value YES disables
  1370 +# it. Since the tabs in the index contain the same information as the navigation
  1371 +# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
  1372 +# The default value is: NO.
  1373 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1374 +
  1375 +DISABLE_INDEX = NO
  1376 +
  1377 +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
  1378 +# structure should be generated to display hierarchical information. If the tag
  1379 +# value is set to YES, a side panel will be generated containing a tree-like
  1380 +# index structure (just like the one that is generated for HTML Help). For this
  1381 +# to work a browser that supports JavaScript, DHTML, CSS and frames is required
  1382 +# (i.e. any modern browser). Windows users are probably better off using the
  1383 +# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
  1384 +# further fine-tune the look of the index. As an example, the default style
  1385 +# sheet generated by doxygen has an example that shows how to put an image at
  1386 +# the root of the tree instead of the PROJECT_NAME. Since the tree basically has
  1387 +# the same information as the tab index, you could consider setting
  1388 +# DISABLE_INDEX to YES when enabling this option.
  1389 +# The default value is: NO.
  1390 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1391 +
  1392 +GENERATE_TREEVIEW = NO
  1393 +
  1394 +# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
  1395 +# doxygen will group on one line in the generated HTML documentation.
  1396 +#
  1397 +# Note that a value of 0 will completely suppress the enum values from appearing
  1398 +# in the overview section.
  1399 +# Minimum value: 0, maximum value: 20, default value: 4.
  1400 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1401 +
  1402 +ENUM_VALUES_PER_LINE = 4
  1403 +
  1404 +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
  1405 +# to set the initial width (in pixels) of the frame in which the tree is shown.
  1406 +# Minimum value: 0, maximum value: 1500, default value: 250.
  1407 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1408 +
  1409 +TREEVIEW_WIDTH = 250
  1410 +
  1411 +# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
  1412 +# external symbols imported via tag files in a separate window.
  1413 +# The default value is: NO.
  1414 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1415 +
  1416 +EXT_LINKS_IN_WINDOW = NO
  1417 +
  1418 +# Use this tag to change the font size of LaTeX formulas included as images in
  1419 +# the HTML documentation. When you change the font size after a successful
  1420 +# doxygen run you need to manually remove any form_*.png images from the HTML
  1421 +# output directory to force them to be regenerated.
  1422 +# Minimum value: 8, maximum value: 50, default value: 10.
  1423 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1424 +
  1425 +FORMULA_FONTSIZE = 10
  1426 +
  1427 +# Use the FORMULA_TRANPARENT tag to determine whether or not the images
  1428 +# generated for formulas are transparent PNGs. Transparent PNGs are not
  1429 +# supported properly for IE 6.0, but are supported on all modern browsers.
  1430 +#
  1431 +# Note that when changing this option you need to delete any form_*.png files in
  1432 +# the HTML output directory before the changes have effect.
  1433 +# The default value is: YES.
  1434 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1435 +
  1436 +FORMULA_TRANSPARENT = YES
  1437 +
  1438 +# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
  1439 +# http://www.mathjax.org) which uses client side Javascript for the rendering
  1440 +# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
  1441 +# installed or if you want to formulas look prettier in the HTML output. When
  1442 +# enabled you may also need to install MathJax separately and configure the path
  1443 +# to it using the MATHJAX_RELPATH option.
  1444 +# The default value is: NO.
  1445 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1446 +
  1447 +USE_MATHJAX = NO
  1448 +
  1449 +# When MathJax is enabled you can set the default output format to be used for
  1450 +# the MathJax output. See the MathJax site (see:
  1451 +# http://docs.mathjax.org/en/latest/output.html) for more details.
  1452 +# Possible values are: HTML-CSS (which is slower, but has the best
  1453 +# compatibility), NativeMML (i.e. MathML) and SVG.
  1454 +# The default value is: HTML-CSS.
  1455 +# This tag requires that the tag USE_MATHJAX is set to YES.
  1456 +
  1457 +MATHJAX_FORMAT = HTML-CSS
  1458 +
  1459 +# When MathJax is enabled you need to specify the location relative to the HTML
  1460 +# output directory using the MATHJAX_RELPATH option. The destination directory
  1461 +# should contain the MathJax.js script. For instance, if the mathjax directory
  1462 +# is located at the same level as the HTML output directory, then
  1463 +# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
  1464 +# Content Delivery Network so you can quickly see the result without installing
  1465 +# MathJax. However, it is strongly recommended to install a local copy of
  1466 +# MathJax from http://www.mathjax.org before deployment.
  1467 +# The default value is: http://cdn.mathjax.org/mathjax/latest.
  1468 +# This tag requires that the tag USE_MATHJAX is set to YES.
  1469 +
  1470 +MATHJAX_RELPATH = http://cdn.mathjax.org/mathjax/latest
  1471 +
  1472 +# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
  1473 +# extension names that should be enabled during MathJax rendering. For example
  1474 +# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
  1475 +# This tag requires that the tag USE_MATHJAX is set to YES.
  1476 +
  1477 +MATHJAX_EXTENSIONS =
  1478 +
  1479 +# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
  1480 +# of code that will be used on startup of the MathJax code. See the MathJax site
  1481 +# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
  1482 +# example see the documentation.
  1483 +# This tag requires that the tag USE_MATHJAX is set to YES.
  1484 +
  1485 +MATHJAX_CODEFILE =
  1486 +
  1487 +# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
  1488 +# the HTML output. The underlying search engine uses javascript and DHTML and
  1489 +# should work on any modern browser. Note that when using HTML help
  1490 +# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
  1491 +# there is already a search function so this one should typically be disabled.
  1492 +# For large projects the javascript based search engine can be slow, then
  1493 +# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
  1494 +# search using the keyboard; to jump to the search box use <access key> + S
  1495 +# (what the <access key> is depends on the OS and browser, but it is typically
  1496 +# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
  1497 +# key> to jump into the search results window, the results can be navigated
  1498 +# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
  1499 +# the search. The filter options can be selected when the cursor is inside the
  1500 +# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
  1501 +# to select a filter and <Enter> or <escape> to activate or cancel the filter
  1502 +# option.
  1503 +# The default value is: YES.
  1504 +# This tag requires that the tag GENERATE_HTML is set to YES.
  1505 +
  1506 +SEARCHENGINE = YES
  1507 +
  1508 +# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
  1509 +# implemented using a web server instead of a web client using Javascript. There
  1510 +# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
  1511 +# setting. When disabled, doxygen will generate a PHP script for searching and
  1512 +# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
  1513 +# and searching needs to be provided by external tools. See the section
  1514 +# "External Indexing and Searching" for details.
  1515 +# The default value is: NO.
  1516 +# This tag requires that the tag SEARCHENGINE is set to YES.
  1517 +
  1518 +SERVER_BASED_SEARCH = NO
  1519 +
  1520 +# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
  1521 +# script for searching. Instead the search results are written to an XML file
  1522 +# which needs to be processed by an external indexer. Doxygen will invoke an
  1523 +# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
  1524 +# search results.
  1525 +#
  1526 +# Doxygen ships with an example indexer (doxyindexer) and search engine
  1527 +# (doxysearch.cgi) which are based on the open source search engine library
  1528 +# Xapian (see: http://xapian.org/).
  1529 +#
  1530 +# See the section "External Indexing and Searching" for details.
  1531 +# The default value is: NO.
  1532 +# This tag requires that the tag SEARCHENGINE is set to YES.
  1533 +
  1534 +EXTERNAL_SEARCH = NO
  1535 +
  1536 +# The SEARCHENGINE_URL should point to a search engine hosted by a web server
  1537 +# which will return the search results when EXTERNAL_SEARCH is enabled.
  1538 +#
  1539 +# Doxygen ships with an example indexer (doxyindexer) and search engine