From: <man...@us...> - 2013-06-25 18:48:27
|
Revision: 2405 http://sourceforge.net/p/modplug/code/2405 Author: manxorist Date: 2013-06-25 18:48:11 +0000 (Tue, 25 Jun 2013) Log Message: ----------- [Ref] Add msinttypes header files. [Ref] Add lhasa lha unpacker library. [Ref] Remove old unlha code. [Ref] Rewrite CLhaArchive to use lhasa. Modified Paths: -------------- trunk/OpenMPT/common/version.cpp trunk/OpenMPT/mptrack/MPTRACK_10.sln trunk/OpenMPT/mptrack/mptrack_10.vcxproj trunk/OpenMPT/mptrack/mptrack_10.vcxproj.filters trunk/OpenMPT/soundlib/FileReader.h trunk/OpenMPT/unarchiver/unarchiver.cpp trunk/OpenMPT/unarchiver/unlha.cpp trunk/OpenMPT/unarchiver/unlha.h Added Paths: ----------- trunk/OpenMPT/include/lhasa/ trunk/OpenMPT/include/lhasa/.gitignore trunk/OpenMPT/include/lhasa/AUTHORS trunk/OpenMPT/include/lhasa/COPYING trunk/OpenMPT/include/lhasa/ChangeLog trunk/OpenMPT/include/lhasa/Makefile.am trunk/OpenMPT/include/lhasa/NEWS trunk/OpenMPT/include/lhasa/OpenMPT.txt trunk/OpenMPT/include/lhasa/README trunk/OpenMPT/include/lhasa/TODO trunk/OpenMPT/include/lhasa/autogen.sh trunk/OpenMPT/include/lhasa/configure.ac trunk/OpenMPT/include/lhasa/doc/ trunk/OpenMPT/include/lhasa/doc/.gitignore trunk/OpenMPT/include/lhasa/doc/Doxyfile trunk/OpenMPT/include/lhasa/doc/Makefile.am trunk/OpenMPT/include/lhasa/doc/intro.h trunk/OpenMPT/include/lhasa/doc/lha.1 trunk/OpenMPT/include/lhasa/gencov trunk/OpenMPT/include/lhasa/lhasa.vcxproj trunk/OpenMPT/include/lhasa/lhasa.vcxproj.filters trunk/OpenMPT/include/lhasa/lib/ trunk/OpenMPT/include/lhasa/lib/Makefile.am trunk/OpenMPT/include/lhasa/lib/bit_stream_reader.c trunk/OpenMPT/include/lhasa/lib/crc16.c trunk/OpenMPT/include/lhasa/lib/crc16.h trunk/OpenMPT/include/lhasa/lib/ext_header.c trunk/OpenMPT/include/lhasa/lib/ext_header.h trunk/OpenMPT/include/lhasa/lib/lh1_decoder.c trunk/OpenMPT/include/lhasa/lib/lh5_decoder.c trunk/OpenMPT/include/lhasa/lib/lh6_decoder.c trunk/OpenMPT/include/lhasa/lib/lh7_decoder.c trunk/OpenMPT/include/lhasa/lib/lh_new_decoder.c trunk/OpenMPT/include/lhasa/lib/lha_arch.h trunk/OpenMPT/include/lhasa/lib/lha_arch_unix.c trunk/OpenMPT/include/lhasa/lib/lha_arch_win32.c trunk/OpenMPT/include/lhasa/lib/lha_basic_reader.c trunk/OpenMPT/include/lhasa/lib/lha_basic_reader.h trunk/OpenMPT/include/lhasa/lib/lha_decoder.c trunk/OpenMPT/include/lhasa/lib/lha_decoder.h trunk/OpenMPT/include/lhasa/lib/lha_endian.c trunk/OpenMPT/include/lhasa/lib/lha_endian.h trunk/OpenMPT/include/lhasa/lib/lha_file_header.c trunk/OpenMPT/include/lhasa/lib/lha_file_header.h trunk/OpenMPT/include/lhasa/lib/lha_input_stream.c trunk/OpenMPT/include/lhasa/lib/lha_input_stream.h trunk/OpenMPT/include/lhasa/lib/lha_reader.c trunk/OpenMPT/include/lhasa/lib/lz5_decoder.c trunk/OpenMPT/include/lhasa/lib/lzs_decoder.c trunk/OpenMPT/include/lhasa/lib/macbinary.c trunk/OpenMPT/include/lhasa/lib/macbinary.h trunk/OpenMPT/include/lhasa/lib/null_decoder.c trunk/OpenMPT/include/lhasa/lib/pm1_decoder.c trunk/OpenMPT/include/lhasa/lib/pm2_decoder.c trunk/OpenMPT/include/lhasa/lib/pma_common.c trunk/OpenMPT/include/lhasa/lib/public/ trunk/OpenMPT/include/lhasa/lib/public/Makefile.am trunk/OpenMPT/include/lhasa/lib/public/lha_decoder.h trunk/OpenMPT/include/lhasa/lib/public/lha_file_header.h trunk/OpenMPT/include/lhasa/lib/public/lha_input_stream.h trunk/OpenMPT/include/lhasa/lib/public/lha_reader.h trunk/OpenMPT/include/lhasa/lib/public/lhasa.h trunk/OpenMPT/include/lhasa/lib/tree_decode.c trunk/OpenMPT/include/lhasa/liblhasa.pc.in trunk/OpenMPT/include/lhasa/pkg/ trunk/OpenMPT/include/lhasa/pkg/.gitignore trunk/OpenMPT/include/lhasa/pkg/Makefile.am trunk/OpenMPT/include/lhasa/pkg/config.make.in trunk/OpenMPT/include/lhasa/pkg/win32/ trunk/OpenMPT/include/lhasa/pkg/win32/.gitignore trunk/OpenMPT/include/lhasa/pkg/win32/GNUmakefile trunk/OpenMPT/include/lhasa/pkg/win32/README trunk/OpenMPT/include/lhasa/rpm.spec.in trunk/OpenMPT/include/lhasa/src/ trunk/OpenMPT/include/lhasa/src/.gitignore trunk/OpenMPT/include/lhasa/src/Makefile.am trunk/OpenMPT/include/lhasa/src/args.txt trunk/OpenMPT/include/lhasa/src/extract.c trunk/OpenMPT/include/lhasa/src/extract.h trunk/OpenMPT/include/lhasa/src/filter.c trunk/OpenMPT/include/lhasa/src/filter.h trunk/OpenMPT/include/lhasa/src/list.c trunk/OpenMPT/include/lhasa/src/list.h trunk/OpenMPT/include/lhasa/src/main.c trunk/OpenMPT/include/lhasa/src/options.h trunk/OpenMPT/include/lhasa/src/safe.c trunk/OpenMPT/include/lhasa/src/safe.h trunk/OpenMPT/include/msinttypes/ trunk/OpenMPT/include/msinttypes/OpenMPT.txt trunk/OpenMPT/include/msinttypes/changelog.txt trunk/OpenMPT/include/msinttypes/inttypes/ trunk/OpenMPT/include/msinttypes/inttypes/inttypes.h trunk/OpenMPT/include/msinttypes/stdint/ trunk/OpenMPT/include/msinttypes/stdint/stdint.h Removed Paths: ------------- trunk/OpenMPT/unarchiver/unlha/ Modified: trunk/OpenMPT/common/version.cpp =================================================================== --- trunk/OpenMPT/common/version.cpp 2013-06-25 17:04:02 UTC (rev 2404) +++ trunk/OpenMPT/common/version.cpp 2013-06-25 18:48:11 UTC (rev 2405) @@ -325,8 +325,14 @@ #endif "Ben \"GreaseMonkey\" Russell for IT sample compression code\n" "https://github.com/iamgreaser/it2everything/\n" + "Alexander Chemeris for msinttypes\n" + "https://code.google.com/p/msinttypes/\n" "Jean-loup Gailly and Mark Adler for zlib\n" "http://zlib.net/\n" +#ifndef NO_ARCHIVE_SUPPORT + "Simon Howard for lhasa\n" + "http://fragglet.github.io/lhasa/\n" +#endif #ifndef NO_PORTAUDIO "PortAudio contributors\n" "http://www.portaudio.com/\n" Index: trunk/OpenMPT/include/lhasa =================================================================== --- trunk/OpenMPT/include/lhasa 2013-06-25 17:04:02 UTC (rev 2404) +++ trunk/OpenMPT/include/lhasa 2013-06-25 18:48:11 UTC (rev 2405) Property changes on: trunk/OpenMPT/include/lhasa ___________________________________________________________________ Added: svn:ignore ## -0,0 +1,3 ## +Debug +Release +lhasa.vcxproj.user Added: tsvn:logminsize ## -0,0 +1 ## +10 \ No newline at end of property Added: trunk/OpenMPT/include/lhasa/.gitignore =================================================================== --- trunk/OpenMPT/include/lhasa/.gitignore (rev 0) +++ trunk/OpenMPT/include/lhasa/.gitignore 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,26 @@ +*.o +*.lo +*.la +*.a +*.gcno +*.gcda +*.c.gcov +*.exe +.deps +.libs +.gitignore +Makefile +Makefile.in +aclocal.m4 +autom4te.cache +autotools +config.log +config.status +configure +liblhasa.pc +libtool +config.h +config.hin +rpm.spec +stamp-h1 +INSTALL Added: trunk/OpenMPT/include/lhasa/AUTHORS =================================================================== --- trunk/OpenMPT/include/lhasa/AUTHORS (rev 0) +++ trunk/OpenMPT/include/lhasa/AUTHORS 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1 @@ +Simon Howard <fr...@gm...> Added: trunk/OpenMPT/include/lhasa/COPYING =================================================================== --- trunk/OpenMPT/include/lhasa/COPYING (rev 0) +++ trunk/OpenMPT/include/lhasa/COPYING 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,17 @@ + +Copyright (c) 2011, 2012, Simon Howard + +Permission to use, copy, modify, and/or distribute this software +for any purpose with or without fee is hereby granted, provided +that the above copyright notice and this permission notice appear +in all copies. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL +WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE +AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR +CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, +NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN +CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + Added: trunk/OpenMPT/include/lhasa/ChangeLog =================================================================== --- trunk/OpenMPT/include/lhasa/ChangeLog (rev 0) +++ trunk/OpenMPT/include/lhasa/ChangeLog 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,13 @@ + +The full change history is maintained in git. Rather than reproduce +the change history history here, it's easier if you clone a copy of +the git repository and view it: + + git clone git://github.com/fragglet/lhasa.git lhasa + cd lhasa + git log + +Alternatively, the commit history can be viewed on github: + + https://github.com/fragglet/lhasa/commits/master + Added: trunk/OpenMPT/include/lhasa/Makefile.am =================================================================== --- trunk/OpenMPT/include/lhasa/Makefile.am (rev 0) +++ trunk/OpenMPT/include/lhasa/Makefile.am 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,11 @@ + +AUX_DIST_GEN = $(ac_aux_dir) + +EXTRA_DIST = $(AUX_DIST_GEN) gencov rpm.spec +MAINTAINERCLEANFILES = $(AUX_DIST_GEN) + +pkgconfigdir = ${libdir}/pkgconfig +pkgconfig_DATA = liblhasa.pc + +SUBDIRS=doc lib pkg src test + Property changes on: trunk/OpenMPT/include/lhasa/Makefile.am ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/x-makefile \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: trunk/OpenMPT/include/lhasa/NEWS =================================================================== --- trunk/OpenMPT/include/lhasa/NEWS (rev 0) +++ trunk/OpenMPT/include/lhasa/NEWS 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,127 @@ + +v0.1.0 (2013-03-16): + + * There are now test archives for OS-9 and OS-9/68k (OSK) and a + workaround for a bug in the OSK lha tool on this platform. OSK level + 0 extended areas are also supported. + * Extracted files are now written using O_EXCL, which prevents + malicious symbolic links being used to redirect output. + * Directory paths containing '..' as a directory name are now + sanitized, to prevent malicious archives being able to overwrite + arbitrary files on the filesystem. + * Symbolic links are now extracted in a safer way, being created as + dummy files that are overwritten with proper symbolic links at the + end of extraction. This is the same behavior used by GNU tar to + prevent malicious use of symbolic links. + * Automake 1.13 is now properly supported (thanks Jan Engelhardt). + Processing of archives read from IPC pipes (including stdin) has + been fixed. + +v0.0.7 (2012-06-02): + + * Extraction and listing of Unix symbolic links is now supported. + * Decompression code for the "old" PMarc archive algorithm (-pm1-) has + been added. + * Support has been added for Unix LHA level 0 header extended areas + (so level 0 archives with Unix metadata are now listed and extracted + correctly). + * The Unix permissions field in the list output for directory entries + has been fixed. + * The library header files have been fixed so that they can be included + in C++ code. + * The LHADecoder interface, for extracting raw compressed data, has been + added to the public header files. + * The Unix LHA test archives have been regenerated and improved. + * A "ghost testing" tool has been added for testing ghost compression + algorithms such as -pm1-. + * The list output tests have been fixed to be repeatable regardless of + the current date. + * Build of the fuzzer tool has been fixed. + +v0.0.6 (2012-05-17): + + * When the -w option is used during extraction, the path specified + is now first created if it does not already exist. + * The command line tool now exits with a failure return code if an + error occurs during extraction. + * A "catch-all" header file (lhasa.h) has been added. + * The public header files installed with the library can now be + included and used externally. + * A pkgconfig file is now installed as part of the library + (thanks Jan Engelhardt). + * Make targets have been added for building Doxygen documentation + and including them as part of the distribution. + +v0.0.5 (2012-05-08): + + * Architecture-specific functions for running on Windows have now been + fully implemented, and the command line tool passes all tests in the + test suite on Windows (thanks roytam1 for bug reports). + * Bug fixed where the command line tool would enter an infinite loop + when extracting a truncated archive (thanks Jon Dowland). + * Support added for archives with level 0 headers and Unix path + separators (thanks roytam1). + * The test suite now runs correctly outside of the Europe/London time + zone (thanks Thomas Klausner). + * A .spec file is now included for building rpm packages. + +v0.0.4 (2012-05-01): + + * Special handling is now included for MacBinary headers generated + by MacLHA. + * The -w command line option was broken; it has been fixed. + * A bug has been fixed where the timestamp and other metadata was + not set properly for extracted directories. + * Failures to set the UID/GID of extracted files are now ignored, + rather than being treated as a fatal error. + * Self-extracting archive files with long headers (up to 64KiB) + are now supported. This fixes the handling with some Windows + archives. + * A Unix manpage has been added. + * It is now possible to extract an archive from stdin, by using '-' + as the filename. + * The shorthand command line syntax "lha foo.lzh" to list an archive + is now supported. + * A bug with the wildcard pattern matching code has been fixed. + * Proper regression tests have now been added for command line + archive extraction. + * A set of archives generated by LHmelt (Windows) have been added to + the test suite. + * The regression tests for testing file header parsing and CRC checks + have been rewritten. + +v0.0.3 (2012-04-22): + + Third beta release. + + * A fix has been added for a bug where missing parent directories + were not being created properly. + * Regression testing archives have been added from MacLHA v2.24. + * In order to support MacLHA archives, code has been added that + heuristically detects the MacBinary headers added by MacLHA + and strips them off. + +v0.0.2 (2012-04-17): + + Second beta release. + + * This version adds support for level 2 and 3 file headers. Lhasa + should now be capable of decompressing most, if not all archives + found in the wild. + * A fuzz testing framework has been added for testing the + decompression code. A couple of bugs have been fixed as a result + of this. + +v0.0.1 (2012-04-06): + + Initial version. This should be considered beta code, although this + first version should already be capable of extracting the majority of + archive files found in the wild. The main missing features are: + + * Lack of support for level 2 and 3 file headers. + * Inability to create archives (only extract them). + + These are features that I aim to add in future releases. Other future + features can be found in the TODO file. + +# vim: tw=75 Added: trunk/OpenMPT/include/lhasa/OpenMPT.txt =================================================================== --- trunk/OpenMPT/include/lhasa/OpenMPT.txt (rev 0) +++ trunk/OpenMPT/include/lhasa/OpenMPT.txt 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,2 @@ +lhasa LHA decompression library from https://github.com/fragglet/lhasa commit 13b44ac7859aad2f2b4fa76600c186f9f7f98c63 as of 2013-06-16. +No local changes made. Property changes on: trunk/OpenMPT/include/lhasa/OpenMPT.txt ___________________________________________________________________ Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: trunk/OpenMPT/include/lhasa/README =================================================================== --- trunk/OpenMPT/include/lhasa/README (rev 0) +++ trunk/OpenMPT/include/lhasa/README 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,17 @@ +Lhasa is a library for parsing LHA (.lzh) archives and a free +replacement for the Unix LHA tool. + +Currently it is only possible to read from (ie. decompress) archives; +generating (compressing) LHA archives may be an enhancement for future +versions. The aim is to be compatible with as many different variants +of the LHA file format as possible, including LArc (.lzs) and PMarc +(.pma). A suite of archives generated from different tools is +included for regression testing. Type 'make check' to run the tests. + +The command line tool aims to be interface-compatible with the +non-free Unix LHA tool (command line syntax and output), for backwards +compatibility with tools that expect particular output. + +Lhasa is licensed under the ISC license, which is a simplified version +of the MIT/X11 license that is functionally identical. + Added: trunk/OpenMPT/include/lhasa/TODO =================================================================== --- trunk/OpenMPT/include/lhasa/TODO (rev 0) +++ trunk/OpenMPT/include/lhasa/TODO 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,23 @@ +Library: + * Better error handling. + * Extract: + * Add options API to control whether permissions, timestamp are set. + * Creation of parent directories on extract (+optional) + * Add LHAFile convenience class. + * Compression and LHA file generation. + * Correctly handle LHmelt backwards directory ordering. + * Add test archives generated by: + * Microsoft LZH folder add-in for Windows (if possible?) + * UNLHA32 + * Decompressors for obscure algorithms: + * -lh2-, -lh3- (experimental LHA?) + * LHark -lh7- (modified -lh5-) + * -lx1-, -lhx- (unlha32 obscure/experimental?) + +Command line tool: + * Create/update/modify archives. + +Testing: + * Valgrind. + * Improve coverage. + Added: trunk/OpenMPT/include/lhasa/autogen.sh =================================================================== --- trunk/OpenMPT/include/lhasa/autogen.sh (rev 0) +++ trunk/OpenMPT/include/lhasa/autogen.sh 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,13 @@ +#!/bin/sh + +mkdir -p autotools + +aclocal +libtoolize || glibtoolize +autoheader +automake -a +autoconf +automake -a + +./configure $@ + Property changes on: trunk/OpenMPT/include/lhasa/autogen.sh ___________________________________________________________________ Added: svn:executable ## -0,0 +1 ## +* \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/x-sh \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: trunk/OpenMPT/include/lhasa/configure.ac =================================================================== --- trunk/OpenMPT/include/lhasa/configure.ac (rev 0) +++ trunk/OpenMPT/include/lhasa/configure.ac 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,88 @@ +AC_INIT(Lhasa, 0.1.0, fr...@gm..., lhasa) +AC_CONFIG_AUX_DIR(autotools) + +AM_INIT_AUTOMAKE([no-define]) +m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +AM_PROG_CC_C_O + +AC_PROG_CXX +AC_PROG_RANLIB +AC_PROG_LIBTOOL +AC_PROG_INSTALL +AC_PROG_MAKE_SET + +if [[ "$GCC" = "yes" ]]; then + is_gcc=true +else + is_gcc=false +fi + +TEST_CFLAGS="-DTEST_BUILD" + +# Turn on all warnings for gcc. Turn off optimisation for the test build. + +if $is_gcc; then + WARNINGS="-Wall -Wsign-compare" + CFLAGS="$CFLAGS $WARNINGS" + TEST_CFLAGS="$TEST_CFLAGS $WARNINGS -O0" +fi + +# Support for coverage analysis via gcov: + +coverage=false +AC_ARG_ENABLE(coverage, +[ --enable-coverage Enable coverage testing. ], +[ coverage=true ]) + +if $coverage; then + if $is_gcc; then + TEST_CFLAGS="$TEST_CFLAGS -fprofile-arcs -ftest-coverage" + else + AC_MSG_ERROR([Can only enable coverage when using gcc.]) + fi +fi + +AM_CONDITIONAL(BUILD_COVERAGE, $coverage) + +# Support for running test cases using valgrind: + +use_valgrind=false +AC_ARG_ENABLE(valgrind, +[ --enable-valgrind Use valgrind when running unit tests. ], +[ use_valgrind=true ]) + +if [[ "$use_valgrind" = "true" ]]; then + AC_CHECK_PROG(HAVE_VALGRIND, valgrind, yes, no) + + if [[ "$HAVE_VALGRIND" = "no" ]]; then + AC_MSG_ERROR([Valgrind not found in PATH. ]) + fi +fi + +AM_CONDITIONAL(USE_VALGRIND, $use_valgrind) + +# Save the default CFLAGS and clear them, so that the test build +# of the library doesn't get the optimisation flags. + +MAIN_CFLAGS="$CFLAGS" +CFLAGS="" + +AC_SUBST(MAIN_CFLAGS) +AC_SUBST(TEST_CFLAGS) +AC_SUBST(ac_aux_dir) + +AC_CONFIG_HEADERS([config.h:config.hin]) + +AC_OUTPUT([ + liblhasa.pc + rpm.spec + Makefile + doc/Makefile + lib/Makefile + lib/public/Makefile + pkg/Makefile + pkg/config.make + src/Makefile + test/Makefile +]) + Index: trunk/OpenMPT/include/lhasa/doc =================================================================== --- trunk/OpenMPT/include/lhasa/doc 2013-06-25 17:04:02 UTC (rev 2404) +++ trunk/OpenMPT/include/lhasa/doc 2013-06-25 18:48:11 UTC (rev 2405) Property changes on: trunk/OpenMPT/include/lhasa/doc ___________________________________________________________________ Added: tsvn:logminsize ## -0,0 +1 ## +10 \ No newline at end of property Added: trunk/OpenMPT/include/lhasa/doc/.gitignore =================================================================== --- trunk/OpenMPT/include/lhasa/doc/.gitignore (rev 0) +++ trunk/OpenMPT/include/lhasa/doc/.gitignore 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1 @@ +html Added: trunk/OpenMPT/include/lhasa/doc/Doxyfile =================================================================== --- trunk/OpenMPT/include/lhasa/doc/Doxyfile (rev 0) +++ trunk/OpenMPT/include/lhasa/doc/Doxyfile 2013-06-25 18:48:11 UTC (rev 2405) @@ -0,0 +1,1360 @@ +# Doxyfile 1.5.5 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project +# +# All text after a hash (#) is considered a comment and will be ignored +# The format is: +# TAG = value [value, ...] +# For lists items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (" ") + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# http://www.gnu.org/software/libiconv for the list of possible encodings. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded +# by quotes) that should identify the project. + +PROJECT_NAME = "Lhasa" + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or +# if some version control system is used. + +PROJECT_NUMBER = + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location +# where doxygen was started. If left blank the current directory will be used. + +OUTPUT_DIRECTORY = . + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create +# 4096 sub-directories (in 2 levels) under the output directory of each output +# format and will distribute the generated files over these directories. +# Enabling this option can be useful when feeding doxygen a huge amount of +# source files, where putting all generated files in the same directory would +# otherwise cause performance problems for the file system. + +CREATE_SUBDIRS = NO + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, +# Croatian, Czech, Danish, Dutch, Farsi, Finnish, French, German, Greek, +# Hungarian, Italian, Japanese, Japanese-en (Japanese with English messages), +# Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, Polish, +# Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish, +# and Ukrainian. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). +# Set to NO to disable this. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator +# that is used to form the text in various listings. Each string +# in this list, if found as the leading text of the brief description, will be +# stripped from the text and the result after processing the whole list, is +# used as the annotated text. Otherwise, the brief description is used as-is. +# If left blank, the following values are used ("$name" is automatically +# replaced with the name of the entity): "The $name class" "The $name widget" +# "The $name file" "is" "provides" "specifies" "contains" +# "represents" "a" "an" "the" + +ABBREVIATE_BRIEF = "The $name class" \ + "The $name widget" \ + "The $name file" \ + is \ + provides \ + specifies \ + contains \ + represents \ + a \ + an \ + the + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief +# description. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set +# to NO the shortest path that makes the file name unique will be used. + +FULL_PATH_NAMES = NO + +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the +# path to strip. + +STRIP_FROM_PATH = lib/public/ + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of +# the path mentioned in the documentation of a class, which tells +# the reader which header file to include in order to use a class. +# If left blank only the name of the header file containing the class +# definition is used. Otherwise one should specify the include paths that +# are normally passed to the compiler using the -I flag. + +STRIP_FROM_INC_PATH = + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful is your file systems +# doesn't support long names like on DOS, Mac, or CD-ROM. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like regular Qt-style comments +# (thus requiring an explicit @brief command for a brief description.) + +JAVADOC_AUTOBRIEF = YES + +# If the QT_AUTOBRIEF tag is set to YES then Doxygen will +# interpret the first line (until the first dot) of a Qt-style +# comment as the brief description. If set to NO, the comments +# will behave just like regular Qt-style comments (thus requiring +# an explicit \brief command for a brief description.) + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed +# description. Set this tag to YES if you prefer the old behaviour instead. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it +# re-implements. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce +# a new page for each member. If set to NO, the documentation of a member will +# be part of the file/class/namespace that contains it. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# Doxygen uses this value to replace tabs by spaces in code fragments. + +TAB_SIZE = 8 + +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". +# You can put \n's in the value part of an alias to insert newlines. + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C +# sources only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list +# of all members will be omitted, etc. + +OPTIMIZE_OUTPUT_FOR_C = YES + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java +# sources only. Doxygen will then generate output that is more tailored for +# Java. For instance, namespaces will be presented as packages, qualified +# scopes will look different, etc. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources only. Doxygen will then generate output that is more tailored for +# Fortran. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for +# VHDL. + +OPTIMIZE_OUTPUT_VHDL = NO + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should +# set this tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. +# func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. +# Doxygen will parse them like normal C++ but will assume all classes use public +# instead of private inheritance when no explicit protection keyword is present. + +SIP_SUPPORT = NO + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. + +DISTRIBUTE_GROUP_DOC = NO + +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using +# the \nosubgrouping command. + +SUBGROUPING = YES + +# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum +# is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically +# be useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. + +TYPEDEF_HIDES_STRUCT = NO + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES + +EXTRACT_ALL = NO + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# will be included in the documentation. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file +# will be included in the documentation. + +EXTRACT_STATIC = NO + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. +# If set to NO only classes defined in header files are included. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. When set to YES local +# methods, which are defined in the implementation section but not in +# the interface are included in the documentation. +# If set to NO (the default) only methods in the interface are included. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base +# name of the file that contains the anonymous namespace. By default +# anonymous namespace are hidden. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. +# This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_MEMBERS = YES + +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various +# overviews. This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_CLASSES = YES + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the +# documentation. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the +# function's detailed documentation block. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. +# Set it to YES to include the internal documentation. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the +# documentation. If set to YES the scope will be hidden. + +HIDE_SCOPE_NAMES = NO + +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation +# of that file. + +SHOW_INCLUDE_FILES = NO + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# is inserted in the documentation for inline members. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in +# declaration order. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the +# brief documentation of file, namespace and class members alphabetically +# by member name. If set to NO (the default) the members will appear in +# declaration order. + +SORT_BRIEF_DOCS = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the +# hierarchy of group names into alphabetical order. If set to NO (the default) +# the group names will appear in their defined order. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be +# sorted by fully-qualified names, including namespaces. If set to +# NO (the default), the class list will be sorted only by class name, +# not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the +# alphabetical list. + +SORT_BY_SCOPE_NAME = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo +# commands in the documentation. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test +# commands in the documentation. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug +# commands in the documentation. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting +# \deprecated commands in the documentation. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional +# documentation sections, marked by \if sectionname ... \endif. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or define consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and defines in the +# documentation can be controlled using \showinitializer or \hideinitializer +# command in the documentation regardless of this setting. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the +# list will mention the files that were used to generate the documentation. + +SHOW_USED_FILES = YES + +# If the sources in your project are distributed over multiple directories +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy +# in the documentation. The default is NO. + +SHOW_DIRECTORIES = NO + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command <command> <input-file>, where <command> is the value of +# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file +# provided by doxygen. Whatever the program writes to standard output +# is used as the file version. See the manual for examples. + +FILE_VERSION_FILTER = + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated +# by doxygen. Possible values are YES and NO. If left blank NO is used. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank +# NO is used. + +WARNINGS = YES + +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# automatically be disabled. + +WARN_IF_UNDOCUMENTED = YES + +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that +# don't exist or using markup commands wrongly. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be abled to get warnings for +# functions that are documented, but have no documentation for their parameters +# or return value. If set to NO (the default) doxygen will only warn about +# wrong or incomplete parameter documentation, but not about the absence of +# documentation. + +WARN_NO_PARAMDOC = NO + +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. Optionally the format may contain +# $version, which will be replaced by the version of the file (if it could +# be obtained via FILE_VERSION_FILTER) + +WARN_FORMAT = "$file:$line: $text" + +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written +# to stderr. + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. + +INPUT = intro.h \ + ../lib/public + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is +# also the default input encoding. Doxygen uses libiconv (or the iconv built +# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for +# the list of possible encodings. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 + +FILE_PATTERNS = *.h + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. +# If left blank NO is used. + +RECURSIVE = NO + +# The EXCLUDE tag can be used to specify files and/or directories that should +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. + +EXCLUDE = + +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or +# directories that are symbolic links (a Unix filesystem feature) are excluded +# from the input. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. Note that the wildcards are matched +# against the file with absolute path, so to exclude all test directories +# for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see +# the \include command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank all files are included. + +EXAMPLE_PATTERNS = * + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. +# Possible values are YES and NO. If left blank NO is used. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see +# the \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command <filter> <input-file>, where <filter> +# is the value of the INPUT_FILTER tag, and <input-file> is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. If FILTER_PATTERNS is specified, this tag will be +# ignored. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. The filters are a list of the form: +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further +# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER +# is applied to all files. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source +# files to browse (i.e. when SOURCE_BROWSER is set to YES). + +FILTER_SOURCE_FILES = NO + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also +# VERBATIM_HEADERS is set to NO. + +SOURCE_BROWSER = NO + +# Setting the INLINE_SOURCES tag to YES will include the body +# of functions and classes directly in the documentation. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code +# fragments. Normal C and C++ comments will always remain visible. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES (the default) +# then for each documented function all documented +# functions referencing it will be listed. + +REFERENCED_BY_RELATION = NO + +# If the REFERENCES_RELATION tag is set to YES (the default) +# then for each documented function all documented entities +# called/used by that function will be listed. + +REFERENCES_RELATION = NO + +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will +# link to the source code. Otherwise they will link to the documentstion. + +REFERENCES_LINK_SOURCE = YES + +# If the USE_HTAGS tag is set to YES then the references to source code +# will point to the HTML generated by the htags(1) tool instead of doxygen +# built-in source browser. The htags tool is part of GNU's global source +# tagging system (see http://www.gnu.org/software/global/global.html). You +# will need version 4.8.6 or higher. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for +# which an include is specified. Set to NO to disable this. + +VERBATIM_HEADERS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project +# contains a lot of classes, structs, unions or interfaces. + +ALPHABETICAL_INDEX = NO + +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# in which this list will be split (can be a number in the range [1..20]) + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# should be ignored while generating the index headers. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# generate HTML output. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `html' will be used as the default path. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# doxygen will generate files with .html extension. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a +# standard footer. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet. Note that doxygen will try to copy +# the style sheet file to the HTML output directory, so don't put your own +# stylesheet in the HTML output directory as well, or it will be erased! + +HTML_STYLESHEET = + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to +# NO a bullet list will be used. + +HTML_ALIGN_MEMBERS = YES + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + +# If the GENERATE_DOCSET tag is set to YES, additional index files +# will be generated that can be used as input for Apple's Xcode 3 +# integrated development environment, introduced with OSX 10.5 (Leopard). +# To create a documentation set, doxygen will generate a Makefile in the +# HTML output directory. Running make will produce the docset in that +# directory and running "make install" will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find +# it at startup. + +GENERATE_DOCSET = NO + +# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the +# feed. A documentation feed provides an umbrella under which multiple +# documentation sets from a single provider (such as a company or product suite) +# can be grouped. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that +# should uniquely identify the documentation set bundle. This should be a +# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen +# will append .docset to the name. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. For this to work a browser that supports +# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox +# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). + +HTML_DYNAMIC_SECTIONS = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be +# written to the html output directory. + +CHM_FILE = + +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# the HTML help compiler on the generated index.hhp. + +HHC_LOCATION = + +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that +# it should be included in the master .chm file (NO). + +GENERATE_CHI = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a +# normal table of contents (NO) in the .chm file. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members +# to the contents of the HTML help documentation and to the tree view. + +TOC_EXPAND = NO + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at +# top of each HTML page. The value NO (the default) enables the index and +# the value YES disables it. + +DISABLE_INDEX = NO + +# This tag can be used to set the number of enum values (range [1..20]) +# that doxygen will group on one line in the generated HTML documentation. + +ENUM_VALUES_PER_LINE = 4 + +# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be +# generated containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, +# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are +# probably better off using the HTML help feature. + +GENERATE_TREEVIEW = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree +# is shown. + +TREEVIEW_WIDTH = 250 + +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# generate Latex output. + +GENERATE_LATEX = NO + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `latex' will be used as the default path. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. If left blank `latex' will be used as the default command name. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the +# default command name. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_LATEX = NO + +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, a4wide, letter, legal and +# executive. If left blank a4wide will be used. + +PAPER_TYPE = ... [truncated message content] |