Changeset 1313 in 3DVCSoftware for trunk/doc


Ignore:
Timestamp:
13 Aug 2015, 17:38:13 (10 years ago)
Author:
tech
Message:

Merged 14.1-update-dev1@1312.

Location:
trunk/doc
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/doc/Doxyfile

    r964 r1313  
    1 # Doxyfile 1.7.5
     1# Doxyfile 1.8.9.1
    22
    33# 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 hash (#) is considered a comment and will be ignored
     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.
    710# The format is:
    8 #       TAG = value [value, ...]
    9 # For lists items can also be appended using:
    10 #       TAG += value [value, ...]
    11 # Values that contain spaces should be placed between quotes (" ")
     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 (\" \").
    1215
    1316#---------------------------------------------------------------------------
     
    1518#---------------------------------------------------------------------------
    1619
    17 # This tag specifies the encoding used for all characters in the config file
    18 # that follow. The default is UTF-8 which is also the encoding used for all
    19 # text before the first occurrence of this tag. Doxygen uses libiconv (or the
    20 # iconv built into libc) for the transcoding. See
    21 # http://www.gnu.org/software/libiconv for the list of possible encodings.
     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.
    2226
    2327DOXYFILE_ENCODING      = UTF-8
    2428
    25 # The PROJECT_NAME tag is a single word (or sequence of words) that should
    26 # identify the project. Note that if you do not use Doxywizard you need
    27 # to put quotes around the project name if it contains spaces.
     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.
    2834
    2935PROJECT_NAME           = "HEVC Test Model (HM)"
    3036
    31 # The PROJECT_NUMBER tag can be used to enter a project or revision number.
    32 # This could be handy for archiving the generated documentation or
    33 # if some version control system is used.
    34 
    35 PROJECT_NUMBER         = HM-14.0
    36 
    37 # Using the PROJECT_BRIEF tag one can provide an optional one line description 
    38 # for a project that appears at the top of each page and should give viewer
    39 # a quick idea about the purpose of the project. Keep the description short.
    40 
    41 PROJECT_BRIEF          = 
    42 
    43 # With the PROJECT_LOGO tag one can specify an logo or icon that is
    44 # included in the documentation. The maximum height of the logo should not
    45 # exceed 55 pixels and the maximum width should not exceed 200 pixels.
    46 # Doxygen will copy the logo to the output directory.
    47 
    48 PROJECT_LOGO           = 
    49 
    50 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
    51 # base path where the generated documentation will be put.
    52 # If a relative path is entered, it will be relative to the location
    53 # where doxygen was started. If left blank the current directory will be used.
     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
     41PROJECT_NUMBER         = HM-16.6
     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
     47PROJECT_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
     54PROJECT_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.
    5460
    5561OUTPUT_DIRECTORY       = .
    5662
    57 # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
    58 # 4096 sub-directories (in 2 levels) under the output directory of each output
    59 # format and will distribute the generated files over these directories.
    60 # Enabling this option can be useful when feeding doxygen a huge amount of
    61 # source files, where putting all generated files in the same directory would
    62 # otherwise cause performance problems for the file system.
     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.
    6370
    6471CREATE_SUBDIRS         = NO
    6572
    66 # The OUTPUT_LANGUAGE tag is used to specify the language in which all
    67 # documentation generated by doxygen is written. Doxygen will use this
    68 # information to generate all constant output in the proper language.
    69 # The default language is English, other supported languages are:
    70 # Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
    71 # Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
    72 # Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
    73 # messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
    74 # Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak,
    75 # Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
     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
     79ALLOW_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.
    7693
    7794OUTPUT_LANGUAGE        = English
    7895
    79 # If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
    80 # include brief member descriptions after the members that are listed in
    81 # the file and class documentation (similar to JavaDoc).
    82 # Set to NO to disable this.
     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.
    83100
    84101BRIEF_MEMBER_DESC      = YES
    85102
    86 # If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
    87 # the brief description of a member or function before the detailed description.
    88 # Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
     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
    89107# brief descriptions will be completely suppressed.
     108# The default value is: YES.
    90109
    91110REPEAT_BRIEF           = YES
    92111
    93 # This tag implements a quasi-intelligent brief description abbreviator
    94 # that is used to form the text in various listings. Each string
    95 # in this list, if found as the leading text of the brief description, will be
    96 # stripped from the text and the result after processing the whole list, is
    97 # used as the annotated text. Otherwise, the brief description is used as-is.
    98 # If left blank, the following values are used ("$name" is automatically
    99 # replaced with the name of the entity): "The $name class" "The $name widget"
    100 # "The $name file" "is" "provides" "specifies" "contains"
    101 # "represents" "a" "an" "the"
     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.
    102120
    103121ABBREVIATE_BRIEF       = "The $name class" \
     
    113131                         the
    114132
    115 # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
    116 # Doxygen will generate a detailed section even if there is only a brief
     133# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
     134# doxygen will generate a detailed section even if there is only a brief
    117135# description.
     136# The default value is: NO.
    118137
    119138ALWAYS_DETAILED_SEC    = NO
    120139
    121 # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all 
    122 # inherited members of a class in the documentation of that class as if those 
    123 # members were ordinary class members. Constructors, destructors and assignment 
     140# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
     141# inherited members of a class in the documentation of that class as if those
     142# members were ordinary class members. Constructors, destructors and assignment
    124143# operators of the base classes will not be shown.
     144# The default value is: NO.
    125145
    126146INLINE_INHERITED_MEMB  = NO
    127147
    128 # If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
    129 # path before files name in the file list and in the header files. If set
    130 # to NO the shortest path that makes the file name unique will be used.
     148# If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
     149# before files name in the file list and in the header files. If set to NO the
     150# shortest path that makes the file name unique will be used
     151# The default value is: YES.
    131152
    132153FULL_PATH_NAMES        = YES
    133154
    134 # If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
    135 # can be used to strip a user-defined part of the path. Stripping is
    136 # only done if one of the specified strings matches the left-hand part of
    137 # the path. The tag can be used to show relative paths in the file list.
    138 # If left blank the directory from which doxygen is run is used as the
    139 # path to strip.
     155# The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
     156# Stripping is only done if one of the specified strings matches the left-hand
     157# part of the path. The tag can be used to show relative paths in the file list.
     158# If left blank the directory from which doxygen is run is used as the path to
     159# strip.
     160#
     161# Note that you can specify absolute paths here, but also relative paths, which
     162# will be relative from the directory where doxygen is started.
     163# This tag requires that the tag FULL_PATH_NAMES is set to YES.
    140164
    141165STRIP_FROM_PATH        = ../source
    142166
    143 # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
    144 # the path mentioned in the documentation of a class, which tells
    145 # the reader which header file to include in order to use a class.
    146 # If left blank only the name of the header file containing the class
    147 # definition is used. Otherwise one should specify the include paths that
    148 # are normally passed to the compiler using the -I flag.
    149 
    150 STRIP_FROM_INC_PATH    =
    151 
    152 # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
    153 # (but less readable) file names. This can be useful if your file system
    154 # doesn't support long names like on DOS, Mac, or CD-ROM.
     167# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
     168# path mentioned in the documentation of a class, which tells the reader which
     169# header file to include in order to use a class. If left blank only the name of
     170# the header file containing the class definition is used. Otherwise one should
     171# specify the list of include paths that are normally passed to the compiler
     172# using the -I flag.
     173
     174STRIP_FROM_INC_PATH    =
     175
     176# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
     177# less readable) file names. This can be useful is your file systems doesn't
     178# support long names like on DOS, Mac, or CD-ROM.
     179# The default value is: NO.
    155180
    156181SHORT_NAMES            = NO
    157182
    158 # If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
    159 # will interpret the first line (until the first dot) of a JavaDoc-style
    160 # comment as the brief description. If set to NO, the JavaDoc
    161 # comments will behave just like regular Qt-style comments
    162 # (thus requiring an explicit @brief command for a brief description.)
     183# If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
     184# first line (until the first dot) of a Javadoc-style comment as the brief
     185# description. If set to NO, the Javadoc-style will behave just like regular Qt-
     186# style comments (thus requiring an explicit @brief command for a brief
     187# description.)
     188# The default value is: NO.
    163189
    164190JAVADOC_AUTOBRIEF      = NO
    165191
    166 # If the QT_AUTOBRIEF tag is set to YES then Doxygen will
    167 # interpret the first line (until the first dot) of a Qt-style
    168 # comment as the brief description. If set to NO, the comments
    169 # will behave just like regular Qt-style comments (thus requiring
    170 # an explicit \brief command for a brief description.)
     192# If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
     193# line (until the first dot) of a Qt-style comment as the brief description. If
     194# set to NO, the Qt-style will behave just like regular Qt-style comments (thus
     195# requiring an explicit \brief command for a brief description.)
     196# The default value is: NO.
    171197
    172198QT_AUTOBRIEF           = NO
    173199
    174 # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
    175 # treat a multi-line C++ special comment block (i.e. a block of //! or ///
    176 # comments) as a brief description. This used to be the default behaviour.
    177 # The new default is to treat a multi-line C++ comment block as a detailed
    178 # description. Set this tag to YES if you prefer the old behaviour instead.
     200# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
     201# multi-line C++ special comment block (i.e. a block of //! or /// comments) as
     202# a brief description. This used to be the default behavior. The new default is
     203# to treat a multi-line C++ comment block as a detailed description. Set this
     204# tag to YES if you prefer the old behavior instead.
     205#
     206# Note that setting this tag to YES also means that rational rose comments are
     207# not recognized any more.
     208# The default value is: NO.
    179209
    180210MULTILINE_CPP_IS_BRIEF = NO
    181211
    182 # If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
    183 # member inherits the documentation from any documented member that it
    184 # re-implements.
     212# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
     213# documentation from any documented member that it re-implements.
     214# The default value is: YES.
    185215
    186216INHERIT_DOCS           = YES
    187217
    188 # If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
    189 # a new page for each member. If set to NO, the documentation of a member will
    190 # be part of the file/class/namespace that contains it.
     218# If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
     219# page for each member. If set to NO, the documentation of a member will be part
     220# of the file/class/namespace that contains it.
     221# The default value is: NO.
    191222
    192223SEPARATE_MEMBER_PAGES  = NO
    193224
    194 # The TAB_SIZE tag can be used to set the number of spaces in a tab.
    195 # Doxygen uses this value to replace tabs by spaces in code fragments.
     225# The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
     226# uses this value to replace tabs by spaces in code fragments.
     227# Minimum value: 1, maximum value: 16, default value: 4.
    196228
    197229TAB_SIZE               = 8
    198230
    199 # This tag can be used to specify a number of aliases that acts
    200 # as commands in the documentation. An alias has the form "name=value".
    201 # For example adding "sideeffect=\par Side Effects:\n" will allow you to
    202 # put the command \sideeffect (or @sideeffect) in the documentation, which
    203 # will result in a user-defined paragraph with heading "Side Effects:".
    204 # You can put \n's in the value part of an alias to insert newlines.
    205 
    206 ALIASES                =
    207 
    208 # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
    209 # sources only. Doxygen will then generate output that is more tailored for C.
    210 # For instance, some of the names that are used will be different. The list
    211 # of all members will be omitted, etc.
     231# This tag can be used to specify a number of aliases that act as commands in
     232# the documentation. An alias has the form:
     233# name=value
     234# For example adding
     235# "sideeffect=@par Side Effects:\n"
     236# will allow you to put the command \sideeffect (or @sideeffect) in the
     237# documentation, which will result in a user-defined paragraph with heading
     238# "Side Effects:". You can put \n's in the value part of an alias to insert
     239# newlines.
     240
     241ALIASES                =
     242
     243# This tag can be used to specify a number of word-keyword mappings (TCL only).
     244# A mapping has the form "name=value". For example adding "class=itcl::class"
     245# will allow you to use the command class in the itcl::class meaning.
     246
     247TCL_SUBST              =
     248
     249# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
     250# only. Doxygen will then generate output that is more tailored for C. For
     251# instance, some of the names that are used will be different. The list of all
     252# members will be omitted, etc.
     253# The default value is: NO.
    212254
    213255OPTIMIZE_OUTPUT_FOR_C  = NO
    214256
    215 # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
    216 # sources only. Doxygen will then generate output that is more tailored for
    217 # Java. For instance, namespaces will be presented as packages, qualified
    218 # scopes will look different, etc.
     257# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
     258# Python sources only. Doxygen will then generate output that is more tailored
     259# for that language. For instance, namespaces will be presented as packages,
     260# qualified scopes will look different, etc.
     261# The default value is: NO.
    219262
    220263OPTIMIZE_OUTPUT_JAVA   = NO
    221264
    222 # Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran 
    223 # sources only. Doxygen will then generate output that is more tailored for
    224 # Fortran.
     265# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
     266# sources. Doxygen will then generate output that is tailored for Fortran.
     267# The default value is: NO.
    225268
    226269OPTIMIZE_FOR_FORTRAN   = NO
    227270
    228 # Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL 
    229 # sources. Doxygen will then generate output that is tailored for
    230 # VHDL.
     271# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
     272# sources. Doxygen will then generate output that is tailored for VHDL.
     273# The default value is: NO.
    231274
    232275OPTIMIZE_OUTPUT_VHDL   = NO
    233276
    234 # Doxygen selects the parser to use depending on the extension of the files it
    235 # parses. With this tag you can assign which parser to use for a given extension.
    236 # Doxygen has a built-in mapping, but you can override or extend it using this
    237 # tag. The format is ext=language, where ext is a file extension, and language
    238 # is one of the parsers supported by doxygen: IDL, Java, Javascript, CSharp, C,
    239 # C++, D, PHP, Objective-C, Python, Fortran, VHDL, C, C++. For instance to make
    240 # doxygen treat .inc files as Fortran files (default is PHP), and .f files as C
    241 # (default is Fortran), use: inc=Fortran f=C. Note that for custom extensions
    242 # you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
    243 
    244 EXTENSION_MAPPING      =
    245 
    246 # If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
    247 # to include (a tag file for) the STL sources as input, then you should
    248 # set this tag to YES in order to let doxygen match functions declarations and
    249 # definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
    250 # func(std::string) {}). This also makes the inheritance and collaboration
     277# Doxygen selects the parser to use depending on the extension of the files it
     278# parses. With this tag you can assign which parser to use for a given
     279# extension. Doxygen has a built-in mapping, but you can override or extend it
     280# using this tag. The format is ext=language, where ext is a file extension, and
     281# language is one of the parsers supported by doxygen: IDL, Java, Javascript,
     282# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
     283# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
     284# Fortran. In the later case the parser tries to guess whether the code is fixed
     285# or free formatted code, this is the default for Fortran type files), VHDL. For
     286# instance to make doxygen treat .inc files as Fortran files (default is PHP),
     287# and .f files as C (default is Fortran), use: inc=Fortran f=C.
     288#
     289# Note: For files without extension you can use no_extension as a placeholder.
     290#
     291# Note that for custom extensions you also need to set FILE_PATTERNS otherwise
     292# the files are not read by doxygen.
     293
     294EXTENSION_MAPPING      =
     295
     296# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
     297# according to the Markdown format, which allows for more readable
     298# documentation. See http://daringfireball.net/projects/markdown/ for details.
     299# The output of markdown processing is further processed by doxygen, so you can
     300# mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
     301# case of backward compatibilities issues.
     302# The default value is: YES.
     303
     304MARKDOWN_SUPPORT       = YES
     305
     306# When enabled doxygen tries to link words that correspond to documented
     307# classes, or namespaces to their corresponding documentation. Such a link can
     308# be prevented in individual cases by putting a % sign in front of the word or
     309# globally by setting AUTOLINK_SUPPORT to NO.
     310# The default value is: YES.
     311
     312AUTOLINK_SUPPORT       = YES
     313
     314# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
     315# to include (a tag file for) the STL sources as input, then you should set this
     316# tag to YES in order to let doxygen match functions declarations and
     317# definitions whose arguments contain STL classes (e.g. func(std::string);
     318# versus func(std::string) {}). This also make the inheritance and collaboration
    251319# diagrams that involve STL classes more complete and accurate.
     320# The default value is: NO.
    252321
    253322BUILTIN_STL_SUPPORT    = YES
    254323
    255 # If you use Microsoft's C++/CLI language, you should set this option to YES to 
     324# If you use Microsoft's C++/CLI language, you should set this option to YES to
    256325# enable parsing support.
     326# The default value is: NO.
    257327
    258328CPP_CLI_SUPPORT        = NO
    259329
    260 # Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
    261 # Doxygen will parse them like normal C++ but will assume all classes use public
    262 # instead of private inheritance when no explicit protection keyword is present.
     330# Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
     331# http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen
     332# will parse them like normal C++ but will assume all classes use public instead
     333# of private inheritance when no explicit protection keyword is present.
     334# The default value is: NO.
    263335
    264336SIP_SUPPORT            = NO
    265337
    266 # For Microsoft's IDL there are propget and propput attributes to indicate getter
    267 # and setter methods for a property. Setting this option to YES (the default)
    268 # will make doxygen replace the get and set methods by a property in the
    269 # documentation. This will only work if the methods are indeed getting or
    270 # setting a simple type. If this is not the case, or you want to show the
    271 # methods anyway, you should set this option to NO.
     338# For Microsoft's IDL there are propget and propput attributes to indicate
     339# getter and setter methods for a property. Setting this option to YES will make
     340# doxygen to replace the get and set methods by a property in the documentation.
     341# This will only work if the methods are indeed getting or setting a simple
     342# type. If this is not the case, or you want to show the methods anyway, you
     343# should set this option to NO.
     344# The default value is: YES.
    272345
    273346IDL_PROPERTY_SUPPORT   = YES
    274347
    275 # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
    276 # tag is set to YES, then doxygen will reuse the documentation of the first
    277 # member in the group (if any) for the other members of the group. By default 
     348# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
     349# tag is set to YES then doxygen will reuse the documentation of the first
     350# member in the group (if any) for the other members of the group. By default
    278351# all members of a group must be documented explicitly.
     352# The default value is: NO.
    279353
    280354DISTRIBUTE_GROUP_DOC   = NO
    281355
    282 # Set the SUBGROUPING tag to YES (the default) to allow class member groups of
    283 # the same type (for instance a group of public functions) to be put as a
    284 # subgroup of that type (e.g. under the Public Functions section). Set it to
    285 # NO to prevent subgrouping. Alternatively, this can be done per class using
    286 # the \nosubgrouping command.
     356# Set the SUBGROUPING tag to YES to allow class member groups of the same type
     357# (for instance a group of public functions) to be put as a subgroup of that
     358# type (e.g. under the Public Functions section). Set it to NO to prevent
     359# subgrouping. Alternatively, this can be done per class using the
     360# \nosubgrouping command.
     361# The default value is: YES.
    287362
    288363SUBGROUPING            = YES
    289364
    290 # When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and
    291 # unions are shown inside the group in which they are included (e.g. using
    292 # @ingroup) instead of on a separate page (for HTML and Man pages) or
    293 # section (for LaTeX and RTF).
     365# When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
     366# are shown inside the group in which they are included (e.g. using \ingroup)
     367# instead of on a separate page (for HTML and Man pages) or section (for LaTeX
     368# and RTF).
     369#
     370# Note that this feature does not work in combination with
     371# SEPARATE_MEMBER_PAGES.
     372# The default value is: NO.
    294373
    295374INLINE_GROUPED_CLASSES = NO
    296375
    297 # When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and
    298 # unions with only public data fields will be shown inline in the documentation
    299 # of the scope in which they are defined (i.e. file, namespace, or group
    300 # documentation), provided this scope is documented. If set to NO (the default),
    301 # structs, classes, and unions are shown on a separate page (for HTML and Man
    302 # pages) or section (for LaTeX and RTF).
     376# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
     377# with only public data fields or simple typedef fields will be shown inline in
     378# the documentation of the scope in which they are defined (i.e. file,
     379# namespace, or group documentation), provided this scope is documented. If set
     380# to NO, structs, classes, and unions are shown on a separate page (for HTML and
     381# Man pages) or section (for LaTeX and RTF).
     382# The default value is: NO.
    303383
    304384INLINE_SIMPLE_STRUCTS  = NO
    305385
    306 # When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
    307 # is documented as struct, union, or enum with the name of the typedef. So
    308 # typedef struct TypeS {} TypeT, will appear in the documentation as a struct 
    309 # with name TypeT. When disabled the typedef will appear as a member of a file, 
    310 # namespace, or class. And the struct will be named TypeS. This can typically
    311 # be useful for C code in case the coding convention dictates that all compound
     386# When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
     387# enum is documented as struct, union, or enum with the name of the typedef. So
     388# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
     389# with name TypeT. When disabled the typedef will appear as a member of a file,
     390# namespace, or class. And the struct will be named TypeS. This can typically be
     391# useful for C code in case the coding convention dictates that all compound
    312392# types are typedef'ed and only the typedef is referenced, never the tag name.
     393# The default value is: NO.
    313394
    314395TYPEDEF_HIDES_STRUCT   = NO
    315396
    316 # The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
    317 # determine which symbols to keep in memory and which to flush to disk.
    318 # When the cache is full, less often used symbols will be written to disk.
    319 # For small to medium size projects (<1000 input files) the default value is
    320 # probably good enough. For larger projects a too small cache size can cause
    321 # doxygen to be busy swapping symbols to and from disk most of the time
    322 # causing a significant performance penalty.
    323 # If the system has enough physical memory increasing the cache will improve the
    324 # performance by keeping more symbols in memory. Note that the value works on
    325 # a logarithmic scale so increasing the size by one will roughly double the
    326 # memory usage. The cache size is given by this formula:
    327 # 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
    328 # corresponding to a cache size of 2^16 = 65536 symbols
    329 
    330 SYMBOL_CACHE_SIZE      = 0
     397# The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
     398# cache is used to resolve symbols given their name and scope. Since this can be
     399# an expensive process and often the same symbol appears multiple times in the
     400# code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
     401# doxygen will become slower. If the cache is too large, memory is wasted. The
     402# cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
     403# is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
     404# symbols. At the end of a run doxygen will report the cache usage and suggest
     405# the optimal cache size from a speed point of view.
     406# Minimum value: 0, maximum value: 9, default value: 0.
     407
     408LOOKUP_CACHE_SIZE      = 0
    331409
    332410#---------------------------------------------------------------------------
     
    334412#---------------------------------------------------------------------------
    335413
    336 # If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
    337 # documentation are documented, even if no documentation was available.
    338 # Private class members and static file members will be hidden unless
    339 # the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
     414# If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
     415# documentation are documented, even if no documentation was available. Private
     416# class members and static file members will be hidden unless the
     417# EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
     418# Note: This will also disable the warnings about undocumented members that are
     419# normally produced when WARNINGS is set to YES.
     420# The default value is: NO.
    340421
    341422EXTRACT_ALL            = YES
    342423
    343 # If the EXTRACT_PRIVATE tag is set to YES all private members of a class
    344 # will be included in the documentation.
     424# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
     425# be included in the documentation.
     426# The default value is: NO.
    345427
    346428EXTRACT_PRIVATE        = YES
    347429
    348 # If the EXTRACT_STATIC tag is set to YES all static members of a file
    349 # will be included in the documentation.
     430# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
     431# scope will be included in the documentation.
     432# The default value is: NO.
     433
     434EXTRACT_PACKAGE        = NO
     435
     436# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
     437# included in the documentation.
     438# The default value is: NO.
    350439
    351440EXTRACT_STATIC         = YES
    352441
    353 # If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
    354 # defined locally in source files will be included in the documentation.
    355 # If set to NO only classes defined in header files are included.
     442# If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
     443# locally in source files will be included in the documentation. If set to NO,
     444# only classes defined in header files are included. Does not have any effect
     445# for Java sources.
     446# The default value is: YES.
    356447
    357448EXTRACT_LOCAL_CLASSES  = YES
    358449
    359 # This flag is only useful for Objective-C code. When set to YES local
    360 # methods, which are defined in the implementation section but not in
    361 # the interface are included in the documentation.
    362 # If set to NO (the default) only methods in the interface are included.
     450# This flag is only useful for Objective-C code. If set to YES, local methods,
     451# which are defined in the implementation section but not in the interface are
     452# included in the documentation. If set to NO, only methods in the interface are
     453# included.
     454# The default value is: NO.
    363455
    364456EXTRACT_LOCAL_METHODS  = NO
    365457
    366 # If this flag is set to YES, the members of anonymous namespaces will be
    367 # extracted and appear in the documentation as a namespace called
    368 # 'anonymous_namespace{file}', where file will be replaced with the base
    369 # name of the file that contains the anonymous namespace. By default
    370 # anonymous namespaces are hidden.
     458# If this flag is set to YES, the members of anonymous namespaces will be
     459# extracted and appear in the documentation as a namespace called
     460# 'anonymous_namespace{file}', where file will be replaced with the base name of
     461# the file that contains the anonymous namespace. By default anonymous namespace
     462# are hidden.
     463# The default value is: NO.
    371464
    372465EXTRACT_ANON_NSPACES   = NO
    373466
    374 # If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
    375 # undocumented members of documented classes, files or namespaces.
    376 # If set to NO (the default) these members will be included in the
    377 # various overviews, but no documentation section is generated.
    378 # This option has no effect if EXTRACT_ALL is enabled.
     467# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
     468# undocumented members inside documented classes or files. If set to NO these
     469# members will be included in the various overviews, but no documentation
     470# section is generated. This option has no effect if EXTRACT_ALL is enabled.
     471# The default value is: NO.
    379472
    380473HIDE_UNDOC_MEMBERS     = NO
    381474
    382 # If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
    383 # undocumented classes that are normally visible in the class hierarchy.
    384 # If set to NO (the default) these classes will be included in the various
    385 # overviews. This option has no effect if EXTRACT_ALL is enabled.
     475# If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
     476# undocumented classes that are normally visible in the class hierarchy. If set
     477# to NO, these classes will be included in the various overviews. This option
     478# has no effect if EXTRACT_ALL is enabled.
     479# The default value is: NO.
    386480
    387481HIDE_UNDOC_CLASSES     = NO
    388482
    389 # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
    390 # friend (class|struct|union) declarations.
    391 # If set to NO (the default) these declarations will be included in the
    392 # documentation.
     483# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
     484# (class|struct|union) declarations. If set to NO, these declarations will be
     485# included in the documentation.
     486# The default value is: NO.
    393487
    394488HIDE_FRIEND_COMPOUNDS  = NO
    395489
    396 # If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
    397 # documentation blocks found inside the body of a function.
    398 # If set to NO (the default) these blocks will be appended to the
    399 # function's detailed documentation block.
     490# If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
     491# documentation blocks found inside the body of a function. If set to NO, these
     492# blocks will be appended to the function's detailed documentation block.
     493# The default value is: NO.
    400494
    401495HIDE_IN_BODY_DOCS      = NO
    402496
    403 # The INTERNAL_DOCS tag determines if documentation
    404 # that is typed after a \internal command is included. If the tag is set
    405 # to NO (the default) then the documentation will be excluded.
    406 # Set it to YES to include the internal documentation.
     497# The INTERNAL_DOCS tag determines if documentation that is typed after a
     498# \internal command is included. If the tag is set to NO then the documentation
     499# will be excluded. Set it to YES to include the internal documentation.
     500# The default value is: NO.
    407501
    408502INTERNAL_DOCS          = NO
    409503
    410 # If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
    411 # file names in lower-case letters. If set to YES upper-case letters are also
    412 # allowed. This is useful if you have classes or files whose names only differ 
    413 # in case and if your file system supports case sensitive file names. Windows 
     504# If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
     505# names in lower-case letters. If set to YES, upper-case letters are also
     506# allowed. This is useful if you have classes or files whose names only differ
     507# in case and if your file system supports case sensitive file names. Windows
    414508# and Mac users are advised to set this option to NO.
     509# The default value is: system dependent.
    415510
    416511CASE_SENSE_NAMES       = NO
    417512
    418 # If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
    419 # will show members with their full class and namespace scopes in the
    420 # documentation. If set to YES the scope will be hidden.
     513# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
     514# their full class and namespace scopes in the documentation. If set to YES, the
     515# scope will be hidden.
     516# The default value is: NO.
    421517
    422518HIDE_SCOPE_NAMES       = NO
    423519
    424 # If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
    425 # will put a list of the files that are included by a file in the documentation
    426 # of that file.
     520# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
     521# append additional text to a page's title, such as Class Reference. If set to
     522# YES the compound reference will be hidden.
     523# The default value is: NO.
     524
     525HIDE_COMPOUND_REFERENCE= NO
     526
     527# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
     528# the files that are included by a file in the documentation of that file.
     529# The default value is: YES.
    427530
    428531SHOW_INCLUDE_FILES     = YES
    429532
    430 # If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
    431 # will list include files with double quotes in the documentation
    432 # rather than with sharp brackets.
     533# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
     534# grouped member an include statement to the documentation, telling the reader
     535# which file to include in order to use the member.
     536# The default value is: NO.
     537
     538SHOW_GROUPED_MEMB_INC  = NO
     539
     540# If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
     541# files with double quotes in the documentation rather than with sharp brackets.
     542# The default value is: NO.
    433543
    434544FORCE_LOCAL_INCLUDES   = NO
    435545
    436 # If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
    437 # is inserted in the documentation for inline members.
     546# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
     547# documentation for inline members.
     548# The default value is: YES.
    438549
    439550INLINE_INFO            = YES
    440551
    441 # If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
    442 # will sort the (detailed) documentation of file and class members
    443 # alphabetically by member name. If set to NO the members will appear in
    444 # declaration order.
     552# If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
     553# (detailed) documentation of file and class members alphabetically by member
     554# name. If set to NO, the members will appear in declaration order.
     555# The default value is: YES.
    445556
    446557SORT_MEMBER_DOCS       = YES
    447558
    448 # If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
    449 # brief documentation of file, namespace and class members alphabetically
    450 # by member name. If set to NO (the default) the members will appear in
    451 # declaration order.
     559# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
     560# descriptions of file, namespace and class members alphabetically by member
     561# name. If set to NO, the members will appear in declaration order. Note that
     562# this will also influence the order of the classes in the class list.
     563# The default value is: NO.
    452564
    453565SORT_BRIEF_DOCS        = NO
    454566
    455 # If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen
    456 # will sort the (brief and detailed) documentation of class members so that
    457 # constructors and destructors are listed first. If set to NO (the default)
    458 # the constructors will appear in the respective orders defined by
    459 # SORT_MEMBER_DOCS and SORT_BRIEF_DOCS.
    460 # This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO
    461 # and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
     567# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
     568# (brief and detailed) documentation of class members so that constructors and
     569# destructors are listed first. If set to NO the constructors will appear in the
     570# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
     571# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
     572# member documentation.
     573# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
     574# detailed member documentation.
     575# The default value is: NO.
    462576
    463577SORT_MEMBERS_CTORS_1ST = NO
    464578
    465 # If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
    466 # hierarchy of group names into alphabetical order. If set to NO (the default)
    467 # the group names will appear in their defined order.
     579# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
     580# of group names into alphabetical order. If set to NO the group names will
     581# appear in their defined order.
     582# The default value is: NO.
    468583
    469584SORT_GROUP_NAMES       = NO
    470585
    471 # If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
    472 # sorted by fully-qualified names, including namespaces. If set to
    473 # NO (the default), the class list will be sorted only by class name,
    474 # not including the namespace part.
    475 # Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
    476 # Note: This option applies only to the class list, not to the
    477 # alphabetical list.
     586# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
     587# fully-qualified names, including namespaces. If set to NO, the class list will
     588# be sorted only by class name, not including the namespace part.
     589# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
     590# Note: This option applies only to the class list, not to the alphabetical
     591# list.
     592# The default value is: NO.
    478593
    479594SORT_BY_SCOPE_NAME     = NO
    480595
    481 # If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to
    482 # do proper type resolution of all parameters of a function it will reject a
    483 # match between the prototype and the implementation of a member function even
    484 # if there is only one candidate or it is obvious which candidate to choose
    485 # by doing a simple string match. By disabling STRICT_PROTO_MATCHING doxygen
    486 # will still accept a match between prototype and implementation in such cases.
     596# If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
     597# type resolution of all parameters of a function it will reject a match between
     598# the prototype and the implementation of a member function even if there is
     599# only one candidate or it is obvious which candidate to choose by doing a
     600# simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
     601# accept a match between prototype and implementation in such cases.
     602# The default value is: NO.
    487603
    488604STRICT_PROTO_MATCHING  = NO
    489605
    490 # The GENERATE_TODOLIST tag can be used to enable (YES) or
    491 # disable (NO) the todo list. This list is created by putting \todo
    492 # commands in the documentation.
     606# The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
     607# list. This list is created by putting \todo commands in the documentation.
     608# The default value is: YES.
    493609
    494610GENERATE_TODOLIST      = YES
    495611
    496 # The GENERATE_TESTLIST tag can be used to enable (YES) or
    497 # disable (NO) the test list. This list is created by putting \test
    498 # commands in the documentation.
     612# The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
     613# list. This list is created by putting \test commands in the documentation.
     614# The default value is: YES.
    499615
    500616GENERATE_TESTLIST      = YES
    501617
    502 # The GENERATE_BUGLIST tag can be used to enable (YES) or
    503 # disable (NO) the bug list. This list is created by putting \bug
    504 # commands in the documentation.
     618# The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
     619# list. This list is created by putting \bug commands in the documentation.
     620# The default value is: YES.
    505621
    506622GENERATE_BUGLIST       = YES
    507623
    508 # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
    509 # disable (NO) the deprecated list. This list is created by putting
    510 # \deprecated commands in the documentation.
     624# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
     625# the deprecated list. This list is created by putting \deprecated commands in
     626# the documentation.
     627# The default value is: YES.
    511628
    512629GENERATE_DEPRECATEDLIST= YES
    513630
    514 # The ENABLED_SECTIONS tag can be used to enable conditional
    515 # documentation sections, marked by \if sectionname ... \endif.
    516 
    517 ENABLED_SECTIONS       =
    518 
    519 # The MAX_INITIALIZER_LINES tag determines the maximum number of lines
    520 # the initial value of a variable or macro consists of for it to appear in
    521 # the documentation. If the initializer consists of more lines than specified
    522 # here it will be hidden. Use a value of 0 to hide initializers completely.
    523 # The appearance of the initializer of individual variables and macros in the
    524 # documentation can be controlled using \showinitializer or \hideinitializer
    525 # command in the documentation regardless of this setting.
     631# The ENABLED_SECTIONS tag can be used to enable conditional documentation
     632# sections, marked by \if <section_label> ... \endif and \cond <section_label>
     633# ... \endcond blocks.
     634
     635ENABLED_SECTIONS       =
     636
     637# The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
     638# initial value of a variable or macro / define can have for it to appear in the
     639# documentation. If the initializer consists of more lines than specified here
     640# it will be hidden. Use a value of 0 to hide initializers completely. The
     641# appearance of the value of individual variables and macros / defines can be
     642# controlled using \showinitializer or \hideinitializer command in the
     643# documentation regardless of this setting.
     644# Minimum value: 0, maximum value: 10000, default value: 30.
    526645
    527646MAX_INITIALIZER_LINES  = 30
    528647
    529 # Set the SHOW_USED_FILES tag to NO to disable the list of files generated
    530 # at the bottom of the documentation of classes and structs. If set to YES the
     648# Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
     649# the bottom of the documentation of classes and structs. If set to YES, the
    531650# list will mention the files that were used to generate the documentation.
     651# The default value is: YES.
    532652
    533653SHOW_USED_FILES        = YES
    534654
    535 # If the sources in your project are distributed over multiple directories
    536 # then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
    537 # in the documentation. The default is NO.
    538 
    539 SHOW_DIRECTORIES       = NO
    540 
    541 # Set the SHOW_FILES tag to NO to disable the generation of the Files page.
    542 # This will remove the Files entry from the Quick Index and from the
    543 # Folder Tree View (if specified). The default is YES.
     655# Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
     656# will remove the Files entry from the Quick Index and from the Folder Tree View
     657# (if specified).
     658# The default value is: YES.
    544659
    545660SHOW_FILES             = YES
    546661
    547 # Set the SHOW_NAMESPACES tag to NO to disable the generation of the
    548 # Namespaces page.  This will remove the Namespaces entry from the Quick Index
    549 # and from the Folder Tree View (if specified). The default is YES.
     662# Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
     663# page. This will remove the Namespaces entry from the Quick Index and from the
     664# Folder Tree View (if specified).
     665# The default value is: YES.
    550666
    551667SHOW_NAMESPACES        = YES
    552668
    553 # The FILE_VERSION_FILTER tag can be used to specify a program or script that
    554 # doxygen should invoke to get the current version for each file (typically from
    555 # the version control system). Doxygen will invoke the program by executing (via
    556 # popen()) the command <command> <input-file>, where <command> is the value of
    557 # the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
    558 # provided by doxygen. Whatever the program writes to standard output
    559 # is used as the file version. See the manual for examples.
    560 
    561 FILE_VERSION_FILTER    =
    562 
    563 # The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
    564 # by doxygen. The layout file controls the global structure of the generated
    565 # output files in an output format independent way. The create the layout file
    566 # that represents doxygen's defaults, run doxygen with the -l option.
    567 # You can optionally specify a file name after the option, if omitted
    568 # DoxygenLayout.xml will be used as the name of the layout file.
    569 
    570 LAYOUT_FILE            =
    571 
    572 # The CITE_BIB_FILES tag can be used to specify one or more bib files
    573 # containing the references data. This must be a list of .bib files. The
    574 # .bib extension is automatically appended if omitted. Using this command
    575 # requires the bibtex tool to be installed. See also
    576 # http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style
    577 # of the bibliography can be controlled using LATEX_BIB_STYLE.
    578 
    579 CITE_BIB_FILES         =
    580 
    581 #---------------------------------------------------------------------------
    582 # configuration options related to warning and progress messages
    583 #---------------------------------------------------------------------------
    584 
    585 # The QUIET tag can be used to turn on/off the messages that are generated
    586 # by doxygen. Possible values are YES and NO. If left blank NO is used.
     669# The FILE_VERSION_FILTER tag can be used to specify a program or script that
     670# doxygen should invoke to get the current version for each file (typically from
     671# the version control system). Doxygen will invoke the program by executing (via
     672# popen()) the command command input-file, where command is the value of the
     673# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
     674# by doxygen. Whatever the program writes to standard output is used as the file
     675# version. For an example see the documentation.
     676
     677FILE_VERSION_FILTER    =
     678
     679# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
     680# by doxygen. The layout file controls the global structure of the generated
     681# output files in an output format independent way. To create the layout file
     682# that represents doxygen's defaults, run doxygen with the -l option. You can
     683# optionally specify a file name after the option, if omitted DoxygenLayout.xml
     684# will be used as the name of the layout file.
     685#
     686# Note that if you run doxygen from a directory containing a file called
     687# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
     688# tag is left empty.
     689
     690LAYOUT_FILE            =
     691
     692# The CITE_BIB_FILES tag can be used to specify one or more bib files containing
     693# the reference definitions. This must be a list of .bib files. The .bib
     694# extension is automatically appended if omitted. This requires the bibtex tool
     695# to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.
     696# For LaTeX the style of the bibliography can be controlled using
     697# LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
     698# search path. See also \cite for info how to create references.
     699
     700CITE_BIB_FILES         =
     701
     702#---------------------------------------------------------------------------
     703# Configuration options related to warning and progress messages
     704#---------------------------------------------------------------------------
     705
     706# The QUIET tag can be used to turn on/off the messages that are generated to
     707# standard output by doxygen. If QUIET is set to YES this implies that the
     708# messages are off.
     709# The default value is: NO.
    587710
    588711QUIET                  = NO
    589712
    590 # The WARNINGS tag can be used to turn on/off the warning messages that are
    591 # generated by doxygen. Possible values are YES and NO. If left blank
    592 # NO is used.
     713# The WARNINGS tag can be used to turn on/off the warning messages that are
     714# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
     715# this implies that the warnings are on.
     716#
     717# Tip: Turn warnings on while writing the documentation.
     718# The default value is: YES.
    593719
    594720WARNINGS               = YES
    595721
    596 # If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
    597 # for undocumented members. If EXTRACT_ALL is set to YES then this flag will
    598 # automatically be disabled.
     722# If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
     723# warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
     724# will automatically be disabled.
     725# The default value is: YES.
    599726
    600727WARN_IF_UNDOCUMENTED   = YES
    601728
    602 # If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
    603 # potential errors in the documentation, such as not documenting some
    604 # parameters in a documented function, or documenting parameters that
    605 # don't exist or using markup commands wrongly.
     729# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
     730# potential errors in the documentation, such as not documenting some parameters
     731# in a documented function, or documenting parameters that don't exist or using
     732# markup commands wrongly.
     733# The default value is: YES.
    606734
    607735WARN_IF_DOC_ERROR      = YES
    608736
    609 # The WARN_NO_PARAMDOC option can be enabled to get warnings for
    610 # functions that are documented, but have no documentation for their parameters
    611 # or return value. If set to NO (the default) doxygen will only warn about
    612 # wrong or incomplete parameter documentation, but not about the absence of
    613 # documentation.
     737# This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
     738# are documented, but have no documentation for their parameters or return
     739# value. If set to NO, doxygen will only warn about wrong or incomplete
     740# parameter documentation, but not about the absence of documentation.
     741# The default value is: NO.
    614742
    615743WARN_NO_PARAMDOC       = NO
    616744
    617 # The WARN_FORMAT tag determines the format of the warning messages that
    618 # doxygen can produce. The string should contain the $file, $line, and $text
    619 # tags, which will be replaced by the file and line number from which the
    620 # warning originated and the warning text. Optionally the format may contain
    621 # $version, which will be replaced by the version of the file (if it could
    622 # be obtained via FILE_VERSION_FILTER)
     745# The WARN_FORMAT tag determines the format of the warning messages that doxygen
     746# can produce. The string should contain the $file, $line, and $text tags, which
     747# will be replaced by the file and line number from which the warning originated
     748# and the warning text. Optionally the format may contain $version, which will
     749# be replaced by the version of the file (if it could be obtained via
     750# FILE_VERSION_FILTER)
     751# The default value is: $file:$line: $text.
    623752
    624753WARN_FORMAT            = "$file:$line: $text"
    625754
    626 # The WARN_LOGFILE tag can be used to specify a file to which warning
    627 # and error messages should be written. If left blank the output is written
    628 # to stderr.
     755# The WARN_LOGFILE tag can be used to specify a file to which warning and error
     756# messages should be written. If left blank the output is written to standard
     757# error (stderr).
    629758
    630759WARN_LOGFILE           = warning.log
    631760
    632761#---------------------------------------------------------------------------
    633 # configuration options related to the input files
    634 #---------------------------------------------------------------------------
    635 
    636 # The INPUT tag can be used to specify the files and/or directories that contain
    637 # documented source files. You may enter file names like "myfile.cpp" or
    638 # directories like "/usr/src/myproject". Separate the files or directories
    639 # with spaces.
     762# Configuration options related to the input files
     763#---------------------------------------------------------------------------
     764
     765# The INPUT tag is used to specify the files and/or directories that contain
     766# documented source files. You may enter file names like myfile.cpp or
     767# directories like /usr/src/myproject. Separate the files or directories with
     768# spaces.
     769# Note: If this tag is empty the current directory is searched.
    640770
    641771INPUT                  = ../source \
    642772                         mainpage.h
    643773
    644 # This tag can be used to specify the character encoding of the source files
    645 # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
    646 # also the default input encoding. Doxygen uses libiconv (or the iconv built
    647 # into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
    648 # the list of possible encodings.
     774# This tag can be used to specify the character encoding of the source files
     775# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
     776# libiconv (or the iconv built into libc) for the transcoding. See the libiconv
     777# documentation (see: http://www.gnu.org/software/libiconv) for the list of
     778# possible encodings.
     779# The default value is: UTF-8.
    649780
    650781INPUT_ENCODING         = UTF-8
    651782
    652 # If the value of the INPUT tag contains directories, you can use the
    653 # FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
    654 # and *.h) to filter out the source-files in the directories. If left
    655 # blank the following patterns are tested:
    656 # *.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh
    657 # *.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
    658 # *.f90 *.f *.for *.vhd *.vhdl
     783# If the value of the INPUT tag contains directories, you can use the
     784# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
     785# *.h) to filter out the source-files in the directories. If left blank the
     786# following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii,
     787# *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp,
     788# *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown,
     789# *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf,
     790# *.qsf, *.as and *.js.
    659791
    660792FILE_PATTERNS          = *.c \
     
    691823                         *.vhdl
    692824
    693 # The RECURSIVE tag can be used to turn specify whether or not subdirectories
    694 # should be searched for input files as well. Possible values are YES and NO.
    695 # If left blank NO is used.
     825# The RECURSIVE tag can be used to specify whether or not subdirectories should
     826# be searched for input files as well.
     827# The default value is: NO.
    696828
    697829RECURSIVE              = YES
    698830
    699 # The EXCLUDE tag can be used to specify files and/or directories that should
    700 # excluded from the INPUT source files. This way you can easily exclude a
    701 # subdirectory from a directory tree whose root is specified with the INPUT tag.
    702 # Note that relative paths are relative to directory from which doxygen is run.
    703 
    704 EXCLUDE                =
    705 
    706 # The EXCLUDE_SYMLINKS tag can be used select whether or not files or
    707 # directories that are symbolic links (a Unix file system feature) are excluded
     831# The EXCLUDE tag can be used to specify files and/or directories that should be
     832# excluded from the INPUT source files. This way you can easily exclude a
     833# subdirectory from a directory tree whose root is specified with the INPUT tag.
     834#
     835# Note that relative paths are relative to the directory from which doxygen is
     836# run.
     837
     838EXCLUDE                =
     839
     840# The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
     841# directories that are symbolic links (a Unix file system feature) are excluded
    708842# from the input.
     843# The default value is: NO.
    709844
    710845EXCLUDE_SYMLINKS       = NO
    711846
    712 # If the value of the INPUT tag contains directories, you can use the
    713 # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
    714 # certain files from those directories. Note that the wildcards are matched
    715 # against the file with absolute path, so to exclude all test directories
    716 # for example use the pattern */test/*
     847# If the value of the INPUT tag contains directories, you can use the
     848# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
     849# certain files from those directories.
     850#
     851# Note that the wildcards are matched against the file with absolute path, so to
     852# exclude all test directories for example use the pattern */test/*
    717853
    718854EXCLUDE_PATTERNS       = */.svn
    719855
    720 # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names 
    721 # (namespaces, classes, functions, etc.) that should be excluded from the 
    722 # output. The symbol name can be a fully qualified name, a word, or if the 
    723 # wildcard * is used, a substring. Examples: ANamespace, AClass, 
     856# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
     857# (namespaces, classes, functions, etc.) that should be excluded from the
     858# output. The symbol name can be a fully qualified name, a word, or if the
     859# wildcard * is used, a substring. Examples: ANamespace, AClass,
    724860# AClass::ANamespace, ANamespace::*Test
    725 
    726 EXCLUDE_SYMBOLS        =
    727 
    728 # The EXAMPLE_PATH tag can be used to specify one or more files or
    729 # directories that contain example code fragments that are included (see
    730 # the \include command).
    731 
    732 EXAMPLE_PATH           =
    733 
    734 # If the value of the EXAMPLE_PATH tag contains directories, you can use the
    735 # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
    736 # and *.h) to filter out the source-files in the directories. If left
    737 # blank all files are included.
     861#
     862# Note that the wildcards are matched against the file with absolute path, so to
     863# exclude all test directories use the pattern */test/*
     864
     865EXCLUDE_SYMBOLS        =
     866
     867# The EXAMPLE_PATH tag can be used to specify one or more files or directories
     868# that contain example code fragments that are included (see the \include
     869# command).
     870
     871EXAMPLE_PATH           =
     872
     873# If the value of the EXAMPLE_PATH tag contains directories, you can use the
     874# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
     875# *.h) to filter out the source-files in the directories. If left blank all
     876# files are included.
    738877
    739878EXAMPLE_PATTERNS       = *
    740879
    741 # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
    742 # searched for input files to be used with the \include or \dontinclude
    743 # commands irrespective of the value of the RECURSIVE tag.
    744 # Possible values are YES and NO. If left blank NO is used.
     880# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
     881# searched for input files to be used with the \include or \dontinclude commands
     882# irrespective of the value of the RECURSIVE tag.
     883# The default value is: NO.
    745884
    746885EXAMPLE_RECURSIVE      = NO
    747886
    748 # The IMAGE_PATH tag can be used to specify one or more files or
    749 # directories that contain image that are included in the documentation (see
    750 # the \image command).
    751 
    752 IMAGE_PATH             =
    753 
    754 # The INPUT_FILTER tag can be used to specify a program that doxygen should
    755 # invoke to filter for each input file. Doxygen will invoke the filter program
    756 # by executing (via popen()) the command <filter> <input-file>, where <filter>
    757 # is the value of the INPUT_FILTER tag, and <input-file> is the name of an
    758 # input file. Doxygen will then use the output that the filter program writes
    759 # to standard output.  If FILTER_PATTERNS is specified, this tag will be
    760 # ignored.
    761 
    762 INPUT_FILTER           =
    763 
    764 # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
    765 # basis.  Doxygen will compare the file name with each pattern and apply the
    766 # filter if there is a match.  The filters are a list of the form:
    767 # pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
    768 # info on how filters are used. If FILTER_PATTERNS is empty or if
    769 # non of the patterns match the file name, INPUT_FILTER is applied.
    770 
    771 FILTER_PATTERNS        =
    772 
    773 # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
    774 # INPUT_FILTER) will be used to filter the input files when producing source
    775 # files to browse (i.e. when SOURCE_BROWSER is set to YES).
     887# The IMAGE_PATH tag can be used to specify one or more files or directories
     888# that contain images that are to be included in the documentation (see the
     889# \image command).
     890
     891IMAGE_PATH             =
     892
     893# The INPUT_FILTER tag can be used to specify a program that doxygen should
     894# invoke to filter for each input file. Doxygen will invoke the filter program
     895# by executing (via popen()) the command:
     896#
     897# <filter> <input-file>
     898#
     899# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
     900# name of an input file. Doxygen will then use the output that the filter
     901# program writes to standard output. If FILTER_PATTERNS is specified, this tag
     902# will be ignored.
     903#
     904# Note that the filter must not add or remove lines; it is applied before the
     905# code is scanned, but not when the output code is generated. If lines are added
     906# or removed, the anchors will not be placed correctly.
     907
     908INPUT_FILTER           =
     909
     910# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
     911# basis. Doxygen will compare the file name with each pattern and apply the
     912# filter if there is a match. The filters are a list of the form: pattern=filter
     913# (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
     914# filters are used. If the FILTER_PATTERNS tag is empty or if none of the
     915# patterns match the file name, INPUT_FILTER is applied.
     916
     917FILTER_PATTERNS        =
     918
     919# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
     920# INPUT_FILTER) will also be used to filter the input files that are used for
     921# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
     922# The default value is: NO.
    776923
    777924FILTER_SOURCE_FILES    = NO
    778925
    779 # The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
    780 # pattern. A pattern will override the setting for FILTER_PATTERN (if any)
    781 # and it is also possible to disable source filtering for a specific pattern
    782 # using *.ext= (so without naming a filter). This option only has effect when
    783 # FILTER_SOURCE_FILES is enabled.
    784 
    785 FILTER_SOURCE_PATTERNS =
    786 
    787 #---------------------------------------------------------------------------
    788 # configuration options related to source browsing
    789 #---------------------------------------------------------------------------
    790 
    791 # If the SOURCE_BROWSER tag is set to YES then a list of source files will
    792 # be generated. Documented entities will be cross-referenced with these sources.
    793 # Note: To get rid of all source code in the generated output, make sure also
    794 # VERBATIM_HEADERS is set to NO.
     926# The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
     927# pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
     928# it is also possible to disable source filtering for a specific pattern using
     929# *.ext= (so without naming a filter).
     930# This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
     931
     932FILTER_SOURCE_PATTERNS =
     933
     934# If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
     935# is part of the input, its contents will be placed on the main page
     936# (index.html). This can be useful if you have a project on for instance GitHub
     937# and want to reuse the introduction page also for the doxygen output.
     938
     939USE_MDFILE_AS_MAINPAGE =
     940
     941#---------------------------------------------------------------------------
     942# Configuration options related to source browsing
     943#---------------------------------------------------------------------------
     944
     945# If the SOURCE_BROWSER tag is set to YES then a list of source files will be
     946# generated. Documented entities will be cross-referenced with these sources.
     947#
     948# Note: To get rid of all source code in the generated output, make sure that
     949# also VERBATIM_HEADERS is set to NO.
     950# The default value is: NO.
    795951
    796952SOURCE_BROWSER         = YES
    797953
    798 # Setting the INLINE_SOURCES tag to YES will include the body
    799 # of functions and classes directly in the documentation.
     954# Setting the INLINE_SOURCES tag to YES will include the body of functions,
     955# classes and enums directly into the documentation.
     956# The default value is: NO.
    800957
    801958INLINE_SOURCES         = NO
    802959
    803 # Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
    804 # doxygen to hide any special comment blocks from generated source code
    805 # fragments. Normal C and C++ comments will always remain visible.
     960# Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
     961# special comment blocks from generated source code fragments. Normal C, C++ and
     962# Fortran comments will always remain visible.
     963# The default value is: YES.
    806964
    807965STRIP_CODE_COMMENTS    = YES
    808966
    809 # If the REFERENCED_BY_RELATION tag is set to YES
    810 # then for each documented function all documented
    811 # functions referencing it will be listed.
     967# If the REFERENCED_BY_RELATION tag is set to YES then for each documented
     968# function all documented functions referencing it will be listed.
     969# The default value is: NO.
    812970
    813971REFERENCED_BY_RELATION = NO
    814972
    815 # If the REFERENCES_RELATION tag is set to YES
    816 # then for each documented function all documented entities
    817 # called/used by that function will be listed.
     973# If the REFERENCES_RELATION tag is set to YES then for each documented function
     974# all documented entities called/used by that function will be listed.
     975# The default value is: NO.
    818976
    819977REFERENCES_RELATION    = NO
    820978
    821 # If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
    822 # and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
    823 # functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
    824 # link to the source code.  Otherwise they will link to the documentation.
     979# If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
     980# to YES then the hyperlinks from functions in REFERENCES_RELATION and
     981# REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
     982# link to the documentation.
     983# The default value is: YES.
    825984
    826985REFERENCES_LINK_SOURCE = YES
    827986
    828 # If the USE_HTAGS tag is set to YES then the references to source code
    829 # will point to the HTML generated by the htags(1) tool instead of doxygen
    830 # built-in source browser. The htags tool is part of GNU's global source
    831 # tagging system (see http://www.gnu.org/software/global/global.html). You
    832 # will need version 4.8.6 or higher.
     987# If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
     988# source code will show a tooltip with additional information such as prototype,
     989# brief description and links to the definition and documentation. Since this
     990# will make the HTML file larger and loading of large files a bit slower, you
     991# can opt to disable this feature.
     992# The default value is: YES.
     993# This tag requires that the tag SOURCE_BROWSER is set to YES.
     994
     995SOURCE_TOOLTIPS        = YES
     996
     997# If the USE_HTAGS tag is set to YES then the references to source code will
     998# point to the HTML generated by the htags(1) tool instead of doxygen built-in
     999# source browser. The htags tool is part of GNU's global source tagging system
     1000# (see http://www.gnu.org/software/global/global.html). You will need version
     1001# 4.8.6 or higher.
     1002#
     1003# To use it do the following:
     1004# - Install the latest version of global
     1005# - Enable SOURCE_BROWSER and USE_HTAGS in the config file
     1006# - Make sure the INPUT points to the root of the source tree
     1007# - Run doxygen as normal
     1008#
     1009# Doxygen will invoke htags (and that will in turn invoke gtags), so these
     1010# tools must be available from the command line (i.e. in the search path).
     1011#
     1012# The result: instead of the source browser generated by doxygen, the links to
     1013# source code will now point to the output of htags.
     1014# The default value is: NO.
     1015# This tag requires that the tag SOURCE_BROWSER is set to YES.
    8331016
    8341017USE_HTAGS              = NO
    8351018
    836 # If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
    837 # will generate a verbatim copy of the header file for each class for
    838 # which an include is specified. Set to NO to disable this.
     1019# If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
     1020# verbatim copy of the header file for each class for which an include is
     1021# specified. Set to NO to disable this.
     1022# See also: Section \class.
     1023# The default value is: YES.
    8391024
    8401025VERBATIM_HEADERS       = YES
    8411026
    842 #---------------------------------------------------------------------------
    843 # configuration options related to the alphabetical class index
    844 #---------------------------------------------------------------------------
    845 
    846 # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
    847 # of all compounds will be generated. Enable this if the project
    848 # contains a lot of classes, structs, unions or interfaces.
     1027# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the
     1028# clang parser (see: http://clang.llvm.org/) for more accurate parsing at the
     1029# cost of reduced performance. This can be particularly helpful with template
     1030# rich C++ code for which doxygen's built-in parser lacks the necessary type
     1031# information.
     1032# Note: The availability of this option depends on whether or not doxygen was
     1033# compiled with the --with-libclang option.
     1034# The default value is: NO.
     1035
     1036CLANG_ASSISTED_PARSING = NO
     1037
     1038# If clang assisted parsing is enabled you can provide the compiler with command
     1039# line options that you would normally use when invoking the compiler. Note that
     1040# the include paths will already be set by doxygen for the files and directories
     1041# specified with INPUT and INCLUDE_PATH.
     1042# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES.
     1043
     1044CLANG_OPTIONS          =
     1045
     1046#---------------------------------------------------------------------------
     1047# Configuration options related to the alphabetical class index
     1048#---------------------------------------------------------------------------
     1049
     1050# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
     1051# compounds will be generated. Enable this if the project contains a lot of
     1052# classes, structs, unions or interfaces.
     1053# The default value is: YES.
    8491054
    8501055ALPHABETICAL_INDEX     = YES
    8511056
    852 # If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
    853 # the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
    854 # in which this list will be split (can be a number in the range [1..20])
     1057# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
     1058# which the alphabetical index list will be split.
     1059# Minimum value: 1, maximum value: 20, default value: 5.
     1060# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
    8551061
    8561062COLS_IN_ALPHA_INDEX    = 5
    8571063
    858 # In case all classes in a project start with a common prefix, all
    859 # classes will be put under the same header in the alphabetical index.
    860 # The IGNORE_PREFIX tag can be used to specify one or more prefixes that
    861 # should be ignored while generating the index headers.
    862 
    863 IGNORE_PREFIX          =
    864 
    865 #---------------------------------------------------------------------------
    866 # configuration options related to the HTML output
    867 #---------------------------------------------------------------------------
    868 
    869 # If the GENERATE_HTML tag is set to YES (the default) Doxygen will
    870 # generate HTML output.
     1064# In case all classes in a project start with a common prefix, all classes will
     1065# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
     1066# can be used to specify a prefix (or a list of prefixes) that should be ignored
     1067# while generating the index headers.
     1068# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
     1069
     1070IGNORE_PREFIX          =
     1071
     1072#---------------------------------------------------------------------------
     1073# Configuration options related to the HTML output
     1074#---------------------------------------------------------------------------
     1075
     1076# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
     1077# The default value is: YES.
    8711078
    8721079GENERATE_HTML          = YES
    8731080
    874 # The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
    875 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    876 # put in front of it. If left blank `html' will be used as the default path.
     1081# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
     1082# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
     1083# it.
     1084# The default directory is: html.
     1085# This tag requires that the tag GENERATE_HTML is set to YES.
    8771086
    8781087HTML_OUTPUT            = html
    8791088
    880 # The HTML_FILE_EXTENSION tag can be used to specify the file extension for
    881 # each generated HTML page (for example: .htm,.php,.asp). If it is left blank
    882 # doxygen will generate files with .html extension.
     1089# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
     1090# generated HTML page (for example: .htm, .php, .asp).
     1091# The default value is: .html.
     1092# This tag requires that the tag GENERATE_HTML is set to YES.
    8831093
    8841094HTML_FILE_EXTENSION    = .html
    8851095
    886 # The HTML_HEADER tag can be used to specify a personal HTML header for
    887 # each generated HTML page. If it is left blank doxygen will generate a
    888 # standard header. Note that when using a custom header you are responsible 
    889 # for the proper inclusion of any scripts and style sheets that doxygen
    890 # needs, which is dependent on the configuration options used.
    891 # It is adviced to generate a default header using "doxygen -w html
    892 # header.html footer.html stylesheet.css YourConfigFile" and then modify
    893 # that header. Note that the header is subject to change so you typically
    894 # have to redo this when upgrading to a newer version of doxygen or when
    895 # changing the value of configuration settings such as GENERATE_TREEVIEW!
    896 
    897 HTML_HEADER            =
    898 
    899 # The HTML_FOOTER tag can be used to specify a personal HTML footer for
    900 # each generated HTML page. If it is left blank doxygen will generate a
    901 # standard footer.
    902 
    903 HTML_FOOTER            =
    904 
    905 # The HTML_STYLESHEET tag can be used to specify a user-defined cascading
    906 # style sheet that is used by each HTML page. It can be used to
    907 # fine-tune the look of the HTML output. If the tag is left blank doxygen
    908 # will generate a default style sheet. Note that doxygen will try to copy
    909 # the style sheet file to the HTML output directory, so don't put your own
    910 # stylesheet in the HTML output directory as well, or it will be erased!
    911 
    912 HTML_STYLESHEET        =
    913 
    914 # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
    915 # other source files which should be copied to the HTML output directory. Note
    916 # that these files will be copied to the base HTML output directory. Use the
    917 # $relpath$ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
    918 # files. In the HTML_STYLESHEET file, use the file name only. Also note that
    919 # the files will be copied as-is; there are no commands or markers available.
    920 
    921 HTML_EXTRA_FILES       =
    922 
    923 # The HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
    924 # Doxygen will adjust the colors in the stylesheet and background images
    925 # according to this color. Hue is specified as an angle on a colorwheel,
    926 # see http://en.wikipedia.org/wiki/Hue for more information.
    927 # For instance the value 0 represents red, 60 is yellow, 120 is green,
    928 # 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
    929 # The allowed range is 0 to 359.
     1096# The HTML_HEADER tag can be used to specify a user-defined HTML header file for
     1097# each generated HTML page. If the tag is left blank doxygen will generate a
     1098# standard header.
     1099#
     1100# To get valid HTML the header file that includes any scripts and style sheets
     1101# that doxygen needs, which is dependent on the configuration options used (e.g.
     1102# the setting GENERATE_TREEVIEW). It is highly recommended to start with a
     1103# default header using
     1104# doxygen -w html new_header.html new_footer.html new_stylesheet.css
     1105# YourConfigFile
     1106# and then modify the file new_header.html. See also section "Doxygen usage"
     1107# for information on how to generate the default header that doxygen normally
     1108# uses.
     1109# Note: The header is subject to change so you typically have to regenerate the
     1110# default header when upgrading to a newer version of doxygen. For a description
     1111# of the possible markers and block names see the documentation.
     1112# This tag requires that the tag GENERATE_HTML is set to YES.
     1113
     1114HTML_HEADER            =
     1115
     1116# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
     1117# generated HTML page. If the tag is left blank doxygen will generate a standard
     1118# footer. See HTML_HEADER for more information on how to generate a default
     1119# footer and what special commands can be used inside the footer. See also
     1120# section "Doxygen usage" for information on how to generate the default footer
     1121# that doxygen normally uses.
     1122# This tag requires that the tag GENERATE_HTML is set to YES.
     1123
     1124HTML_FOOTER            =
     1125
     1126# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
     1127# sheet that is used by each HTML page. It can be used to fine-tune the look of
     1128# the HTML output. If left blank doxygen will generate a default style sheet.
     1129# See also section "Doxygen usage" for information on how to generate the style
     1130# sheet that doxygen normally uses.
     1131# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
     1132# it is more robust and this tag (HTML_STYLESHEET) will in the future become
     1133# obsolete.
     1134# This tag requires that the tag GENERATE_HTML is set to YES.
     1135
     1136HTML_STYLESHEET        =
     1137
     1138# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
     1139# cascading style sheets that are included after the standard style sheets
     1140# created by doxygen. Using this option one can overrule certain style aspects.
     1141# This is preferred over using HTML_STYLESHEET since it does not replace the
     1142# standard style sheet and is therefore more robust against future updates.
     1143# Doxygen will copy the style sheet files to the output directory.
     1144# Note: The order of the extra style sheet files is of importance (e.g. the last
     1145# style sheet in the list overrules the setting of the previous ones in the
     1146# list). For an example see the documentation.
     1147# This tag requires that the tag GENERATE_HTML is set to YES.
     1148
     1149HTML_EXTRA_STYLESHEET  =
     1150
     1151# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
     1152# other source files which should be copied to the HTML output directory. Note
     1153# that these files will be copied to the base HTML output directory. Use the
     1154# $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
     1155# files. In the HTML_STYLESHEET file, use the file name only. Also note that the
     1156# files will be copied as-is; there are no commands or markers available.
     1157# This tag requires that the tag GENERATE_HTML is set to YES.
     1158
     1159HTML_EXTRA_FILES       =
     1160
     1161# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
     1162# will adjust the colors in the style sheet and background images according to
     1163# this color. Hue is specified as an angle on a colorwheel, see
     1164# http://en.wikipedia.org/wiki/Hue for more information. For instance the value
     1165# 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
     1166# purple, and 360 is red again.
     1167# Minimum value: 0, maximum value: 359, default value: 220.
     1168# This tag requires that the tag GENERATE_HTML is set to YES.
    9301169
    9311170HTML_COLORSTYLE_HUE    = 220
    9321171
    933 # The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
    934 # the colors in the HTML output. For a value of 0 the output will use
    935 # grayscales only. A value of 255 will produce the most vivid colors.
     1172# The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
     1173# in the HTML output. For a value of 0 the output will use grayscales only. A
     1174# value of 255 will produce the most vivid colors.
     1175# Minimum value: 0, maximum value: 255, default value: 100.
     1176# This tag requires that the tag GENERATE_HTML is set to YES.
    9361177
    9371178HTML_COLORSTYLE_SAT    = 100
    9381179
    939 # The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
    940 # the luminance component of the colors in the HTML output. Values below
    941 # 100 gradually make the output lighter, whereas values above 100 make
    942 # the output darker. The value divided by 100 is the actual gamma applied,
    943 # so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
    944 # and 100 does not change the gamma.
     1180# The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
     1181# luminance component of the colors in the HTML output. Values below 100
     1182# gradually make the output lighter, whereas values above 100 make the output
     1183# darker. The value divided by 100 is the actual gamma applied, so 80 represents
     1184# a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
     1185# change the gamma.
     1186# Minimum value: 40, maximum value: 240, default value: 80.
     1187# This tag requires that the tag GENERATE_HTML is set to YES.
    9451188
    9461189HTML_COLORSTYLE_GAMMA  = 80
    9471190
    948 # If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
    949 # page will contain the date and time when the page was generated. Setting
    950 # this to NO can help when comparing the output of multiple runs.
     1191# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
     1192# page will contain the date and time when the page was generated. Setting this
     1193# to NO can help when comparing the output of multiple runs.
     1194# The default value is: YES.
     1195# This tag requires that the tag GENERATE_HTML is set to YES.
    9511196
    9521197HTML_TIMESTAMP         = YES
    9531198
    954 # If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
    955 # files or namespaces will be aligned in HTML using tables. If set to
    956 # NO a bullet list will be used.
    957 
    958 HTML_ALIGN_MEMBERS     = YES
    959 
    960 # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
    961 # documentation will contain sections that can be hidden and shown after the
    962 # page has loaded. For this to work a browser that supports
    963 # JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
    964 # Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
     1199# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
     1200# documentation will contain sections that can be hidden and shown after the
     1201# page has loaded.
     1202# The default value is: NO.
     1203# This tag requires that the tag GENERATE_HTML is set to YES.
    9651204
    9661205HTML_DYNAMIC_SECTIONS  = NO
    9671206
    968 # If the GENERATE_DOCSET tag is set to YES, additional index files
    969 # will be generated that can be used as input for Apple's Xcode 3
    970 # integrated development environment, introduced with OSX 10.5 (Leopard).
    971 # To create a documentation set, doxygen will generate a Makefile in the
    972 # HTML output directory. Running make will produce the docset in that
    973 # directory and running "make install" will install the docset in
    974 # ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
    975 # it at startup.
    976 # See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
     1207# With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
     1208# shown in the various tree structured indices initially; the user can expand
     1209# and collapse entries dynamically later on. Doxygen will expand the tree to
     1210# such a level that at most the specified number of entries are visible (unless
     1211# a fully collapsed tree already exceeds this amount). So setting the number of
     1212# entries 1 will produce a full collapsed tree by default. 0 is a special value
     1213# representing an infinite number of entries and will result in a full expanded
     1214# tree by default.
     1215# Minimum value: 0, maximum value: 9999, default value: 100.
     1216# This tag requires that the tag GENERATE_HTML is set to YES.
     1217
     1218HTML_INDEX_NUM_ENTRIES = 100
     1219
     1220# If the GENERATE_DOCSET tag is set to YES, additional index files will be
     1221# generated that can be used as input for Apple's Xcode 3 integrated development
     1222# environment (see: http://developer.apple.com/tools/xcode/), introduced with
     1223# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
     1224# Makefile in the HTML output directory. Running make will produce the docset in
     1225# that directory and running make install will install the docset in
     1226# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
     1227# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
    9771228# for more information.
     1229# The default value is: NO.
     1230# This tag requires that the tag GENERATE_HTML is set to YES.
    9781231
    9791232GENERATE_DOCSET        = NO
    9801233
    981 # When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
    982 # feed. A documentation feed provides an umbrella under which multiple
    983 # documentation sets from a single provider (such as a company or product suite)
    984 # can be grouped.
     1234# This tag determines the name of the docset feed. A documentation feed provides
     1235# an umbrella under which multiple documentation sets from a single provider
     1236# (such as a company or product suite) can be grouped.
     1237# The default value is: Doxygen generated docs.
     1238# This tag requires that the tag GENERATE_DOCSET is set to YES.
    9851239
    9861240DOCSET_FEEDNAME        = "Doxygen generated docs"
    9871241
    988 # When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
    989 # should uniquely identify the documentation set bundle. This should be a
    990 # reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
    991 # will append .docset to the name.
     1242# This tag specifies a string that should uniquely identify the documentation
     1243# set bundle. This should be a reverse domain-name style string, e.g.
     1244# com.mycompany.MyDocSet. Doxygen will append .docset to the name.
     1245# The default value is: org.doxygen.Project.
     1246# This tag requires that the tag GENERATE_DOCSET is set to YES.
    9921247
    9931248DOCSET_BUNDLE_ID       = org.doxygen.Project
    9941249
    995 # When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify
    996 # the documentation publisher. This should be a reverse domain-name style 
     1250# The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
     1251# the documentation publisher. This should be a reverse domain-name style
    9971252# string, e.g. com.mycompany.MyDocSet.documentation.
     1253# The default value is: org.doxygen.Publisher.
     1254# This tag requires that the tag GENERATE_DOCSET is set to YES.
    9981255
    9991256DOCSET_PUBLISHER_ID    = org.doxygen.Publisher
    10001257
    1001 # The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
     1258# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
     1259# The default value is: Publisher.
     1260# This tag requires that the tag GENERATE_DOCSET is set to YES.
    10021261
    10031262DOCSET_PUBLISHER_NAME  = Publisher
    10041263
    1005 # If the GENERATE_HTMLHELP tag is set to YES, additional index files
    1006 # will be generated that can be used as input for tools like the
    1007 # Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
    1008 # of the generated HTML documentation.
     1264# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
     1265# additional HTML index files: index.hhp, index.hhc, and index.hhk. The
     1266# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
     1267# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
     1268# Windows.
     1269#
     1270# The HTML Help Workshop contains a compiler that can convert all HTML output
     1271# generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
     1272# files are now used as the Windows 98 help format, and will replace the old
     1273# Windows help format (.hlp) on all Windows platforms in the future. Compressed
     1274# HTML files also contain an index, a table of contents, and you can search for
     1275# words in the documentation. The HTML workshop also contains a viewer for
     1276# compressed HTML files.
     1277# The default value is: NO.
     1278# This tag requires that the tag GENERATE_HTML is set to YES.
    10091279
    10101280GENERATE_HTMLHELP      = NO
    10111281
    1012 # If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
    1013 # be used to specify the file name of the resulting .chm file. You
    1014 # can add a path in front of the file if the result should not be
     1282# The CHM_FILE tag can be used to specify the file name of the resulting .chm
     1283# file. You can add a path in front of the file if the result should not be
    10151284# written to the html output directory.
    1016 
    1017 CHM_FILE               =
    1018 
    1019 # If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
    1020 # be used to specify the location (absolute path including file name) of
    1021 # the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
    1022 # the HTML help compiler on the generated index.hhp.
    1023 
    1024 HHC_LOCATION           =
    1025 
    1026 # If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
    1027 # controls if a separate .chi index file is generated (YES) or that
    1028 # it should be included in the master .chm file (NO).
     1285# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
     1286
     1287CHM_FILE               =
     1288
     1289# The HHC_LOCATION tag can be used to specify the location (absolute path
     1290# including file name) of the HTML help compiler (hhc.exe). If non-empty,
     1291# doxygen will try to run the HTML help compiler on the generated index.hhp.
     1292# The file has to be specified with full path.
     1293# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
     1294
     1295HHC_LOCATION           =
     1296
     1297# The GENERATE_CHI flag controls if a separate .chi index file is generated
     1298# (YES) or that it should be included in the master .chm file (NO).
     1299# The default value is: NO.
     1300# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
    10291301
    10301302GENERATE_CHI           = NO
    10311303
    1032 # If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
    1033 # is used to encode HtmlHelp index (hhk), content (hhc) and project file
    1034 # content.
    1035 
    1036 CHM_INDEX_ENCODING     =
    1037 
    1038 # If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
    1039 # controls whether a binary table of contents is generated (YES) or a
    1040 # normal table of contents (NO) in the .chm file.
     1304# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
     1305# and project file content.
     1306# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
     1307
     1308CHM_INDEX_ENCODING     =
     1309
     1310# The BINARY_TOC flag controls whether a binary table of contents is generated
     1311# (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
     1312# enables the Previous and Next buttons.
     1313# The default value is: NO.
     1314# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
    10411315
    10421316BINARY_TOC             = NO
    10431317
    1044 # The TOC_EXPAND flag can be set to YES to add extra items for group members
    1045 # to the contents of the HTML help documentation and to the tree view.
     1318# The TOC_EXPAND flag can be set to YES to add extra items for group members to
     1319# the table of contents of the HTML help documentation and to the tree view.
     1320# The default value is: NO.
     1321# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
    10461322
    10471323TOC_EXPAND             = NO
    10481324
    1049 # If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
    1050 # QHP_VIRTUAL_FOLDER are set, an additional index file will be generated
    1051 # that can be used as input for Qt's qhelpgenerator to generate a
    1052 # Qt Compressed Help (.qch) of the generated HTML documentation.
     1325# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
     1326# QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
     1327# can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
     1328# (.qch) of the generated HTML documentation.
     1329# The default value is: NO.
     1330# This tag requires that the tag GENERATE_HTML is set to YES.
    10531331
    10541332GENERATE_QHP           = NO
    10551333
    1056 # If the QHG_LOCATION tag is specified, the QCH_FILE tag can
    1057 # be used to specify the file name of the resulting .qch file.
    1058 # The path specified is relative to the HTML output folder.
    1059 
    1060 QCH_FILE               =
    1061 
    1062 # The QHP_NAMESPACE tag specifies the namespace to use when generating
    1063 # Qt Help Project output. For more information please see
    1064 # http://doc.trolltech.com/qthelpproject.html#namespace
     1334# If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
     1335# the file name of the resulting .qch file. The path specified is relative to
     1336# the HTML output folder.
     1337# This tag requires that the tag GENERATE_QHP is set to YES.
     1338
     1339QCH_FILE               =
     1340
     1341# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
     1342# Project output. For more information please see Qt Help Project / Namespace
     1343# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).
     1344# The default value is: org.doxygen.Project.
     1345# This tag requires that the tag GENERATE_QHP is set to YES.
    10651346
    10661347QHP_NAMESPACE          = org.doxygen.Project
    10671348
    1068 # The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
    1069 # Qt Help Project output. For more information please see
    1070 # http://doc.trolltech.com/qthelpproject.html#virtual-folders
     1349# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
     1350# Help Project output. For more information please see Qt Help Project / Virtual
     1351# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-
     1352# folders).
     1353# The default value is: doc.
     1354# This tag requires that the tag GENERATE_QHP is set to YES.
    10711355
    10721356QHP_VIRTUAL_FOLDER     = doc
    10731357
    1074 # If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to
    1075 # add. For more information please see
    1076 # http://doc.trolltech.com/qthelpproject.html#custom-filters
    1077 
    1078 QHP_CUST_FILTER_NAME   =
    1079 
    1080 # The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the
    1081 # custom filter to add. For more information please see
    1082 # <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">
    1083 # Qt Help Project / Custom Filters</a>.
    1084 
    1085 QHP_CUST_FILTER_ATTRS  =
    1086 
    1087 # The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
    1088 # project's
    1089 # filter section matches.
    1090 # <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">
    1091 # Qt Help Project / Filter Attributes</a>.
    1092 
    1093 QHP_SECT_FILTER_ATTRS  =
    1094 
    1095 # If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
    1096 # be used to specify the location of Qt's qhelpgenerator.
    1097 # If non-empty doxygen will try to run qhelpgenerator on the generated
    1098 # .qhp file.
    1099 
    1100 QHG_LOCATION           =
    1101 
    1102 # If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files 
    1103 # will be generated, which together with the HTML files, form an Eclipse help
    1104 # plugin. To install this plugin and make it available under the help contents
    1105 # menu in Eclipse, the contents of the directory containing the HTML and XML
    1106 # files needs to be copied into the plugins directory of eclipse. The name of
    1107 # the directory within the plugins directory should be the same as
    1108 # the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before
    1109 # the help appears.
     1358# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
     1359# filter to add. For more information please see Qt Help Project / Custom
     1360# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
     1361# filters).
     1362# This tag requires that the tag GENERATE_QHP is set to YES.
     1363
     1364QHP_CUST_FILTER_NAME   =
     1365
     1366# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
     1367# custom filter to add. For more information please see Qt Help Project / Custom
     1368# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
     1369# filters).
     1370# This tag requires that the tag GENERATE_QHP is set to YES.
     1371
     1372QHP_CUST_FILTER_ATTRS  =
     1373
     1374# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
     1375# project's filter section matches. Qt Help Project / Filter Attributes (see:
     1376# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
     1377# This tag requires that the tag GENERATE_QHP is set to YES.
     1378
     1379QHP_SECT_FILTER_ATTRS  =
     1380
     1381# The QHG_LOCATION tag can be used to specify the location of Qt's
     1382# qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
     1383# generated .qhp file.
     1384# This tag requires that the tag GENERATE_QHP is set to YES.
     1385
     1386QHG_LOCATION           =
     1387
     1388# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
     1389# generated, together with the HTML files, they form an Eclipse help plugin. To
     1390# install this plugin and make it available under the help contents menu in
     1391# Eclipse, the contents of the directory containing the HTML and XML files needs
     1392# to be copied into the plugins directory of eclipse. The name of the directory
     1393# within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
     1394# After copying Eclipse needs to be restarted before the help appears.
     1395# The default value is: NO.
     1396# This tag requires that the tag GENERATE_HTML is set to YES.
    11101397
    11111398GENERATE_ECLIPSEHELP   = NO
    11121399
    1113 # A unique identifier for the eclipse help plugin. When installing the plugin
    1114 # the directory name containing the HTML and XML files should also have
    1115 # this name.
     1400# A unique identifier for the Eclipse help plugin. When installing the plugin
     1401# the directory name containing the HTML and XML files should also have this
     1402# name. Each documentation set should have its own identifier.
     1403# The default value is: org.doxygen.Project.
     1404# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
    11161405
    11171406ECLIPSE_DOC_ID         = org.doxygen.Project
    11181407
    1119 # The DISABLE_INDEX tag can be used to turn on/off the condensed index at
    1120 # top of each HTML page. The value NO (the default) enables the index and
    1121 # the value YES disables it.
     1408# If you want full control over the layout of the generated HTML pages it might
     1409# be necessary to disable the index and replace it with your own. The
     1410# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
     1411# of each HTML page. A value of NO enables the index and the value YES disables
     1412# it. Since the tabs in the index contain the same information as the navigation
     1413# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
     1414# The default value is: NO.
     1415# This tag requires that the tag GENERATE_HTML is set to YES.
    11221416
    11231417DISABLE_INDEX          = NO
    11241418
    1125 # The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values
    1126 # (range [0,1..20]) that doxygen will group on one line in the generated HTML
    1127 # documentation. Note that a value of 0 will completely suppress the enum
    1128 # values from appearing in the overview section.
     1419# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
     1420# structure should be generated to display hierarchical information. If the tag
     1421# value is set to YES, a side panel will be generated containing a tree-like
     1422# index structure (just like the one that is generated for HTML Help). For this
     1423# to work a browser that supports JavaScript, DHTML, CSS and frames is required
     1424# (i.e. any modern browser). Windows users are probably better off using the
     1425# HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
     1426# further fine-tune the look of the index. As an example, the default style
     1427# sheet generated by doxygen has an example that shows how to put an image at
     1428# the root of the tree instead of the PROJECT_NAME. Since the tree basically has
     1429# the same information as the tab index, you could consider setting
     1430# DISABLE_INDEX to YES when enabling this option.
     1431# The default value is: NO.
     1432# This tag requires that the tag GENERATE_HTML is set to YES.
     1433
     1434GENERATE_TREEVIEW      = NO
     1435
     1436# The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
     1437# doxygen will group on one line in the generated HTML documentation.
     1438#
     1439# Note that a value of 0 will completely suppress the enum values from appearing
     1440# in the overview section.
     1441# Minimum value: 0, maximum value: 20, default value: 4.
     1442# This tag requires that the tag GENERATE_HTML is set to YES.
    11291443
    11301444ENUM_VALUES_PER_LINE   = 4
    11311445
    1132 # The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
    1133 # structure should be generated to display hierarchical information.
    1134 # If the tag value is set to YES, a side panel will be generated
    1135 # containing a tree-like index structure (just like the one that
    1136 # is generated for HTML Help). For this to work a browser that supports
    1137 # JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
    1138 # Windows users are probably better off using the HTML help feature.
    1139 
    1140 GENERATE_TREEVIEW      = NO
    1141 
    1142 # By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
    1143 # and Class Hierarchy pages using a tree view instead of an ordered list.
    1144 
    1145 USE_INLINE_TREES       = NO
    1146 
    1147 # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
    1148 # used to set the initial width (in pixels) of the frame in which the tree
    1149 # is shown.
     1446# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
     1447# to set the initial width (in pixels) of the frame in which the tree is shown.
     1448# Minimum value: 0, maximum value: 1500, default value: 250.
     1449# This tag requires that the tag GENERATE_HTML is set to YES.
    11501450
    11511451TREEVIEW_WIDTH         = 250
    11521452
    1153 # When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open
    1154 # links to external symbols imported via tag files in a separate window.
     1453# If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
     1454# external symbols imported via tag files in a separate window.
     1455# The default value is: NO.
     1456# This tag requires that the tag GENERATE_HTML is set to YES.
    11551457
    11561458EXT_LINKS_IN_WINDOW    = NO
    11571459
    1158 # Use this tag to change the font size of Latex formulas included
    1159 # as images in the HTML documentation. The default is 10. Note that
    1160 # when you change the font size after a successful doxygen run you need
    1161 # to manually remove any form_*.png images from the HTML output directory
    1162 # to force them to be regenerated.
     1460# Use this tag to change the font size of LaTeX formulas included as images in
     1461# the HTML documentation. When you change the font size after a successful
     1462# doxygen run you need to manually remove any form_*.png images from the HTML
     1463# output directory to force them to be regenerated.
     1464# Minimum value: 8, maximum value: 50, default value: 10.
     1465# This tag requires that the tag GENERATE_HTML is set to YES.
    11631466
    11641467FORMULA_FONTSIZE       = 10
    11651468
    1166 # Use the FORMULA_TRANPARENT tag to determine whether or not the images
    1167 # generated for formulas are transparent PNGs. Transparent PNGs are
    1168 # not supported properly for IE 6.0, but are supported on all modern browsers.
    1169 # Note that when changing this option you need to delete any form_*.png files
    1170 # in the HTML output before the changes have effect.
     1469# Use the FORMULA_TRANPARENT tag to determine whether or not the images
     1470# generated for formulas are transparent PNGs. Transparent PNGs are not
     1471# supported properly for IE 6.0, but are supported on all modern browsers.
     1472#
     1473# Note that when changing this option you need to delete any form_*.png files in
     1474# the HTML output directory before the changes have effect.
     1475# The default value is: YES.
     1476# This tag requires that the tag GENERATE_HTML is set to YES.
    11711477
    11721478FORMULA_TRANSPARENT    = YES
    11731479
    1174 # Enable the USE_MATHJAX option to render LaTeX formulas using MathJax
    1175 # (see http://www.mathjax.org) which uses client side Javascript for the
    1176 # rendering instead of using prerendered bitmaps. Use this if you do not
    1177 # have LaTeX installed or if you want to formulas look prettier in the HTML
    1178 # output. When enabled you also need to install MathJax separately and
    1179 # configure the path to it using the MATHJAX_RELPATH option.
     1480# Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
     1481# http://www.mathjax.org) which uses client side Javascript for the rendering
     1482# instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
     1483# installed or if you want to formulas look prettier in the HTML output. When
     1484# enabled you may also need to install MathJax separately and configure the path
     1485# to it using the MATHJAX_RELPATH option.
     1486# The default value is: NO.
     1487# This tag requires that the tag GENERATE_HTML is set to YES.
    11801488
    11811489USE_MATHJAX            = NO
    11821490
    1183 # When MathJax is enabled you need to specify the location relative to the
    1184 # HTML output directory using the MATHJAX_RELPATH option. The destination
    1185 # directory should contain the MathJax.js script. For instance, if the mathjax
    1186 # directory is located at the same level as the HTML output directory, then
    1187 # MATHJAX_RELPATH should be ../mathjax. The default value points to the
    1188 # mathjax.org site, so you can quickly see the result without installing
    1189 # MathJax, but it is strongly recommended to install a local copy of MathJax
    1190 # before deployment.
     1491# When MathJax is enabled you can set the default output format to be used for
     1492# the MathJax output. See the MathJax site (see:
     1493# http://docs.mathjax.org/en/latest/output.html) for more details.
     1494# Possible values are: HTML-CSS (which is slower, but has the best
     1495# compatibility), NativeMML (i.e. MathML) and SVG.
     1496# The default value is: HTML-CSS.
     1497# This tag requires that the tag USE_MATHJAX is set to YES.
     1498
     1499MATHJAX_FORMAT         = HTML-CSS
     1500
     1501# When MathJax is enabled you need to specify the location relative to the HTML
     1502# output directory using the MATHJAX_RELPATH option. The destination directory
     1503# should contain the MathJax.js script. For instance, if the mathjax directory
     1504# is located at the same level as the HTML output directory, then
     1505# MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
     1506# Content Delivery Network so you can quickly see the result without installing
     1507# MathJax. However, it is strongly recommended to install a local copy of
     1508# MathJax from http://www.mathjax.org before deployment.
     1509# The default value is: http://cdn.mathjax.org/mathjax/latest.
     1510# This tag requires that the tag USE_MATHJAX is set to YES.
    11911511
    11921512MATHJAX_RELPATH        = http://www.mathjax.org/mathjax
    11931513
    1194 # The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension
    1195 # names that should be enabled during MathJax rendering.
    1196 
    1197 MATHJAX_EXTENSIONS     =
    1198 
    1199 # When the SEARCHENGINE tag is enabled doxygen will generate a search box
    1200 # for the HTML output. The underlying search engine uses javascript
    1201 # and DHTML and should work on any modern browser. Note that when using
    1202 # HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets
    1203 # (GENERATE_DOCSET) there is already a search function so this one should
    1204 # typically be disabled. For large projects the javascript based search engine
    1205 # can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
     1514# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
     1515# extension names that should be enabled during MathJax rendering. For example
     1516# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
     1517# This tag requires that the tag USE_MATHJAX is set to YES.
     1518
     1519MATHJAX_EXTENSIONS     =
     1520
     1521# The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
     1522# of code that will be used on startup of the MathJax code. See the MathJax site
     1523# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
     1524# example see the documentation.
     1525# This tag requires that the tag USE_MATHJAX is set to YES.
     1526
     1527MATHJAX_CODEFILE       =
     1528
     1529# When the SEARCHENGINE tag is enabled doxygen will generate a search box for
     1530# the HTML output. The underlying search engine uses javascript and DHTML and
     1531# should work on any modern browser. Note that when using HTML help
     1532# (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
     1533# there is already a search function so this one should typically be disabled.
     1534# For large projects the javascript based search engine can be slow, then
     1535# enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
     1536# search using the keyboard; to jump to the search box use <access key> + S
     1537# (what the <access key> is depends on the OS and browser, but it is typically
     1538# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
     1539# key> to jump into the search results window, the results can be navigated
     1540# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
     1541# the search. The filter options can be selected when the cursor is inside the
     1542# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
     1543# to select a filter and <Enter> or <escape> to activate or cancel the filter
     1544# option.
     1545# The default value is: YES.
     1546# This tag requires that the tag GENERATE_HTML is set to YES.
    12061547
    12071548SEARCHENGINE           = YES
    12081549
    1209 # When the SERVER_BASED_SEARCH tag is enabled the search engine will be
    1210 # implemented using a PHP enabled web server instead of at the web client
    1211 # using Javascript. Doxygen will generate the search PHP script and index
    1212 # file to put on the web server. The advantage of the server
    1213 # based approach is that it scales better to large projects and allows
    1214 # full text search. The disadvantages are that it is more difficult to setup
    1215 # and does not have live searching capabilities.
     1550# When the SERVER_BASED_SEARCH tag is enabled the search engine will be
     1551# implemented using a web server instead of a web client using Javascript. There
     1552# are two flavors of web server based searching depending on the EXTERNAL_SEARCH
     1553# setting. When disabled, doxygen will generate a PHP script for searching and
     1554# an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
     1555# and searching needs to be provided by external tools. See the section
     1556# "External Indexing and Searching" for details.
     1557# The default value is: NO.
     1558# This tag requires that the tag SEARCHENGINE is set to YES.
    12161559
    12171560SERVER_BASED_SEARCH    = NO
    12181561
    1219 #---------------------------------------------------------------------------
    1220 # configuration options related to the LaTeX output
    1221 #---------------------------------------------------------------------------
    1222 
    1223 # If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
    1224 # generate Latex output.
     1562# When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
     1563# script for searching. Instead the search results are written to an XML file
     1564# which needs to be processed by an external indexer. Doxygen will invoke an
     1565# external search engine pointed to by the SEARCHENGINE_URL option to obtain the
     1566# search results.
     1567#
     1568# Doxygen ships with an example indexer (doxyindexer) and search engine
     1569# (doxysearch.cgi) which are based on the open source search engine library
     1570# Xapian (see: http://xapian.org/).
     1571#
     1572# See the section "External Indexing and Searching" for details.
     1573# The default value is: NO.
     1574# This tag requires that the tag SEARCHENGINE is set to YES.
     1575
     1576EXTERNAL_SEARCH        = NO
     1577
     1578# The SEARCHENGINE_URL should point to a search engine hosted by a web server
     1579# which will return the search results when EXTERNAL_SEARCH is enabled.
     1580#
     1581# Doxygen ships with an example indexer (doxyindexer) and search engine
     1582# (doxysearch.cgi) which are based on the open source search engine library
     1583# Xapian (see: http://xapian.org/). See the section "External Indexing and
     1584# Searching" for details.
     1585# This tag requires that the tag SEARCHENGINE is set to YES.
     1586
     1587SEARCHENGINE_URL       =
     1588
     1589# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
     1590# search data is written to a file for indexing by an external tool. With the
     1591# SEARCHDATA_FILE tag the name of this file can be specified.
     1592# The default file is: searchdata.xml.
     1593# This tag requires that the tag SEARCHENGINE is set to YES.
     1594
     1595SEARCHDATA_FILE        = searchdata.xml
     1596
     1597# When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
     1598# EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
     1599# useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
     1600# projects and redirect the results back to the right project.
     1601# This tag requires that the tag SEARCHENGINE is set to YES.
     1602
     1603EXTERNAL_SEARCH_ID     =
     1604
     1605# The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
     1606# projects other than the one defined by this configuration file, but that are
     1607# all added to the same external search index. Each project needs to have a
     1608# unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
     1609# to a relative location where the documentation can be found. The format is:
     1610# EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
     1611# This tag requires that the tag SEARCHENGINE is set to YES.
     1612
     1613EXTRA_SEARCH_MAPPINGS  =
     1614
     1615#---------------------------------------------------------------------------
     1616# Configuration options related to the LaTeX output
     1617#---------------------------------------------------------------------------
     1618
     1619# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
     1620# The default value is: YES.
    12251621
    12261622GENERATE_LATEX         = NO
    12271623
    1228 # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
    1229 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    1230 # put in front of it. If left blank `latex' will be used as the default path.
     1624# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
     1625# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
     1626# it.
     1627# The default directory is: latex.
     1628# This tag requires that the tag GENERATE_LATEX is set to YES.
    12311629
    12321630LATEX_OUTPUT           = latex
    12331631
    1234 # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
    1235 # invoked. If left blank `latex' will be used as the default command name.
    1236 # Note that when enabling USE_PDFLATEX this option is only used for
    1237 # generating bitmaps for formulas in the HTML output, but not in the
    1238 # Makefile that is written to the output directory.
     1632# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
     1633# invoked.
     1634#
     1635# Note that when enabling USE_PDFLATEX this option is only used for generating
     1636# bitmaps for formulas in the HTML output, but not in the Makefile that is
     1637# written to the output directory.
     1638# The default file is: latex.
     1639# This tag requires that the tag GENERATE_LATEX is set to YES.
    12391640
    12401641LATEX_CMD_NAME         = latex
    12411642
    1242 # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
    1243 # generate index for LaTeX. If left blank `makeindex' will be used as the
    1244 # default command name.
     1643# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
     1644# index for LaTeX.
     1645# The default file is: makeindex.
     1646# This tag requires that the tag GENERATE_LATEX is set to YES.
    12451647
    12461648MAKEINDEX_CMD_NAME     = makeindex
    12471649
    1248 # If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
    1249 # LaTeX documents. This may be useful for small projects and may help to
    1250 # save some trees in general.
     1650# If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
     1651# documents. This may be useful for small projects and may help to save some
     1652# trees in general.
     1653# The default value is: NO.
     1654# This tag requires that the tag GENERATE_LATEX is set to YES.
    12511655
    12521656COMPACT_LATEX          = NO
    12531657
    1254 # The PAPER_TYPE tag can be used to set the paper type that is used
    1255 # by the printer. Possible values are: a4, letter, legal and
    1256 # executive. If left blank a4wide will be used.
     1658# The PAPER_TYPE tag can be used to set the paper type that is used by the
     1659# printer.
     1660# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
     1661# 14 inches) and executive (7.25 x 10.5 inches).
     1662# The default value is: a4.
     1663# This tag requires that the tag GENERATE_LATEX is set to YES.
    12571664
    12581665PAPER_TYPE             = a4
    12591666
    1260 # The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
    1261 # packages that should be included in the LaTeX output.
    1262 
    1263 EXTRA_PACKAGES         =
    1264 
    1265 # The LATEX_HEADER tag can be used to specify a personal LaTeX header for
    1266 # the generated latex document. The header should contain everything until
    1267 # the first chapter. If it is left blank doxygen will generate a
    1268 # standard header. Notice: only use this tag if you know what you are doing!
    1269 
    1270 LATEX_HEADER           =
    1271 
    1272 # The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for
    1273 # the generated latex document. The footer should contain everything after
    1274 # the last chapter. If it is left blank doxygen will generate a
    1275 # standard footer. Notice: only use this tag if you know what you are doing!
    1276 
    1277 LATEX_FOOTER           =
    1278 
    1279 # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
    1280 # is prepared for conversion to pdf (using ps2pdf). The pdf file will
    1281 # contain links (just like the HTML output) instead of page references
    1282 # This makes the output suitable for online browsing using a pdf viewer.
     1667# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
     1668# that should be included in the LaTeX output. To get the times font for
     1669# instance you can specify
     1670# EXTRA_PACKAGES=times
     1671# If left blank no extra packages will be included.
     1672# This tag requires that the tag GENERATE_LATEX is set to YES.
     1673
     1674EXTRA_PACKAGES         =
     1675
     1676# The LATEX_HEADER tag can be used to specify a personal LaTeX header for the
     1677# generated LaTeX document. The header should contain everything until the first
     1678# chapter. If it is left blank doxygen will generate a standard header. See
     1679# section "Doxygen usage" for information on how to let doxygen write the
     1680# default header to a separate file.
     1681#
     1682# Note: Only use a user-defined header if you know what you are doing! The
     1683# following commands have a special meaning inside the header: $title,
     1684# $datetime, $date, $doxygenversion, $projectname, $projectnumber,
     1685# $projectbrief, $projectlogo. Doxygen will replace $title with the empty
     1686# string, for the replacement values of the other commands the user is referred
     1687# to HTML_HEADER.
     1688# This tag requires that the tag GENERATE_LATEX is set to YES.
     1689
     1690LATEX_HEADER           =
     1691
     1692# The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
     1693# generated LaTeX document. The footer should contain everything after the last
     1694# chapter. If it is left blank doxygen will generate a standard footer. See
     1695# LATEX_HEADER for more information on how to generate a default footer and what
     1696# special commands can be used inside the footer.
     1697#
     1698# Note: Only use a user-defined footer if you know what you are doing!
     1699# This tag requires that the tag GENERATE_LATEX is set to YES.
     1700
     1701LATEX_FOOTER           =
     1702
     1703# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined
     1704# LaTeX style sheets that are included after the standard style sheets created
     1705# by doxygen. Using this option one can overrule certain style aspects. Doxygen
     1706# will copy the style sheet files to the output directory.
     1707# Note: The order of the extra style sheet files is of importance (e.g. the last
     1708# style sheet in the list overrules the setting of the previous ones in the
     1709# list).
     1710# This tag requires that the tag GENERATE_LATEX is set to YES.
     1711
     1712LATEX_EXTRA_STYLESHEET =
     1713
     1714# The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
     1715# other source files which should be copied to the LATEX_OUTPUT output
     1716# directory. Note that the files will be copied as-is; there are no commands or
     1717# markers available.
     1718# This tag requires that the tag GENERATE_LATEX is set to YES.
     1719
     1720LATEX_EXTRA_FILES      =
     1721
     1722# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
     1723# prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
     1724# contain links (just like the HTML output) instead of page references. This
     1725# makes the output suitable for online browsing using a PDF viewer.
     1726# The default value is: YES.
     1727# This tag requires that the tag GENERATE_LATEX is set to YES.
    12831728
    12841729PDF_HYPERLINKS         = YES
    12851730
    1286 # If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
    1287 # plain latex in the generated Makefile. Set this option to YES to get a
     1731# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
     1732# the PDF file directly from the LaTeX files. Set this option to YES, to get a
    12881733# higher quality PDF documentation.
     1734# The default value is: YES.
     1735# This tag requires that the tag GENERATE_LATEX is set to YES.
    12891736
    12901737USE_PDFLATEX           = YES
    12911738
    1292 # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
    1293 # command to the generated LaTeX files. This will instruct LaTeX to keep
    1294 # running if errors occur, instead of asking the user for help.
    1295 # This option is also used when generating formulas in HTML.
     1739# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
     1740# command to the generated LaTeX files. This will instruct LaTeX to keep running
     1741# if errors occur, instead of asking the user for help. This option is also used
     1742# when generating formulas in HTML.
     1743# The default value is: NO.
     1744# This tag requires that the tag GENERATE_LATEX is set to YES.
    12961745
    12971746LATEX_BATCHMODE        = NO
    12981747
    1299 # If LATEX_HIDE_INDICES is set to YES then doxygen will not
    1300 # include the index chapters (such as File Index, Compound Index, etc.)
    1301 # in the output.
     1748# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
     1749# index chapters (such as File Index, Compound Index, etc.) in the output.
     1750# The default value is: NO.
     1751# This tag requires that the tag GENERATE_LATEX is set to YES.
    13021752
    13031753LATEX_HIDE_INDICES     = NO
    13041754
    1305 # If LATEX_SOURCE_CODE is set to YES then doxygen will include
    1306 # source code with syntax highlighting in the LaTeX output.
    1307 # Note that which sources are shown also depends on other settings
    1308 # such as SOURCE_BROWSER.
     1755# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
     1756# code with syntax highlighting in the LaTeX output.
     1757#
     1758# Note that which sources are shown also depends on other settings such as
     1759# SOURCE_BROWSER.
     1760# The default value is: NO.
     1761# This tag requires that the tag GENERATE_LATEX is set to YES.
    13091762
    13101763LATEX_SOURCE_CODE      = NO
    13111764
    1312 # The LATEX_BIB_STYLE tag can be used to specify the style to use for the
    1313 # bibliography, e.g. plainnat, or ieeetr. The default style is "plain". See
    1314 # http://en.wikipedia.org/wiki/BibTeX for more info.
     1765# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
     1766# bibliography, e.g. plainnat, or ieeetr. See
     1767# http://en.wikipedia.org/wiki/BibTeX and \cite for more info.
     1768# The default value is: plain.
     1769# This tag requires that the tag GENERATE_LATEX is set to YES.
    13151770
    13161771LATEX_BIB_STYLE        = plain
    13171772
    13181773#---------------------------------------------------------------------------
    1319 # configuration options related to the RTF output
    1320 #---------------------------------------------------------------------------
    1321 
    1322 # If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
    1323 # The RTF output is optimized for Word 97 and may not look very pretty with
    1324 # other RTF readers or editors.
     1774# Configuration options related to the RTF output
     1775#---------------------------------------------------------------------------
     1776
     1777# If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
     1778# RTF output is optimized for Word 97 and may not look too pretty with other RTF
     1779# readers/editors.
     1780# The default value is: NO.
    13251781
    13261782GENERATE_RTF           = NO
    13271783
    1328 # The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
    1329 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    1330 # put in front of it. If left blank `rtf' will be used as the default path.
     1784# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
     1785# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
     1786# it.
     1787# The default directory is: rtf.
     1788# This tag requires that the tag GENERATE_RTF is set to YES.
    13311789
    13321790RTF_OUTPUT             = rtf
    13331791
    1334 # If the COMPACT_RTF tag is set to YES Doxygen generates more compact
    1335 # RTF documents. This may be useful for small projects and may help to
    1336 # save some trees in general.
     1792# If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
     1793# documents. This may be useful for small projects and may help to save some
     1794# trees in general.
     1795# The default value is: NO.
     1796# This tag requires that the tag GENERATE_RTF is set to YES.
    13371797
    13381798COMPACT_RTF            = NO
    13391799
    1340 # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
    1341 # will contain hyperlink fields. The RTF file will
    1342 # contain links (just like the HTML output) instead of page references.
    1343 # This makes the output suitable for online browsing using WORD or other
    1344 # programs which support those fields.
    1345 # Note: wordpad (write) and others do not support links.
     1800# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
     1801# contain hyperlink fields. The RTF file will contain links (just like the HTML
     1802# output) instead of page references. This makes the output suitable for online
     1803# browsing using Word or some other Word compatible readers that support those
     1804# fields.
     1805#
     1806# Note: WordPad (write) and others do not support links.
     1807# The default value is: NO.
     1808# This tag requires that the tag GENERATE_RTF is set to YES.
    13461809
    13471810RTF_HYPERLINKS         = NO
    13481811
    1349 # Load stylesheet definitions from file. Syntax is similar to doxygen's
    1350 # config file, i.e. a series of assignments. You only have to provide
    1351 # replacements, missing definitions are set to their default value.
    1352 
    1353 RTF_STYLESHEET_FILE    =
    1354 
    1355 # Set optional variables used in the generation of an rtf document.
    1356 # Syntax is similar to doxygen's config file.
    1357 
    1358 RTF_EXTENSIONS_FILE    =
    1359 
    1360 #---------------------------------------------------------------------------
    1361 # configuration options related to the man page output
    1362 #---------------------------------------------------------------------------
    1363 
    1364 # If the GENERATE_MAN tag is set to YES (the default) Doxygen will
    1365 # generate man pages
     1812# Load stylesheet definitions from file. Syntax is similar to doxygen's config
     1813# file, i.e. a series of assignments. You only have to provide replacements,
     1814# missing definitions are set to their default value.
     1815#
     1816# See also section "Doxygen usage" for information on how to generate the
     1817# default style sheet that doxygen normally uses.
     1818# This tag requires that the tag GENERATE_RTF is set to YES.
     1819
     1820RTF_STYLESHEET_FILE    =
     1821
     1822# Set optional variables used in the generation of an RTF document. Syntax is
     1823# similar to doxygen's config file. A template extensions file can be generated
     1824# using doxygen -e rtf extensionFile.
     1825# This tag requires that the tag GENERATE_RTF is set to YES.
     1826
     1827RTF_EXTENSIONS_FILE    =
     1828
     1829# If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code
     1830# with syntax highlighting in the RTF output.
     1831#
     1832# Note that which sources are shown also depends on other settings such as
     1833# SOURCE_BROWSER.
     1834# The default value is: NO.
     1835# This tag requires that the tag GENERATE_RTF is set to YES.
     1836
     1837RTF_SOURCE_CODE        = NO
     1838
     1839#---------------------------------------------------------------------------
     1840# Configuration options related to the man page output
     1841#---------------------------------------------------------------------------
     1842
     1843# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
     1844# classes and files.
     1845# The default value is: NO.
    13661846
    13671847GENERATE_MAN           = NO
    13681848
    1369 # The MAN_OUTPUT tag is used to specify where the man pages will be put.
    1370 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    1371 # put in front of it. If left blank `man' will be used as the default path.
     1849# The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
     1850# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
     1851# it. A directory man3 will be created inside the directory specified by
     1852# MAN_OUTPUT.
     1853# The default directory is: man.
     1854# This tag requires that the tag GENERATE_MAN is set to YES.
    13721855
    13731856MAN_OUTPUT             = man
    13741857
    1375 # The MAN_EXTENSION tag determines the extension that is added to
    1376 # the generated man pages (default is the subroutine's section .3)
     1858# The MAN_EXTENSION tag determines the extension that is added to the generated
     1859# man pages. In case the manual section does not start with a number, the number
     1860# 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
     1861# optional.
     1862# The default value is: .3.
     1863# This tag requires that the tag GENERATE_MAN is set to YES.
    13771864
    13781865MAN_EXTENSION          = .3
    13791866
    1380 # If the MAN_LINKS tag is set to YES and Doxygen generates man output,
    1381 # then it will generate one additional man file for each entity
    1382 # documented in the real man page(s). These additional files
    1383 # only source the real man page, but without them the man command
    1384 # would be unable to find the correct page. The default is NO.
     1867# The MAN_SUBDIR tag determines the name of the directory created within
     1868# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by
     1869# MAN_EXTENSION with the initial . removed.
     1870# This tag requires that the tag GENERATE_MAN is set to YES.
     1871
     1872MAN_SUBDIR             =
     1873
     1874# If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
     1875# will generate one additional man file for each entity documented in the real
     1876# man page(s). These additional files only source the real man page, but without
     1877# them the man command would be unable to find the correct page.
     1878# The default value is: NO.
     1879# This tag requires that the tag GENERATE_MAN is set to YES.
    13851880
    13861881MAN_LINKS              = NO
    13871882
    13881883#---------------------------------------------------------------------------
    1389 # configuration options related to the XML output
    1390 #---------------------------------------------------------------------------
    1391 
    1392 # If the GENERATE_XML tag is set to YES Doxygen will
    1393 # generate an XML file that captures the structure of
    1394 # the code including all documentation.
     1884# Configuration options related to the XML output
     1885#---------------------------------------------------------------------------
     1886
     1887# If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
     1888# captures the structure of the code including all documentation.
     1889# The default value is: NO.
    13951890
    13961891GENERATE_XML           = NO
    13971892
    1398 # The XML_OUTPUT tag is used to specify where the XML pages will be put.
    1399 # If a relative path is entered the value of OUTPUT_DIRECTORY will be
    1400 # put in front of it. If left blank `xml' will be used as the default path.
     1893# The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
     1894# relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
     1895# it.
     1896# The default directory is: xml.
     1897# This tag requires that the tag GENERATE_XML is set to YES.
    14011898
    14021899XML_OUTPUT             = xml
    14031900
    1404 # The XML_SCHEMA tag can be used to specify an XML schema,
    1405 # which can be used by a validating XML parser to check the
    1406 # syntax of the XML files.
    1407 
    1408 XML_SCHEMA             =
    1409 
    1410 # The XML_DTD tag can be used to specify an XML DTD,
    1411 # which can be used by a validating XML parser to check the
    1412 # syntax of the XML files.
    1413 
    1414 XML_DTD                =
    1415 
    1416 # If the XML_PROGRAMLISTING tag is set to YES Doxygen will
    1417 # dump the program listings (including syntax highlighting
    1418 # and cross-referencing information) to the XML output. Note that
    1419 # enabling this will significantly increase the size of the XML output.
     1901# If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
     1902# listings (including syntax highlighting and cross-referencing information) to
     1903# the XML output. Note that enabling this will significantly increase the size
     1904# of the XML output.
     1905# The default value is: YES.
     1906# This tag requires that the tag GENERATE_XML is set to YES.
    14201907
    14211908XML_PROGRAMLISTING     = YES
    14221909
    14231910#---------------------------------------------------------------------------
    1424 # configuration options for the AutoGen Definitions output
    1425 #---------------------------------------------------------------------------
    1426 
    1427 # If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
    1428 # generate an AutoGen Definitions (see autogen.sf.net) file
    1429 # that captures the structure of the code including all
    1430 # documentation. Note that this feature is still experimental
    1431 # and incomplete at the moment.
     1911# Configuration options related to the DOCBOOK output
     1912#---------------------------------------------------------------------------
     1913
     1914# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
     1915# that can be used to generate PDF.
     1916# The default value is: NO.
     1917
     1918GENERATE_DOCBOOK       = NO
     1919
     1920# The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
     1921# If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
     1922# front of it.
     1923# The default directory is: docbook.
     1924# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
     1925
     1926DOCBOOK_OUTPUT         = docbook
     1927
     1928# If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the
     1929# program listings (including syntax highlighting and cross-referencing
     1930# information) to the DOCBOOK output. Note that enabling this will significantly
     1931# increase the size of the DOCBOOK output.
     1932# The default value is: NO.
     1933# This tag requires that the tag GENERATE_DOCBOOK is set to YES.
     1934
     1935DOCBOOK_PROGRAMLISTING = NO
     1936
     1937#---------------------------------------------------------------------------
     1938# Configuration options for the AutoGen Definitions output
     1939#---------------------------------------------------------------------------
     1940
     1941# If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
     1942# AutoGen Definitions (see http://autogen.sf.net) file that captures the
     1943# structure of the code including all documentation. Note that this feature is
     1944# still experimental and incomplete at the moment.
     1945# The default value is: NO.
    14321946
    14331947GENERATE_AUTOGEN_DEF   = NO
    14341948
    14351949#---------------------------------------------------------------------------
    1436 # configuration options related to the Perl module output
    1437 #---------------------------------------------------------------------------
    1438 
    1439 # If the GENERATE_PERLMOD tag is set to YES Doxygen will
    1440 # generate a Perl module file that captures the structure of
    1441 # the code including all documentation. Note that this
    1442 # feature is still experimental and incomplete at the
    1443 # moment.
     1950# Configuration options related to the Perl module output
     1951#---------------------------------------------------------------------------
     1952
     1953# If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
     1954# file that captures the structure of the code including all documentation.
     1955#
     1956# Note that this feature is still experimental and incomplete at the moment.
     1957# The default value is: NO.
    14441958
    14451959GENERATE_PERLMOD       = NO
    14461960
    1447 # If the PERLMOD_LATEX tag is set to YES Doxygen will generate
    1448 # the necessary Makefile rules, Perl scripts and LaTeX code to be able
    1449 # to generate PDF and DVI output from the Perl module output.
     1961# If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
     1962# Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
     1963# output from the Perl module output.
     1964# The default value is: NO.
     1965# This tag requires that the tag GENERATE_PERLMOD is set to YES.
    14501966
    14511967PERLMOD_LATEX          = NO
    14521968
    1453 # If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
    1454 # nicely formatted so it can be parsed by a human reader.  This is useful
    1455 # if you want to understand what is going on.  On the other hand, if this
    1456 # tag is set to NO the size of the Perl module output will be much smaller
    1457 # and Perl will parse it just the same.
     1969# If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
     1970# formatted so it can be parsed by a human reader. This is useful if you want to
     1971# understand what is going on. On the other hand, if this tag is set to NO, the
     1972# size of the Perl module output will be much smaller and Perl will parse it
     1973# just the same.
     1974# The default value is: YES.
     1975# This tag requires that the tag GENERATE_PERLMOD is set to YES.
    14581976
    14591977PERLMOD_PRETTY         = YES
    14601978
    1461 # The names of the make variables in the generated doxyrules.make file
    1462 # are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
    1463 # This is useful so different doxyrules.make files included by the same
    1464 # Makefile don't overwrite each other's variables.
    1465 
    1466 PERLMOD_MAKEVAR_PREFIX =
     1979# The names of the make variables in the generated doxyrules.make file are
     1980# prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
     1981# so different doxyrules.make files included by the same Makefile don't
     1982# overwrite each other's variables.
     1983# This tag requires that the tag GENERATE_PERLMOD is set to YES.
     1984
     1985PERLMOD_MAKEVAR_PREFIX =
    14671986
    14681987#---------------------------------------------------------------------------
     
    14701989#---------------------------------------------------------------------------
    14711990
    1472 # If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
    1473 # evaluate all C-preprocessor directives found in the sources and include
     1991# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
     1992# C-preprocessor directives found in the sources and include files.
     1993# The default value is: YES.
     1994
     1995ENABLE_PREPROCESSING   = YES
     1996
     1997# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
     1998# in the source code. If set to NO, only conditional compilation will be
     1999# performed. Macro expansion can be done in a controlled way by setting
     2000# EXPAND_ONLY_PREDEF to YES.
     2001# The default value is: NO.
     2002# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
     2003
     2004MACRO_EXPANSION        = YES
     2005
     2006# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
     2007# the macro expansion is limited to the macros specified with the PREDEFINED and
     2008# EXPAND_AS_DEFINED tags.
     2009# The default value is: NO.
     2010# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
     2011
     2012EXPAND_ONLY_PREDEF     = NO
     2013
     2014# If the SEARCH_INCLUDES tag is set to YES, the include files in the
     2015# INCLUDE_PATH will be searched if a #include is found.
     2016# The default value is: YES.
     2017# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
     2018
     2019SEARCH_INCLUDES        = YES
     2020
     2021# The INCLUDE_PATH tag can be used to specify one or more directories that
     2022# contain include files that are not input files but should be processed by the
     2023# preprocessor.
     2024# This tag requires that the tag SEARCH_INCLUDES is set to YES.
     2025
     2026INCLUDE_PATH           = ../source/Lib/
     2027
     2028# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
     2029# patterns (like *.h and *.hpp) to filter out the header-files in the
     2030# directories. If left blank, the patterns specified with FILE_PATTERNS will be
     2031# used.
     2032# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
     2033
     2034INCLUDE_FILE_PATTERNS  =
     2035
     2036# The PREDEFINED tag can be used to specify one or more macro names that are
     2037# defined before the preprocessor is started (similar to the -D option of e.g.
     2038# gcc). The argument of the tag is a list of macros of the form: name or
     2039# name=definition (no spaces). If the definition and the "=" are omitted, "=1"
     2040# is assumed. To prevent a macro definition from being undefined via #undef or
     2041# recursively expanded use the := operator instead of the = operator.
     2042# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
     2043
     2044PREDEFINED             =
     2045
     2046# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
     2047# tag can be used to specify a list of macro names that should be expanded. The
     2048# macro definition that is found in the sources will be used. Use the PREDEFINED
     2049# tag if you want to use a different macro definition that overrules the
     2050# definition found in the source code.
     2051# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
     2052
     2053EXPAND_AS_DEFINED      =
     2054
     2055# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
     2056# remove all references to function-like macros that are alone on a line, have
     2057# an all uppercase name, and do not end with a semicolon. Such function macros
     2058# are typically used for boiler-plate code, and will confuse the parser if not
     2059# removed.
     2060# The default value is: YES.
     2061# This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
     2062
     2063SKIP_FUNCTION_MACROS   = YES
     2064
     2065#---------------------------------------------------------------------------
     2066# Configuration options related to external references
     2067#---------------------------------------------------------------------------
     2068
     2069# The TAGFILES tag can be used to specify one or more tag files. For each tag
     2070# file the location of the external documentation should be added. The format of
     2071# a tag file without this location is as follows:
     2072# TAGFILES = file1 file2 ...
     2073# Adding location for the tag files is done as follows:
     2074# TAGFILES = file1=loc1 "file2 = loc2" ...
     2075# where loc1 and loc2 can be relative or absolute paths or URLs. See the
     2076# section "Linking to external documentation" for more information about the use
     2077# of tag files.
     2078# Note: Each tag file must have a unique name (where the name does NOT include
     2079# the path). If a tag file is not located in the directory in which doxygen is
     2080# run, you must also specify the path to the tagfile here.
     2081
     2082TAGFILES               =
     2083
     2084# When a file name is specified after GENERATE_TAGFILE, doxygen will create a
     2085# tag file that is based on the input files it reads. See section "Linking to
     2086# external documentation" for more information about the usage of tag files.
     2087
     2088GENERATE_TAGFILE       =
     2089
     2090# If the ALLEXTERNALS tag is set to YES, all external class will be listed in
     2091# the class index. If set to NO, only the inherited external classes will be
     2092# listed.
     2093# The default value is: NO.
     2094
     2095ALLEXTERNALS           = NO
     2096
     2097# If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
     2098# in the modules index. If set to NO, only the current project's groups will be
     2099# listed.
     2100# The default value is: YES.
     2101
     2102EXTERNAL_GROUPS        = YES
     2103
     2104# If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
     2105# the related pages index. If set to NO, only the current project's pages will
     2106# be listed.
     2107# The default value is: YES.
     2108
     2109EXTERNAL_PAGES         = YES
     2110
     2111# The PERL_PATH should be the absolute path and name of the perl script
     2112# interpreter (i.e. the result of 'which perl').
     2113# The default file (with absolute path) is: /usr/bin/perl.
     2114
     2115PERL_PATH              = /usr/bin/perl
     2116
     2117#---------------------------------------------------------------------------
     2118# Configuration options related to the dot tool
     2119#---------------------------------------------------------------------------
     2120
     2121# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram
     2122# (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
     2123# NO turns the diagrams off. Note that this option also works with HAVE_DOT
     2124# disabled, but it is recommended to install and use dot, since it yields more
     2125# powerful graphs.
     2126# The default value is: YES.
     2127
     2128CLASS_DIAGRAMS         = NO
     2129
     2130# You can define message sequence charts within doxygen comments using the \msc
     2131# command. Doxygen will then run the mscgen tool (see:
     2132# http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the
     2133# documentation. The MSCGEN_PATH tag allows you to specify the directory where
     2134# the mscgen tool resides. If left empty the tool is assumed to be found in the
     2135# default search path.
     2136
     2137MSCGEN_PATH            =
     2138
     2139# You can include diagrams made with dia in doxygen documentation. Doxygen will
     2140# then run dia to produce the diagram and insert it in the documentation. The
     2141# DIA_PATH tag allows you to specify the directory where the dia binary resides.
     2142# If left empty dia is assumed to be found in the default search path.
     2143
     2144DIA_PATH               =
     2145
     2146# If set to YES the inheritance and collaboration graphs will hide inheritance
     2147# and usage relations if the target is undocumented or is not a class.
     2148# The default value is: YES.
     2149
     2150HIDE_UNDOC_RELATIONS   = YES
     2151
     2152# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
     2153# available from the path. This tool is part of Graphviz (see:
     2154# http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
     2155# Bell Labs. The other options in this section have no effect if this option is
     2156# set to NO
     2157# The default value is: NO.
     2158
     2159HAVE_DOT               = YES
     2160
     2161# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
     2162# to run in parallel. When set to 0 doxygen will base this on the number of
     2163# processors available in the system. You can set it explicitly to a value
     2164# larger than 0 to get control over the balance between CPU load and processing
     2165# speed.
     2166# Minimum value: 0, maximum value: 32, default value: 0.
     2167# This tag requires that the tag HAVE_DOT is set to YES.
     2168
     2169DOT_NUM_THREADS        = 0
     2170
     2171# When you want a differently looking font in the dot files that doxygen
     2172# generates you can specify the font name using DOT_FONTNAME. You need to make
     2173# sure dot is able to find the font, which can be done by putting it in a
     2174# standard location or by setting the DOTFONTPATH environment variable or by
     2175# setting DOT_FONTPATH to the directory containing the font.
     2176# The default value is: Helvetica.
     2177# This tag requires that the tag HAVE_DOT is set to YES.
     2178
     2179DOT_FONTNAME           = Helvetica
     2180
     2181# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
     2182# dot graphs.
     2183# Minimum value: 4, maximum value: 24, default value: 10.
     2184# This tag requires that the tag HAVE_DOT is set to YES.
     2185
     2186DOT_FONTSIZE           = 10
     2187
     2188# By default doxygen will tell dot to use the default font as specified with
     2189# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
     2190# the path where dot can find it using this tag.
     2191# This tag requires that the tag HAVE_DOT is set to YES.
     2192
     2193DOT_FONTPATH           =
     2194
     2195# If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
     2196# each documented class showing the direct and indirect inheritance relations.
     2197# Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.
     2198# The default value is: YES.
     2199# This tag requires that the tag HAVE_DOT is set to YES.
     2200
     2201CLASS_GRAPH            = YES
     2202
     2203# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
     2204# graph for each documented class showing the direct and indirect implementation
     2205# dependencies (inheritance, containment, and class references variables) of the
     2206# class with other documented classes.
     2207# The default value is: YES.
     2208# This tag requires that the tag HAVE_DOT is set to YES.
     2209
     2210COLLABORATION_GRAPH    = YES
     2211
     2212# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
     2213# groups, showing the direct groups dependencies.
     2214# The default value is: YES.
     2215# This tag requires that the tag HAVE_DOT is set to YES.
     2216
     2217GROUP_GRAPHS           = YES
     2218
     2219# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
     2220# collaboration diagrams in a style similar to the OMG's Unified Modeling
     2221# Language.
     2222# The default value is: NO.
     2223# This tag requires that the tag HAVE_DOT is set to YES.
     2224
     2225UML_LOOK               = NO
     2226
     2227# If the UML_LOOK tag is enabled, the fields and methods are shown inside the
     2228# class node. If there are many fields or methods and many nodes the graph may
     2229# become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
     2230# number of items for each type to make the size more manageable. Set this to 0
     2231# for no limit. Note that the threshold may be exceeded by 50% before the limit
     2232# is enforced. So when you set the threshold to 10, up to 15 fields may appear,
     2233# but if the number exceeds 15, the total amount of fields shown is limited to
     2234# 10.
     2235# Minimum value: 0, maximum value: 100, default value: 10.
     2236# This tag requires that the tag HAVE_DOT is set to YES.
     2237
     2238UML_LIMIT_NUM_FIELDS   = 10
     2239
     2240# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
     2241# collaboration graphs will show the relations between templates and their
     2242# instances.
     2243# The default value is: NO.
     2244# This tag requires that the tag HAVE_DOT is set to YES.
     2245
     2246TEMPLATE_RELATIONS     = NO
     2247
     2248# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
     2249# YES then doxygen will generate a graph for each documented file showing the
     2250# direct and indirect include dependencies of the file with other documented
    14742251# files.
    1475 
    1476 ENABLE_PREPROCESSING   = YES
    1477 
    1478 # If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
    1479 # names in the source code. If set to NO (the default) only conditional
    1480 # compilation will be performed. Macro expansion can be done in a controlled
    1481 # way by setting EXPAND_ONLY_PREDEF to YES.
    1482 
    1483 MACRO_EXPANSION        = YES
    1484 
    1485 # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
    1486 # then the macro expansion is limited to the macros specified with the
    1487 # PREDEFINED and EXPAND_AS_DEFINED tags.
    1488 
    1489 EXPAND_ONLY_PREDEF     = NO
    1490 
    1491 # If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
    1492 # pointed to by INCLUDE_PATH will be searched when a #include is found.
    1493 
    1494 SEARCH_INCLUDES        = YES
    1495 
    1496 # The INCLUDE_PATH tag can be used to specify one or more directories that
    1497 # contain include files that are not input files but should be processed by
    1498 # the preprocessor.
    1499 
    1500 INCLUDE_PATH           = ../source/Lib/
    1501 
    1502 #                         ../source/Lib/TLibCommon \
    1503 #                         ../source/Lib/TLibEncoder \
    1504 #                         ../source/Lib/TLibDecoder \
    1505 #                         ../source/Lib/libmd5 \
    1506 #                         ../source/Lib/TLibVideoIO
    1507 #
    1508 # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
    1509 # patterns (like *.h and *.hpp) to filter out the header-files in the
    1510 # directories. If left blank, the patterns specified with FILE_PATTERNS will
    1511 # be used.
    1512 
    1513 INCLUDE_FILE_PATTERNS  =
    1514 
    1515 # The PREDEFINED tag can be used to specify one or more macro names that
    1516 # are defined before the preprocessor is started (similar to the -D option of
    1517 # gcc). The argument of the tag is a list of macros of the form: name
    1518 # or name=definition (no spaces). If the definition and the = are
    1519 # omitted =1 is assumed. To prevent a macro definition from being
    1520 # undefined via #undef or recursively expanded use the := operator
    1521 # instead of the = operator.
    1522 
    1523 PREDEFINED             =
    1524 
    1525 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
    1526 # this tag can be used to specify a list of macro names that should be expanded.
    1527 # The macro definition that is found in the sources will be used.
    1528 # Use the PREDEFINED tag if you want to use a different macro definition that
    1529 # overrules the definition found in the source code.
    1530 
    1531 EXPAND_AS_DEFINED      =
    1532 
    1533 # If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
    1534 # doxygen's preprocessor will remove all references to function-like macros
    1535 # that are alone on a line, have an all uppercase name, and do not end with a
    1536 # semicolon, because these will confuse the parser if not removed.
    1537 
    1538 SKIP_FUNCTION_MACROS   = YES
    1539 
    1540 #---------------------------------------------------------------------------
    1541 # Configuration::additions related to external references
    1542 #---------------------------------------------------------------------------
    1543 
    1544 # The TAGFILES option can be used to specify one or more tagfiles.
    1545 # Optionally an initial location of the external documentation
    1546 # can be added for each tagfile. The format of a tag file without
    1547 # this location is as follows:
    1548 #   TAGFILES = file1 file2 ...
    1549 # Adding location for the tag files is done as follows:
    1550 #   TAGFILES = file1=loc1 "file2 = loc2" ...
    1551 # where "loc1" and "loc2" can be relative or absolute paths or
    1552 # URLs. If a location is present for each tag, the installdox tool
    1553 # does not have to be run to correct the links.
    1554 # Note that each tag file must have a unique name
    1555 # (where the name does NOT include the path)
    1556 # If a tag file is not located in the directory in which doxygen
    1557 # is run, you must also specify the path to the tagfile here.
    1558 
    1559 TAGFILES               =
    1560 
    1561 # When a file name is specified after GENERATE_TAGFILE, doxygen will create
    1562 # a tag file that is based on the input files it reads.
    1563 
    1564 GENERATE_TAGFILE       =
    1565 
    1566 # If the ALLEXTERNALS tag is set to YES all external classes will be listed
    1567 # in the class index. If set to NO only the inherited external classes
    1568 # will be listed.
    1569 
    1570 ALLEXTERNALS           = NO
    1571 
    1572 # If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
    1573 # in the modules index. If set to NO, only the current project's groups will
    1574 # be listed.
    1575 
    1576 EXTERNAL_GROUPS        = YES
    1577 
    1578 # The PERL_PATH should be the absolute path and name of the perl script
    1579 # interpreter (i.e. the result of `which perl').
    1580 
    1581 PERL_PATH              = /usr/bin/perl
    1582 
    1583 #---------------------------------------------------------------------------
    1584 # Configuration options related to the dot tool
    1585 #---------------------------------------------------------------------------
    1586 
    1587 # If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
    1588 # generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
    1589 # or super classes. Setting the tag to NO turns the diagrams off. Note that
    1590 # this option also works with HAVE_DOT disabled, but it is recommended to
    1591 # install and use dot, since it yields more powerful graphs.
    1592 
    1593 CLASS_DIAGRAMS         = NO
    1594 
    1595 # You can define message sequence charts within doxygen comments using the \msc
    1596 # command. Doxygen will then run the mscgen tool (see
    1597 # http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
    1598 # documentation. The MSCGEN_PATH tag allows you to specify the directory where
    1599 # the mscgen tool resides. If left empty the tool is assumed to be found in the
    1600 # default search path.
    1601 
    1602 MSCGEN_PATH            =
    1603 
    1604 # If set to YES, the inheritance and collaboration graphs will hide
    1605 # inheritance and usage relations if the target is undocumented
    1606 # or is not a class.
    1607 
    1608 HIDE_UNDOC_RELATIONS   = YES
    1609 
    1610 # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
    1611 # available from the path. This tool is part of Graphviz, a graph visualization
    1612 # toolkit from AT&T and Lucent Bell Labs. The other options in this section
    1613 # have no effect if this option is set to NO (the default)
    1614 
    1615 HAVE_DOT               = YES
    1616 
    1617 # The DOT_NUM_THREADS specifies the number of dot invocations doxygen is
    1618 # allowed to run in parallel. When set to 0 (the default) doxygen will
    1619 # base this on the number of processors available in the system. You can set it
    1620 # explicitly to a value larger than 0 to get control over the balance
    1621 # between CPU load and processing speed.
    1622 
    1623 DOT_NUM_THREADS        = 0
    1624 
    1625 # By default doxygen will use the Helvetica font for all dot files that
    1626 # doxygen generates. When you want a differently looking font you can specify
    1627 # the font name using DOT_FONTNAME. You need to make sure dot is able to find
    1628 # the font, which can be done by putting it in a standard location or by setting
    1629 # the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the
    1630 # directory containing the font.
    1631 
    1632 DOT_FONTNAME           = Helvetica
    1633 
    1634 # The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
    1635 # The default size is 10pt.
    1636 
    1637 DOT_FONTSIZE           = 10
    1638 
    1639 # By default doxygen will tell dot to use the Helvetica font.
    1640 # If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to
    1641 # set the path where dot can find it.
    1642 
    1643 DOT_FONTPATH           =
    1644 
    1645 # If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
    1646 # will generate a graph for each documented class showing the direct and
    1647 # indirect inheritance relations. Setting this tag to YES will force the
    1648 # the CLASS_DIAGRAMS tag to NO.
    1649 
    1650 CLASS_GRAPH            = YES
    1651 
    1652 # If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
    1653 # will generate a graph for each documented class showing the direct and
    1654 # indirect implementation dependencies (inheritance, containment, and
    1655 # class references variables) of the class with other documented classes.
    1656 
    1657 COLLABORATION_GRAPH    = YES
    1658 
    1659 # If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
    1660 # will generate a graph for groups, showing the direct groups dependencies
    1661 
    1662 GROUP_GRAPHS           = YES
    1663 
    1664 # If the UML_LOOK tag is set to YES doxygen will generate inheritance and
    1665 # collaboration diagrams in a style similar to the OMG's Unified Modeling
    1666 # Language.
    1667 
    1668 UML_LOOK               = NO
    1669 
    1670 # If set to YES, the inheritance and collaboration graphs will show the
    1671 # relations between templates and their instances.
    1672 
    1673 TEMPLATE_RELATIONS     = NO
    1674 
    1675 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
    1676 # tags are set to YES then doxygen will generate a graph for each documented
    1677 # file showing the direct and indirect include dependencies of the file with
    1678 # other documented files.
     2252# The default value is: YES.
     2253# This tag requires that the tag HAVE_DOT is set to YES.
    16792254
    16802255INCLUDE_GRAPH          = YES
    16812256
    1682 # If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
    1683 # HAVE_DOT tags are set to YES then doxygen will generate a graph for each
    1684 # documented header file showing the documented files that directly or
    1685 # indirectly include this file.
     2257# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
     2258# set to YES then doxygen will generate a graph for each documented file showing
     2259# the direct and indirect include dependencies of the file with other documented
     2260# files.
     2261# The default value is: YES.
     2262# This tag requires that the tag HAVE_DOT is set to YES.
    16862263
    16872264INCLUDED_BY_GRAPH      = YES
    16882265
    1689 # If the CALL_GRAPH and HAVE_DOT options are set to YES then
    1690 # doxygen will generate a call dependency graph for every global function
    1691 # or class method. Note that enabling this option will significantly increase
    1692 # the time of a run. So in most cases it will be better to enable call graphs
    1693 # for selected functions only using the \callgraph command.
     2266# If the CALL_GRAPH tag is set to YES then doxygen will generate a call
     2267# dependency graph for every global function or class method.
     2268#
     2269# Note that enabling this option will significantly increase the time of a run.
     2270# So in most cases it will be better to enable call graphs for selected
     2271# functions only using the \callgraph command.
     2272# The default value is: NO.
     2273# This tag requires that the tag HAVE_DOT is set to YES.
    16942274
    16952275CALL_GRAPH             = NO
    16962276
    1697 # If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
    1698 # doxygen will generate a caller dependency graph for every global function
    1699 # or class method. Note that enabling this option will significantly increase
    1700 # the time of a run. So in most cases it will be better to enable caller
    1701 # graphs for selected functions only using the \callergraph command.
     2277# If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
     2278# dependency graph for every global function or class method.
     2279#
     2280# Note that enabling this option will significantly increase the time of a run.
     2281# So in most cases it will be better to enable caller graphs for selected
     2282# functions only using the \callergraph command.
     2283# The default value is: NO.
     2284# This tag requires that the tag HAVE_DOT is set to YES.
    17022285
    17032286CALLER_GRAPH           = NO
    17042287
    1705 # If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
    1706 # will generate a graphical hierarchy of all classes instead of a textual one.
     2288# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
     2289# hierarchy of all classes instead of a textual one.
     2290# The default value is: YES.
     2291# This tag requires that the tag HAVE_DOT is set to YES.
    17072292
    17082293GRAPHICAL_HIERARCHY    = YES
    17092294
    1710 # If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
    1711 # then doxygen will show the dependencies a directory has on other directories
    1712 # in a graphical way. The dependency relations are determined by the #include
    1713 # relations between the files in the directories.
     2295# If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
     2296# dependencies a directory has on other directories in a graphical way. The
     2297# dependency relations are determined by the #include relations between the
     2298# files in the directories.
     2299# The default value is: YES.
     2300# This tag requires that the tag HAVE_DOT is set to YES.
    17142301
    17152302DIRECTORY_GRAPH        = YES
    17162303
    1717 # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
    1718 # generated by dot. Possible values are svg, png, jpg, or gif.
    1719 # If left blank png will be used. If you choose svg you need to set
    1720 # HTML_FILE_EXTENSION to xhtml in order to make the SVG files
    1721 # visible in IE 9+ (other browsers do not have this requirement).
     2304# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
     2305# generated by dot.
     2306# Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
     2307# to make the SVG files visible in IE 9+ (other browsers do not have this
     2308# requirement).
     2309# Possible values are: png, jpg, gif and svg.
     2310# The default value is: png.
     2311# This tag requires that the tag HAVE_DOT is set to YES.
    17222312
    17232313DOT_IMAGE_FORMAT       = png
    17242314
    1725 # If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
    1726 # enable generation of interactive SVG images that allow zooming and panning.
    1727 # Note that this requires a modern browser other than Internet Explorer.
    1728 # Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you
    1729 # need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files
    1730 # visible. Older versions of IE do not have SVG support.
     2315# If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
     2316# enable generation of interactive SVG images that allow zooming and panning.
     2317#
     2318# Note that this requires a modern browser other than Internet Explorer. Tested
     2319# and working are Firefox, Chrome, Safari, and Opera.
     2320# Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
     2321# the SVG files visible. Older versions of IE do not have SVG support.
     2322# The default value is: NO.
     2323# This tag requires that the tag HAVE_DOT is set to YES.
    17312324
    17322325INTERACTIVE_SVG        = NO
    17332326
    1734 # The tag DOT_PATH can be used to specify the path where the dot tool can be
     2327# The DOT_PATH tag can be used to specify the path where the dot tool can be
    17352328# found. If left blank, it is assumed the dot tool can be found in the path.
    1736 
    1737 DOT_PATH               =
    1738 
    1739 # The DOTFILE_DIRS tag can be used to specify one or more directories that
    1740 # contain dot files that are included in the documentation (see the
    1741 # \dotfile command).
    1742 
    1743 DOTFILE_DIRS           =
    1744 
    1745 # The MSCFILE_DIRS tag can be used to specify one or more directories that
    1746 # contain msc files that are included in the documentation (see the
    1747 # \mscfile command).
    1748 
    1749 MSCFILE_DIRS           =
    1750 
    1751 # The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
    1752 # nodes that will be shown in the graph. If the number of nodes in a graph
    1753 # becomes larger than this value, doxygen will truncate the graph, which is
    1754 # visualized by representing a node as a red box. Note that doxygen if the
    1755 # number of direct children of the root node in a graph is already larger than
    1756 # DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
    1757 # that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
    1758 
    1759 DOT_GRAPH_MAX_NODES    = 50
    1760 
    1761 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
    1762 # graphs generated by dot. A depth value of 3 means that only nodes reachable
    1763 # from the root by following a path via at most 3 edges will be shown. Nodes
    1764 # that lay further from the root node will be omitted. Note that setting this
    1765 # option to 1 or 2 may greatly reduce the computation time needed for large
    1766 # code bases. Also note that the size of a graph can be further restricted by
     2329# This tag requires that the tag HAVE_DOT is set to YES.
     2330
     2331DOT_PATH               =
     2332
     2333# The DOTFILE_DIRS tag can be used to specify one or more directories that
     2334# contain dot files that are included in the documentation (see the \dotfile
     2335# command).
     2336# This tag requires that the tag HAVE_DOT is set to YES.
     2337
     2338DOTFILE_DIRS           =
     2339
     2340# The MSCFILE_DIRS tag can be used to specify one or more directories that
     2341# contain msc files that are included in the documentation (see the \mscfile
     2342# command).
     2343
     2344MSCFILE_DIRS           =
     2345
     2346# The DIAFILE_DIRS tag can be used to specify one or more directories that
     2347# contain dia files that are included in the documentation (see the \diafile
     2348# command).
     2349
     2350DIAFILE_DIRS           =
     2351
     2352# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
     2353# path where java can find the plantuml.jar file. If left blank, it is assumed
     2354# PlantUML is not used or called during a preprocessing step. Doxygen will
     2355# generate a warning when it encounters a \startuml command in this case and
     2356# will not generate output for the diagram.
     2357
     2358PLANTUML_JAR_PATH      =
     2359
     2360# When using plantuml, the specified paths are searched for files specified by
     2361# the !include statement in a plantuml block.
     2362
     2363PLANTUML_INCLUDE_PATH  =
     2364
     2365# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
     2366# that will be shown in the graph. If the number of nodes in a graph becomes
     2367# larger than this value, doxygen will truncate the graph, which is visualized
     2368# by representing a node as a red box. Note that doxygen if the number of direct
     2369# children of the root node in a graph is already larger than
     2370# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
     2371# the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
     2372# Minimum value: 0, maximum value: 10000, default value: 50.
     2373# This tag requires that the tag HAVE_DOT is set to YES.
     2374
     2375DOT_GRAPH_MAX_NODES    = 60
     2376
     2377# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
     2378# generated by dot. A depth value of 3 means that only nodes reachable from the
     2379# root by following a path via at most 3 edges will be shown. Nodes that lay
     2380# further from the root node will be omitted. Note that setting this option to 1
     2381# or 2 may greatly reduce the computation time needed for large code bases. Also
     2382# note that the size of a graph can be further restricted by
    17672383# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
     2384# Minimum value: 0, maximum value: 1000, default value: 0.
     2385# This tag requires that the tag HAVE_DOT is set to YES.
    17682386
    17692387MAX_DOT_GRAPH_DEPTH    = 0
    17702388
    1771 # Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
    1772 # background. This is disabled by default, because dot on Windows does not
    1773 # seem to support this out of the box. Warning: Depending on the platform used,
    1774 # enabling this option may lead to badly anti-aliased labels on the edges of
    1775 # a graph (i.e. they become hard to read).
     2389# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
     2390# background. This is disabled by default, because dot on Windows does not seem
     2391# to support this out of the box.
     2392#
     2393# Warning: Depending on the platform used, enabling this option may lead to
     2394# badly anti-aliased labels on the edges of a graph (i.e. they become hard to
     2395# read).
     2396# The default value is: NO.
     2397# This tag requires that the tag HAVE_DOT is set to YES.
    17762398
    17772399DOT_TRANSPARENT        = NO
    17782400
    1779 # Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
    1780 # files in one run (i.e. multiple -o and -T options on the command line). This
    1781 # makes dot run faster, but since only newer versions of dot (>1.8.10)
    1782 # support this, this feature is disabled by default.
     2401# Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
     2402# files in one run (i.e. multiple -o and -T options on the command line). This
     2403# makes dot run faster, but since only newer versions of dot (>1.8.10) support
     2404# this, this feature is disabled by default.
     2405# The default value is: NO.
     2406# This tag requires that the tag HAVE_DOT is set to YES.
    17832407
    17842408DOT_MULTI_TARGETS      = NO
    17852409
    1786 # If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
    1787 # generate a legend page explaining the meaning of the various boxes and
    1788 # arrows in the dot generated graphs.
     2410# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
     2411# explaining the meaning of the various boxes and arrows in the dot generated
     2412# graphs.
     2413# The default value is: YES.
     2414# This tag requires that the tag HAVE_DOT is set to YES.
    17892415
    17902416GENERATE_LEGEND        = YES
    17912417
    1792 # If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
    1793 # remove the intermediate dot files that are used to generate
    1794 # the various graphs.
     2418# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot
     2419# files that are used to generate the various graphs.
     2420# The default value is: YES.
     2421# This tag requires that the tag HAVE_DOT is set to YES.
    17952422
    17962423DOT_CLEANUP            = YES
  • trunk/doc/mainpage.h

    r872 r1313  
    1616 *
    1717 *  For <b>bug reporting and known issues</b> see:
    18  *  http://hevc.kw.bbc.co.uk/trac/
     18 *  https://hevc.hhi.fraunhofer.de/trac/hevc
    1919 *
    2020 * \section License
     
    2525 * granted under this license. 
    2626 *
    27  * Copyright (c) 2010-2014, ITU/ISO/IEC
     27 * Copyright (c) 2010-2015, ITU/ISO/IEC
    2828 * All rights reserved.
    2929 *
  • trunk/doc/software-manual.tex

    r964 r1313  
    6767}
    6868
     69\newenvironment{OptionTableNoShorthand}[2]{%
     70        \footnotesize
     71        \def\arraystretch{1.8}
     72        \clearOptions
     73        \begin{longtable}{l<{\makecell[tl]{\optOption}}%
     74                          c<{\makecell[tc]{\optDefault}}%
     75                          >{\def\arraystretch{1.0}}p{0.5\textwidth}<{\clearOptions}}
     76        \caption{#1} \label{#2} \\
     77        \hspace*{12em}&\hspace*{8em}&\kill
     78        \hline
     79         \thead{Option} &
     80         \thead{Default} &
     81         \thead{Description} \\
     82        \hline
     83        \endfirsthead
     84        \caption[]{#1 (Continued)} \\
     85        \hspace*{12em}&\hspace*{8em}&\kill
     86        \hline
     87         \thead{Option} &
     88         \thead{Default} &
     89         \thead{Description} \\
     90        \hline
     91        \endhead
     92         \multicolumn{3}{r}{Continued...}\\
     93         \hline
     94        \endfoot
     95         \hline
     96        \endlastfoot
     97}{%
     98        \hline
     99        \end{longtable}
     100}
     101
     102\newenvironment{SEIListTable}[1]{%
     103        \footnotesize
     104        \def\arraystretch{1.8}
     105        \clearOptions
     106        \begin{longtable}{c<{\makecell[tl]{\optOption}}%
     107                          l<{\makecell[tc]{\optDefault}}%
     108                          >{\def\arraystretch{1.0}}p{0.3\textwidth}<{\clearOptions}}
     109        \caption{#1} \\
     110        \hspace*{12em}&\hspace*{8em}&\kill
     111        \hline
     112         \thead{SEI Number} &
     113         \thead{SEI Name} &
     114         \thead{Table number of encoder controls, if available} \\
     115        \hline
     116        \endfirsthead
     117        \caption[]{#1 (Continued)} \\
     118        \hspace*{12em}&\hspace*{8em}&\kill
     119        \hline
     120         \thead{SEI Number} &
     121         \thead{SEI Name} &
     122         \thead{Table number of encoder controls, if available} \\
     123        \hline
     124        \endhead
     125         \multicolumn{3}{r}{Continued...}\\
     126         \hline
     127        \endfoot
     128         \hline
     129        \endlastfoot
     130}{%
     131        \hline
     132        \end{longtable}
     133}
     134
    69135\newenvironment{MacroTable}[1]{%
    70136        \footnotesize
     
    104170        \email{dflynn@blackberry.com}
    105171        \and
     172  Karl Sharman
     173        \email{karl.sharman@eu.sony.com}
     174        \and
    106175        Karsten S\"uhring
    107176        \email{karsten.suehring@hhi.fraunhofer.de}
     
    118187\begin{abstract}
    119188This document is a user manual describing usage of reference software
    120 for the HEVC project. It applies to version 14.0
     189for the HEVC project. It applies to version 16.6
    121190of the software.
    122191\end{abstract}
     
    125194\listoftables
    126195
     196
     197
    127198\section{General Information}
    128199Reference software is being made available to provide a reference
    129 implementation of the draft HEVC standard being developed by the Joint
     200implementation of the HEVC standard being developed by the Joint
    130201Collaborative Team on Video Coding (JCT-VC) regrouping experts from
    131202ITU-T SG 16 and ISO/IEC SC29 WG11. One of the main goals of the
     
    172243MS Visual Studio 8   & build/HM_vc8.sln \\
    173244MS Visual Studio 9   & build/HM_vc9.sln \\
     245MS Visual Studio 10  & build/HM_vc10.sln \\
    174246Xcode                & HM.xcodeproj \\
    175247Linux                & build/linux/makefile \\
     
    186258\section{Using the encoder}
    187259\begin{verbatim}
    188 TAppEncoder     [-h] [-c config.cfg] [--parameter=value]
     260TAppEncoder     [--help] [-c config.cfg] [--parameter=value]
    189261\end{verbatim}
    190262
     
    197269 \thead{Description} \\
    198270\hline
    199 \texttt{-h} & Prints parameter usage. \\
     271\texttt{--help} & Prints parameter usage. \\
    200272\texttt{-c} & Defines configuration file to use.  Multiple configuration files
    201273     may be used with repeated --c options. \\
     
    203275    & Assigns value to a given parameter as further described below.
    204276      Some parameters are also supported by shorthand
    205       "--\em{opt}~\emph{value}".\\
     277      "--\em{opt}~\emph{value}". These are shown in brackets after the parameter
     278      name in the tables of this document\\
    206279\hline
    207280\end{tabular}
     
    209282
    210283Sample configuration files are provided in the cfg/ folder.
     284Parameters are defined by the last value encountered on the command line.
     285Therefore if a setting is set via a configuration file, and then a subsequent
     286command line parameter changes that same setting, the command line parameter
     287value will be used.
    211288
    212289\subsection{GOP structure table}
     
    220297includes pictures that are used for reference for the current
    221298picture as well as pictures that will be used for reference in
    222 the future. The encoder will not automatically calculate what
    223 pictures that has to be kept for future references, they have to
     299the future. The encoder will not automatically calculate which
     300pictures have to be kept for future references, they must
    224301be specified. Note that some specified reference frames for
    225302pictures encoded in the very first GOP after an IDR frame might
     
    450527%% File, I/O and source parameters
    451528%%
    452 \begin{OptionTable}{File, I/O and source parameters}
    453 \Option{InputFile} &
    454 \ShortOption{-i} &
     529Shorthand alternatives for the parameter that can be used on the command line are shown in brackets after the parameter name.
     530
     531\begin{OptionTableNoShorthand}{File, I/O and source parameters.}{tab:fileIO}
     532\Option{InputFile (-i)} &
     533%\ShortOption{-i} &
    455534\Default{\NotSet} &
    456535Specifies the input video file.
    457536
    458 Video data must be in a raw 4:2:0 planar format (Y$'$CbCr).
     537Video data must be in a raw 4:2:0, or 4:2:2 planar format, 4:4:4 planar format (Y$'$CbCr, RGB or GBR), or in a raw 4:0:0 format.
    459538
    460539Note: When the bit depth of samples is larger than 8, each sample is encoded in
     
    462541\\
    463542
    464 \Option{BitstreamFile} &
    465 \ShortOption{-b} &
     543\Option{BitstreamFile (-b)} &
     544%\ShortOption{-b} &
    466545\Default{\NotSet} &
    467546Specifies the output coded bit stream file.
    468547\\
    469548
    470 \Option{ReconFile} &
    471 \ShortOption{-o} &
     549\Option{ReconFile (-o)} &
     550%\ShortOption{-o} &
    472551\Default{\NotSet} &
    473552Specifies the output locally reconstructed video file.
    474553\\
    475554
    476 \Option{SourceWidth}%
    477 \Option{SourceHeight} &
    478 \ShortOption{-wdt}%
    479 \ShortOption{-hgt} &
     555\Option{SourceWidth (-wdt)}%
     556\Option{SourceHeight (-hgt)} &
     557%\ShortOption{-wdt}%
     558%\ShortOption{-hgt} &
    480559\Default{0}%
    481560\Default{0} &
     
    483562\\
    484563
    485 \Option{InputBitDepth} &
    486 \ShortOption{\None} &
     564\Option{InputBitDepth}
     565 &
     566%\ShortOption{\None} &
    487567\Default{8} &
    488568Specifies the bit depth of the input video.
    489569\\
    490570
     571\Option{MSBExtendedBitDepth} &
     572%\ShortOption{\None} &
     573\Default{0} &
     574Extends the input video by adding MSBs of value 0. When 0, no extension is applied and the InputBitDepth is used.
     575
     576The MSBExtendedBitDepth becomes the effective file InputBitDepth for subsequent processing.
     577\\
     578
    491579\Option{InternalBitDepth} &
    492 \ShortOption{\None} &
    493 \Default{0 \\ (InputBitDepth)} &
    494 Specifies the bit depth used for coding.
     580%\ShortOption{\None} &
     581\Default{0} &
     582Specifies the bit depth used for coding. When 0, the setting defaults to the
     583value of the MSBExtendedBitDepth.
    495584
    496585If the input video is a different bit depth to InternalBitDepth, it is
     
    499588\left\lfloor
    500589 \frac{\mathrm{Pel} * 2^{\mathrm{InternalBitDepth}}}{
    501      2^{\mathrm{InputBitDepth}}}
     590     2^{\mathrm{MSBExtendedBitDepth}}}
    502591\right\rfloor
    503592\end{displaymath}
    504593
    505594Note: The effect of this option is as if the input video is externally
    506 converted to the InternalBitDepth and then coded with this value as
    507 InputBitDepth.  The codec has no notion of two different bit depths.
     595converted to the MSBExtendedBitDepth and then to the InternalBitDepth
     596and then coded with this value as InputBitDepth. The codec has no
     597notion of different bit depths.
    508598\\
    509599
    510600\Option{OutputBitDepth} &
    511 \ShortOption{\None} &
    512 \Default{0 \\ (InternalBitDepth)} &
     601%\ShortOption{\None} &
     602\Default{0} &
    513603Specifies the bit depth of the output locally reconstructed video file.
    514 
     604When 0, the setting defaults to the value of InternalBitDepth.
    515605Note: This option has no effect on the decoding process.
    516606\\
    517607
    518608\Option{InputBitDepthC}%
     609\Option{MSBExtendedBitDepthC}%
    519610\Option{InternalBitDepthC}%
    520611\Option{OutputBitDepthC} &
    521 \ShortOption{\None} &
    522 \Default{(InputBitDepth)}%
    523 \Default{(InternalBitDepth)}%
    524 \Default{(InternalBitDepthC)} &
     612%\ShortOption{\None} &
     613\Default{0}%
     614\Default{0}%
     615\Default{0}%
     616\Default{0} &
    525617Specifies the various bit-depths for chroma components.  These only need
    526618to be specified if non-equal luma and chroma bit-depth processing is
    527 required.
    528 \\
    529 
    530 \Option{ConformanceMode} &
    531 \ShortOption{\None} &
    532 \Default{0} &
    533 Specifies the conformance mode (cropping/padding parameters) to be applied to the input
    534 video. The following modes are available:
    535 \par
    536 \begin{tabular}{cp{0.45\textwidth}}
     619required. When 0, the setting defaults to the corresponding non-Chroma value.
     620\\
     621
     622\Option{InputColourSpaceConvert} &
     623%\ShortOption{\None} &
     624\Default{\NotSet} &
     625The colour space conversion to apply to input video. Permitted values are:
     626\par
     627\begin{tabular}{lp{0.3\textwidth}}
     628  UNCHANGED & No colour space conversion is applied \\
     629  YCbCrToYCrCb & Swap the second and third components \\
     630  YCbCrtoYYY & Set the second and third components to the values in the first \\
     631  RGBtoGBR & Reorder the three components \\
     632\end{tabular}
     633\par
     634If no value is specified, no colour space conversion is applied. The list may eventually also include RGB to YCbCr or YCgCo conversions.
     635\\
     636
     637\Option{SNRInternalColourSpace} &
     638%\ShortOption{\None} &
     639\Default{false} &
     640When this is set true, then no colour space conversion is applied prior to PSNR calculation, otherwise the inverse of InputColourSpaceConvert is applied.
     641\\
     642
     643\Option{OutputInternalColourSpace} &
     644%\ShortOption{\None} &
     645\Default{false} &
     646When this is set true, then no colour space conversion is applied to the reconstructed video, otherwise the inverse of InputColourSpaceConvert is applied.
     647\\
     648
     649\Option{InputChromaFormat} &
     650%\ShortOption{\None} &
     651\Default{420} &
     652Specifies the chroma format used in the input file. Permitted values (depending on the profile) are 400, 420, 422 or 444.
     653\\
     654
     655\Option{ChromaFormatIDC (-cf)} &
     656%\ShortOption{-cf} &
     657\Default{0} &
     658Specifies the chroma format to use for processing. Permitted values (depending on the profile) are 400, 420, 422 or 444; the value of 0 indicates that the value of InputChromaFormat should be used instead.
     659\\
     660
     661\Option{MSEBasedSequencePSNR} &
     662%\ShortOption{\None} &
     663\Default{false} &
     664When 0, the PSNR output is a linear average of the frame PSNRs; when 1, additional PSNRs are output which are formed from the average MSE of all the frames. The latter is useful when coding near-losslessly, where occasional frames become lossless.
     665\\
     666
     667\Option{PrintFrameMSE} &
     668%\ShortOption{\None} &
     669\Default{false} &
     670When 1, the Mean Square Error (MSE) values of each frame will also be output alongside the default PSNR values.
     671\\
     672
     673\Option{PrintSequenceMSE} &
     674%\ShortOption{\None} &
     675\Default{false} &
     676When 1, the Mean Square Error (MSE) values of the entire sequence will also be output alongside the default PSNR values.
     677\\
     678
     679\Option{SummaryOutFilename} &
     680%\ShortOption{\None} &
     681\Default{false} &
     682Filename to use for producing summary output file. If empty, do not produce a file.
     683\\
     684
     685\Option{SummaryPicFilenameBase} &
     686%\ShortOption{\None} &
     687\Default{false} &
     688Base filename to use for producing summary picture output files. The actual filenames used will have I.txt, P.txt and B.txt appended. If empty, do not produce a file.
     689\\
     690
     691\Option{SummaryVerboseness} &
     692%\ShortOption{\None} &
     693\Default{false} &
     694Specifies the level of the verboseness of the text output.
     695\\
     696
     697\Option{CabacZeroWordPaddingEnabled} &
     698%\ShortOption{\None} &
     699\Default{false} &
     700When 1, CABAC zero word padding will be enabled. This is currently not the default value for the setting.
     701\\
     702
     703\Option{ConformanceWindowMode} &
     704%\ShortOption{\None} &
     705\Default{0} &
     706Specifies how the parameters related to the conformance window are interpreted (cropping/padding).
     707The following modes are available:
     708\par
     709\begin{tabular}{cp{0.43\textwidth}}
    5377100 & No cropping / padding \\
    5387111 & Automatic padding to the next minimum CU size \\
    5397122 & Padding according to parameters HorizontalPadding and VerticalPadding \\
    540 3 & Cropping according to parameters ConfLeft, ConfRight, ConfTop and ConfBottom \\
    541 \end{tabular}
    542 \\
    543 
    544 \Option{HorizontalPadding}%
    545 \Option{VerticalPadding} &
    546 \ShortOption{-pdx}%
    547 \ShortOption{-pdy} &
     7133 & Cropping according to parameters ConfWinLeft, ConfWinRight, ConfWinTop and ConfWinBottom \\
     714\end{tabular}
     715\\
     716
     717\Option{HorizontalPadding (-pdx)}%
     718\Option{VerticalPadding (-pdy)} &
     719%\ShortOption{-pdx}%
     720%\ShortOption{-pdy} &
    548721\Default{0} &
    549722Specifies the horizontal and vertical padding to be applied to the input
    550 video in luma samples.  Must be a multiple of the chroma resolution
    551 (e.g. a multiple of two for 4:2:0).
    552 \\
    553 
    554 \Option{ConfLeft}%
    555 \Option{ConfRight}%
    556 \Option{ConfTop}%
    557 \Option{ConfBottom} &
    558 \ShortOption{\None} &
     723video in luma samples when ConformanceWindowMode is 2.  Must be a multiple of
     724the chroma resolution (e.g. a multiple of two for 4:2:0).
     725\\
     726
     727\Option{ConfWinLeft}%
     728\Option{ConfWinRight}%
     729\Option{ConfWinTop}%
     730\Option{ConfWinBottom} &
     731%\ShortOption{\None} &
    559732\Default{0} &
    560733Specifies the horizontal and vertical cropping to be applied to the
    561 input video in luma samples.  Must be a multiple of the chroma
    562 resolution (e.g. a multiple of two for 4:2:0).
    563 \\
    564 
    565 \Option{FrameRate} &
    566 \ShortOption{-fr} &
     734input video in luma samples when ConformanceWindowMode is 3.
     735Must be a multiple of the chroma resolution (e.g. a multiple of
     736two for 4:2:0).
     737\\
     738
     739\Option{FrameRate (-fr)} &
     740%\ShortOption{-fr} &
    567741\Default{0} &
    568742Specifies the frame rate of the input video.
     
    571745\\
    572746
    573 \Option{FrameSkip} &
    574 \ShortOption{-fs} &
     747\Option{FrameSkip (-fs)} &
     748%\ShortOption{-fs} &
    575749\Default{0} &
    576750Specifies a number of frames to skip at beginning of input video file.
    577751\\
    578752
    579 \Option{FramesToBeEncoded} &
    580 \ShortOption{-f} &
    581 \Default{0 \\ (all)} &
    582 Specifies the number of frames to be encoded.
    583 \\
    584 \end{OptionTable}
     753\Option{FramesToBeEncoded (-f)} &
     754%\ShortOption{-f} &
     755\Default{0} &
     756Specifies the number of frames to be encoded. When 0, all frames are coded.
     757\\
     758
     759\Option{FieldCoding} &
     760%\ShortOption{\None} &
     761\Default{false} &
     762When 1, indicates that field-based coding is to be applied.
     763\\
     764
     765\Option{TopFieldFirst (-Tff)} &
     766%\ShortOption{\None} &
     767\Default{0} &
     768Indicates the order of the fields packed into the input frame. When 1, the top field is temporally first.
     769\\
     770
     771\Option{ClipInputVideoToRec709Range} &
     772%\ShortOption{\None} &
     773\Default{0} &
     774If 1 then clip input video to the Rec. 709 Range on loading when InternalBitDepth is less than MSBExtendedBitDepth.
     775\\
     776
     777\Option{ClipOutputVideoToRec709Range} &
     778%\ShortOption{\None} &
     779\Default{0} &
     780If 1 then clip output video to the Rec. 709 Range on saving when OutputBitDepth is less than InternalBitDepth.
     781\\
     782
     783\Option{EfficientFieldIRAPEnabled} &
     784%\ShortOption{\None} &
     785\Default{1} &
     786Enable to code fields in a specific, potentially more efficient, order.
     787\\
     788
     789\Option{HarmonizeGopFirstFieldCoupleEnabled} &
     790%\ShortOption{\None} &
     791\Default{1} &
     792Enables harmonization of Gop first field couple.
     793\\
     794
     795\end{OptionTableNoShorthand}
    585796
    586797%%
    587798%% profile, level and conformance options
    588799%%
    589 \begin{OptionTable}{Profile and level parameters}
     800\begin{OptionTableNoShorthand}{Profile and level parameters}{tab:profile}
    590801\Option{Profile} &
    591 \ShortOption{\None} &
     802%\ShortOption{\None} &
    592803\Default{none} &
    593804Specifies the profile to which the encoded bitstream complies.
    594 Valid values are: none, main, main10, main-still-picture.
     805
     806Valid HEVC Ver. 1 values are: none, main, main10, main-still-picture
     807
     808Valid HEVC Ver. 2 (RExt) values are: main-RExt, high-throughput-RExt,
     809monochrome, monochrome12, monochrome16, main12, main_422_10,
     810main_422_12, main_444, main_444_10, main_444_12, main_444_16,
     811main_intra, main_10_intra, main_12_intra, main_422_10_intra, main_422_12_intra,
     812main_444_intra, main_444_10_intra, main_444_12_intra, main_444_16_intra.
     813
     814When main-RExt is specified, the constraint flags are either manually specified, or calculated via the other supplied settings.
    595815
    596816Compatibility flags are automatically determined according to the profile.
    597 If --Profile=main, then main10 will always be signalled as compatible.
    598 If --Profile=main10, then main will be signalled as compatible if the bit-depth is 8-bit.
    599 
    600 NB: There is currently no validation that the encoder configuration complies with the profile and level constraints.
     817NB: There is currently only limited validation that the encoder configuration complies with the profile, level and tier constraints.
    601818\\
    602819
    603820\Option{Level} &
    604 \ShortOption{\None} &
     821%\ShortOption{\None} &
    605822\Default{none} &
    606823Specifies the level to which the encoded bitstream complies.
    607 Valid values are: none, 1, 2, 2.1, 3, 3.1, 4, 4.1, 5, 5.1, 5.2, 6, 6.1, 6.2.
    608 
    609 NB: There is currently no validation that the encoder configuration complies with the profile and level constraints.
     824Valid values are: none, 1, 2, 2.1, 3, 3.1, 4, 4.1, 5, 5.1, 5.2, 6, 6.1, 6.2, 8.5
     825
     826NB: There is currently only limited validation that the encoder configuration complies with the profile, level and tier constraints.
    610827\\
    611828
    612829\Option{Tier} &
    613 \ShortOption{\None} &
     830%\ShortOption{\None} &
    614831\Default{main} &
    615832Specifies the level tier to which the encoded bitsream complies.
    616833Valid values are: main, high.
    617834
    618 NB: There is currently no validation that the encoder configuration complies with the profile and level constraints.
     835NB: There is currently only limited validation that the encoder configuration complies with the profile, level and tier constraints.
     836\\
     837
     838\Option{MaxBitDepthConstraint} &
     839%\ShortOption{\None} &
     840\Default{0} &
     841For --profile=main-RExt, specifies the value to use to derive the general_max_bit_depth constraint flags for RExt profiles; when 0, use $\max(InternalBitDepth, InternalBitDepthC)$
     842\\
     843
     844\Option{MaxChromaFormatConstraint} &
     845%\ShortOption{\None} &
     846\Default{0} &
     847For --profile=main-RExt, specifies the chroma-format to use for the general profile constraints for RExt profiles; when 0, use the value of ChromaFormatIDC.
     848\\
     849
     850\Option{IntraConstraintFlag} &
     851%\ShortOption{\None} &
     852\Default{false} &
     853For --profile=main-RExt, specifies the value of general_intra_constraint_flag to use for RExt profiles.
     854\\
     855
     856\Option{OnePictureOnlyConstraintFlag} &
     857%\ShortOption{\None} &
     858\Default{false} &
     859For --profile=main-RExt, specifies the value of general_one_picture_only_constraint_flag to use for RExt profiles.
     860\\
     861
     862\Option{LowerBitRateConstraintFlag} &
     863%\ShortOption{\None} &
     864\Default{true} &
     865Specifies the value of general_lower_bit_constraint_flag to use for RExt profiles.
    619866\\
    620867
    621868\Option{ProgressiveSource} &
    622 \ShortOption{\None} &
     869%\ShortOption{\None} &
    623870\Default{false} &
    624871Specifies the value of general_progressive_source_flag
     
    626873
    627874\Option{InterlacedSource} &
    628 \ShortOption{\None} &
     875%\ShortOption{\None} &
    629876\Default{false} &
    630877Specifies the value of general_interlaced_source_flag
     
    632879
    633880\Option{NonPackedSource} &
    634 \ShortOption{\None} &
     881%\ShortOption{\None} &
    635882\Default{false} &
    636883Specifies the value of general_non_packed_constraint_flag
     
    638885
    639886\Option{FrameOnly} &
    640 \ShortOption{\None} &
     887%\ShortOption{\None} &
    641888\Default{false} &
    642889Specifies the value of general_frame_only_constraint_flag
    643890\\
    644891
    645 \end{OptionTable}
     892\end{OptionTableNoShorthand}
    646893
    647894
     
    649896%% Unit definition parameters
    650897%%
    651 \begin{OptionTable}{Unit definition parameters}
     898
     899\begin{OptionTableNoShorthand}{Unit definition parameters}{tab:unit}
    652900\Option{MaxCUWidth} &
    653 \ShortOption{\None} &
     901%\ShortOption{\None} &
    654902\Default{64} &
    655903Defines the maximum CU width.
     
    657905
    658906\Option{MaxCUHeight} &
    659 \ShortOption{\None} &
     907%\ShortOption{\None} &
    660908\Default{64} &
    661909Defines the maximum CU height.
    662910\\
    663911
    664 \Option{MaxCUSize} &
    665 \ShortOption{\None} &
     912\Option{MaxCUSize (-s)} &
     913%\ShortOption{\None} &
    666914\Default{64} &
    667915Defines the maximum CU size.
    668916\\
    669917
    670 \Option{MaxPartitionDepth} &
    671 \ShortOption{-h} &
     918\Option{MaxPartitionDepth (-h)} &
     919%\ShortOption{-h} &
    672920\Default{4} &
    673921Defines the depth of the CU tree.
     
    675923
    676924\Option{QuadtreeTULog2MaxSize} &
    677 \ShortOption{\None} &
     925%\ShortOption{\None} &
    678926\Default{6 \\ ($= \mathrm{log}_2(64)$)} &
    679927Defines the Maximum TU size in logarithm base 2.
     
    681929
    682930\Option{QuadtreeTULog2MinSize} &
    683 \ShortOption{\None} &
     931%\ShortOption{\None} &
    684932\Default{2 \\ ($= \mathrm{log}_2(4)$)} &
    685933Defines the Minimum TU size in logarithm base 2.
     
    687935
    688936\Option{QuadtreeTUMaxDepthIntra} &
    689 \ShortOption{\None} &
     937%\ShortOption{\None} &
    690938\Default{1} &
    691939Defines the depth of the TU tree for intra CUs.
     
    693941
    694942\Option{QuadtreeTUMaxDepthInter} &
    695 \ShortOption{\None} &
     943%\ShortOption{\None} &
    696944\Default{2} &
    697945Defines the depth of the TU tree for inter CUs.
    698946\\
    699 \end{OptionTable}
     947
     948\end{OptionTableNoShorthand}
    700949
    701950
     
    703952%% Coding structure parameters
    704953%%
    705 \begin{OptionTable}{Coding structure parameters}
    706 \Option{IntraPeriod} &
    707 \ShortOption{-ip} &
     954
     955\begin{OptionTableNoShorthand}{Coding structure parameters}{tab:coding-structure}
     956\Option{IntraPeriod (-ip)} &
     957%\ShortOption{-ip} &
    708958\Default{$-1$} &
    709959Specifies the intra frame period.
     
    711961\\
    712962
    713 \Option{DecodingRefreshType} &
    714 \ShortOption{-dr} &
     963\Option{DecodingRefreshType (-dr)} &
     964%\ShortOption{-dr} &
    715965\Default{0} &
    716966Specifies the type of decoding refresh to apply at the intra frame period
     
    718968\par
    719969\begin{tabular}{cp{0.45\textwidth}}
    720 0 & Applies an I picture (not a clean random access point). \\
    721 1 & Applies a non-IDR clean random access point (open GOP). \\
    722 2 & Applies an IDR random access point (closed GOP). \\
    723 \end{tabular}
    724 \\
    725 
    726 \Option{GOPSize} &
    727 \ShortOption{-g} &
     9700 & Applies an I picture (not a intra random access point). \\
     9711 & Applies a CRA intra random access point (open GOP). \\
     9722 & Applies an IDR intra random access point (closed GOP). \\
     9733 & Use recovery point SEI messages to indicate random access. \\
     974\end{tabular}
     975\\
     976
     977\Option{GOPSize (-g)} &
     978%\ShortOption{-g} &
    728979\Default{1} &
    729980Specifies the size of the cyclic GOP structure.
     
    731982
    732983\Option{Frame\emph{N}} &
    733 \ShortOption{\None} &
     984%\ShortOption{\None} &
    734985\Default{\NotSet} &
    735986Multiple options that define the cyclic GOP structure that will be used
     
    739990See section~\ref{sec:gop-structure} for further details.
    740991\\
    741 
    742 \Option{ListCombination} &
    743 \ShortOption{-lc} &
    744 \Default{true} &
    745 Enables or disables the use of the combined reference list for uni-prediction
    746 in B-slices.
    747 \par
    748 \begin{tabular}{cp{0.45\textwidth}}
    749   0 & Reference list~0 and reference list~1 are identical and reference
    750       list~0 is used as the combined reference list. \\
    751   1 & The combined reference list is derived from reference list~0 and
    752       reference list~1. \\
    753 \end{tabular}
    754 NB: LComb can only be 0 in low delay coding (more precisely, when list 0
    755 and list 1 are the same)
    756 \\
    757 \end{OptionTable}
    758 
     992\end{OptionTableNoShorthand}
    759993
    760994%%
    761995%% Motion estimation parameters
    762996%%
    763 \begin{OptionTable}{Motion estimation parameters}
     997
     998\begin{OptionTableNoShorthand}{Motion estimation parameters}{tab:motion-estimation}
    764999\Option{FastSearch} &
    765 \ShortOption{\None} &
    766 \Default{true} &
     1000%\ShortOption{\None} &
     1001\Default{1} &
    7671002Enables or disables the use of a fast motion search.
    7681003\par
     
    7701005 0 & Full search method \\
    7711006 1 & Fast search method \\
    772 \end{tabular}
    773 \\
    774 
    775 \Option{SearchRange} &
    776 \ShortOption{-sr} &
     1007 2 & Previous motion vector fast search method \\
     1008\end{tabular}
     1009\\
     1010
     1011\Option{SearchRange (-sr)} &
     1012%\ShortOption{-sr} &
    7771013\Default{96} &
    7781014Specifies the search range used for motion estimation.
     
    7841020
    7851021\Option{BipredSearchRange} &
    786 \ShortOption{\None} &
     1022%\ShortOption{\None} &
    7871023\Default{4} &
    7881024Specifies the search range used for bi-prediction refinement in motion
     
    7901026\\
    7911027
     1028\Option{ClipForBiPredMEEnabled} &
     1029%\ShortOption{\None} &
     1030\Default{0} &
     1031Enables clipping in the Bi-Pred ME, which prevents values over- or under-flowing. It is usually disabled to reduce encoder run-time.
     1032\\
     1033
     1034\Option{FastMEAssumingSmootherMVEnabled} &
     1035%\ShortOption{\None} &
     1036\Default{0} &
     1037Enables fast ME assuming a smoother MV.
     1038\\
     1039
    7921040\Option{HadamardME} &
    793 \ShortOption{\None} &
     1041%\ShortOption{\None} &
    7941042\Default{true} &
    7951043Enables or disables the use of the Hadamard transform in fractional-pel motion
     
    8031051
    8041052\Option{ASR} &
    805 \ShortOption{\None} &
     1053%\ShortOption{\None} &
    8061054\Default{false} &
    8071055Enables or disables the use of adaptive search ranges, where the motion
     
    8191067\end{displaymath}
    8201068\\
    821 \end{OptionTable}
     1069
     1070\Option{MaxNumMergeCand} &
     1071%\ShortOption{\None} &
     1072\Default{5} &
     1073Specifies the maximum number of merge candidates to use.
     1074\\
     1075
     1076\Option{DisableIntraInInter} &
     1077%\ShortOption{\None} &
     1078\Default{0} &
     1079Flag to disable intra PUs in inter slices.
     1080\\
     1081
     1082\end{OptionTableNoShorthand}
    8221083
    8231084
     
    8251086%% Mode decision parameters
    8261087%%
    827 \begin{OptionTable}{Mode decision parameters}
    828 \Option{LambdaModifier$N$} &
    829 \ShortOption{-LM$N$} &
     1088
     1089\begin{OptionTableNoShorthand}{Mode decision parameters}{tab:mode-decision}
     1090\Option{LambdaModifier$N$ (-LM$N$)} &
     1091%\ShortOption{-LM$N$} &
    8301092\Default{1.0} &
    8311093Specifies a value that is multiplied with the Lagrange multiplier
     
    8331095when encoding temporal layer~$N$.
    8341096\par
    835 $N$ may be in the range 0--7.
     1097$N$ may be in the range 0 (inclusive) to 7 (exclusive).
     1098\\
     1099
     1100\Option{ECU} &
     1101%\ShortOption{\None} &
     1102\Default{false} &
     1103Enables or disables the use of early CU determination.  When enabled, skipped CUs will not be split further.
     1104\\
     1105
     1106\Option{CFM} &
     1107%\ShortOption{\None} &
     1108\Default{false} &
     1109Enables or disables the use of Cbf-based fast encoder mode.  When enabled, once a 2Nx2N CU has been evaluated, if the RootCbf is 0, further PU splits will not be evaluated.
     1110\\
     1111
     1112\Option{ESD} &
     1113%\ShortOption{\None} &
     1114\Default{false} &
     1115Enables or disables the use of early skip detection.  When enabled, the skip mode will be tested before any other.
    8361116\\
    8371117
    8381118\Option{FEN} &
    839 \ShortOption{\None} &
     1119%\ShortOption{\None} &
    8401120\Default{false} &
    8411121Enables or disables the use of fast encoder mode.  When enabled,
     
    8501130
    8511131\Option{FDM} &
    852 \ShortOption{\None} &
     1132%\ShortOption{\None} &
    8531133\Default{true} &
    8541134Enables or disables the use of fast encoder decisions for 2Nx2N merge
     
    8591139
    8601140\Option{RDpenalty} &
    861 \ShortOption{\None} &
     1141%\ShortOption{\None} &
    8621142\Default{0} &
    8631143RD-penalty for 32x32 TU for intra in non-intra slices.
     
    8711151\\
    8721152
    873 \end{OptionTable}
     1153\end{OptionTableNoShorthand}
    8741154
    8751155%%
    8761156%% Quantization parameters
    8771157%%
    878 \begin{OptionTable}{Quantization parameters}
    879 \Option{QP} &
    880 \ShortOption{-q} &
     1158\begin{OptionTableNoShorthand}{Quantization parameters}{tab:quantization}
     1159\Option{QP (-q)} &
     1160%\ShortOption{-q} &
    8811161\Default{30.0} &
    882 Specifies the base value of the quantization parameter.
    883 \\
    884 
    885 \Option{CbQpOffset}%
    886 \Option{CrQpOffset} &
    887 \ShortOption{-cbqpofs}%
    888 \ShortOption{-crqpofs} &
     1162Specifies the base value of the quantization parameter. If it is non-integer, the QP is switched once during encoding.
     1163\\
     1164
     1165\Option{CbQpOffset (-cbqpofs)}%
     1166\Option{CrQpOffset (-crqpofs)} &
     1167%\ShortOption{-cbqpofs}%
     1168%\ShortOption{-crqpofs} &
    8891169\Default{0}%
    8901170\Default{0} &
     
    8951175\\
    8961176
    897 \Option{MaxCuDQPDepth} &
    898 \ShortOption{\None} &
     1177\Option{MaxCuDQPDepth (-dqd)} &
     1178%\ShortOption{\None} &
    8991179\Default{0} &
    9001180Defines maximum depth of a minimum CuDQP for sub-LCU-level delta QP.
     
    9031183
    9041184\Option{RDOQ} &
    905 \ShortOption{\None} &
     1185%\ShortOption{\None} &
    9061186\Default{true} &
    907 Enables or disables rate-distortion-optimized quantization.
     1187Enables or disables rate-distortion-optimized quantization for transformed TUs.
    9081188\\
    9091189
    9101190\Option{RDOQTS} &
    911 \ShortOption{\None} &
     1191%\ShortOption{\None} &
    9121192\Default{true} &
    9131193Enables or disables rate-distortion-optimized quantization for transform-skipped TUs.
    9141194\\
    9151195
    916 \Option{DeltaQpRD} &
    917 \ShortOption{-dqr} &
     1196\Option{SelectiveRDOQ} &
     1197%\ShortOption{\None} &
     1198\Default{false} &
     1199Enables or disables selective rate-distortion-optimized quantization.
     1200A simple quantization is use to pre-analyze, whether to bypass the RDOQ process or not.
     1201If all the coefficients are quantized to 0, the RDOQ process is bypassed.
     1202Otherwise, the RDOQ process is performed as usual.
     1203\\
     1204
     1205\Option{DeltaQpRD (-dqr)} &
     1206%\ShortOption{-dqr} &
    9181207\Default{0} &
    9191208Specifies the maximum QP offset at slice level for multi-pass slice
     
    9231212\\
    9241213
    925 \Option{MaxDeltaQP} &
    926 \ShortOption{-d} &
     1214\Option{MaxDeltaQP (-d)} &
     1215%\ShortOption{-d} &
    9271216\Default{0} &
    9281217Specifies the maximum QP offset at the largest coding unit level for
     
    9331222\\
    9341223
    935 \Option{dQPFile} &
    936 \ShortOption{-m} &
     1224\Option{dQPFile (-m)} &
     1225%\ShortOption{-m} &
    9371226\Default{\NotSet} &
    9381227Specifies a file containing a list of QP deltas. The $n$-th line
     
    9411230\\
    9421231
    943 \Option{AdaptiveQpSelection} &
    944 \ShortOption{-aqps} &
     1232\Option{AdaptiveQp (-aq)} &
     1233%\ShortOption{-aq} &
     1234\Default{false} &
     1235Enable or disable QP adaptation based upon a psycho-visual model.
     1236\\
     1237
     1238\Option{MaxQPAdaptationRange (-aqr)} &
     1239%\ShortOption{-aqps} &
     1240\Default{6} &
     1241Specifies the maximum QP adaptation range.
     1242\\
     1243
     1244\Option{AdaptiveQpSelection (-aqps)} &
     1245%\ShortOption{-aqps} &
    9451246\Default{false} &
    9461247Specifies whether QP values for non-I frames will be calculated on the
    9471248fly based on statistics of previously coded frames.
    9481249\\
    949 \Option{RecalculateQPAccordingToLambda} &
    950 \ShortOption{\None} &
     1250
     1251\Option{RecalculateQP...} \Option{AccordingToLambda} &
     1252%\ShortOption{\None} &
    9511253\Default{false} &
    9521254Recalculate QP values according to lambda values. Do not suggest to be enabled in all intra case.
    9531255\\
    954 \end{OptionTable}
     1256
     1257\Option{ScalingList} &
     1258%\ShortOption{\None} &
     1259\Default{0} &
     1260Controls the specification of scaling lists:
     1261\par
     1262\begin{tabular}{cp{0.45\textwidth}}
     1263 0 & Scaling lists are disabled \\
     1264 1 & Use default scaling lists \\
     1265 2 & Scaling lists are specified in the file indicated by ScalingListFile \\
     1266\end{tabular}
     1267\\
     1268
     1269\Option{ScalingListFile} &
     1270%\ShortOption{\None} &
     1271\Default{\NotSet} &
     1272When ScalingList is set to 2, this parameter indicates the name of the file, which contains the defined scaling lists.
     1273If ScalingList is set to 2 and this parameter is an empty string, information on the format of the scaling list file
     1274is output and the encoder stops.
     1275\\
     1276
     1277\Option{MaxCUChromaQpAdjustmentDepth} &
     1278%\ShortOption{\None} &
     1279\Default{-1} &
     1280Specifies the maximum depth for CU chroma QP adjustment; if negative, CU chroma QP adjustment is disabled.
     1281\\
     1282
     1283\end{OptionTableNoShorthand}
    9551284
    9561285
     
    9581287%% Slice coding parameters
    9591288%%
    960 \begin{OptionTable}{Slice coding parameters}
     1289\begin{OptionTableNoShorthand}{Slice coding parameters}{tab:slice-coding}
    9611290%\Option{SliceGranularity} &
    9621291%\ShortOption{\None} &
     
    9761305
    9771306\Option{SliceMode} &
    978 \ShortOption{\None} &
     1307%\ShortOption{\None} &
    9791308\Default{0} &
    9801309Controls the slice partitioning method in conjunction with
     
    9901319
    9911320\Option{SliceArgument} &
    992 \ShortOption{\None} &
     1321%\ShortOption{\None} &
    9931322\Default{\NotSet} &
    9941323Specifies the maximum number of CTUs, bytes or tiles in a slice depending on the
     
    9971326
    9981327\Option{SliceSegmentMode} &
    999 \ShortOption{\None} &
     1328%\ShortOption{\None} &
    10001329\Default{0} &
    10011330Enables (dependent) slice segment coding in conjunction with
     
    10111340
    10121341\Option{SliceSegmentArgument} &
    1013 \ShortOption{\None} &
     1342%\ShortOption{\None} &
    10141343\Default{\NotSet} &
    10151344Defines the maximum number of CTUs, bytes or tiles a slice segment
     
    10181347
    10191348\Option{WaveFrontSynchro} &
    1020 \ShortOption{\None} &
     1349%\ShortOption{\None} &
    10211350\Default{false} &
    10221351Enables the use of specific CABAC probabilities synchronization at the
     
    10251354\\
    10261355
     1356\Option{TileUniformSpacing} &
     1357%\ShortOption{\None} &
     1358\Default{false} &
     1359Controls the mode used to determine per row and column tile sizes.
     1360\par
     1361\begin{tabular}{cp{0.45\textwidth}}
     1362 0 & Each tile column width and tile row height is explicitly set
     1363     by TileColumnWidthArray and TileRowHeightArray respectively \\
     1364 1 & Tile columns and tile rows are uniformly spaced. \\
     1365\end{tabular}
     1366\\
     1367
    10271368\Option{NumTileColumnsMinus1}%
    10281369\Option{NumTileRowsMinus1} &
    1029 \ShortOption{\None} &
     1370%\ShortOption{\None} &
    10301371\Default{0} &
    10311372Specifies the tile based picture partitioning geometry as
     
    10341375\\
    10351376
    1036 \Option{UniformSpacingIdc} &
    1037 \ShortOption{\None} &
    1038 \Default{0} &
    1039 Controls the mode used to determine per row and column tile sizes.
    1040 \par
    1041 \begin{tabular}{cp{0.45\textwidth}}
    1042  0 & Each tile column width and tile row height is explicitly set
    1043      by ColumnWidthArray and RowHeightArray respectively \\
    1044  1 & Tile columns and tile rows are uniformly spaced. \\
    1045 \end{tabular}
    1046 \\
    1047 
    1048 \Option{ColumnWidthArray}%
    1049 \Option{RowHeightArray} &
    1050 \ShortOption{\None} &
     1377\Option{TileColumnWidthArray}%
     1378\Option{TileRowHeightArray} &
     1379%\ShortOption{\None} &
    10511380\Default{\NotSet} &
    10521381Specifies a space or comma separated list of widths and heights,
     
    10541383list corresponds to the leftmost tile column or topmost tile row.
    10551384\\
    1056 \end{OptionTable}
     1385\end{OptionTableNoShorthand}
    10571386
    10581387
     
    10611390%% Deblocking filter parameters
    10621391%%
    1063 \begin{OptionTable}{Deblocking filter parameters}
     1392\begin{OptionTableNoShorthand}{Deblocking filter parameters}{tab:deblocking-filter}
    10641393\Option{LoopFilterDisable} &
    1065 \ShortOption{\None} &
     1394%\ShortOption{\None} &
    10661395\Default{false} &
    10671396Enables or disables the in-loop deblocking filter.
     
    10691398
    10701399\Option{LFCrossSliceBoundaryFlag} &
    1071 \ShortOption{\None} &
     1400%\ShortOption{\None} &
    10721401\Default{true} &
    10731402Enables or disables the use of in-loop filtering across slice
     
    10751404\\
    10761405
    1077 \Option{DeblockingFilterControlPresent}&
    1078 \ShortOption{\None}&
    1079 \Default{false}&
    1080 Enables or disables the presence of the deblocking filter control
    1081 parameters in the picture parameter set and in the slice segment header.
    1082 When disabled, the default deblocking filter parameters are used.
    1083 \\
    1084 
    10851406\Option{LoopFilterOffsetInPPS}&
    1086 \ShortOption{\None}&
     1407%\ShortOption{\None}&
    10871408\Default{false}&
    10881409If enabled, the in-loop deblocking filter control parameters are sent in PPS.
     
    10971418
    10981419\Option{LoopFilterTcOffset_div2}&
    1099 \ShortOption{\None}&
     1420%\ShortOption{\None}&
    11001421\Default{0}&
    11011422Specifies the base value for the in-loop deblocking filter parameter tc_offset_div2. The final value of tc_offset_div2
     
    11041425
    11051426\Option{LoopFilterBetaOffset_div2}&
    1106 \ShortOption{\None}&
     1427%\ShortOption{\None}&
    11071428\Default{0}&
    11081429Specifies the base value for the in-loop deblocking filter parameter beta_offset_div2. The final value of beta_offset_div2
     
    11101431\\
    11111432
    1112 \end{OptionTable}
     1433\Option{DeblockingFilterMetric}&
     1434%\ShortOption{\None}&
     1435\Default{false}&
     1436Enables or disables the use of a deblocking filter metric to evaluate the suitability of deblocking. If enabled then
     1437LoopFilterOffsetInPPS and LoopFilterDisable must be 0.
     1438\\
     1439
     1440\Option{LFCrossSliceBoundaryFlag}&
     1441%\ShortOption{\None}&
     1442\Default{true}&
     1443Enables or disables the use of a deblocking across tile boundaries.
     1444\\
     1445
     1446\end{OptionTableNoShorthand}
    11131447
    11141448
     
    11171451%% Coding tools parameters
    11181452%%
    1119 \begin{OptionTable}{Coding tools parameters}
    1120 %\Option{ALF} &
    1121 %\ShortOption{\None} &
    1122 %\Default{true} &
    1123 %Enables or disables the adaptive loop filter.
    1124 %\\
    1125 
    1126 %\Option{ALFLowLatencyEncode} &
    1127 %\ShortOption{\None} &
    1128 %\Default{false} &
    1129 %Specifies the operating mode (low latency or high efficiency) of the
    1130 %adaptive loop filter.
    1131 %\\
     1453
     1454\begin{OptionTableNoShorthand}{Coding tools parameters}{tab:coding-tools}
     1455
     1456\Option{AMP} &
     1457%\ShortOption{\None} &
     1458\Default{true} &
     1459Enables or disables the use of asymmetric motion partitions.
     1460\\
    11321461
    11331462\Option{SAO} &
    1134 \ShortOption{\None} &
     1463%\ShortOption{\None} &
    11351464\Default{true} &
    11361465Enables or disables the sample adaptive offset (SAO) filter.
    11371466\\
    11381467
     1468\Option{TestSAODisableAtPictureLevel} &
     1469%\ShortOption{\None} &
     1470\Default{false} &
     1471Enables the testing of disabling SAO at the picture level after having analysed all blocks.
     1472\\
     1473
     1474\Option{SaoEncodingRate} &
     1475%\ShortOption{\None} &
     1476\Default{0.75} &
     1477When >0 SAO early picture termination is enabled for luma and chroma.
     1478\\
     1479
     1480\Option{SaoEncodingRateChroma} &
     1481%\ShortOption{\None} &
     1482\Default{0.5} &
     1483The SAO early picture termination rate to use for chroma (when m_SaoEncodingRate is >0). If <=0, use results for luma.
     1484\\
     1485
    11391486\Option{SAOLcuBoundary} &
    1140 \ShortOption{\None} &
     1487%\ShortOption{\None} &
    11411488\Default{false} &
    11421489Enables or disables SAO parameter estimation using non-deblocked pixels
     
    11441491\\
    11451492
    1146 %\Option{LMChroma} &
    1147 %\ShortOption{\None} &
    1148 %\Default{true} &
    1149 %Enables or disables the intra chroma-from-luma prediction mode.
    1150 %\\
    1151 
    1152 %\Option{NSQT} &
    1153 %\ShortOption{\None} &
    1154 %\Default{true} &
    1155 %Enables or disables the non-square quadtree transform.
    1156 %\\
    1157 
    11581493\Option{ConstrainedIntraPred} &
    1159 \ShortOption{\None} &
     1494%\ShortOption{\None} &
    11601495\Default{false} &
    11611496Enables or disables constrained intra prediction.  Constrained intra
     
    11641499\\
    11651500
     1501\Option{FastUDIUseMPMEnabled} &
     1502%\ShortOption{\None} &
     1503\Default{true} &
     1504If enabled, adapt intra direction search, accounting for MPM
     1505\\
     1506
     1507\Option{FastMEForGenBLowDelayEnabled} &
     1508%\ShortOption{\None} &
     1509\Default{true} &
     1510If enabled use a fast ME for generalised B Low Delay slices
     1511\\
     1512
     1513\Option{UseBLambdaForNonKeyLowDelayPictures} &
     1514%\ShortOption{\None} &
     1515\Default{true} &
     1516Enables use of B-Lambda for non-key low-delay pictures
     1517\\
     1518
    11661519\Option{TransquantBypassEnableFlag} &
    1167 \ShortOption{\None} &
     1520%\ShortOption{\None} &
    11681521\Default{false} &
    11691522Enables or disables the ability to bypass the transform,
     
    11761529
    11771530\Option{CUTransquantBypassFlagForce} &
    1178 \ShortOption{\None} &
     1531%\ShortOption{\None} &
    11791532\Default{0} &
    11801533Controls the per CU transformation, quantization and filtering
     
    11911544
    11921545\Option{PCMEnabledFlag} &
    1193 \ShortOption{\None} &
     1546%\ShortOption{\None} &
    11941547\Default{false} &
    11951548Enables or disables the use of PCM. The encoder will use cost measures on a CU-by-CU basis to determine if PCM mode is to be applied.
     
    11971550
    11981551\Option{PCMLog2MaxSize} &
    1199 \ShortOption{\None} &
     1552%\ShortOption{\None} &
    12001553\Default{5 \\ ($= \mathrm{log}_2(32)$)} &
    12011554Specifies log2 of the maximum PCM block size. When PCM is enabled, the
     
    12051558
    12061559\Option{PCMLog2MinSize} &
    1207 \ShortOption{\None} &
     1560%\ShortOption{\None} &
    12081561\Default{3} &
    12091562Specifies log2 of the minimum PCM block size. When PCM is enabled, the
     
    12151568
    12161569\Option{PCMInputBitDepthFlag} &
    1217 \ShortOption{\None} &
    1218 \Default{1} &
     1570%\ShortOption{\None} &
     1571\Default{true} &
    12191572If enabled specifies that PCM sample bit-depth is set equal to
    12201573InputBitDepth. Otherwise, it specifies that PCM sample bit-depth is set
     
    12231576
    12241577\Option{PCMFilterDisableFlag} &
    1225 \ShortOption{\None} &
     1578%\ShortOption{\None} &
    12261579\Default{false} &
    12271580If enabled specifies that loop-filtering on reconstructed samples of PCM
     
    12311584\\
    12321585
    1233 \Option{WeightedPredP} &
    1234 \ShortOption{-wpP} &
     1586\Option{WeightedPredP (-wpP)} &
     1587%\ShortOption{-wpP} &
    12351588\Default{false} &
    12361589Enables the use of weighted prediction in P slices.
    12371590\\
    12381591
    1239 \Option{WeightedPredB} &
    1240 \ShortOption{-wpB} &
     1592\Option{WeightedPredB (-wpB)} &
     1593%\ShortOption{-wpB} &
    12411594\Default{false} &
    12421595Enables the use of weighted prediction in B slices.
    12431596\\
    12441597
    1245 \Option{SignHideFlag} &
    1246 \ShortOption{-SBH} &
     1598\Option{Log2ParallelMergeLevel} &
     1599%\ShortOption{\None} &
     1600\Default{2} &
     1601Defines the PPS-derived Log2ParMrgLevel variable.
     1602\\
     1603
     1604\Option{SignHideFlag (-SBH)} &
     1605%\ShortOption{-SBH} &
    12471606\Default{true} &
    12481607If enabled specifies that for each 4x4 coefficient group for which the
     
    12541613\\
    12551614
    1256 \Option{StrongIntraSmoothing} &
    1257 \ShortOption{-sis} &
     1615\Option{StrongIntraSmoothing (-sis)} &
     1616%\ShortOption{-sis} &
    12581617\Default{true} &
    12591618If enabled specifies that for 32x32 intra prediction block, the intra smoothing
     
    12651624
    12661625\Option{TMVPMode} &
    1267 \ShortOption{\None} &
     1626%\ShortOption{\None} &
    12681627\Default{1} &
    12691628Controls the temporal motion vector prediction mode.
     
    12771636
    12781637\Option{TransformSkip} &
    1279 \ShortOption{\None} &
    1280 \Default{false} &
    1281 Enables or disables transform-skipping mode decision for 4x4 TUs
    1282 \footnote{Enables transform_skip_enabled and per 4x4 TU tests}.
     1638%\ShortOption{\None} &
     1639\Default{false} &
     1640Enables or disables transform-skipping mode decision.
    12831641\\
    12841642
    12851643\Option{TransformSkipFast} &
    1286 \ShortOption{\None} &
     1644%\ShortOption{\None} &
    12871645\Default{false} &
    12881646Enables or disables reduced testing of the transform-skipping mode
     
    12931651This option has no effect if TransformSkip is disabled.
    12941652\\
    1295 \end{OptionTable}
     1653\end{OptionTableNoShorthand}
    12961654
    12971655%%
    12981656%% Rate control parameters
    12991657%%
    1300 \begin{OptionTable}{Rate control parameters}
     1658
     1659\begin{OptionTableNoShorthand}{Rate control parameters}{tab:rate-control}
    13011660
    13021661\Option{RateControl} &
    1303 \ShortOption{\None} &
     1662%\ShortOption{\None} &
    13041663\Default{false} &
    13051664Rate control: enables rate control or not.
     
    13071666
    13081667\Option{TargetBitrate} &
    1309 \ShortOption{\None} &
     1668%\ShortOption{\None} &
    13101669\Default{0} &
    13111670Rate control: target bitrate, in bps.
     
    13131672
    13141673\Option{KeepHierarchicalBit} &
    1315 \ShortOption{\None} &
     1674%\ShortOption{\None} &
    13161675\Default{0} &
    13171676Rate control: 0: equal bit allocation among pictures;
     
    13211680
    13221681\Option{LCULevelRateControl} &
    1323 \ShortOption{\None} &
     1682%\ShortOption{\None} &
    13241683\Default{true} &
    13251684Rate control: true: LCU level RC; false: picture level RC.
     
    13271686
    13281687\Option{RCLCUSeparateModel} &
    1329 \ShortOption{\None} &
     1688%\ShortOption{\None} &
    13301689\Default{true} &
    13311690Rate control: use LCU level separate R-lambda model or not.
     
    13341693
    13351694\Option{InitialQP} &
    1336 \ShortOption{\None} &
     1695%\ShortOption{\None} &
    13371696\Default{0} &
    13381697Rate control: initial QP value for the first picture.
     
    13411700
    13421701\Option{RCForceIntraQP} &
    1343 \ShortOption{\None} &
     1702%\ShortOption{\None} &
    13441703\Default{false} &
    13451704Rate control: force intra QP to be equal to initial QP or not.
    13461705\\
    1347 \end{OptionTable}
     1706\end{OptionTableNoShorthand}
    13481707
    13491708%%
    13501709%% VUI parameters
    13511710%%
    1352 \begin{OptionTable}{VUI parameters}
    1353 \Option{VuiParametersPresent} &
    1354 \ShortOption{-vui} &
     1711\begin{OptionTableNoShorthand}{VUI parameters}{tab:VUI}
     1712\Option{VuiParametersPresent (-vui)} &
    13551713\Default{false} &
    13561714Enable generation of vui_parameters().
    13571715\\
    13581716\Option{AspectRatioInfoPresent} &
    1359 \ShortOption{} &
    13601717\Default{false} &
    13611718Signals whether aspect_ratio_idc is present.
    13621719\\
    13631720\Option{AspectRatioIdc} &
    1364 \ShortOption{} &
    13651721\Default{0} &
    13661722aspect_ratio_idc
    13671723\\
    13681724\Option{SarWidth} &
    1369 \ShortOption{} &
    13701725\Default{0} &
    13711726Specifies the horizontal size of the sample aspect ratio.
    13721727\\
    13731728\Option{SarHeight} &
    1374 \ShortOption{} &
    13751729\Default{0} &
    13761730Specifies the vertical size of the sample aspect ratio.
    13771731\\
    13781732\Option{OverscanInfoPresent} &
    1379 \ShortOption{} &
    13801733\Default{false} &
    13811734Signals whether overscan_info_present_flag is present.
    13821735\\
    13831736\Option{OverscanAppropriate} &
    1384 \ShortOption{} &
    13851737\Default{false} &
    13861738Indicates whether cropped decoded pictures are suitable for display using overscan.
     
    13921744\\
    13931745\Option{VideoSignalTypePresent} &
    1394 \ShortOption{} &
    13951746\Default{false} &
    13961747Signals whether video_format, video_full_range_flag, and colour_description_present_flag are present.
    13971748\\
    13981749\Option{VideoFormat} &
    1399 \ShortOption{} &
    14001750\Default{5} &
    14011751Indicates representation of pictures.
    14021752\\
    14031753\Option{VideoFullRange} &
    1404 \ShortOption{} &
    14051754\Default{false} &
    14061755Indicates the black level and range of luma and chroma signals.
     
    14121761\\
    14131762\Option{ColourDescriptionPresent} &
    1414 \ShortOption{} &
    14151763\Default{false} &
    14161764Signals whether colour_primaries, transfer_characteristics and matrix_coefficients are present.
    14171765\\
    14181766\Option{ColourPrimaries} &
    1419 \ShortOption{} &
    14201767\Default{2} &
    14211768Indicates chromaticity coordinates of the source primaries.
    14221769\\
    14231770\Option{TransferCharateristics} &
    1424 \ShortOption{} &
    14251771\Default{2} &
    14261772Indicates the opto-electronic transfer characteristics of the source.
    14271773\\
    14281774\Option{MatrixCoefficients} &
    1429 \ShortOption{} &
    14301775\Default{2} &
    14311776Describes the matrix coefficients used in deriving luma and chroma from RGB primaries.
    14321777\\
    14331778\Option{ChromaLocInfoPresent} &
    1434 \ShortOption{} &
    14351779\Default{false} &
    14361780Signals whether chroma_sample_loc_type_top_field and chroma_sample_loc_type_bottom_field are present.
    14371781\\
    14381782\Option{ChromaSampleLocTypeTopField} &
    1439 \ShortOption{} &
    14401783\Default{0} &
    14411784Specifies the location of chroma samples for top field.
    14421785\\
    14431786\Option{ChromaSampleLocTypeBottomField} &
    1444 \ShortOption{} &
    14451787\Default{0} &
    14461788Specifies the location of chroma samples for bottom field.
    14471789\\
    14481790\Option{NeutralChromaIndication} &
    1449 \ShortOption{} &
    14501791\Default{false} &
    14511792Indicates that the value of all decoded chroma samples is equal to 1<<(BitDepthCr-1).
     
    14531794
    14541795\Option{DefaultDisplayWindowFlag} &
    1455 \ShortOption{\None} &
    1456 \Default{0} &
     1796\Default{flag} &
    14571797Indicates the presence of the Default Window parameters.
    14581798\par
    14591799\begin{tabular}{cp{0.45\textwidth}}
    1460 0 & Disabled \\
    1461 1 & Enabled \\
     1800false & Disabled \\
     1801true & Enabled \\
    14621802\end{tabular}
    14631803\\
     
    14671807\Option{DefDispWinTopOffset}%
    14681808\Option{DefDispWinBottomOffset} &
    1469 \ShortOption{\None} &
    14701809\Default{0} &
    14711810Specifies the horizontal and vertical offset to be applied to the
     
    14741813\\
    14751814
     1815\Option{FrameFieldInfoPresentFlag} &
     1816\Default{false} &
     1817Specificies the value of the VUI syntax element `frame_field_info_present_flag', which indicates that pic_struct and field coding related values are present in picture timing SEI messages.
     1818\\
     1819
     1820\Option{PocProportionalToTimingFlag} &
     1821\Default{false} &
     1822Specificies the value of the VUI syntax element `vui_poc_proportional_to_timing_flag', which indicates that the POC value is proportional to the output time with respect to the first picture in the CVS.
     1823\\
     1824
     1825\Option{NumTicksPocDiffOneMinus} &
     1826\Default{0} &
     1827Specificies the value of the VUI syntax element `vui_num_ticks_poc_diff_one_minus1', which specifies the number of clock ticks corresponding to a difference of picture order count values equal to 1, and is used only when PocProportionalToTimingFlag is true.
     1828\\
     1829
    14761830\Option{BitstreamRestriction} &
    1477 \ShortOption{} &
    14781831\Default{false} &
    14791832Signals whether bitstream restriction parameters are present.
    14801833\\
    14811834\Option{TilesFixedStructure} &
    1482 \ShortOption{} &
    14831835\Default{false} &
    14841836Indicates that each active picture parameter set has the same values of the syntax elements related to tiles.
    14851837\\
    14861838\Option{MotionVectorsOverPicBoundaries} &
    1487 \ShortOption{} &
    14881839\Default{false} &
    14891840Indicates that no samples outside the picture boundaries are used for inter prediction.
    14901841\\
    14911842\Option{MaxBytesPerPicDenom} &
    1492 \ShortOption{} &
    14931843\Default{2} &
    14941844Indicates a number of bytes not exceeded by the sum of the sizes of the VCL NAL units associated with any coded picture.
    14951845\\
    14961846\Option{MaxBitsPerMinCuDenom} &
    1497 \ShortOption{} &
    14981847\Default{1} &
    14991848Indicates an upper bound for the number of bits of coding_unit() data.
    15001849\\
    15011850\Option{Log2MaxMvLengthHorizontal} &
    1502 \ShortOption{} &
    15031851\Default{15} &
    15041852Indicate the maximum absolute value of a decoded horizontal MV component in quarter-pel luma units.
    15051853\\
    15061854\Option{Log2MaxMvLengthVertical} &
    1507 \ShortOption{} &
    15081855\Default{15} &
    15091856Indicate the maximum absolute value of a decoded vertical MV component in quarter-pel luma units.
    15101857\\
    1511 \end{OptionTable}
    1512 
     1858\end{OptionTableNoShorthand}
     1859
     1860
     1861\begin{OptionTableNoShorthand}{Range Extensions (Version 2) tool parameters}{tab:rext-tools}
     1862
     1863\Option{CostMode} &
     1864\Default{lossy} &
     1865Specifies the cost mode to use.
     1866\par
     1867\begin{tabular}{lp{0.3\textwidth}}
     1868  lossy                   & $cost=distortion+\lambda \times bits$ \\
     1869  sequence_level_lossless & $cost=distortion / \lambda + bits$. \\
     1870  lossless                & As with sequence_level_lossless, but QP is also set to 0 (this will be deprecated in the future) \\
     1871  mixed_lossless_lossy    & As with sequence_level_lossless, but QP'=4 is used for pre-estimates of transquant-bypass blocks \\
     1872\end{tabular}
     1873\\
     1874
     1875\Option{ExtendedPrecision} &
     1876\Default{false} &
     1877Specifies the use of extended_precision_processing flag. Note that unless the HIGH_BIT_DEPTH_SUPPORT macro in TypeDef.h is enabled, all internal bit depths must be 8 when the ExtendedPrecision setting is enabled.
     1878This setting is only valid for the 16-bit RExt profiles.
     1879\\
     1880
     1881\Option{HighPrecisionPredictionWeighting} &
     1882\Default{false} &
     1883Specifies the value of high_precision_prediction_weighting_flag. This setting is only valid for the 16-bit or 4:4:4 RExt profiles.
     1884\\
     1885
     1886\Option{CrossComponentPrediction} &
     1887\Default{false} &
     1888When true, specifies the use of the cross component prediction tool (4:4:4 processing only). Version 1 and some Version 2 (RExt) profiles require this to be false.
     1889\\
     1890
     1891\Option{ReconBasedCrossCPredictionEstimate} &
     1892\Default{false} &
     1893If true, then when determining the alpha value for cross-component prediction, use the reconstructed residual rather than the pre-transform encoder-side residual
     1894\\
     1895
     1896\Option{SaoLumaOffsetBitShift}
     1897\Option{SaoChromaOffsetBitShift}&
     1898\Default{0}
     1899\Default{0} &
     1900Specifies the shift to apply to the SAO parameters. If negative, an estimate will be calculated based upon the initial QP. Version 1 and some Version 2 (RExt) profiles require this to be 0.
     1901\\
     1902
     1903\Option{TransformSkipLog2MaxSize} &
     1904\Default{2} &
     1905Specifies the maximum TU size for which transform-skip can be used; the minimum value is 2. Version 1 and some Version 2 (RExt) profiles require this to be 2.
     1906\\
     1907
     1908\Option{ImplicitResidualDPCM} &
     1909\Default{false} &
     1910When true, specifies the use of the implicitly signalled residual RDPCM tool (for intra). Version 1 and some Version 2 (RExt) profiles require this to be false.
     1911\\
     1912
     1913\Option{ExplicitResidualDPCM} &
     1914\Default{false} &
     1915When true, specifies the use of the explicitly signalled residual RDPCM tool (for intra-block-copy and inter). Version 1 and some Version 2 (RExt) profiles require this to be false.
     1916\\
     1917
     1918\Option{ResidualRotation} &
     1919\Default{false} &
     1920When true, specifies the use of the residual rotation tool. Version 1 and some Version 2 (RExt) profiles require this to be false.
     1921\\
     1922
     1923\Option{SingleSignificanceMapContext} &
     1924\Default{false} &
     1925When true, specifies the use of a single significance map context for transform-skipped and transquant-bypassed TUs. Version 1 and some Version 2 (RExt) profiles require this to be false.
     1926\\
     1927
     1928\Option{GolombRiceParameterAdaptation} &
     1929\Default{false} &
     1930When true, enable the adaptation of the Golomb-Rice parameter over the course of each slice. Version 1 and some Version 2 (RExt) profiles require this to be false.
     1931\\
     1932
     1933\Option{AlignCABACBeforeBypass} &
     1934\Default{false} &
     1935When true, align the CABAC engine to a defined fraction of a bit prior to coding bypass data (including sign bits) when coeff_abs_level_remaining syntax elements are present in the group.
     1936This must always be true for the high-throughput-RExt profile, and false otherwise.
     1937\\
     1938
     1939\Option{IntraReferenceSmoothing} &
     1940\Default{true} &
     1941When true, enable intra reference smoothing, otherwise disable it. Version 1 and some Version 2 (RExt) profiles require this to be true.
     1942\\
     1943
     1944\end{OptionTableNoShorthand}
     1945
     1946\subsection{Encoder SEI parameters}
     1947The table below lists the SEI messages defined for Version 1 and Range-Extensions, and if available, the respective table that lists the controls within the HM Encoder to include the messages within the bit stream.
     1948
     1949\begin{SEIListTable}{List of Version 1 and RExt SEI messages}
     1950    0 & Buffering period                         & Table \ref{tab:sei-buffering-period} \\
     1951    1 & Picture timing                           & Table \ref{tab:sei-picture-timing} \\
     1952    2 & Pan-scan rectangle                       & (Not handled)\\
     1953    3 & Filler payload                           & (Not handled)\\
     1954    4 & User data registered by Rec. ITU-T T.35  & (Not handled)\\
     1955    5 & User data unregistered                   & Decoded only\\
     1956    6 & Recovery point                           & Table \ref{tab:sei-recovery-point} \\
     1957    9 & Scene information                        & (Not handled)\\
     1958   15 & Picture snapshot                         & (Not handled)\\
     1959   16 & Progressive refinement segment start     & (Not handled)\\
     1960   17 & Progressive refinement segment end       & (Not handled)\\
     1961   19 & Film grain characteristics               & (Not handled)\\
     1962   22 & Post-filter hint                         & (Not handled)\\
     1963   23 & Tone mapping information                 & Table \ref{tab:sei-tone-mapping-info} \\
     1964   45 & Frame packing arrangement                & Table \ref{tab:sei-frame-packing-arrangement} \\
     1965   47 & Display orientation                      & Table \ref{tab:sei-display-orientation} \\
     1966  128 & Structure of pictures information        & Table \ref{tab:sei-sop-info} \\
     1967  129 & Active parameter sets                    & Table \ref{tab:sei-active-parameter-sets} \\
     1968  130 & Decoding unit information                & Table \ref{tab:sei-decoding-unit-info} \\
     1969  131 & Temporal sub-layer zero index            & Table \ref{tab:sei-temporal-level-0} \\
     1970  132 & Decoded picture hash                     & Table \ref{tab:sei-decoded-picture-hash} \\
     1971  133 & Scalable nesting                         & Table \ref{tab:sei-scalable-nesting} \\
     1972  134 & Region refresh information               & Table \ref{tab:sei-region-refresh-info} \\
     1973  135 & No display                               & Table \ref{tab:sei-no-display} \\
     1974  136 & Time code                                & Table \ref{tab:sei-time-code} \\
     1975  137 & Mastering display colour volume          & Table \ref{tab:sei-mastering-display-colour-volume} \\
     1976  138 & Segmented rectangular frame packing arrangement & Table \ref{tab:sei-seg-rect-fpa}\\
     1977  139 & Temporal motion-constrained tile sets    & Table \ref{tab:sei-tmcts} \\
     1978  140 & Chroma resampling filter hint            & Table \ref{tab:chroma-resampling-filter-hint} \\
     1979  141 & Knee function information                & Table \ref{tab:sei-knee-function} \\
     1980  142 & Colour remapping information             & (Not handled)\\
     1981  143 & Deinterlaced field identification        & (Not handled)\\
     1982\end{SEIListTable}
    15131983%%
    15141984%% SEI messages
    15151985%%
    1516 \begin{OptionTable}{SEI messages}
     1986
     1987 
     1988
     1989\begin{OptionTableNoShorthand}{Buffering period SEI message encoder parameters}{tab:sei-buffering-period}
     1990\Option{SEIBufferingPeriod} &
     1991\Default{0} &
     1992Enables or disables the insertion of the Buffering period
     1993SEI messages. This option has no effect if VuiParametersPresent is disabled.
     1994SEIBufferingPeriod requires SEIActiveParameterSets to be enabled.
     1995\\
     1996\end{OptionTableNoShorthand}
     1997
     1998
     1999
     2000\begin{OptionTableNoShorthand}{Picture timing SEI message encoder parameters}{tab:sei-picture-timing}
     2001\Option{SEIPictureTiming} &
     2002\Default{0} &
     2003Enables or disables the insertion of the Picture timing
     2004SEI messages. This option has no effect if VuiParametersPresent is disabled.
     2005\\
     2006\end{OptionTableNoShorthand}
     2007
     2008
     2009
     2010\begin{OptionTableNoShorthand}{Recovery point SEI message encoder parameters}{tab:sei-recovery-point}
     2011\Option{SEIRecoveryPoint} &
     2012\Default{0} &
     2013Enables or disables the insertion of the Recovery point
     2014SEI messages.
     2015\\
     2016\end{OptionTableNoShorthand}
     2017
     2018
     2019
     2020\begin{OptionTableNoShorthand}{Tone mapping information SEI message encoder parameters}{tab:sei-tone-mapping-info}
     2021\Option{SEIToneMappingInfo} &
     2022\Default{0} &
     2023Enables or disables the insertion of the Tone Mapping SEI message.
     2024\\
     2025\Option{SEIToneMapId} &
     2026\Default{0} &
     2027Specifies Id of Tone Mapping SEI message for a given session.
     2028\\
     2029\Option{SEIToneMapCancelFlag} &
     2030\Default{false} &
     2031Indicates that Tone Mapping SEI message cancels the persistance or follows.
     2032\\
     2033\Option{SEIToneMapPersistenceFlag} &
     2034\Default{true} &
     2035Specifies the persistence of the Tone Mapping SEI message.
     2036\\
     2037\Option{SEIToneMapCodedDataBitDepth} &
     2038\Default{8} &
     2039Specifies Coded Data BitDepth of Tone Mapping SEI messages.
     2040\\
     2041\Option{SEIToneMapTargetBitDepth} &
     2042\Default{8} &
     2043Specifies Output BitDepth of Tome mapping function.
     2044\\
     2045\Option{SEIToneMapModelId} &
     2046\Default{0} &
     2047Specifies Model utilized for mapping coded data into
     2048target_bit_depth range.
     2049\par
     2050\begin{tabular}{cp{0.35\textwidth}}
     2051  0 & linear mapping with clipping \\
     2052  1 & sigmoidal mapping \\
     2053  2 & user-defined table mapping \\
     2054  3 & piece-wise linear mapping \\
     2055  4 & luminance dynamic range mapping \\
     2056\end{tabular}
     2057\\
     2058\Option{SEIToneMapMinValue} &
     2059\Default{0} &
     2060Specifies the minimum value in mode 0.
     2061\\
     2062\Option{SEIToneMapMaxValue} &
     2063\Default{1023} &
     2064Specifies the maxmum value in mode 0.
     2065\\
     2066\Option{SEIToneMapSigmoidMidpoint} &
     2067\Default{512} &
     2068Specifies the centre point in mode 1.
     2069\\
     2070\Option{SEIToneMapSigmoidWidth} &
     2071\Default{960} &
     2072Specifies the distance between 5% and 95% values of
     2073the target_bit_depth in mode 1.
     2074\\
     2075\Option{SEIToneMapStartOfCodedInterval} &
     2076\Default{\None} &
     2077Array of user-defined mapping table.
     2078Default table can be set to the following:
     2079\par
     2080\begin{tabular}{cp{0.35\textwidth}}
     20810 12 24 36 48 60 72 84 96 108 120 132 144 156 168 180
     2082\\
     2083192 192 196 204 208 216 220 228 232 240 248 252 260 264
     2084\\
     2085272 276 284 292 292 296 300 304 308 312 320 324 328 332
     2086\\
     2087336 344 348 352 356 360 368 372 376 380 384 388 396 400
     2088\\
     2089404 408 412 420 424 428 432 436 444 444 444 448 452 456
     2090\\
     2091460 464 468 472 476 476 480 484 488 492 496 500 504 508
     2092\\
     2093508 512 516 520 524 528 532 536 540 540 544 548 552 556
     2094\\
     2095560 564 568 572 572 576 580 584 588 592 596 600 604 604
     2096\\
     2097608 612 616 620 624 628 632 636 636 640 644 648 652 656
     2098\\
     2099660 664 668 672 672 672 676 680 680 684 688 692 692 696
     2100\\
     2101700 704 704 708 712 716 716 720 724 724 728 732 736 736
     2102\\
     2103740 744 748 748 752 756 760 760 764 768 768 772 776 780
     2104\\
     2105780 784 788 792 792 796 800 804 804 808 812 812 816 820
     2106\\
     2107824 824 828 832 836 836 840 844 848 848 852 856 860 860
     2108\\
     2109860 864 864 868 872 872 876 880 880 884 884 888 892 892
     2110\\
     2111896 900 900 904 908 908 912 912 916 920 920 924 928 928
     2112\\
     2113932 936 936 940 940 944 948 948 952 956 956 960 964 964
     2114\\
     2115968 968 972 976 976 980 984 984 988 992 992 996 996 1000
     2116\\
     21171004 1004 1008 1012 1012 1016 1020 1024
     2118\\
     2119\end{tabular}
     2120\\
     2121\Option{SEIToneMapNumPivots} &
     2122\Default{0} &
     2123Specifies the number of pivot points in mode 3.
     2124\\
     2125\Option{SEIToneMapCodedPivotValue} &
     2126\Default{\None} &
     2127Array of coded pivot point in mode 3.
     2128A suggested table is:
     2129\par
     2130\begin{tabular}{cp{0.45\textwidth}}
     213164 128 256 512 768
     2132\end{tabular}
     2133\\
     2134\Option{SEIToneMapTargetPivotValue} &
     2135\Default{\None} &
     2136Array of target pivot point in mode 3.
     2137A suggested table is:
     2138\par
     2139\begin{tabular}{cp{0.45\textwidth}}
     214048 73 111 168 215
     2141\end{tabular}
     2142\\
     2143\Option{SEIToneMap...} \Option{CameraIsoSpeedIdc} &
     2144\Default{0} &
     2145Indicates the camera ISO speed for daylight illumination.
     2146\\
     2147\Option{SEIToneMap...} \Option{CameraIsoSpeedValue} &
     2148\Default{400} &
     2149Specifies the camera ISO speed for daylight illumination of Extended_ISO.
     2150\\
     2151\Option{SEIToneMap...} \Option{ExposureIndexIdc} &
     2152\Default{0} &
     2153Indicates the exposure index setting of the camera.
     2154\\
     2155\Option{SEIToneMap...} \Option{ExposureIndexValue} &
     2156\Default{400} &
     2157Specifies the exposure index setting of the cameran of Extended_ISO.
     2158\\
     2159\Option{SEIToneMapExposure...} \Option{CompensationValueSignFlag} &
     2160\Default{0} &
     2161Specifies the sign of ExposureCompensationValue.
     2162\\
     2163\Option{SEIToneMapExposure...} \Option{CompensationValueNumerator} &
     2164\Default{0} &
     2165Specifies the numerator of ExposureCompensationValue.
     2166\\
     2167\Option{SEIToneMapExposure...} \Option{CompensationValueDenomIdc} &
     2168\Default{2} &
     2169Specifies the denominator of ExposureCompensationValue.
     2170\\
     2171\Option{SEIToneMapRef...} \Option{ScreenLuminanceWhite} &
     2172\Default{350} &
     2173Specifies reference screen brightness setting in units of candela per square metre.
     2174\\
     2175\Option{SEIToneMapExtended...} \Option{RangeWhiteLevel} &
     2176\Default{800} &
     2177Indicates the luminance dynamic range.
     2178\\
     2179\Option{SEIToneMapNominal...} \Option{BlackLevelLumaCodeValue} &
     2180\Default{16} &
     2181Specifies luma sample value of the nominal black level assigned decoded pictures.
     2182\\
     2183\Option{SEIToneMapNominal...} \Option{WhiteLevelLumaCodeValue} &
     2184\Default{235} &
     2185Specifies luma sample value of the nominal white level assigned decoded pictures.
     2186\\
     2187\Option{SEIToneMapExtended...} \Option{WhiteLevelLumaCodeValue} &
     2188\Default{300} &
     2189Specifies luma sample value of the extended dynamic range assigned decoded pictures.
     2190\\
     2191\end{OptionTableNoShorthand}
     2192
     2193
     2194
     2195\begin{OptionTableNoShorthand}{Frame packing arrangement SEI message encoder parameters}{tab:sei-frame-packing-arrangement}
     2196\Option{SEIFramePacking} &
     2197\Default{0} &
     2198Enables or disables the insertion of the Frame packing arrangement SEI messages.
     2199\\
     2200\Option{SEIFramePackingType} &
     2201\Default{0} &
     2202Indicates the arrangement type in the Frame packing arrangement SEI message.
     2203This option has no effect if SEIFramePacking is disabled.
     2204\par
     2205\begin{tabular}{cp{0.35\textwidth}}
     2206  3 & Side by Side \\
     2207  4 & Top Bottom \\
     2208  5 & Frame Alternate \\
     2209\end{tabular}
     2210\\
     2211\Option{SEIFramePackingInterpretation} &
     2212\Default{0} &
     2213Indicates the constituent frames relationship in the Frame packing arrangement SEI message.
     2214This option has no effect if SEIFramePacking is disabled.
     2215\par
     2216\begin{tabular}{cp{0.35\textwidth}}
     2217  0 & Unspecified \\
     2218  1 & Frame 0 is associated with the left view of a stereo pair \\
     2219  2 & Frame 0 is associated with the right view of a stereo pair \\
     2220\end{tabular}
     2221\\
     2222\Option{SEIFramePackingQuincunx} &
     2223\Default{0} &
     2224Enables or disables the quincunx_sampling signalling in the
     2225Frame packing arrangement SEI messages. This option has no
     2226effect if SEIFramePacking is disabled.
     2227\\
     2228\Option{SEIFramePackingId} &
     2229\Default{0} &
     2230Indicates the session number in the Frame packing arrangement
     2231SEI messages. This option has no effect if SEIFramePacking is
     2232disabled.
     2233\\
     2234\end{OptionTableNoShorthand}
     2235
     2236
     2237
     2238\begin{OptionTableNoShorthand}{Display orientation SEI message encoder parameters}{tab:sei-display-orientation}
     2239\Option{SEIDisplayOrientation} &
     2240\Default{0} &
     2241Enables or disables the insertion of the Display orientation
     2242SEI messages.
     2243\par
     2244\begin{tabular}{cp{0.20\textwidth}}
     2245  0 & Disabled \\
     2246  N: $0 < N < (2^{16} - 1)$ & Enable display orientation SEI message with
     2247  \mbox{anticlockwise_rotation = N}
     2248  and \mbox{display_orientation_repetition_period = 1} \\
     2249\end{tabular}
     2250\\
     2251\end{OptionTableNoShorthand}
     2252
     2253
     2254
     2255\begin{OptionTableNoShorthand}{Structure of pictures information SEI message encoder parameters}{tab:sei-sop-info}
     2256\Option{SEISOPDescription} &
     2257\Default{0} &
     2258Enables or disables the insertion of the Structure of pictures information SEI messages.
     2259\\
     2260\end{OptionTableNoShorthand}
     2261
     2262
     2263
     2264\begin{OptionTableNoShorthand}{Active parameter sets SEI message encoder parameters}{tab:sei-active-parameter-sets}
     2265\Option{SEIActiveParameterSets} &
     2266\Default{0} &
     2267Enables or disables the insertion of the Active parameter sets
     2268SEI messages.
     2269\\
     2270\end{OptionTableNoShorthand}
     2271
     2272
     2273
     2274\begin{OptionTableNoShorthand}{Decoding unit information SEI message encoder parameters}{tab:sei-decoding-unit-info}
     2275\Option{SEIDecodingUnitInfo} &
     2276\Default{0} &
     2277Enables or disables the insertion of the Decoding unit information
     2278SEI messages. This option has no effect if VuiParametersPresent is disabled.
     2279\\
     2280\end{OptionTableNoShorthand}
     2281
     2282
     2283
     2284\begin{OptionTableNoShorthand}{Temporal sub-layer zero index SEI message encoder parameters}{tab:sei-temporal-level-0}
     2285\Option{SEITemporalLevel0Index} &
     2286\Default{0} &
     2287Enables or disables the insertion of the Temporal level zero index
     2288SEI messages.
     2289\\
     2290\end{OptionTableNoShorthand}
     2291
     2292
     2293
     2294\begin{OptionTableNoShorthand}{Decoded picture hash SEI message encoder parameters}{tab:sei-decoded-picture-hash}
    15172295\Option{SEIDecodedPictureHash} &
    1518 \ShortOption{\None} &
    15192296\Default{0} &
    15202297Enables or disables the calculation and insertion of the Decoded picture hash
    15212298SEI messages.
    15222299\par
    1523 \begin{tabular}{cp{0.45\textwidth}}
     2300\begin{tabular}{cp{0.35\textwidth}}
    15242301  0 & Disabled \\
    15252302  1 & Transmits MD5 in SEI message and writes the value to the encoder
     
    15312308\end{tabular}
    15322309\\
    1533 \Option{SEIpictureDigest} &
    1534 \ShortOption{\None} &
    1535 \Default{0} &
    1536 Deprecated alias for SEIDecodedPictureHash.
    1537 Do not use anymore.
    1538 \\
    1539 \Option{SEIRecoveryPoint} &
    1540 \ShortOption{\None} &
    1541 \Default{0} &
    1542 Enables or disables the insertion of the Recovery point
    1543 SEI messages.
    1544 \\
    1545 \Option{SEIActiveParameterSets} &
    1546 \ShortOption{\None} &
    1547 \Default{0} &
    1548 Enables or disables the insertion of the Active parameter sets
    1549 SEI messages.
    1550 \\
    1551 \Option{SEIBufferingPeriod} &
    1552 \ShortOption{\None} &
    1553 \Default{0} &
    1554 Enables or disables the insertion of the Buffering period
    1555 SEI messages. This option has no effect if VuiParametersPresent is disabled.
    1556 SEIBufferingPeriod requires SEIActiveParameterSets to be enabled.
    1557 \\
    1558 \Option{SEIPictureTiming} &
    1559 \ShortOption{\None} &
    1560 \Default{0} &
    1561 Enables or disables the insertion of the Picture timing
    1562 SEI messages. This option has no effect if VuiParametersPresent is disabled.
    1563 \\
    1564 \Option{SEIDecodingUnitInfo} &
    1565 \ShortOption{\None} &
    1566 \Default{0} &
    1567 Enables or disables the insertion of the Decoding unit information
    1568 SEI messages. This option has no effect if VuiParametersPresent is disabled.
    1569 \\
     2310\end{OptionTableNoShorthand}
     2311
     2312
     2313
     2314\begin{OptionTableNoShorthand}{Scalable nesting SEI message encoder parameters}{tab:sei-scalable-nesting}
     2315\Option{SEIScalableNesting} &
     2316\Default{0} &
     2317Enables or disables the use of the scalable nesting SEI messages.
     2318\\
     2319\end{OptionTableNoShorthand}
     2320
     2321
     2322       
     2323\begin{OptionTableNoShorthand}{Region refresh information SEI message encoder parameters}{tab:sei-region-refresh-info}
    15702324\Option{SEIGradualDecodingRefreshInfo} &
    1571 \ShortOption{\None} &
    15722325\Default{0} &
    15732326Enables or disables the insertion of the Gradual decoding refresh information
    15742327SEI messages.
    15752328\\
    1576 \Option{SEITemporalLevel0Index} &
    1577 \ShortOption{\None} &
    1578 \Default{0} &
    1579 Enables or disables the insertion of the Temporal level zero index
    1580 SEI messages.
    1581 \\
    1582 \Option{SEIDisplayOrientation} &
    1583 \ShortOption{\None} &
    1584 \Default{0} &
    1585 Enables or disables the insertion of the Display orientation
    1586 SEI messages.
    1587 \par
    1588 \begin{tabular}{cp{0.30\textwidth}}
    1589   0 & Disabled \\
    1590   N: $0 < N < (2^{16} - 1)$ & Enable display orientation SEI message with
    1591   \mbox{anticlockwise_rotation = N}
    1592   and \mbox{display_orientation_repetition_period = 1} \\
    1593 \end{tabular}
    1594 \\
    1595 \Option{SEIFramePacking} &
    1596 \ShortOption{\None} &
    1597 \Default{0} &
    1598 Enables or disables the insertion of the Frame packing arrangement SEI messages.
    1599 \\
    1600 \Option{SEIFramePackingType} &
    1601 \ShortOption{\None} &
    1602 \Default{0} &
    1603 Indicates the arrangement type in the Frame packing arrangement SEI message.
    1604 This option has no effect if SEIFramePacking is disabled.
     2329\end{OptionTableNoShorthand}
     2330
     2331
     2332
     2333\begin{OptionTableNoShorthand}{No display SEI message encoder parameters}{tab:sei-no-display}
     2334\Option{SEINoDisplay} &
     2335\Default{0} &
     2336When non-zero, generate no-display SEI message for temporal layer N or higher.
     2337\\
     2338\end{OptionTableNoShorthand}
     2339
     2340
     2341       
     2342\begin{OptionTableNoShorthand}{Time code SEI message encoder parameters}{tab:sei-time-code}
     2343\Option{SEITimeCodeEnabled} &
     2344\Default{false} &
     2345When true (non-zero), generate Time code SEI messages.
     2346\\
     2347\Option{SEITimeCodeNumClockTs} &
     2348\Default{0} &
     2349Number of clock time sets, in the range of 0 to 3 (inclusive).
     2350\\
     2351\Option{SEITimeCodeTimeStampFlag} &
     2352\Default{\None} &
     2353Time stamp flag associated to each time set (comma or space separated list of entries).
     2354\\
     2355\Option{SEITimeCodeFieldBasedFlag} &
     2356\Default{\None} &
     2357Field based flag associated to each time set (comma or space separated list of entries).
     2358\\
     2359\Option{SEITimeCodeCountingType} &
     2360\Default{\None} &
     2361Counting type associated to each time set (comma or space separated list of entries).
     2362\\
     2363\Option{SEITimeCodeFullTsFlag} &
     2364\Default{\None} &
     2365Full time stamp flag associated to each time set (comma or space separated list of entries).
     2366\\
     2367\Option{SEITimeCodeDiscontinuityFlag} &
     2368\Default{\None} &
     2369Discontinuity flag associated to each time set (comma or space separated list of entries).
     2370\\
     2371\Option{SEITimeCodeCntDroppedFlag} &
     2372\Default{\None} &
     2373Counter dropped flag associated to each time set (comma or space separated list of entries).
     2374\\
     2375\Option{SEITimeCodeNumFrames} &
     2376\Default{\None} &
     2377Number of frames associated to each time set (comma or space separated list of entries).
     2378\\
     2379\Option{SEITimeCodeSecondsFlag} &
     2380\Default{\None} &
     2381Flag to signal seconds value presence in each time set (comma or space separated list of entries).
     2382\\
     2383\Option{SEITimeCodeMinutesFlag} &
     2384\Default{\None} &
     2385Flag to signal minutes value presence in each time set (comma or space separated list of entries).
     2386\\
     2387\Option{SEITimeCodeHoursFlag} &
     2388\Default{\None} &
     2389Flag to signal hours value presence in each time set (comma or space separated list of entries).
     2390\\
     2391\Option{SEITimeCodeSecondsValue} &
     2392\Default{\None} &
     2393Seconds value for each time set (comma or space separated list of entries).
     2394\\
     2395\Option{SEITimeCodeMinutesValue} &
     2396\Default{\None} &
     2397Minutes value for each time set (comma or space separated list of entries).
     2398\\
     2399\Option{SEITimeCodeHoursValue} &
     2400\Default{\None} &
     2401Hours value for each time set (comma or space separated list of entries).
     2402\\
     2403\Option{SEITimeCodeOffsetLength} &
     2404\Default{\None} &
     2405Time offset length associated to each time set (comma or space separated list of entries).
     2406\\
     2407\Option{SEITimeCodeTimeOffset} &
     2408\Default{\None} &
     2409Time offset associated to each time set (comma or space separated list of entries).
     2410\\
     2411\end{OptionTableNoShorthand}
     2412
     2413
     2414
     2415\begin{OptionTableNoShorthand}{Mastering display colour volume SEI message encoder parameters}{tab:sei-mastering-display-colour-volume}
     2416\Option{SEIMasteringDisplayColourVolume} &
     2417\Default{false} &
     2418When true (non-zero), generate Mastering display colour volume SEI message.
     2419\\
     2420\Option{SEIMasteringDisplayMaxLuminance} &
     2421\Default{10000} &
     2422Specifies the mastering display maximum luminance value in units of 1/10000 candela per square metre.
     2423\\
     2424\Option{SEIMasteringDisplayMinLuminance} &
     2425\Default{0} &
     2426Specifies the mastering display minimum luminance value in units of 1/10000 candela per square metre.
     2427\\
     2428\Option{SEIMasteringDisplayPrimaries} &
     2429\Default{0,50000, 0,0, 50000,0} &
     2430Mastering display primaries for all three colour planes in CIE xy coordinates in increments of 1/50000 (results in the ranges 0 to 50000 inclusive).
     2431\\
     2432\Option{SEIMasteringDisplayWhitePoint} &
     2433\Default{16667, 16667} &
     2434Mastering display white point CIE xy coordinates in normalized increments of 1/50000 (e.g. 0.333 = 16667).
     2435\\
     2436\end{OptionTableNoShorthand}
     2437
     2438
     2439
     2440\begin{OptionTableNoShorthand}{Segmented rectangular frame packing arrangement SEI message encoder parameters}{tab:sei-seg-rect-fpa}
     2441\Option{SEISegmentedRectFramePacking} &
     2442\Default{0} &
     2443Controls generation of segmented rectangular frame packing SEI messages.
     2444\\
     2445\Option{SEISegmentedRectFramePackingCancel} &
     2446\Default{false} &
     2447If true, cancels the persistence of any previous SRFPA SEI message.
     2448\\
     2449\Option{SEISegmentedRectFramePackingType} &
     2450\Default{0} &
     2451Specifies the arrangement of the frames in the reconstructed picture.
     2452\\
     2453\Option{SEISegmentedRectFramePackingPersistence} &
     2454\Default{false} &
     2455If false the SEI applies to the current frame only.
     2456\\
     2457\end{OptionTableNoShorthand}
     2458
     2459
     2460
     2461\begin{OptionTableNoShorthand}{Temporal motion-constrained tile sets SEI message encoder parameters}{tab:sei-tmcts}
     2462\Option{SEITempMotionConstrainedTileSets} &
     2463\Default{false} &
     2464When true (non-zero), generates example temporal motion constrained tile sets SEI messages.
     2465\\
     2466\end{OptionTableNoShorthand}
     2467
     2468
     2469
     2470\begin{OptionTableNoShorthand}{Chroma resampling filter hint SEI message encoder parameters}{tab:chroma-resampling-filter-hint}
     2471\Option{SEIChromaSamplingFilterHint} &
     2472\Default{false} &
     2473When true (non-zero), generates example chroma sampling filter hint SEI messages.
     2474\\
     2475\Option{SEIChromaSamplingHorizontalFilterType} &
     2476\Default{2} &
     2477Defines the index of the chroma sampling horizontal filter:
     2478\par
     2479\begin{tabular}{cp{0.35\textwidth}}
     2480  0 & Unspecified \\
     2481  1 & Filters signalled within the SEI message \\
     2482  2 & Filters as described by SMPTE RP 2050-1:2012\\
     2483\end{tabular}
     2484\\
     2485\Option{SEIChromaSamplingVerticalFilterType} &
     2486\Default{2} &
     2487Defines the index of the chroma sampling vertical filter:
     2488\par
     2489\begin{tabular}{cp{0.35\textwidth}}
     2490  0 & Unspecified \\
     2491  1 & Filters signalled within the SEI message \\
     2492  2 & Filters as described in the 5/3 filter description of ITU-T Rec. T.800 | ISO/IEC 15444-1\\
     2493\end{tabular}
     2494\\
     2495\end{OptionTableNoShorthand}
     2496
     2497
     2498
     2499\begin{OptionTableNoShorthand}{Knee function SEI message encoder parameters}{tab:sei-knee-function}
     2500\Option{SEIKneeFunctionInfo} &
     2501\Default{false} &
     2502Enables (true) or disables (false) the insertion of the Knee function SEI messages.
     2503\\
     2504\Option{SEIKneeFunctionId} &
     2505\Default{0} &
     2506Specifies Id of Knee function SEI message for a given session.
     2507\\
     2508\Option{SEIKneeFunctionCancelFlag} &
     2509\Default{false} &
     2510Indicates that Knee function SEI message cancels the persistance (true) or follows (false).
     2511\\
     2512\Option{SEIKneeFunctionPersistenceFlag} &
     2513\Default{true} &
     2514Specifies the persistence of the Knee function SEI message.
     2515\\
     2516\Option{SEIKneeFunctionInputDrange} &
     2517\Default{1000} &
     2518Specifies the peak luminance level for the input picture of Knee function SEI messages.
     2519\\
     2520\Option{SEIKneeFunctionInputDispLuminance} &
     2521\Default{100} &
     2522Specifies the expected display brightness for the input picture of Knee function SEI messages.
     2523\\
     2524\Option{SEIKneeFunctionOutputDrange} &
     2525\Default{4000} &
     2526Specifies the peak luminance level for the output picture of Knee function SEI messages.
     2527\\
     2528\Option{SEIKneeFunctionOutputDispLuminance} &
     2529\Default{800} &
     2530Specifies the expected display brightness for the output picture of Knee function SEI messages.
     2531\\
     2532\Option{SEIKneeFunctionNumKneePointsMinus1} &
     2533\Default{2} &
     2534Specifies the number of knee points - 1.
     2535\\
     2536\Option{SEIKneeFunctionInputKneePointValue} &
     2537\Default{} &
     2538Array of input knee point. Default table can be set to the following:
    16052539\par
    16062540\begin{tabular}{cp{0.45\textwidth}}
    1607   3 & Side by Side \\
    1608   4 & Top Bottom \\
    1609   5 & Frame Alternate \\
    1610 \end{tabular}
    1611 \\
    1612 \Option{SEIFramePackingInterpretation} &
    1613 \ShortOption{\None} &
    1614 \Default{0} &
    1615 Indicates the constituent frames relationship in the Frame packing arrangement SEI message.
    1616 This option has no effect if SEIFramePacking is disabled.
     2541600 800 900
     2542\end{tabular}
     2543\\
     2544\Option{SEIKneeFunctionOutputKneePointValue} &
     2545\Default{} &
     2546Array of output knee point. Default table can be set to the following:
    16172547\par
    16182548\begin{tabular}{cp{0.45\textwidth}}
    1619   0 & Unspecified \\
    1620   1 & Frame 0 is associated with the left view of a stereo pair \\
    1621   2 & Frame 0 is associated with the right view of a stereo pair \\
    1622 \end{tabular}
    1623 \\
    1624 \Option{SEIFramePackingQuincunx} &
    1625 \ShortOption{\None} &
    1626 \Default{0} &
    1627 Enables or disables the quincunx_sampling signalling in the
    1628 Frame packing arrangement SEI messages. This option has no
    1629 effect if SEIFramePacking is disabled.
    1630 \\
    1631 \Option{SEIFramePackingId} &
    1632 \ShortOption{\None} &
    1633 \Default{0} &
    1634 Indicates the session number in the Frame packing arrangement
    1635 SEI messages. This option has no effect if SEIFramePacking is
    1636 disabled.
    1637 \\
    1638 \Option{SEIToneMappingInfo} &
    1639 \ShortOption{\None} &
    1640 \Default{0} &
    1641 Enables or disables the insertion of the Tone Mapping SEI message.
    1642 \\
    1643 \Option{SEIToneMapId} &
    1644 \ShortOption{\None} &
    1645 \Default{0} &
    1646 Specifies Id of Tone Mapping SEI message for a given session.
    1647 \\
    1648 \Option{SEIToneMapCancelFlag} &
    1649 \ShortOption{\None} &
    1650 \Default{0} &
    1651 Indicates that Tone Mapping SEI message cancels the persistance or follows.
    1652 \\
    1653 \Option{SEIToneMapPersistenceFlag} &
    1654 \ShortOption{\None} &
    1655 \Default{1} &
    1656 Specifies the persistence of the Tone Mapping SEI message.
    1657 \\
    1658 \Option{SEIToneMapCodedDataBitDepth} &
    1659 \ShortOption{\None} &
    1660 \Default{10} &
    1661 Specifies Coded Data BitDepth of Tone Mapping SEI messages.
    1662 \\
    1663 \Option{SEIToneMapTargetBitDepth} &
    1664 \ShortOption{\None} &
    1665 \Default{8} &
    1666 Specifies Output BitDepth of Tome mapping function.
    1667 \\
    1668 \Option{SEIToneMapModelId} &
    1669 \ShortOption{\None} &
    1670 \Default{0} &
    1671 Specifies Model utilized for mapping coded data into
    1672 target_bit_depth range.
    1673 \par
    1674 \begin{tabular}{cp{0.45\textwidth}}
    1675   0 & linear mapping with clipping \\
    1676   1 & sigmoidal mapping \\
    1677   2 & user-defined table mapping \\
    1678   3 & piece-wise linear mapping \\
    1679   4 & luminance dynamic range mapping \\
    1680 \end{tabular}
    1681 \\
    1682 \Option{SEIToneMapMinValue} &
    1683 \ShortOption{\None} &
    1684 \Default{0} &
    1685 Specifies the minimum value in mode 0.
    1686 \\
    1687 \Option{SEIToneMapMaxValue} &
    1688 \ShortOption{\None} &
    1689 \Default{1023} &
    1690 Specifies the maxmum value in mode 0.
    1691 \\
    1692 \Option{SEIToneMapSigmoidMidpoint} &
    1693 \ShortOption{\None} &
    1694 \Default{512} &
    1695 Specifies the centre point in mode 1.
    1696 \\
    1697 \Option{SEIToneMapSigmoidWidth} &
    1698 \ShortOption{\None} &
    1699 \Default{960} &
    1700 Specifies the distance between 5% and 95% values of
    1701 the target_bit_depth in mode 1.
    1702 \\
    1703 \Option{SEIToneMapStartOfCodedInterval} &
    1704 \ShortOption{\None} &
    1705 \Default{\None} &
    1706 Array of user-defined mapping table.
    1707 Default table can be set to the following:
    1708 \par
    1709 \begin{tabular}{cp{0.45\textwidth}}
    1710 0 12 24 36 48 60 72 84 96 108 120 132 144 156 168 180
    1711 192 192 196 204 208 216 220 228 232 240 248 252 260 264
    1712 272 276 284 292 292 296 300 304 308 312 320 324 328 332
    1713 336 344 348 352 356 360 368 372 376 380 384 388 396 400
    1714 404 408 412 420 424 428 432 436 444 444 444 448 452 456
    1715 460 464 468 472 476 476 480 484 488 492 496 500 504 508
    1716 508 512 516 520 524 528 532 536 540 540 544 548 552 556
    1717 560 564 568 572 572 576 580 584 588 592 596 600 604 604
    1718 608 612 616 620 624 628 632 636 636 640 644 648 652 656
    1719 660 664 668 672 672 672 676 680 680 684 688 692 692 696
    1720 700 704 704 708 712 716 716 720 724 724 728 732 736 736
    1721 740 744 748 748 752 756 760 760 764 768 768 772 776 780
    1722 780 784 788 792 792 796 800 804 804 808 812 812 816 820
    1723 824 824 828 832 836 836 840 844 848 848 852 856 860 860
    1724 860 864 864 868 872 872 876 880 880 884 884 888 892 892
    1725 896 900 900 904 908 908 912 912 916 920 920 924 928 928
    1726 932 936 936 940 940 944 948 948 952 956 956 960 964 964
    1727 968 968 972 976 976 980 984 984 988 992 992 996 996 1000
    1728 1004 1004 1008 1012 1012 1016 1020 1024
    1729 \end{tabular}
    1730 \\
    1731 \Option{SEIToneMapNumPivots} &
    1732 \ShortOption{\None} &
    1733 \Default{5} &
    1734 Specifies the number of pivot points in mode 3.
    1735 \\
    1736 \Option{SEIToneMapCodedPivotValue} &
    1737 \ShortOption{\None} &
    1738 \Default{\None} &
    1739 Array of coded pivot point in mode 3.
    1740 Default table can be set to the following:
    1741 \par
    1742 \begin{tabular}{cp{0.45\textwidth}}
    1743 64 128 256 512 768
    1744 \end{tabular}
    1745 \\
    1746 \Option{SEIToneMapTargetPivotValue} &
    1747 \ShortOption{\None} &
    1748 \Default{\None} &
    1749 Array of target pivot point in mode 3.
    1750 Default table can be set to the following:
    1751 \par
    1752 \begin{tabular}{cp{0.45\textwidth}}
    1753 48 73 111 168 215
    1754 \end{tabular}
    1755 \\
    1756 \Option{SEIToneMapCameraIsoSpeedIdc} &
    1757 \ShortOption{\None} &
    1758 \Default{0} &
    1759 Indicates the camera ISO speed for daylight illumination.
    1760 \\
    1761 \Option{SEIToneMapCameraIsoSpeedValue} &
    1762 \ShortOption{\None} &
    1763 \Default{400} &
    1764 Specifies the camera ISO speed for daylight illumination of Extended_ISO.
    1765 \\
    1766 \Option{SEIToneMapExposureIndexIdc} &
    1767 \ShortOption{\None} &
    1768 \Default{0} &
    1769 Indicates the exposure index setting of the camera.
    1770 \\
    1771 \Option{SEIToneMapExposureIndexValue} &
    1772 \ShortOption{\None} &
    1773 \Default{400} &
    1774 Specifies the exposure index setting of the cameran of Extended_ISO.
    1775 \\
    1776 \Option{SEIToneMapExposureCompensationValueSignFlag} &
    1777 \ShortOption{\None} &
    1778 \Default{0} &
    1779 Specifies the sign of ExposureCompensationValue.
    1780 \\
    1781 \Option{SEIToneMapExposureCompensationValueNumerator} &
    1782 \ShortOption{\None} &
    1783 \Default{0} &
    1784 Specifies the numerator of ExposureCompensationValue.
    1785 \\
    1786 \Option{SEIToneMapExposureCompensationValueDenomIdc} &
    1787 \ShortOption{\None} &
    1788 \Default{2} &
    1789 Specifies the denominator of ExposureCompensationValue.
    1790 \\
    1791 \Option{SEIToneMapRefScreenLuminanceWhite} &
    1792 \ShortOption{\None} &
    1793 \Default{350} &
    1794 Specifies reference screen brightness setting in units of candela per square metre.
    1795 \\
    1796 \Option{SEIToneMapExtendedRangeWhiteLevel} &
    1797 \ShortOption{\None} &
    1798 \Default{800} &
    1799 Indicates the luminance dynamic range.
    1800 \\
    1801 \Option{SEIToneMapNominalBlackLevelLumaCodeValue} &
    1802 \ShortOption{\None} &
    1803 \Default{16} &
    1804 Specifies luma sample value of the nominal black level assigned decoded pictures.
    1805 \\
    1806 \Option{SEIToneMapNominalWhiteLevelLumaCodeValue} &
    1807 \ShortOption{\None} &
    1808 \Default{235} &
    1809 Specifies luma sample value of the nominal white level assigned decoded pictures.
    1810 \\
    1811 \Option{SEIToneMapExtendedWhiteLevelLumaCodeValue} &
    1812 \ShortOption{\None} &
    1813 \Default{300} &
    1814 Specifies luma sample value of the extended dynamic range assigned decoded pictures.
    1815 \\
    1816 \end{OptionTable}
     2549100 250 450
     2550\end{tabular}
     2551\\
     2552\end{OptionTableNoShorthand}
     2553
     2554
     2555
     2556%\Option{SEITimeCode} &
     2557%\Default{false} &
     2558%When true, generate time code SEI messages.
     2559%\\
    18172560
    18182561%%
     
    18652608\\
    18662609
    1867 HB_LAMBDA_FOR_LDC &
    1868 on &
    1869 use of B-style lambda for non-key pictures in low-delay mode
    1870 \\
    1871 
    1872 GPB_SIMPLE &
    1873 on &
    1874 Fast estimation of generalized B in low-delay mode
    1875 \\
    1876 
    1877 GPB_SIMPLE_UNI &
    1878 on &
    1879 Fast estimation of generalized B in low-delay mode for uni-direction
    1880 \\
    1881 
    1882 FASTME_SMOOTHER_MV &
    1883 on &
    1884 Fast ME using smoother MV assumption
    1885 \\
    1886 
    18872610ADAPT_SR_SCALE &
    18882611on &
     
    18902613\\
    18912614
    1892 CLIP_TO_709_RANGE &
    1893 off &
    1894 \\
    1895 
    18962615EARLY_SKIP_THRES &
    189726161.5 &
     
    19122631\url{source/Lib/TLibCommon/TypeDef.h}.
    19132632
     2633
    19142634%%
    19152635%%
     
    19172637\clearpage
    19182638\section{Using the decoder}
     2639\subsection{General}
    19192640\begin{verbatim}
    19202641TAppDecoder -b str.bin -o dec.yuv [options]
    19212642\end{verbatim}
    19222643
    1923 \begin{OptionTable}{Decoder options}
    1924 \Option{} &
    1925 \ShortOption{-h} &
     2644\begin{OptionTableNoShorthand}{Decoder options}{tab:decoder-options}
     2645\Option{(--help)} &
     2646%\ShortOption{\None} &
    19262647\Default{\None} &
    19272648Prints usage information.
    19282649\\
    19292650
    1930 \Option{} &
    1931 \ShortOption{-o} &
     2651\Option{BitStreamFile (-b)} &
     2652%\ShortOption{-b} &
    19322653\Default{\NotSet} &
    1933 Defines reconstructed YUV file name.
    1934 \\
    1935 
    1936 \Option{} &
    1937 \ShortOption{-s} &
     2654Defines the input bit stream file name.
     2655\\
     2656
     2657\Option{ReconFile (-o)} &
     2658%\ShortOption{-o} &
     2659\Default{\NotSet} &
     2660Defines reconstructed YUV file name. If empty, no file is generated.
     2661\\
     2662
     2663\Option{SkipFrames (-s)} &
     2664%\ShortOption{-s} &
    19382665\Default{0} &
    19392666Defines the number of pictures in decoding order to skip.
    19402667\\
    19412668
    1942 \Option{OutputBitDepth} &
    1943 \ShortOption{-d} &
     2669\Option{MaxTemporalLayer (-t)} &
     2670%\ShortOption{-t} &
     2671\Default{-1} &
     2672Defines the maximum temporal layer to be decoded. If -1, then all layers are decoded.
     2673\\
     2674
     2675\Option{TarDecLayerIdSetFile (-l)} &
     2676%\ShortOption{-t} &
     2677\Default{\NotSet} &
     2678Specifies the targetDecLayerIdSet file name. The file would contain white-space separated LayerId values of the layers that are to be decoded.
     2679Omitting the parameter, or using a value of -1 in the file decodes all layers.
     2680\\
     2681
     2682\Option{OutputBitDepth (-d)} &
     2683%\ShortOption{-d} &
    19442684\Default{0 \\ (Native)} &
    19452685Specifies the luma bit-depth of the reconstructed YUV file (the value 0 indicates
     
    19482688
    19492689\Option{OutputBitDepthC} &
    1950 \ShortOption{\None} &
     2690%\ShortOption{\None} &
    19512691\Default{0 \\ (Native)} &
    19522692Defines the chroma bit-depth of the reconstructed YUV file (the value 0 indicates
     
    19542694\\
    19552695
    1956 \Option{SEIPictureDigest} &
    1957 \ShortOption{\None} &
     2696\Option{SEIDecodedPictureHash} &
     2697%\ShortOption{\None} &
    19582698\Default{1} &
    19592699Enable or disable verification of any Picture hash SEI messages. When
     
    19632703\begin{itemize}
    19642704\item
    1965   If Picture hash SEI messages are included in the bitstream, the same type
     2705  If Picture hash SEI messages are included in the bit stream, the same type
    19662706  of hash is calculated for each decoded picture and written to the
    19672707  log together with an indication whether the calculted value matches
     
    19852725\\
    19862726
    1987 \Option{RespectDefDispWindow} &
    1988 \ShortOption{-w} &
     2727\Option{OutputDecodedSEIMessagesFilename} &
     2728%\ShortOption{\None} &
     2729\Default{\NotSet} &
     2730When a non-empty file name is specified, information regarding any decoded SEI messages will be output to the indicated file. If the file name is '-', then stdout is used instead.
     2731\\
     2732
     2733\Option{RespectDefDispWindow (-w)} &
     2734%\ShortOption{-w} &
    19892735\Default{0} &
    19902736Video region to be output by the decoder.
     
    19962742\\
    19972743
    1998 \end{OptionTable}
     2744\Option{OutputColourSpaceConvert} &
     2745\Default{\NotSet} &
     2746Specifies the colour space conversion to apply to 444 video. Permitted values are:
     2747\par
     2748\begin{tabular}{lp{0.45\textwidth}}
     2749  UNCHANGED   & No colour space conversion is applied \\
     2750  YCrCbToYCbCr & Swap the second and third components \\
     2751  GBRtoRGB     & Reorder the three components \\
     2752\end{tabular}
     2753If no value is specified, no colour space conversion is applied. The list may eventually also include RGB to YCbCr or YCgCo conversions.\\
     2754\\
     2755
     2756\Option{SEINoDisplay} &
     2757\Default{false} &
     2758When true, do not output frames for which there is an SEI NoDisplay message.
     2759\\
     2760
     2761\Option{ClipOutputVideoToRec709Range} &
     2762%\ShortOption{\None} &
     2763\Default{0} &
     2764If 1 then clip output video to the Rec. 709 Range on saving when OutputBitDepth is less than InternalBitDepth.
     2765\\
     2766
     2767\end{OptionTableNoShorthand}
     2768
     2769
     2770\subsection{Using the decoder analyser}
     2771If the decoder is compiled with the macro RExt__DECODER_DEBUG_BIT_STATISTICS defined as 1 (either externally, or by editing TypeDef.h), the decoder will gather fractional bit counts associated with the different syntax elements, producing a table of the number of bits per syntax element, and where appropriate, according to block size and colour component/channel.
     2772The Linux makefile will compile both the analyser and standard version when the `all' or `everything' target is used (where the latter will also build  high-bit-depth executables).
    19992773
    20002774
Note: See TracChangeset for help on using the changeset viewer.