summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2013-07-21 10:40:14 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2013-07-28 11:47:23 (GMT)
commit38e67b40b1c50e1ccbda4ffd867b6aa82a6c2212 (patch)
treec162a1ab1c375aa21c4f137ec30ae765b67527a4 /src
parent10ab1d5dddd63b5e7b3a65da8eb8a6416be7c914 (diff)
downloadDoxygen-38e67b40b1c50e1ccbda4ffd867b6aa82a6c2212.zip
Doxygen-38e67b40b1c50e1ccbda4ffd867b6aa82a6c2212.tar.gz
Doxygen-38e67b40b1c50e1ccbda4ffd867b6aa82a6c2212.tar.bz2
config.xml is now used to generate configoptions.cpp and config.doc
Diffstat (limited to 'src')
-rw-r--r--src/config.h129
-rw-r--r--src/config.l208
-rw-r--r--src/config.xml4788
-rwxr-xr-xsrc/configgen.py669
-rw-r--r--src/configoptions.cpp5680
-rw-r--r--src/configoptions.h3
-rw-r--r--src/doxygen.cpp28
-rw-r--r--src/libdoxycfg.t.in4
8 files changed, 6902 insertions, 4607 deletions
diff --git a/src/config.h b/src/config.h
index 7d37516..bb9ccf0 100644
--- a/src/config.h
+++ b/src/config.h
@@ -74,10 +74,8 @@ class ConfigOption
virtual void writeTemplate(FTextStream &t,bool sl,bool upd) = 0;
virtual void convertStrToVal() {}
virtual void substEnvVars() = 0;
- virtual void writeXML(FTextStream&) {}
virtual void init() {}
- QCString convertToComment(const QCString &s, const QCString &u);
void writeBoolValue(FTextStream &t,bool v);
void writeIntValue(FTextStream &t,int i);
void writeStringValue(FTextStream &t,QCString &s);
@@ -103,16 +101,7 @@ class ConfigInfo : public ConfigOption
m_name = name;
m_doc = doc;
}
- void writeTemplate(FTextStream &t, bool sl,bool)
- {
- if (!sl)
- {
- t << "\n";
- }
- t << "#---------------------------------------------------------------------------\n";
- t << "# " << m_doc << endl;
- t << "#---------------------------------------------------------------------------\n";
- }
+ void writeTemplate(FTextStream &t, bool sl,bool);
void substEnvVars() {}
};
@@ -133,24 +122,8 @@ class ConfigList : public ConfigOption
void setWidgetType(WidgetType w) { m_widgetType = w; }
WidgetType widgetType() const { return m_widgetType; }
QStrList *valueRef() { return &m_value; }
- void writeTemplate(FTextStream &t,bool sl,bool)
- {
- if (!sl)
- {
- t << endl;
- t << convertToComment(m_doc, m_userComment);
- t << endl;
- }
- else if (!m_userComment.isEmpty())
- {
- t << convertToComment("", m_userComment);
- }
- t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
- writeStringList(t,m_value);
- t << "\n";
- }
+ void writeTemplate(FTextStream &t,bool sl,bool);
void substEnvVars();
- void writeXML(FTextStream&);
void init() { m_value.clear(); }
private:
QStrList m_value;
@@ -177,23 +150,7 @@ class ConfigEnum : public ConfigOption
}
QCString *valueRef() { return &m_value; }
void substEnvVars();
- void writeTemplate(FTextStream &t,bool sl,bool)
- {
- if (!sl)
- {
- t << endl;
- t << convertToComment(m_doc, m_userComment);
- t << endl;
- }
- else if (!m_userComment.isEmpty())
- {
- t << convertToComment("", m_userComment);
- }
- t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
- writeStringValue(t,m_value);
- t << "\n";
- }
- void writeXML(FTextStream&);
+ void writeTemplate(FTextStream &t,bool sl,bool);
void init() { m_value = m_defValue.copy(); }
private:
@@ -222,24 +179,8 @@ class ConfigString : public ConfigOption
WidgetType widgetType() const { return m_widgetType; }
void setDefaultValue(const char *v) { m_defValue = v; }
QCString *valueRef() { return &m_value; }
- void writeTemplate(FTextStream &t,bool sl,bool)
- {
- if (!sl)
- {
- t << endl;
- t << convertToComment(m_doc, m_userComment);
- t << endl;
- }
- else if (!m_userComment.isEmpty())
- {
- t << convertToComment("", m_userComment);
- }
- t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
- writeStringValue(t,m_value);
- t << "\n";
- }
+ void writeTemplate(FTextStream &t,bool sl,bool);
void substEnvVars();
- void writeXML(FTextStream&);
void init() { m_value = m_defValue.copy(); }
private:
@@ -269,30 +210,7 @@ class ConfigInt : public ConfigOption
int maxVal() const { return m_maxVal; }
void convertStrToVal();
void substEnvVars();
- void writeTemplate(FTextStream &t,bool sl,bool upd)
- {
- if (!sl)
- {
- t << endl;
- t << convertToComment(m_doc, m_userComment);
- t << endl;
- }
- else if (!m_userComment.isEmpty())
- {
- t << convertToComment("", m_userComment);
- }
- t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
- if (upd && !m_valueString.isEmpty())
- {
- writeStringValue(t,m_valueString);
- }
- else
- {
- writeIntValue(t,m_value);
- }
- t << "\n";
- }
- void writeXML(FTextStream&);
+ void writeTemplate(FTextStream &t,bool sl,bool upd);
void init() { m_value = m_defValue; }
private:
int m_value;
@@ -320,30 +238,7 @@ class ConfigBool : public ConfigOption
void convertStrToVal();
void substEnvVars();
void setValueString(const QCString &v) { m_valueString = v; }
- void writeTemplate(FTextStream &t,bool sl,bool upd)
- {
- if (!sl)
- {
- t << endl;
- t << convertToComment(m_doc, m_userComment);
- t << endl;
- }
- else if (!m_userComment.isEmpty())
- {
- t << convertToComment("", m_userComment);
- }
- t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
- if (upd && !m_valueString.isEmpty())
- {
- writeStringValue(t,m_valueString);
- }
- else
- {
- writeBoolValue(t,m_value);
- }
- t << "\n";
- }
- void writeXML(FTextStream&);
+ void writeTemplate(FTextStream &t,bool sl,bool upd);
void init() { m_value = m_defValue; }
private:
bool m_value;
@@ -358,9 +253,8 @@ class ConfigObsolete : public ConfigOption
public:
ConfigObsolete(const char *name) : ConfigOption(O_Obsolete)
{ m_name = name; }
- void writeTemplate(FTextStream &,bool,bool) {}
+ void writeTemplate(FTextStream &,bool,bool);
void substEnvVars() {}
- void writeXML(FTextStream&);
};
/** Section marker for compile time optional options
@@ -370,13 +264,12 @@ class ConfigDisabled : public ConfigOption
public:
ConfigDisabled(const char *name) : ConfigOption(O_Disabled)
{ m_name = name; }
- void writeTemplate(FTextStream &,bool,bool) {}
+ void writeTemplate(FTextStream &,bool,bool);
void substEnvVars() {}
- void writeXML(FTextStream&);
};
-// some convenience macros
+// some convenience macros for access the config options
#define Config_getString(val) Config::instance()->getString(__FILE__,__LINE__,val)
#define Config_getInt(val) Config::instance()->getInt(__FILE__,__LINE__,val)
#define Config_getList(val) Config::instance()->getList(__FILE__,__LINE__,val)
@@ -571,8 +464,7 @@ class Config
*/
void writeTemplate(FTextStream &t,bool shortIndex,bool updateOnly);
- /** Write XML representation of the config file */
- void writeXML(FTextStream &t);
+ void setHeader(const char *header) { m_header = header; }
/////////////////////////////
// internal API
@@ -658,6 +550,7 @@ class Config
static Config *m_instance;
QCString m_userComment;
bool m_initialized;
+ QCString m_header;
};
#endif
diff --git a/src/config.l b/src/config.l
index dcc7da8..eb7c1c2 100644
--- a/src/config.l
+++ b/src/config.l
@@ -77,7 +77,7 @@ static QCString configStringRecode(
/* -----------------------------------------------------------------
*/
-QCString ConfigOption::convertToComment(const QCString &s, const QCString &u)
+static QCString convertToComment(const QCString &s, const QCString &u)
{
//printf("convertToComment(%s)=%s\n",s.data(),u.data());
QCString result;
@@ -291,106 +291,120 @@ bool &Config::getBool(const char *fileName,int num,const char *name) const
return *((ConfigBool *)opt)->valueRef();
}
-/* -----------------------------------------------------------------
- */
-
-void ConfigInt::writeXML(FTextStream& t)
-{
- t << " <option type='int' "
- "id='" << convertToXML(name()) << "' "
- "docs='\n" << convertToXML(docs()) << "' "
- "minval='" << m_minVal << "' "
- "maxval='" << m_maxVal << "' "
- "defval='" << m_defValue << "'";
- if (!m_dependency.isEmpty()) t << " depends='" << m_dependency << "'";
- t << "/>" << endl;
-}
+/* ------------------------------------------ */
-void ConfigBool::writeXML(FTextStream& t)
+void ConfigInfo::writeTemplate(FTextStream &t, bool sl,bool)
{
- t << " <option type='bool' "
- "id='" << convertToXML(name()) << "' "
- "docs='\n" << convertToXML(docs()) << "' "
- "defval='" << m_defValue << "'";
- if (!m_dependency.isEmpty()) t << " depends='" << m_dependency << "'";
- t << "/>" << endl;
+ if (!sl)
+ {
+ t << "\n";
+ }
+ t << "#---------------------------------------------------------------------------\n";
+ t << "# " << m_doc << endl;
+ t << "#---------------------------------------------------------------------------\n";
}
-void ConfigString::writeXML(FTextStream& t)
+void ConfigList::writeTemplate(FTextStream &t,bool sl,bool)
{
- QString format;
- switch (m_widgetType)
- {
- case String: format="string"; break;
- case File: format="file"; break;
- case Dir: format="dir"; break;
- }
- t << " <option type='string' "
- "id='" << convertToXML(name()) << "' "
- "format='" << format << "' "
- "docs='\n" << convertToXML(docs()) << "' "
- "defval='" << convertToXML(m_defValue) << "'";
- if (!m_dependency.isEmpty()) t << " depends='" << m_dependency << "'";
- t << "/>" << endl;
+ if (!sl)
+ {
+ t << endl;
+ t << convertToComment(m_doc, m_userComment);
+ t << endl;
+ }
+ else if (!m_userComment.isEmpty())
+ {
+ t << convertToComment("", m_userComment);
+ }
+ t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
+ writeStringList(t,m_value);
+ t << "\n";
}
-void ConfigEnum::writeXML(FTextStream &t)
+void ConfigEnum::writeTemplate(FTextStream &t,bool sl,bool)
{
- t << " <option type='enum' "
- "id='" << convertToXML(name()) << "' "
- "defval='" << convertToXML(m_defValue) << "' "
- "docs='\n" << convertToXML(docs()) << "'";
- if (!m_dependency.isEmpty()) t << " depends='" << m_dependency << "'";
- t << ">" << endl;
-
- char *enumVal = m_valueRange.first();
- while (enumVal)
+ if (!sl)
{
- t << " <value name='" << convertToXML(enumVal) << "'/>" << endl;
- enumVal = m_valueRange.next();
+ t << endl;
+ t << convertToComment(m_doc, m_userComment);
+ t << endl;
}
-
- t << " </option>" << endl;
+ else if (!m_userComment.isEmpty())
+ {
+ t << convertToComment("", m_userComment);
+ }
+ t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
+ writeStringValue(t,m_value);
+ t << "\n";
}
-void ConfigList::writeXML(FTextStream &t)
+void ConfigString::writeTemplate(FTextStream &t,bool sl,bool)
{
- QString format;
- switch (m_widgetType)
+ if (!sl)
{
- case String: format="string"; break;
- case File: format="file"; break;
- case Dir: format="dir"; break;
- case FileAndDir: format="filedir"; break;
+ t << endl;
+ t << convertToComment(m_doc, m_userComment);
+ t << endl;
}
- t << " <option type='list' "
- "id='" << convertToXML(name()) << "' "
- "format='" << format << "' "
- "docs='\n" << convertToXML(docs()) << "'";
- if (!m_dependency.isEmpty()) t << " depends='" << m_dependency << "'";
- t << ">" << endl;
- char *enumVal = m_value.first();
- while (enumVal)
+ else if (!m_userComment.isEmpty())
{
- t << " <value name='" << convertToXML(enumVal) << "'/>" << endl;
- enumVal = m_value.next();
+ t << convertToComment("", m_userComment);
}
-
- t << " </option>" << endl;
+ t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
+ writeStringValue(t,m_value);
+ t << "\n";
}
-void ConfigObsolete::writeXML(FTextStream &t)
+void ConfigInt::writeTemplate(FTextStream &t,bool sl,bool upd)
{
- t << " <option type='obsolete' "
- "id='" << convertToXML(name()) << "'/>" << endl;
+ if (!sl)
+ {
+ t << endl;
+ t << convertToComment(m_doc, m_userComment);
+ t << endl;
+ }
+ else if (!m_userComment.isEmpty())
+ {
+ t << convertToComment("", m_userComment);
+ }
+ t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
+ if (upd && !m_valueString.isEmpty())
+ {
+ writeStringValue(t,m_valueString);
+ }
+ else
+ {
+ writeIntValue(t,m_value);
+ }
+ t << "\n";
}
-void ConfigDisabled::writeXML(FTextStream &t)
+void ConfigBool::writeTemplate(FTextStream &t,bool sl,bool upd)
{
- t << " <option type='disabled' "
- "id='" << convertToXML(name()) << "'/>" << endl;
+ if (!sl)
+ {
+ t << endl;
+ t << convertToComment(m_doc, m_userComment);
+ t << endl;
+ }
+ else if (!m_userComment.isEmpty())
+ {
+ t << convertToComment("", m_userComment);
+ }
+ t << m_name << m_spaces.left(MAX_OPTION_LENGTH-m_name.length()) << "=";
+ if (upd && !m_valueString.isEmpty())
+ {
+ writeStringValue(t,m_valueString);
+ }
+ else
+ {
+ writeBoolValue(t,m_value);
+ }
+ t << "\n";
}
+void ConfigObsolete::writeTemplate(FTextStream &,bool,bool) {}
+void ConfigDisabled::writeTemplate(FTextStream &,bool,bool) {}
/* -----------------------------------------------------------------
*
@@ -830,17 +844,7 @@ void Config::writeTemplate(FTextStream &t,bool sl,bool upd)
t << "# Doxyfile " << versionString << endl << endl;
if (!sl)
{
- t << "# This file describes the settings to be used by the documentation system\n";
- t << "# doxygen (www.doxygen.org) for a project.\n";
- t << "#\n";
- t << "# All text after a double hash (##) is considered a comment and is placed\n";
- t << "# in front of the TAG it is preceding .\n";
- t << "# All text after a hash (#) is considered a comment and will be ignored.\n";
- t << "# The format is:\n";
- t << "# TAG = value [value, ...]\n";
- t << "# For lists items can also be appended using:\n";
- t << "# TAG += value [value, ...]\n";
- t << "# Values that contain spaces should be placed between quotes (\" \").\n";
+ t << convertToComment(m_header,"");
}
ConfigOption *option = m_options->first();
while (option)
@@ -856,36 +860,6 @@ void Config::writeTemplate(FTextStream &t,bool sl,bool upd)
}
}
-void Config::writeXML(FTextStream &t)
-{
- t << "<doxygenconfig>" << endl;
- bool first=TRUE;
- ConfigOption *option = m_options->first();
- while (option)
- {
- if (option->kind()==ConfigOption::O_Info)
- {
- if (!first) t << " </group>" << endl;
- t << " <group name='" << option->name() << "' "
- "docs='" << option->docs() << "'>" << endl;
- first=FALSE;
- }
- else
- {
- option->writeXML(t);
- }
- option = m_options->next();
- }
- option = m_obsolete->first();
- while (option)
- {
- option->writeXML(t);
- option = m_obsolete->next();
- }
- if (!first) t << " </group>" << endl;
- t << "</doxygenconfig>" << endl;
-}
-
void Config::convertStrToVal()
{
ConfigOption *option = m_options->first();
diff --git a/src/config.xml b/src/config.xml
index e89e948..d73a26c 100644
--- a/src/config.xml
+++ b/src/config.xml
@@ -1,59 +1,292 @@
<doxygenconfig>
+ <header>
+ <docs doxywizard='0' doxyfile='0'>
+ <![CDATA[
+/*
+ *
+ *
+ *
+ * Copyright (C) 1997-2013 by Dimitri van Heesch.
+ *
+ * Permission to use, copy, modify, and distribute this software and its
+ * documentation under the terms of the GNU General Public License is hereby
+ * granted. No representations are made about the suitability of this software
+ * for any purpose. It is provided "as is" without express or implied warranty.
+ * See the GNU General Public License for more details.
+ *
+ * Documents produced by Doxygen are derivative works derived from the
+ * input used in their production; they are not affected by this license.
+ *
+ */
+/*! \page config Configuration
+
+\tableofcontents
+\section config_format Format
+
+A configuration file is a free-form ASCII text file with a structure
+that is similar to that of a \c Makefile, with the default name \c Doxyfile. It is
+parsed by \c doxygen. The file may contain tabs and newlines for
+formatting purposes. The statements in the file are case-sensitive.
+Comments may be placed anywhere within the file (except within quotes).
+Comments beginning with two hash characters (\c \#\#) are kept when updating
+the configuration file and are placed in front of the TAG are in front of.
+Comments beginning with two hash characters (\c \#\#) at the end of the
+configuration file are also kept and placed at the end of the file.
+Comments begin with the hash character (\c \#) and ends at the end of the line.
+
+The file essentially consists of a list of assignment statements.
+Each statement consists of a \c TAG_NAME written in capitals,
+followed by the equal sign (<code>=</code>) and one or more values. If the same tag
+is assigned more than once, the last assignment overwrites any earlier
+assignment. For tags that take a list as their argument,
+the <code>+=</code> operator can be used instead of <code>=</code> to append
+new values to the list. Values are sequences of non-blanks. If the value should
+contain one or more blanks it must be surrounded by quotes (<code>&quot;...&quot;</code>).
+Multiple lines can be concatenated by inserting a backslash (\c \\)
+as the last character of a line. Environment variables can be expanded
+using the pattern <code>\$(ENV_VARIABLE_NAME)</code>.
+
+You can also include part of a configuration file from another configuration
+file using a <code>\@INCLUDE</code> tag as follows:
+\verbatim
+@INCLUDE = config_file_name
+\endverbatim
+The include file is searched in the current working directory. You can
+also specify a list of directories that should be searched before looking
+in the current working directory. Do this by putting a <code>\@INCLUDE_PATH</code> tag
+with these paths before the <code>\@INCLUDE</code> tag, e.g.:
+\verbatim
+@INCLUDE_PATH = my_config_dir
+\endverbatim
+
+The configuration options can be divided into several categories.
+Below is an alphabetical index of the tags that are recognized
+followed by the descriptions of the tags grouped by category.
+]]>
+ </docs>
+ <docs doxywizard='0' documentation='0'>
+ <![CDATA[
+This file describes the settings to be used by the documentation system
+doxygen (www.doxygen.org) for a project.
+<br>
+All text after a double hash (##) is considered a comment and is placed
+in front of the TAG it is preceding.<br>
+All text after a single hash (#) is considered a comment and will be ignored.
+The format is:
+\verbatim
+ TAG = value [value, ...]
+\endverbatim
+For lists, items can also be appended using:
+\verbatim
+ TAG += value [value, ...]
+\endverbatim
+Values that contain spaces should be placed between quotes (\" \").
+]]>
+ </docs>
+ </header>
+ <footer>
+ <docs doxywizard='0' doxyfile='0'>
+ <![CDATA[
+\section config_examples Examples
+
+Suppose you have a simple project consisting of two files: a source file
+\c example.cc and a header file \c example.h.
+Then a minimal configuration file is as simple as:
+\verbatim
+INPUT = example.cc example.h
+\endverbatim
+
+Assuming the example makes use of Qt classes and \c perl is located
+in <code>/usr/bin</code>, a more realistic configuration file would be:
+\verbatim
+PROJECT_NAME = Example
+INPUT = example.cc example.h
+WARNINGS = YES
+TAGFILES = qt.tag
+PERL_PATH = /usr/local/bin/perl
+SEARCHENGINE = NO
+\endverbatim
+
+To generate the documentation for the
+<a href="http://www.stack.nl/~dimitri/qdbttabular/index.html">QdbtTabular</a> package
+I have used the following configuration file:
+\verbatim
+PROJECT_NAME = QdbtTabular
+OUTPUT_DIRECTORY = html
+WARNINGS = YES
+INPUT = examples/examples.doc src
+FILE_PATTERNS = *.cc *.h
+INCLUDE_PATH = examples
+TAGFILES = qt.tag
+PERL_PATH = /usr/bin/perl
+SEARCHENGINE = YES
+\endverbatim
+
+To regenerate the Qt-1.44 documentation from the sources, you could use the
+following config file:
+\verbatim
+PROJECT_NAME = Qt
+OUTPUT_DIRECTORY = qt_docs
+HIDE_UNDOC_MEMBERS = YES
+HIDE_UNDOC_CLASSES = YES
+ENABLE_PREPROCESSING = YES
+MACRO_EXPANSION = YES
+EXPAND_ONLY_PREDEF = YES
+SEARCH_INCLUDES = YES
+FULL_PATH_NAMES = YES
+STRIP_FROM_PATH = $(QTDIR)/
+PREDEFINED = USE_TEMPLATECLASS Q_EXPORT= \
+ QArrayT:=QArray \
+ QListT:=QList \
+ QDictT:=QDict \
+ QQueueT:=QQueue \
+ QVectorT:=QVector \
+ QPtrDictT:=QPtrDict \
+ QIntDictT:=QIntDict \
+ QStackT:=QStack \
+ QDictIteratorT:=QDictIterator \
+ QListIteratorT:=QListIterator \
+ QCacheT:=QCache \
+ QCacheIteratorT:=QCacheIterator \
+ QIntCacheT:=QIntCache \
+ QIntCacheIteratorT:=QIntCacheIterator \
+ QIntDictIteratorT:=QIntDictIterator \
+ QPtrDictIteratorT:=QPtrDictIterator
+INPUT = $(QTDIR)/doc \
+ $(QTDIR)/src/widgets \
+ $(QTDIR)/src/kernel \
+ $(QTDIR)/src/dialogs \
+ $(QTDIR)/src/tools
+FILE_PATTERNS = *.cpp *.h q*.doc
+INCLUDE_PATH = $(QTDIR)/include
+RECURSIVE = YES
+\endverbatim
+
+For the Qt-2.1 sources I recommend to use the following settings:
+\verbatim
+PROJECT_NAME = Qt
+PROJECT_NUMBER = 2.1
+HIDE_UNDOC_MEMBERS = YES
+HIDE_UNDOC_CLASSES = YES
+SOURCE_BROWSER = YES
+INPUT = $(QTDIR)/src
+FILE_PATTERNS = *.cpp *.h q*.doc
+RECURSIVE = YES
+EXCLUDE_PATTERNS = *codec.cpp moc_* */compat/* */3rdparty/*
+ALPHABETICAL_INDEX = YES
+COLS_IN_ALPHA_INDEX = 3
+IGNORE_PREFIX = Q
+ENABLE_PREPROCESSING = YES
+MACRO_EXPANSION = YES
+INCLUDE_PATH = $(QTDIR)/include
+PREDEFINED = Q_PROPERTY(x)= \
+ Q_OVERRIDE(x)= \
+ Q_EXPORT= \
+ Q_ENUMS(x)= \
+ "QT_STATIC_CONST=static const " \
+ _WS_X11_ \
+ INCLUDE_MENUITEM_DEF
+EXPAND_ONLY_PREDEF = YES
+EXPAND_AS_DEFINED = Q_OBJECT_FAKE Q_OBJECT ACTIVATE_SIGNAL_WITH_PARAM \
+ Q_VARIANT_AS
+\endverbatim
+
+Here doxygen's preprocessor is used to substitute some
+macro names that are normally substituted by the C preprocessor,
+but without doing full macro expansion.
+
+
+\htmlonly
+Go to the <a href="commands.html">next</a> section or return to the
+ <a href="index.html">index</a>.
+\endhtmlonly
+
+*/
+]]>
+ </docs>
+ </footer>
+
<group name='Project' docs='Project related configuration options'>
- <option type='string' id='DOXYFILE_ENCODING' format='string' docs='
-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.
-' defval='UTF-8'/>
- <option type='string' id='PROJECT_NAME' format='string' docs='
-The PROJECT_NAME tag is a single word (or sequence of words) that should
-identify the project. Note that if you do not use Doxywizard you need
-to put quotes around the project name if it contains spaces.'
-defval='My Project'/>
- <option type='string' id='PROJECT_NUMBER' format='string' docs='
-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.
-' defval=''/>
- <option type='string' id='PROJECT_BRIEF' format='string' docs='
-Using the PROJECT_BRIEF tag one can provide an optional one line description
-for a project that appears at the top of each page and should give viewer
-a quick idea about the purpose of the project. Keep the description short.
-' defval=''/>
- <option type='string' id='PROJECT_LOGO' format='file' docs='
-With the PROJECT_LOGO tag one can specify an logo or icon that is
-included in the documentation. The maximum height of the logo should not
-exceed 55 pixels and the maximum width should not exceed 200 pixels.
-Doxygen will copy the logo to the output directory.
-' defval=''/>
- <option type='string' id='OUTPUT_DIRECTORY' format='dir' docs='
-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.
-' defval=''/>
- <option type='bool' id='CREATE_SUBDIRS' docs='
-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.
-' defval='0'/>
- <option type='enum' id='OUTPUT_LANGUAGE' defval='English' docs='
-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, Esperanto, Farsi, Finnish, French, German,
-Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
-messages), Korean, Korean-en, Latvian, Lithuanian, Norwegian, Macedonian,
-Persian, Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic,
-Slovak, Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
-'>
+ <option type='string' id='DOXYFILE_ENCODING' format='string' defval='UTF-8'>
+ <docs>
+<![CDATA[
+ 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 \c libiconv (or the iconv built into
+ \c libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of
+ possible encodings.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='PROJECT_NAME' format='string' defval='My Project'>
+ <docs>
+<![CDATA[
+ The \c PROJECT_NAME tag is a single word (or a sequence of words
+ surrounded by double-quotes, unless you are using Doxywizard) that should identify the project for which the
+ documentation is generated. This name is used in the title of most
+ generated pages and in a few other places.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='PROJECT_NUMBER' format='string' defval=''>
+ <docs>
+<![CDATA[
+ The \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='PROJECT_BRIEF' format='string' defval=''>
+ <docs>
+<![CDATA[
+ Using the \c PROJECT_BRIEF tag one can provide an optional one line description
+ for a project that appears at the top of each page and should give viewer
+ a quick idea about the purpose of the project. Keep the description short.
+]]>
+ </docs>
+ </option>
+
+ <option type='string' id='PROJECT_LOGO' format='file' defval=''>
+ <docs>
+<![CDATA[
+ With the \c PROJECT_LOGO tag one can specify an logo or icon that is
+ included in the documentation. The maximum height of the logo should not
+ exceed 55 pixels and the maximum width should not exceed 200 pixels.
+ Doxygen will copy the logo to the output directory.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='OUTPUT_DIRECTORY' format='dir' defval=''>
+ <docs>
+<![CDATA[
+ The \c OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+ path into which the generated documentation will be written.
+ 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.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='CREATE_SUBDIRS' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c CREATE_SUBDIRS tag is set to \c 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
+ causes performance problems for the file system.
+]]>
+ </docs>
+ </option>
+ <option type='enum' id='OUTPUT_LANGUAGE' defval='English'>
+ <docs>
+<![CDATA[
+ The \c 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.
+]]>
+ </docs>
<value name='Afrikaans'/>
<value name='Arabic'/>
<value name='Brazilian'/>
@@ -94,29 +327,41 @@ Slovak, Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
<value name='Ukrainian'/>
<value name='Vietnamese'/>
</option>
- <option type='bool' id='BRIEF_MEMBER_DESC' docs='
-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.
-' defval='1'/>
- <option type='bool' id='REPEAT_BRIEF' docs='
-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.
-' defval='1'/>
- <option type='list' id='ABBREVIATE_BRIEF' format='string' docs='
-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 (&quot;$name&quot; is automatically
-replaced with the name of the entity): &quot;The $name class&quot; &quot;The $name widget&quot;
-&quot;The $name file&quot; &quot;is&quot; &quot;provides&quot; &quot;specifies&quot; &quot;contains&quot;
-&quot;represents&quot; &quot;a&quot; &quot;an&quot; &quot;the&quot;
-'>
+ <option type='bool' id='BRIEF_MEMBER_DESC' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c BRIEF_MEMBER_DESC tag is set to \c YES doxygen will
+ include brief member descriptions after the members that are listed in
+ the file and class documentation (similar to \c Javadoc).
+ Set to \c NO to disable this.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='REPEAT_BRIEF' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c REPEAT_BRIEF tag is set to \c YES doxygen will
+ prepend the brief description of a member or function before the detailed
+ description
+ <br>Note:
+ If both \ref cfg_hide_undoc_members "HIDE_UNDOC_MEMBERS" and
+ \ref cfg_brief_member_desc "BRIEF_MEMBER_DESC" are set to \c NO, the
+ brief descriptions will be completely suppressed.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='ABBREVIATE_BRIEF' format='string'>
+ <docs>
+<![CDATA[
+ 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):
+]]>
+ </docs>
<value name='The $name class'/>
<value name='The $name widget'/>
<value name='The $name file'/>
@@ -129,520 +374,892 @@ replaced with the name of the entity): &quot;The $name class&quot; &quot;The $na
<value name='an'/>
<value name='the'/>
</option>
- <option type='bool' id='ALWAYS_DETAILED_SEC' docs='
-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.
-' defval='0'/>
- <option type='bool' id='INLINE_INHERITED_MEMB' docs='
-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.
-' defval='0'/>
- <option type='bool' id='FULL_PATH_NAMES' docs='
-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.
-' defval='1'/>
- <option type='list' id='STRIP_FROM_PATH' format='string' docs='
-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. Note that you specify absolute paths here, but also
-relative paths, which will be relative from the directory where doxygen is
-started.' depends='FULL_PATH_NAMES'>
+ <option type='bool' id='ALWAYS_DETAILED_SEC' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c ALWAYS_DETAILED_SEC and \ref cfg_repeat_brief "REPEAT_BRIEF" tags
+ are both set to \c YES then
+ doxygen will generate a detailed section even if there is only a brief
+ description.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='INLINE_INHERITED_MEMB' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c INLINE_INHERITED_MEMB tag is set to \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='FULL_PATH_NAMES' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c FULL_PATH_NAMES tag is set to \c YES doxygen will prepend the full
+ path before files name in the file list and in the header files. If set
+ to \c NO the shortest path that makes the file name unique will be used
+]]>
+ </docs>
+ </option>
+ <option type='list' id='STRIP_FROM_PATH' format='string' depends='FULL_PATH_NAMES'>
+ <docs>
+<![CDATA[
+ The \c 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.
+ <br>Note that you can specify absolute paths here, but also
+ relative paths, which will be relative from the directory where doxygen is
+ started.
+]]>
+ </docs>
<value name=''/>
</option>
- <option type='list' id='STRIP_FROM_INC_PATH' format='string' docs='
-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.
-'>
- </option>
- <option type='bool' id='SHORT_NAMES' docs='
-If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
-(but less readable) file names. This can be useful if your file system
-doesn&apos;t support long names like on DOS, Mac, or CD-ROM.
-' defval='0'/>
- <option type='bool' id='JAVADOC_AUTOBRIEF' docs='
-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.)
-' defval='0'/>
- <option type='bool' id='QT_AUTOBRIEF' docs='
-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.)
-' defval='0'/>
- <option type='bool' id='MULTILINE_CPP_IS_BRIEF' docs='
-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.
-' defval='0'/>
- <option type='bool' id='INHERIT_DOCS' docs='
-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.
-' defval='1'/>
- <option type='bool' id='SEPARATE_MEMBER_PAGES' docs='
-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.
-' defval='0'/>
- <option type='int' id='TAB_SIZE' docs='
-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.
-' minval='1' maxval='16' defval='4'/>
- <option type='list' id='ALIASES' format='string' docs='
-This tag can be used to specify a number of aliases that acts
-as commands in the documentation. An alias has the form &quot;name=value&quot;.
-For example adding &quot;sideeffect=\par Side Effects:\n&quot; will allow you to
-put the command \sideeffect (or @sideeffect) in the documentation, which
-will result in a user-defined paragraph with heading &quot;Side Effects:&quot;.
-You can put \n&apos;s in the value part of an alias to insert newlines.
-'/>
- <option type='list' id='TCL_SUBST' format='string' docs='
-This tag can be used to specify a number of word-keyword mappings (TCL only).
-A mapping has the form &quot;name=value&quot;. For example adding
-&quot;class=itcl::class&quot; will allow you to use the command class in the
-itcl::class meaning.
-'/>
- <option type='bool' id='OPTIMIZE_OUTPUT_FOR_C' docs='
-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.
-' defval='0'/>
- <option type='bool' id='OPTIMIZE_OUTPUT_JAVA' docs='
-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.
-' defval='0'/>
- <option type='bool' id='OPTIMIZE_FOR_FORTRAN' docs='
-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.
-' defval='0'/>
- <option type='bool' id='OPTIMIZE_OUTPUT_VHDL' docs='
-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.
-' defval='0'/>
- <option type='list' id='EXTENSION_MAPPING' format='string' docs='
-Doxygen selects the parser to use depending on the extension of the files it
-parses. With this tag you can assign which parser to use for a given
-extension. Doxygen has a built-in mapping, but you can override or extend it
-using this tag. The format is ext=language, where ext is a file extension,
-and language is one of the parsers supported by doxygen: IDL, Java,
-Javascript, CSharp, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL, C,
-C++. For instance to make doxygen treat .inc files as Fortran files (default
-is PHP), and .f files as C (default is Fortran), use: inc=Fortran f=C. Note
-that for custom extensions you also need to set FILE_PATTERNS otherwise the
-files are not read by doxygen.
-'>
- </option>
- <option type='bool' id='MARKDOWN_SUPPORT' docs='
-If MARKDOWN_SUPPORT is enabled (the default) then doxygen pre-processes all
-comments according to the Markdown format, which allows for more readable
-documentation. See http://daringfireball.net/projects/markdown/ for details.
-The output of markdown processing is further processed by doxygen, so you
-can mix doxygen, HTML, and XML commands with Markdown formatting.
-Disable only in case of backward compatibilities issues.
-' defval='1'/>
- <option type='bool' id='AUTOLINK_SUPPORT' docs='
-When enabled doxygen tries to link words that correspond to documented
-classes, or namespaces to their corresponding documentation. Such a link can
-be prevented in individual cases by by putting a % sign in front of the word
-or globally by setting AUTOLINK_SUPPORT to NO.
-' defval='1'/>
- <option type='bool' id='BUILTIN_STL_SUPPORT' docs='
-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 makes the inheritance and collaboration
-diagrams that involve STL classes more complete and accurate.
-' defval='0'/>
- <option type='bool' id='CPP_CLI_SUPPORT' docs='
-If you use Microsoft&apos;s C++/CLI language, you should set this option to YES to
-enable parsing support.
-' defval='0'/>
- <option type='bool' id='SIP_SUPPORT' docs='
-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.
-' defval='0'/>
- <option type='bool' id='IDL_PROPERTY_SUPPORT' docs='
-For Microsoft&apos;s IDL there are propget and propput attributes to indicate
-getter and setter methods for a property. Setting this option to YES (the
-default) will make doxygen replace the get and set methods by a property in
-the documentation. This will only work if the methods are indeed getting or
-setting a simple type. If this is not the case, or you want to show the
-methods anyway, you should set this option to NO.
-' defval='1'/>
- <option type='bool' id='DISTRIBUTE_GROUP_DOC' docs='
-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.
-' defval='0'/>
- <option type='bool' id='SUBGROUPING' docs='
-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.
-' defval='1'/>
- <option type='bool' id='INLINE_GROUPED_CLASSES' docs='
-When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and
-unions are shown inside the group in which they are included (e.g. using
-@ingroup) instead of on a separate page (for HTML and Man pages) or
-section (for LaTeX and RTF).
-' defval='0'/>
- <option type='bool' id='INLINE_SIMPLE_STRUCTS' docs='
-When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and
-unions with only public data fields or simple typedef fields will be shown
-inline in the documentation of the scope in which they are defined (i.e. file,
-namespace, or group documentation), provided this scope is documented. If set
-to NO (the default), structs, classes, and unions are shown on a separate
-page (for HTML and Man pages) or section (for LaTeX and RTF).
-' defval='0'/>
- <option type='bool' id='TYPEDEF_HIDES_STRUCT' docs='
-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&apos;ed and only the typedef is referenced, never the tag name.
-' defval='0'/>
- <option type='int' id='LOOKUP_CACHE_SIZE' docs='
-The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
-cache is used to resolve symbols given their name and scope. Since this can
-be an expensive process and often the same symbol appear multiple times in
-the code, doxygen keeps a cache of pre-resolved symbols. If the cache is too
-small doxygen will become slower. If the cache is too large, memory is wasted.
-The cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid
-range is 0..9, the default is 0, corresponding to a cache size of 2^16 = 65536
-symbols.
-' minval='0' maxval='9' defval='0'/>
+ <option type='list' id='STRIP_FROM_INC_PATH' format='string'>
+ <docs>
+<![CDATA[
+ The \c 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 list of include paths that
+ are normally passed to the compiler using the `-I` flag.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SHORT_NAMES' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c SHORT_NAMES tag is set to \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='JAVADOC_AUTOBRIEF' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c JAVADOC_AUTOBRIEF tag is set to \c YES then doxygen
+ will interpret the first line (until the first dot) of a Javadoc-style
+ comment as the brief description. If set to \c NO, the
+ Javadoc-style will behave just like regular Qt-style comments
+ (thus requiring an explicit \ref cmdbrief "\@brief" command for a brief description.)
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='QT_AUTOBRIEF' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c QT_AUTOBRIEF tag is set to \c YES then doxygen
+ will interpret the first line (until the first dot) of a Qt-style
+ comment as the brief description. If set to \c NO, the
+ Qt-style will behave just like regular Qt-style comments (thus
+ requiring an explicit \ref cmdbrief "\\brief" command for a brief description.)
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='MULTILINE_CPP_IS_BRIEF' defval='0'>
+ <docs>
+<![CDATA[
+ The \c MULTILINE_CPP_IS_BRIEF tag can be set to \c YES to make doxygen
+ treat a multi-line C++ special comment block (i.e. a block of \c //! or \c ///
+ comments) as a brief description. This used to be the default behavior.
+ The new default is to treat a multi-line C++ comment block as a detailed
+ description. Set this tag to \c YES if you prefer the old behavior instead.
+ <br>Note that setting this tag to \c YES also means that rational rose comments
+ are not recognized any more.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='INHERIT_DOCS' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c INHERIT_DOCS tag is set to \c YES then an undocumented
+ member inherits the documentation from any documented member that it
+ re-implements.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SEPARATE_MEMBER_PAGES' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c SEPARATE_MEMBER_PAGES tag is set to \c YES, then doxygen will produce
+ a new page for each member. If set to \c NO, the documentation of a member will
+ be part of the file/class/namespace that contains it.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='TAB_SIZE' minval='1' maxval='16' defval='4'>
+ <docs>
+<![CDATA[
+ The \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='ALIASES' format='string'>
+ <docs>
+<![CDATA[
+ This tag can be used to specify a number of aliases that act
+ as commands in the documentation. An alias has the form:
+\verbatim
+ name=value
+\endverbatim
+ For example adding
+\verbatim
+ "sideeffect=@par Side Effects:\n"
+\endverbatim
+ will allow you to
+ put the command \c \\sideeffect (or \c \@sideeffect) in the documentation, which
+ will result in a user-defined paragraph with heading "Side Effects:".
+ You can put \ref cmdn "\\n"'s in the value part of an alias to insert newlines.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='TCL_SUBST' format='string'>
+ <docs>
+<![CDATA[
+ This tag can be used to specify a number of word-keyword mappings (TCL only).
+ A mapping has the form <code>"name=value"</code>. For example adding
+ <code>"class=itcl::class"</code> will allow you to use the command class in the
+ <code>itcl::class</code> meaning.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='OPTIMIZE_OUTPUT_FOR_C' defval='0'>
+ <docs>
+<![CDATA[
+ Set the \c OPTIMIZE_OUTPUT_FOR_C tag to \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='OPTIMIZE_OUTPUT_JAVA' defval='0'>
+ <docs>
+<![CDATA[
+ Set the \c OPTIMIZE_OUTPUT_JAVA tag to \c YES if your project consists of Java or
+ Python sources only. Doxygen will then generate output that is more tailored
+ for that language. For instance, namespaces will be presented as packages,
+ qualified scopes will look different, etc.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='OPTIMIZE_FOR_FORTRAN' defval='0'>
+ <docs>
+<![CDATA[
+ Set the \c OPTIMIZE_FOR_FORTRAN tag to \c YES if your project consists of Fortran
+ sources. Doxygen will then generate output that is tailored for Fortran.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='OPTIMIZE_OUTPUT_VHDL' defval='0'>
+ <docs>
+<![CDATA[
+ Set the \c OPTIMIZE_OUTPUT_VHDL tag to \c YES if your project consists of VHDL
+ sources. Doxygen will then generate output that is tailored for VHDL.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='EXTENSION_MAPPING' format='string'>
+ <docs>
+<![CDATA[
+ Doxygen selects the parser to use depending on the extension of the files it parses.
+ With this tag you can assign which parser to use for a given extension.
+ Doxygen has a built-in mapping, but you can override or extend it using this tag.
+ The format is <code>ext=language</code>, where \c ext is a file extension, and language is one of
+ the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP,
+ Objective-C, Python, Fortran, VHDL.
+
+ For instance to make doxygen treat
+ <code>.inc</code> files as Fortran files (default is PHP), and <code>.f</code> files as C (default is Fortran),
+ use: `inc=Fortran f=C`.
+
+ <br>Note For files without extension you can use `no_extension` as a placeholder.
+ <br>Note that for custom extensions you also need to set \ref cfg_file_patterns "FILE_PATTERNS" otherwise the
+ files are not read by doxygen.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='MARKDOWN_SUPPORT' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all
+ comments according to the Markdown format, which allows for more readable
+ documentation. See http://daringfireball.net/projects/markdown/ for details.
+ The output of markdown processing is further processed by doxygen, so you
+ can mix doxygen, HTML, and XML commands with Markdown formatting.
+ Disable only in case of backward compatibilities issues.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='AUTOLINK_SUPPORT' defval='1'>
+ <docs>
+<![CDATA[
+ When enabled doxygen tries to link words that correspond to documented classes,
+ or namespaces to their corresponding documentation. Such a link can be
+ prevented in individual cases by by putting a \c % sign in front of the word or
+ globally by setting \c AUTOLINK_SUPPORT to \c NO.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='BUILTIN_STL_SUPPORT' defval='0'>
+ <docs>
+<![CDATA[
+ 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 \c YES in order to let doxygen match functions declarations and
+ definitions whose arguments contain STL classes (e.g. `func(std::string`); versus
+ `func(std::string) {}`). This also make the inheritance and collaboration
+ diagrams that involve STL classes more complete and accurate.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='CPP_CLI_SUPPORT' defval='0'>
+ <docs>
+<![CDATA[
+ If you use Microsoft's C++/CLI language, you should set this option to \c YES to
+ enable parsing support.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SIP_SUPPORT' defval='0'>
+ <docs>
+<![CDATA[
+ Set the \c SIP_SUPPORT tag to \c YES if your project consists
+ of <a href="http://www.riverbankcomputing.co.uk/software/sip/intro">sip</a> 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.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='IDL_PROPERTY_SUPPORT' defval='1'>
+ <docs>
+<![CDATA[
+ For Microsoft's IDL there are \c propget and \c propput attributes to indicate getter
+ and setter methods for a property. Setting this option to \c YES
+ will make doxygen to replace the get and set methods by a property in the
+ documentation. This will only work if the methods are indeed getting or
+ setting a simple type. If this is not the case, or you want to show the
+ methods anyway, you should set this option to \c NO.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='DISTRIBUTE_GROUP_DOC' defval='0'>
+ <docs>
+<![CDATA[
+ If member grouping is used in the documentation and the \c DISTRIBUTE_GROUP_DOC
+ tag is set to \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SUBGROUPING' defval='1'>
+ <docs>
+<![CDATA[
+ Set the \c SUBGROUPING tag to \c YES 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
+ \c NO to prevent subgrouping. Alternatively, this can be done per class using
+ the \ref cmdnosubgrouping "\\nosubgrouping" command.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='INLINE_GROUPED_CLASSES' defval='0'>
+ <docs>
+<![CDATA[
+ When the \c INLINE_GROUPED_CLASSES tag is set to \c YES, classes, structs and
+ unions are shown inside the group in which they are included
+ (e.g. using \ref cmdingroup "\\ingroup") instead of on a separate page (for HTML and Man pages)
+ or section (for \f$\mbox{\LaTeX}\f$ and RTF).
+ <br>Note that this feature does not work in
+ combination with \ref cfg_separate_member_pages "SEPARATE_MEMBER_PAGES".
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='INLINE_SIMPLE_STRUCTS' defval='0'>
+ <docs>
+<![CDATA[
+ When the \c INLINE_SIMPLE_STRUCTS tag is set to \c YES, structs, classes, and
+ unions with only public data fields or simple typedef fields will be shown
+ inline in the documentation of the scope in which they are defined (i.e. file,
+ namespace, or group documentation), provided this scope is documented. If set
+ to \c NO, structs, classes, and unions are shown on a separate
+ page (for HTML and Man pages) or section (for \f$\mbox{\LaTeX}\f$ and RTF).
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='TYPEDEF_HIDES_STRUCT' defval='0'>
+ <docs>
+<![CDATA[
+ When \c TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or enum
+ is documented as struct, union, or enum with the name of the typedef. So
+ <code>typedef struct TypeS {} TypeT</code>, will appear in the documentation as a struct
+ with name \c TypeT. When disabled the typedef will appear as a member of a file,
+ namespace, or class. And the struct will be named \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='LOOKUP_CACHE_SIZE' minval='0' maxval='9' defval='0'>
+ <!-- be carefull when changing these formulas as they are hard coded in the conversion script -->
+ <docs>
+<![CDATA[
+ The size of the symbol lookup cache can be
+ set using \c LOOKUP_CACHE_SIZE. This cache is used to resolve symbols given
+ their name and scope. Since this can be an expensive process and often the
+ same symbol appears multiple times in the code, doxygen keeps a cache of
+ pre-resolved symbols. If the cache is too small doxygen will become slower.
+ If the cache is too large, memory is wasted. The cache size is given by this
+ formula: \f$2^{(16+\mbox{LOOKUP\_CACHE\_SIZE})}\f$. The valid range is 0..9, the default is 0,
+ corresponding to a cache size of \f$2^{16} = 65536\f$ symbols.
+ At the end of a run doxygen will report the cache usage and suggest the
+ optimal cache size from a speed point of view.
+]]>
+ </docs>
+ </option>
</group>
<group name='Build' docs='Build related configuration options'>
- <option type='bool' id='EXTRACT_ALL' docs='
-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 respectively EXTRACT_STATIC tags are set to YES
-' defval='0'/>
- <option type='bool' id='EXTRACT_PRIVATE' docs='
-If the EXTRACT_PRIVATE tag is set to YES all private members of a class
-will be included in the documentation.
-' defval='0'/>
- <option type='bool' id='EXTRACT_PACKAGE' docs='
-If the EXTRACT_PACKAGE tag is set to YES all members with package or internal
-scope will be included in the documentation.
-' defval='0'/>
- <option type='bool' id='EXTRACT_STATIC' docs='
-If the EXTRACT_STATIC tag is set to YES all static members of a file
-will be included in the documentation.
-' defval='0'/>
- <option type='bool' id='EXTRACT_LOCAL_CLASSES' docs='
-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.
-' defval='1'/>
- <option type='bool' id='EXTRACT_LOCAL_METHODS' docs='
-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.
-' defval='0'/>
- <option type='bool' id='EXTRACT_ANON_NSPACES' docs='
-If this flag is set to YES, the members of anonymous namespaces will be
-extracted and appear in the documentation as a namespace called
-&apos;anonymous_namespace{file}&apos;, where file will be replaced with the base
-name of the file that contains the anonymous namespace. By default
-anonymous namespaces are hidden.
-' defval='0'/>
- <option type='bool' id='HIDE_UNDOC_MEMBERS' docs='
-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.
-' defval='0'/>
- <option type='bool' id='HIDE_UNDOC_CLASSES' docs='
-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.
-' defval='0'/>
- <option type='bool' id='HIDE_FRIEND_COMPOUNDS' docs='
-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.
-' defval='0'/>
- <option type='bool' id='HIDE_IN_BODY_DOCS' docs='
-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&apos;s detailed documentation block.
-' defval='0'/>
- <option type='bool' id='INTERNAL_DOCS' docs='
-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.
-' defval='0'/>
- <option type='bool' id='CASE_SENSE_NAMES' docs='
-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.
-' defval='0' altdefval='portable_fileSystemIsCaseSensitive()'/>
- <option type='bool' id='HIDE_SCOPE_NAMES' docs='
-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.
-' defval='0'/>
- <option type='bool' id='SHOW_INCLUDE_FILES' docs='
-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.
-' defval='1'/>
- <option type='bool' id='FORCE_LOCAL_INCLUDES' docs='
-If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
-will list include files with double quotes in the documentation
-rather than with sharp brackets.
-' defval='0'/>
- <option type='bool' id='INLINE_INFO' docs='
-If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
-is inserted in the documentation for inline members.
-' defval='1'/>
- <option type='bool' id='SORT_MEMBER_DOCS' docs='
-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.
-' defval='1'/>
- <option type='bool' id='SORT_BRIEF_DOCS' docs='
-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.
-' defval='0'/>
- <option type='bool' id='SORT_MEMBERS_CTORS_1ST' docs='
-If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen
-will sort the (brief and detailed) documentation of class members so that
-constructors and destructors are listed first. If set to NO (the default)
-the constructors will appear in the respective orders defined by
-SORT_MEMBER_DOCS and SORT_BRIEF_DOCS.
-This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO
-and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.' defval='0'/>
- <option type='bool' id='SORT_GROUP_NAMES' docs='
-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.
-' defval='0'/>
- <option type='bool' id='SORT_BY_SCOPE_NAME' docs='
-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.
-' defval='0'/>
- <option type='bool' id='STRICT_PROTO_MATCHING' docs='
-If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to
-do proper type resolution of all parameters of a function it will reject a
-match between the prototype and the implementation of a member function even
-if there is only one candidate or it is obvious which candidate to choose
-by doing a simple string match. By disabling STRICT_PROTO_MATCHING doxygen
-will still accept a match between prototype and implementation in such cases.
-' defval='0'/>
- <option type='bool' id='GENERATE_TODOLIST' docs='
-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.
-' defval='1'/>
- <option type='bool' id='GENERATE_TESTLIST' docs='
-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.
-' defval='1'/>
- <option type='bool' id='GENERATE_BUGLIST' docs='
-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.
-' defval='1'/>
- <option type='bool' id='GENERATE_DEPRECATEDLIST' docs='
-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.
-' defval='1'/>
- <option type='list' id='ENABLED_SECTIONS' format='string' docs='
-The ENABLED_SECTIONS tag can be used to enable conditional
-documentation sections, marked by \if section-label ... \endif
-and \cond section-label ... \endcond blocks.
-'>
- </option>
- <option type='int' id='MAX_INITIALIZER_LINES' docs='
-The MAX_INITIALIZER_LINES tag determines the maximum number of lines
-the initial value of a variable or macro 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 macros in the
-documentation can be controlled using \showinitializer or \hideinitializer
-command in the documentation regardless of this setting.
-' minval='0' maxval='10000' defval='30'/>
- <option type='bool' id='SHOW_USED_FILES' docs='
-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.
-' defval='1'/>
- <option type='bool' id='SHOW_FILES' docs='
-Set the SHOW_FILES tag to NO to disable the generation of the Files page.
-This will remove the Files entry from the Quick Index and from the
-Folder Tree View (if specified). The default is YES.
-' defval='1'/>
- <option type='bool' id='SHOW_NAMESPACES' docs='
-Set the SHOW_NAMESPACES tag to NO to disable the generation of the
-Namespaces page. This will remove the Namespaces entry from the Quick Index
-and from the Folder Tree View (if specified). The default is YES.
-' defval='1'/>
- <option type='string' id='FILE_VERSION_FILTER' format='file' docs='
-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 &lt;command&gt; &lt;input-file&gt;, where &lt;command&gt; is the value of
-the FILE_VERSION_FILTER tag, and &lt;input-file&gt; 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.
-' defval=''/>
- <option type='string' id='LAYOUT_FILE' format='file' docs='
-The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
-by doxygen. The layout file controls the global structure of the generated
-output files in an output format independent way. To create the layout file
-that represents doxygen&apos;s defaults, run doxygen with the -l option.
-You can optionally specify a file name after the option, if omitted
-DoxygenLayout.xml will be used as the name of the layout file.
-' defval=''/>
- <option type='list' id='CITE_BIB_FILES' format='file' docs='
-The CITE_BIB_FILES tag can be used to specify one or more bib files
-containing the references data. This must be a list of .bib files. The
-.bib extension is automatically appended if omitted. Using this command
-requires the bibtex tool to be installed. See also
-http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style
-of the bibliography can be controlled using LATEX_BIB_STYLE. To use this
-feature you need bibtex and perl available in the search path. Do not use
-file names with spaces, bibtex cannot handle them.
-' defval=''/>
+ <option type='bool' id='EXTRACT_ALL' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c EXTRACT_ALL tag is set to \c 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 \ref cfg_extract_private "EXTRACT_PRIVATE" respectively
+ \ref cfg_extract_static "EXTRACT_STATIC" tags are set to \c YES
+
+ \note This will also disable the warnings about undocumented members
+ that are normally produced when \ref cfg_warnings "WARNINGS" is
+ set to \c YES
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXTRACT_PRIVATE' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c EXTRACT_PRIVATE tag is set to \c YES all private members of a
+ class will be included in the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXTRACT_PACKAGE' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c EXTRACT_PACKAGE tag is set to \c YES all members with package
+ or internal scope will be included in the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXTRACT_STATIC' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c EXTRACT_STATIC tag is set to \c YES all static members of a file
+ will be included in the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXTRACT_LOCAL_CLASSES' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c EXTRACT_LOCAL_CLASSES tag is set to \c YES classes (and structs)
+ defined locally in source files will be included in the documentation.
+ If set to \c NO only classes defined in header files are included. Does not
+ have any effect for Java sources.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXTRACT_LOCAL_METHODS' defval='0'>
+ <docs>
+<![CDATA[
+ This flag is only useful for Objective-C code. When set to \c YES local
+ methods, which are defined in the implementation section but not in
+ the interface are included in the documentation.
+ If set to \c NO only methods in the interface are included.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXTRACT_ANON_NSPACES' defval='0'>
+ <docs>
+<![CDATA[
+ If this flag is set to \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='HIDE_UNDOC_MEMBERS' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c HIDE_UNDOC_MEMBERS tag is set to \c YES, doxygen will hide all
+ undocumented members inside documented classes or files.
+ If set to \c NO these members will be included in the
+ various overviews, but no documentation section is generated.
+ This option has no effect if \ref cfg_extract_all "EXTRACT_ALL" is enabled.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='HIDE_UNDOC_CLASSES' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c HIDE_UNDOC_CLASSES tag is set to \c YES, doxygen will hide all
+ undocumented classes that are normally visible in the class hierarchy.
+ If set to \c NO these classes will be included in the
+ various overviews.
+ This option has no effect if \ref cfg_extract_all "EXTRACT_ALL" is enabled.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='HIDE_FRIEND_COMPOUNDS' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c HIDE_FRIEND_COMPOUNDS tag is set to \c YES, doxygen will hide all
+ friend (class|struct|union) declarations.
+ If set to \c NO these declarations will be included in the
+ documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='HIDE_IN_BODY_DOCS' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c HIDE_IN_BODY_DOCS tag is set to \c YES, doxygen will hide any
+ documentation blocks found inside the body of a function.
+ If set to \c NO these blocks will be appended to the
+ function's detailed documentation block.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='INTERNAL_DOCS' defval='0'>
+ <docs>
+<![CDATA[
+ The \c INTERNAL_DOCS tag determines if documentation
+ that is typed after a \ref cmdinternal "\\internal" command is included. If the tag is set
+ to \c NO then the documentation will be excluded.
+ Set it to \c YES to include the internal documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='CASE_SENSE_NAMES' defval='0' altdefval='portable_fileSystemIsCaseSensitive()'>
+ <docs>
+<![CDATA[
+ If the \c CASE_SENSE_NAMES tag is set to \c NO then doxygen
+ will only generate file names in lower-case letters. If set to
+ \c 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 \c NO.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='HIDE_SCOPE_NAMES' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c HIDE_SCOPE_NAMES tag is set to \c NO then doxygen
+ will show members with their full class and namespace scopes in the
+ documentation. If set to \c YES the scope will be hidden.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SHOW_INCLUDE_FILES' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c SHOW_INCLUDE_FILES tag is set to \c YES then doxygen
+ will put a list of the files that are included by a file in the documentation
+ of that file.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='FORCE_LOCAL_INCLUDES' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c FORCE_LOCAL_INCLUDES tag is set to \c YES then doxygen
+ will list include files with double quotes in the documentation
+ rather than with sharp brackets.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='INLINE_INFO' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c INLINE_INFO tag is set to \c YES then a tag [inline]
+ is inserted in the documentation for inline members.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SORT_MEMBER_DOCS' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c SORT_MEMBER_DOCS tag is set to \c YES then doxygen
+ will sort the (detailed) documentation of file and class members
+ alphabetically by member name. If set to \c NO the members will appear in
+ declaration order.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SORT_BRIEF_DOCS' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c SORT_BRIEF_DOCS tag is set to \c YES then doxygen will sort the
+ brief descriptions of file, namespace and class members alphabetically
+ by member name. If set to \c NO the members will appear in
+ declaration order.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SORT_MEMBERS_CTORS_1ST' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c SORT_MEMBERS_CTORS_1ST tag is set to \c YES then doxygen
+ will sort the (brief and detailed) documentation of class members so that
+ constructors and destructors are listed first. If set to \c NO
+ the constructors will appear in the respective orders defined by
+ \ref cfg_sort_brief_docs "SORT_BRIEF_DOCS" and \ref cfg_sort_member_docs "SORT_MEMBER_DOCS".
+ \note If \ref cfg_sort_brief_docs "SORT_BRIEF_DOCS" is set to \c NO this option is ignored for
+ sorting brief member documentation.
+ \note If \ref cfg_sort_member_docs "SORT_MEMBER_DOCS" is set to \c NO this option is ignored for
+ sorting detailed member documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SORT_GROUP_NAMES' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c SORT_GROUP_NAMES tag is set to \c YES then doxygen will sort the
+ hierarchy of group names into alphabetical order. If set to \c NO
+ the group names will appear in their defined order.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SORT_BY_SCOPE_NAME' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c SORT_BY_SCOPE_NAME tag is set to \c YES, the class list will be
+ sorted by fully-qualified names, including namespaces. If set to
+ \c NO, the class list will be sorted only by class name,
+ not including the namespace part.
+ \note This option is not very useful if \ref cfg_hide_scope_names "HIDE_SCOPE_NAMES" is set to \c YES.
+ \note This option applies only to the class list, not to the
+ alphabetical list.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='STRICT_PROTO_MATCHING' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c STRICT_PROTO_MATCHING option is enabled and doxygen fails to
+ do proper type resolution of all parameters of a function it will reject a
+ match between the prototype and the implementation of a member function even
+ if there is only one candidate or it is obvious which candidate to choose
+ by doing a simple string match. By disabling \c STRICT_PROTO_MATCHING doxygen
+ will still accept a match between prototype and implementation in such cases.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_TODOLIST' defval='1'>
+ <docs>
+<![CDATA[
+ The \c GENERATE_TODOLIST tag can be used to enable (\c YES) or
+ disable (\c NO) the todo list. This list is created by
+ putting \ref cmdtodo "\\todo" commands in the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_TESTLIST' defval='1'>
+ <docs>
+<![CDATA[
+ The \c GENERATE_TESTLIST tag can be used to enable (\c YES) or
+ disable (\c NO) the test list. This list is created by
+ putting \ref cmdtest "\\test" commands in the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_BUGLIST' defval='1'>
+ <docs>
+<![CDATA[
+ The \c GENERATE_BUGLIST tag can be used to enable (\c YES) or
+ disable (\c NO) the bug list. This list is created by
+ putting \ref cmdbug "\\bug" commands in the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_DEPRECATEDLIST' defval='1'>
+ <docs>
+<![CDATA[
+ The \c GENERATE_DEPRECATEDLIST tag can be used to enable (\c YES) or
+ disable (\c NO) the deprecated list. This list is created by
+ putting \ref cmddeprecated "\\deprecated"
+ commands in the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='ENABLED_SECTIONS' format='string'>
+ <docs>
+<![CDATA[
+ The \c ENABLED_SECTIONS tag can be used to enable conditional
+ documentation sections, marked by \ref cmdif "\\if" \<section_label\> ...
+ \ref cmdendif "\\endif" and \ref cmdcond "\\cond" \<section_label\> ...
+ \ref cmdendcond "\\endcond" blocks.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='MAX_INITIALIZER_LINES' minval='0' maxval='10000' defval='30'>
+ <docs>
+<![CDATA[
+ The \c MAX_INITIALIZER_LINES tag determines the maximum number of lines
+ that the initial value of a variable or macro / define can have 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 value of
+ individual variables and macros / defines can be controlled using \ref cmdshowinitializer "\\showinitializer"
+ or \ref cmdhideinitializer "\\hideinitializer" command in the documentation regardless of this setting.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SHOW_USED_FILES' defval='1'>
+ <docs>
+<![CDATA[
+ Set the \c SHOW_USED_FILES tag to \c NO to disable the list of files generated
+ at the bottom of the documentation of classes and structs. If set to \c YES the
+ list will mention the files that were used to generate the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SHOW_FILES' defval='1'>
+ <docs>
+<![CDATA[
+ Set the \c SHOW_FILES tag to \c NO to disable the generation of the Files page.
+ This will remove the Files entry from the Quick Index and from the
+ Folder Tree View (if specified). The default is \c YES.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SHOW_NAMESPACES' defval='1'>
+ <docs>
+<![CDATA[
+ Set the \c SHOW_NAMESPACES tag to \c NO to disable the generation of the
+ Namespaces page. This will remove the Namespaces entry from the Quick Index
+ and from the Folder Tree View (if specified). The default is \c YES.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='FILE_VERSION_FILTER' format='file' defval=''>
+ <docs>
+<![CDATA[
+ The \c 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
+ <code>popen()</code>) the command <code>command input-file</code>, where \c command is
+ the value of the \c FILE_VERSION_FILTER tag, and \c 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.
+]]>
+ </docs>
+ <docs doxywizard='0' doxyfile='0'>
+<![CDATA[
+Example of using a shell script as a filter for Unix:
+\verbatim
+ FILE_VERSION_FILTER = "/bin/sh versionfilter.sh"
+\endverbatim
+<br>
+Example shell script for CVS:
+\verbatim
+#!/bin/sh
+cvs status $1 | sed -n 's/^[ \]*Working revision:[ \t]*\([0-9][0-9\.]*\).*/\1/p'
+\endverbatim
+<br>
+Example shell script for Subversion:
+\verbatim
+#!/bin/sh
+svn stat -v $1 | sed -n 's/^[ A-Z?\*|!]\{1,15\}/r/;s/ \{1,15\}/\/r/;s/ .*//p'
+\endverbatim
+<br>
+Example filter for ClearCase:
+\verbatim
+FILE_VERSION_INFO = "cleartool desc -fmt \%Vn"
+\endverbatim
+]]>
+ </docs>
+ <docs documentation='0'>
+<![CDATA[
+ For an example see the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='LAYOUT_FILE' format='file' defval=''>
+ <docs>
+<![CDATA[
+ The \c LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
+ doxygen. The layout file controls the global structure of the generated output files
+ in an output format independent way. To create the layout file that represents
+ doxygen's defaults, run doxygen with the `-l` option. You can optionally specify a
+ file name after the option, if omitted \c DoxygenLayout.xml will be used as the name
+ of the layout file.
+ <br>Note that if you run doxygen from a directory containing
+ a file called \c DoxygenLayout.xml, doxygen will parse it automatically even if
+ the \c LAYOUT_FILE tag is left empty.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='CITE_BIB_FILES' format='file'>
+ <docs>
+<![CDATA[
+ The \c CITE_BIB_FILES tag can be used to specify one or more \c bib files
+ containing the reference definitions. This must be a list of <code>.bib</code> files. The
+ <code>.bib</code> extension is automatically appended if omitted. This requires the
+ \c bibtex tool to be installed. See also http://en.wikipedia.org/wiki/BibTeX for
+ more info. For \f$\mbox{\LaTeX}\f$ the style of the bibliography can be controlled
+ using \ref cfg_latex_bib_style "LATEX_BIB_STYLE".
+ To use this
+ feature you need \c bibtex and \c perl available in the search path. Do not use
+ file names with spaces, \c bibtex cannot handle them.
+ See also \ref cmdcite "\\cite" for info how to create references.
+]]>
+ </docs>
+ </option>
</group>
- <group name='Messages' docs='configuration options related to warning and progress messages'>
- <option type='bool' id='QUIET' docs='
-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.
-' defval='0'/>
- <option type='bool' id='WARNINGS' docs='
-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.
-' defval='1'/>
- <option type='bool' id='WARN_IF_UNDOCUMENTED' docs='
-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.
-' defval='1'/>
- <option type='bool' id='WARN_IF_DOC_ERROR' docs='
-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&apos;t exist or using markup commands wrongly.
-' defval='1'/>
- <option type='bool' id='WARN_NO_PARAMDOC' docs='
-The WARN_NO_PARAMDOC option can be enabled 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.
-' defval='0'/>
- <option type='string' id='WARN_FORMAT' format='string' docs='
-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)
-' defval='$file:$line: $text'/>
- <option type='string' id='WARN_LOGFILE' format='file' docs='
-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.
-' defval=''/>
+ <group name='Messages' docs='Configuration options related to warning and progress messages'>
+ <option type='bool' id='QUIET' defval='0'>
+ <docs>
+<![CDATA[
+ The \c QUIET tag can be used to turn on/off the messages that are generated
+ to standard output by doxygen. Possible values are \c YES and \c NO,
+ where \c YES implies that the messages are off.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='WARNINGS' defval='1'>
+ <docs>
+<![CDATA[
+ The \c WARNINGS tag can be used to turn on/off the warning messages that are
+ generated to standard error (\c stderr) by doxygen. Possible values are \c YES and \c NO,
+ where \c YES implies that the warnings are on.
+<br>
+ \b Tip: Turn warnings on while writing the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='WARN_IF_UNDOCUMENTED' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c WARN_IF_UNDOCUMENTED tag is set to \c YES, then doxygen will generate warnings
+ for undocumented members. If \ref cfg_extract_all "EXTRACT_ALL" is set to \c YES then this flag will
+ automatically be disabled.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='WARN_IF_DOC_ERROR' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c WARN_IF_DOC_ERROR tag is set to \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='WARN_NO_PARAMDOC' defval='0'>
+ <docs>
+<![CDATA[
+ This \c WARN_NO_PARAMDOC option can be enabled to get warnings for
+ functions that are documented, but have no documentation for their parameters
+ or return value. If set to \c NO doxygen will only warn about
+ wrong or incomplete parameter documentation, but not about the absence of
+ documentation.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='WARN_FORMAT' format='string' defval='$file:$line: $text'>
+ <docs>
+<![CDATA[
+ The \c WARN_FORMAT tag determines the format of the warning messages that
+ doxygen can produce. The string should contain the <code>\$file</code>,
+ <code>\$line</code>, and <code>\$text</code>
+ 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
+ <code>$version</code>, which will be replaced by the version of the file (if it could
+ be obtained via \ref cfg_file_version_filter "FILE_VERSION_FILTER")
+]]>
+ </docs>
+ </option>
+ <option type='string' id='WARN_LOGFILE' format='file' defval=''>
+ <docs>
+<![CDATA[
+ The \c 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 standard error (\c stderr).
+]]>
+ </docs>
+ </option>
</group>
- <group name='Input' docs='configuration options related to the input files'>
- <option type='list' id='INPUT' format='filedir' docs='
-The INPUT tag can be used to specify the files and/or directories that contain
-documented source files. You may enter file names like &quot;myfile.cpp&quot; or
-directories like &quot;/usr/src/myproject&quot;. Separate the files or directories
-with spaces.
-'>
+ <group name='Input' docs='Configuration options related to the input files'>
+ <option type='list' id='INPUT' format='filedir'>
+ <docs>
+<![CDATA[
+ The \c INPUT tag is used to specify the files and/or directories that contain
+ documented source files. You may enter file names like
+ \c myfile.cpp or directories like \c /usr/src/myproject.
+ Separate the files or directories with spaces.
+
+ \note If this tag is empty the current directory is searched.
+]]>
+ </docs>
<value name=''/>
</option>
- <option type='string' id='INPUT_ENCODING' format='string' docs='
-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.
-' defval='UTF-8'/>
- <option type='list' id='FILE_PATTERNS' format='string' docs='
-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++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh
-*.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py
-*.f90 *.f *.for *.vhd *.vhdl
-'>
+ <option type='string' id='INPUT_ENCODING' format='string' defval='UTF-8'>
+ <docs>
+<![CDATA[
+ This tag can be used to specify the character encoding of the source files that
+ doxygen parses. Internally doxygen uses the UTF-8 encoding.
+ Doxygen uses `libiconv` (or the `iconv` built into `libc`) for the transcoding.
+ See <a href="http://www.gnu.org/software/libiconv">the libiconv documentation</a> for
+ the list of possible encodings.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='FILE_PATTERNS' format='string'>
+ <docs>
+<![CDATA[
+ If the value of the \ref cfg_input "INPUT" tag contains directories, you can use the
+ \c FILE_PATTERNS tag to specify one or more wildcard patterns
+ (like `*.cpp` and `*.h`) to filter out the source-files
+ in the directories. If left blank the following patterns are tested:
+]]>
+ </docs>
<value name='*.c'/>
<value name='*.cc'/>
<value name='*.cxx'/>
<value name='*.cpp'/>
<value name='*.c++'/>
- <value name='*.d'/>
<value name='*.java'/>
<value name='*.ii'/>
<value name='*.ixx'/>
<value name='*.ipp'/>
<value name='*.i++'/>
<value name='*.inl'/>
+ <value name='*.idl'/>
+ <value name='*.ddl'/>
+ <value name='*.odl'/>
<value name='*.h'/>
<value name='*.hh'/>
<value name='*.hxx'/>
<value name='*.hpp'/>
<value name='*.h++'/>
- <value name='*.idl'/>
- <value name='*.odl'/>
<value name='*.cs'/>
+ <value name='*.d'/>
<value name='*.php'/>
- <value name='*.php3'/>
+ <value name='*.php4'/>
+ <value name='*.php5'/>
+ <value name='*.phtml'/>
<value name='*.inc'/>
<value name='*.m'/>
<value name='*.markdown'/>
@@ -653,1089 +1270,2050 @@ blank the following patterns are tested:
<value name='*.f90'/>
<value name='*.f'/>
<value name='*.for'/>
+ <value name='*.tcl'/>
<value name='*.vhd'/>
<value name='*.vhdl'/>
+ <value name='*.ucf'/>
+ <value name='*.qsf'/>
+ <value name='*.as'/>
+ <value name='*.js'/>
</option>
- <option type='bool' id='RECURSIVE' docs='
-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.
-' defval='0'/>
- <option type='list' id='EXCLUDE' format='filedir' docs='
-The EXCLUDE tag can be used to specify files and/or directories that should be
-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.
-Note that relative paths are relative to the directory from which doxygen is
-run.
-'>
- </option>
- <option type='bool' id='EXCLUDE_SYMLINKS' docs='
-The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
-directories that are symbolic links (a Unix file system feature) are excluded
-from the input.
-' defval='0'/>
- <option type='list' id='EXCLUDE_PATTERNS' format='string' docs='
-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/*
-'>
- </option>
- <option type='list' id='EXCLUDE_SYMBOLS' format='string' docs='
-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
-'>
- </option>
- <option type='list' id='EXAMPLE_PATH' format='dir' docs='
-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).
-'>
- </option>
- <option type='list' id='EXAMPLE_PATTERNS' format='string' docs='
-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.
-'>
+ <option type='bool' id='RECURSIVE' defval='0'>
+ <docs>
+<![CDATA[
+ The \c RECURSIVE tag can be used to specify whether or not subdirectories
+ should be searched for input files as well. Possible values are \c YES
+ and \c NO.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='EXCLUDE' format='filedir'>
+ <docs>
+<![CDATA[
+ The \c EXCLUDE tag can be used to specify files and/or directories that should be
+ excluded from the \ref cfg_input "INPUT" source files. This way you can easily exclude a
+ subdirectory from a directory tree whose root is specified with the \ref cfg_input "INPUT" tag.
+ <br>Note that relative paths are relative to the directory from which doxygen is run.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXCLUDE_SYMLINKS' defval='0'>
+ <docs>
+<![CDATA[
+ The \c EXCLUDE_SYMLINKS tag can be used to select whether or not files or directories
+ that are symbolic links (a Unix file system feature) are excluded from the input.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='EXCLUDE_PATTERNS' format='string'>
+ <docs>
+<![CDATA[
+ If the value of the \ref cfg_input "INPUT" tag contains directories, you can use the
+ \c EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+ certain files from those directories.
+ <br>Note that the wildcards are matched
+ against the file with absolute path, so to exclude all test directories
+ for example use the pattern `*``/test/``*`
+]]>
+ </docs>
+ </option>
+ <option type='list' id='EXCLUDE_SYMBOLS' format='string'>
+ <docs>
+<![CDATA[
+ The \c 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`
+ <br>Note that the wildcards are matched against the file with absolute path,
+ so to exclude all test directories use the pattern
+ `*``/test/``*`
+]]>
+ </docs>
+ </option>
+ <option type='list' id='EXAMPLE_PATH' format='filedir'>
+ <docs>
+<![CDATA[
+ The \c EXAMPLE_PATH tag can be used to specify one or more files or
+ directories that contain example code fragments that are included (see
+ the \ref cmdinclude "\\include" command).
+]]>
+ </docs>
+ </option>
+ <option type='list' id='EXAMPLE_PATTERNS' format='string'>
+ <docs>
+<![CDATA[
+ If the value of the \ref cfg_example_path "EXAMPLE_PATH" tag contains directories,
+ you can use the
+ \c 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.
+]]>
+ </docs>
<value name='*'/>
</option>
- <option type='bool' id='EXAMPLE_RECURSIVE' docs='
-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.
-' defval='0'/>
- <option type='list' id='IMAGE_PATH' format='dir' docs='
-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).
-'>
- </option>
- <option type='string' id='INPUT_FILTER' format='file' docs='
-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 &lt;filter&gt; &lt;input-file&gt;, where &lt;filter&gt;
-is the value of the INPUT_FILTER tag, and &lt;input-file&gt; 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.
-Note that the filter must not add or remove lines; it is applied before the
-code is scanned, but not when the output code is generated. If lines are added
-or removed, the anchors will not be placed correctly.
-' defval=''/>
- <option type='list' id='FILTER_PATTERNS' format='string' docs='
-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 or if
-non of the patterns match the file name, INPUT_FILTER is applied.
-'>
- </option>
- <option type='bool' id='FILTER_SOURCE_FILES' docs='
-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).
-' defval='0'/>
- <option type='list' id='FILTER_SOURCE_PATTERNS' format='string' docs='
-The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
-pattern. A pattern will override the setting for FILTER_PATTERN (if any)
-and it is also possible to disable source filtering for a specific pattern
-using *.ext= (so without naming a filter). This option only has effect when
-FILTER_SOURCE_FILES is enabled.
-' depends='FILTER_SOURCE_FILES'/>
- <option type='string' id='USE_MDFILE_AS_MAINPAGE' format='string' docs='
-If the USE_MD_FILE_AS_MAINPAGE tag refers to the name of a markdown file that
-is part of the input, its contents will be placed on the main page
-(index.html). This can be useful if you have a project on for instance GitHub
-and want reuse the introduction page also for the doxygen output.
-' defval=''/>
+ <option type='bool' id='EXAMPLE_RECURSIVE' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c EXAMPLE_RECURSIVE tag is set to \c YES then subdirectories will be
+ searched for input files to be used with the \ref cmdinclude "\\include" or
+ \ref cmddontinclude "\\dontinclude"
+ commands irrespective of the value of the \ref cfg_recursive "RECURSIVE" tag.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='IMAGE_PATH' format='filedir'>
+ <docs>
+<![CDATA[
+ The \c IMAGE_PATH tag can be used to specify one or more files or
+ directories that contain images that are to be included in the
+ documentation (see the \ref cmdimage "\\image" command).
+]]>
+ </docs>
+ </option>
+ <option type='string' id='INPUT_FILTER' format='file' defval=''>
+ <docs>
+<![CDATA[
+ The \c 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 <code>popen()</code>) the command:
+ <br>
+ <code>\<filter\> \<input-file\></code>
+ <br>
+ where <code>\<filter\></code>
+ is the value of the \c INPUT_FILTER tag, and <code>\<input-file\></code> is the name of an
+ input file. Doxygen will then use the output that the filter program writes
+ to standard output. If \ref cfg_filter_patterns "FILTER_PATTERNS" is specified, this tag will be ignored.
+ <br>Note that the filter must not add or remove lines; it is applied before the
+ code is scanned, but not when the output code is generated. If lines are added
+ or removed, the anchors will not be placed correctly.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='FILTER_PATTERNS' format='string'>
+ <docs>
+<![CDATA[
+ The \c 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 \ref cfg_input_filter "INPUT_FILTER" for further
+ information on how filters are used. If the \c FILTER_PATTERNS tag is empty or if
+ none of the patterns match the file name, \ref cfg_input_filter "INPUT_FILTER" is
+ applied.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='FILTER_SOURCE_FILES' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c FILTER_SOURCE_FILES tag is set to \c YES, the input filter (if set using
+ \ref cfg_input_filter "INPUT_FILTER" ) will also be used to filter the input
+ files that are used for producing the source files to browse
+ (i.e. when \ref cfg_source_browser "SOURCE_BROWSER" is set to \c YES).
+]]>
+ </docs>
+ </option>
+ <option type='list' id='FILTER_SOURCE_PATTERNS' format='string' depends='FILTER_SOURCE_FILES'>
+ <docs>
+<![CDATA[
+ The \c FILTER_SOURCE_PATTERNS tag can be used to specify source filters per
+ file pattern. A pattern will override the setting
+ for \ref cfg_filter_patterns "FILTER_PATTERN" (if any)
+ and it is also possible to disable source filtering for a specific pattern
+ using `*.ext=` (so without naming a filter).
+]]>
+ </docs>
+ </option>
+ <option type='string' id='USE_MDFILE_AS_MAINPAGE' format='string' defval=''>
+ <docs>
+<![CDATA[
+ If the \c USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+ is part of the input, its contents will be placed on the main page (`index.html`).
+ This can be useful if you have a project on for instance GitHub and want to reuse
+ the introduction page also for the doxygen output.
+]]>
+ </docs>
+ </option>
</group>
- <group name='Source Browser' docs='configuration options related to source browsing'>
- <option type='bool' id='SOURCE_BROWSER' docs='
-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.
-' defval='0'/>
- <option type='bool' id='INLINE_SOURCES' docs='
-Setting the INLINE_SOURCES tag to YES will include the body
-of functions and classes directly in the documentation.
-' defval='0'/>
- <option type='bool' id='STRIP_CODE_COMMENTS' docs='
-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, C++ and Fortran comments will always remain visible.
-' defval='1'/>
- <option type='bool' id='REFERENCED_BY_RELATION' docs='
-If the REFERENCED_BY_RELATION tag is set to YES
-then for each documented function all documented
-functions referencing it will be listed.
-' defval='0'/>
- <option type='bool' id='REFERENCES_RELATION' docs='
-If the REFERENCES_RELATION tag is set to YES
-then for each documented function all documented entities
-called/used by that function will be listed.
-' defval='0'/>
- <option type='bool' id='REFERENCES_LINK_SOURCE' docs='
-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 documentation.
-' defval='1'/>
- <option type='bool' id='SOURCE_TOOLTIPS' docs='
+ <group name='Source_Browser' docs='Configuration options related to source browsing'>
+ <option type='bool' id='SOURCE_BROWSER' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c SOURCE_BROWSER tag is set to \c YES then a list of source files will
+ be generated. Documented entities will be cross-referenced with these sources.
+ <br>Note: To get rid of all source code in the generated output, make sure that also
+ \ref cfg_verbatim_headers "VERBATIM_HEADERS" is set to \c NO.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='INLINE_SOURCES' defval='0'>
+ <docs>
+<![CDATA[
+ Setting the \c INLINE_SOURCES tag to \c YES will include the body
+ of functions, classes and enums directly into the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='STRIP_CODE_COMMENTS' defval='1'>
+ <docs>
+<![CDATA[
+ Setting the \c STRIP_CODE_COMMENTS tag to \c YES will instruct
+ doxygen to hide any special comment blocks from generated source code
+ fragments. Normal C, C++ and Fortran comments will always remain visible.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='REFERENCED_BY_RELATION' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c REFERENCED_BY_RELATION tag is set to \c YES
+ then for each documented function all documented
+ functions referencing it will be listed.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='REFERENCES_RELATION' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c REFERENCES_RELATION tag is set to \c YES
+ then for each documented function all documented entities
+ called/used by that function will be listed.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='REFERENCES_LINK_SOURCE' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c REFERENCES_LINK_SOURCE tag is set to \c YES
+ and \ref cfg_source_browser "SOURCE_BROWSER" tag is set to \c YES, then the hyperlinks from
+ functions in \ref cfg_references_relation "REFERENCES_RELATION" and
+ \ref cfg_referenced_by_relation "REFERENCED_BY_RELATION" lists will
+ link to the source code. Otherwise they will link to the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SOURCE_TOOLTIPS' defval='1' depends='SOURCE_BROWSER'>
+ <docs>
+<![CDATA[
If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
source code will show a tooltip with additional information such as prototype,
brief description and links to the definition and documentation. Since this will
make the HTML file larger and loading of large files a bit slower, you can opt
to disable this feature.
-' defval='1' depends='SOURCE_BROWSER'/>
- <option type='bool' id='USE_HTAGS' docs='
-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&apos;s global source
-tagging system (see http://www.gnu.org/software/global/global.html). You
-will need version 4.8.6 or higher.
-' defval='0' depends='SOURCE_BROWSER'/>
- <option type='bool' id='VERBATIM_HEADERS' docs='
-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.
-' defval='1'/>
- <option type='bool' id='CLANG_ASSISTED_PARSING' setting='USE_LIBCLANG' docs='
-If CLANG_ASSISTED_PARSING is set to YES, then doxygen will use the clang parser
-for more acurate parsing at the cost of reduced performance. This can be
-particularly helpful with template rich C++ code for which doxygen&apos;s built-in
-parser lacks the necessairy type information.
-' defval='0'/>
- <option type='list' id='CLANG_OPTIONS' setting='USE_LIBCLANG' docs='
-If clang assisted parsing is enabled you can provide the compiler with command
-line options that you would normally use when invoking the compiler. Note that
-the include paths will already be set by doxygen for the files and directories
-specified at INPUT and INCLUDE_PATH.
-' defval='' depends='CLANG_ASSISTED_PARSING'/>
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='USE_HTAGS' defval='0' depends='SOURCE_BROWSER'>
+ <docs>
+<![CDATA[
+ If the \c USE_HTAGS tag is set to \c YES then the references to source code
+ will point to the HTML generated by the \c htags(1) tool instead of doxygen
+ built-in source browser. The \c 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.
+<br>
+ To use it do the following:
+ -# Install the latest version of \c global
+ -# Enable \ref cfg_source_browser "SOURCE_BROWSER" and \c USE_HTAGS in the config file
+ -# Make sure the \ref cfg_input "INPUT" points to the root of the source tree
+ -# Run \c doxygen as normal
+<br>
+ Doxygen will invoke \c htags (and that will in turn invoke \c gtags), so these tools
+ must be available from the command line (i.e. in the search path).
+<br>
+ The result: instead of the source browser generated by doxygen, the links to
+ source code will now point to the output of \c htags.
+]]>
+ </docs>
+ </option>
+
+ <option type='bool' id='VERBATIM_HEADERS' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c VERBATIM_HEADERS tag is set the \c YES then doxygen
+ will generate a verbatim copy of the header file for each class for
+ which an include is specified. Set to \c NO to disable this.
+ \sa Section \ref cmdclass "\\class".
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='CLANG_ASSISTED_PARSING' setting='USE_LIBCLANG' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c CLANG_ASSISTED_PARSING tag is set to \c YES, then doxygen will use the
+ <a href="http://clang.llvm.org/">clang parser</a> for more acurate parsing
+ at the cost of reduced performance. This can be particularly helpful with
+ template rich C++ code for which doxygen's built-in parser lacks the
+ necessary type information.
+
+ @note The availability of this option depends on whether or not doxygen
+ was compiled with the `--with-libclang` option.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='CLANG_OPTIONS' format='string' setting='USE_LIBCLANG' depends='CLANG_ASSISTED_PARSING'>
+ <docs>
+<![CDATA[
+ If clang assisted parsing is enabled you can provide the compiler with command
+ line options that you would normally use when invoking the compiler. Note that
+ the include paths will already be set by doxygen for the files and directories
+ specified with \ref cfg_input "INPUT" and \ref cfg_include_path "INCLUDE_PATH".
+]]>
+ </docs>
+ </option>
</group>
- <group name='Index' docs='configuration options related to the alphabetical class index'>
- <option type='bool' id='ALPHABETICAL_INDEX' docs='
-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.
-' defval='1'/>
- <option type='int' id='COLS_IN_ALPHA_INDEX' docs='
-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])
-' minval='1' maxval='20' defval='5' depends='ALPHABETICAL_INDEX'/>
- <option type='list' id='IGNORE_PREFIX' format='string' docs='
-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.
-' depends='ALPHABETICAL_INDEX'>
+ <group name='Index' docs='Configuration options related to the alphabetical class index'>
+ <option type='bool' id='ALPHABETICAL_INDEX' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c ALPHABETICAL_INDEX tag is set to \c YES, an alphabetical index
+ of all compounds will be generated. Enable this if the project contains
+ a lot of classes, structs, unions or interfaces.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='COLS_IN_ALPHA_INDEX' minval='1' maxval='20' defval='5' depends='ALPHABETICAL_INDEX'>
+ <docs>
+<![CDATA[
+ The \c COLS_IN_ALPHA_INDEX tag can be
+ used to specify the number of columns in which the alphabetical index list will be split.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='IGNORE_PREFIX' format='string' depends='ALPHABETICAL_INDEX'>
+ <docs>
+<![CDATA[
+ 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 \c IGNORE_PREFIX tag can be used to specify a prefix
+ (or a list of prefixes) that should be ignored while generating the index headers.
+]]>
+ </docs>
</option>
</group>
- <group name='HTML' docs='configuration options related to the HTML output'>
- <option type='bool' id='GENERATE_HTML' docs='
-If the GENERATE_HTML tag is set to YES (the default) Doxygen will
-generate HTML output.
-' defval='1'/>
- <option type='string' id='HTML_OUTPUT' format='dir' docs='
-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&apos; will be used as the default path.
-' defval='html' depends='GENERATE_HTML'/>
- <option type='string' id='HTML_FILE_EXTENSION' format='string' docs='
-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.
-' defval='.html' depends='GENERATE_HTML'/>
- <option type='string' id='HTML_HEADER' format='file' docs='
-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. Note that when using a custom header you are responsible
-for the proper inclusion of any scripts and style sheets that doxygen
-needs, which is dependent on the configuration options used.
-It is advised to generate a default header using "doxygen -w html
-header.html footer.html stylesheet.css YourConfigFile" and then modify
-that header. Note that the header is subject to change so you typically
-have to redo this when upgrading to a newer version of doxygen or when
-changing the value of configuration settings such as GENERATE_TREEVIEW!
-' defval='' depends='GENERATE_HTML'/>
- <option type='string' id='HTML_FOOTER' format='file' docs='
-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.
-' defval='' depends='GENERATE_HTML'/>
- <option type='string' id='HTML_STYLESHEET' format='file' docs='
-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 left blank doxygen will
-generate a default style sheet. Note that it is recommended to use
-HTML_EXTRA_STYLESHEET instead of this one, as it is more robust and this
-tag will in the future become obsolete.
-' defval='' depends='GENERATE_HTML'/>
- <option type='string' id='HTML_EXTRA_STYLESHEET' format='file' docs='
-The HTML_EXTRA_STYLESHEET tag can be used to specify an additional
-user-defined cascading style sheet that is included after the standard
-style sheets created by doxygen. Using this option one can overrule
-certain style aspects. This is preferred over using HTML_STYLESHEET
-since it does not replace the standard style sheet and is therefor more
-robust against future updates. Doxygen will copy the style sheet file to
-the output directory.
-' defval='' depends='GENERATE_HTML'/>
- <option type='list' id='HTML_EXTRA_FILES' format='file' docs='
-The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
-other source files which should be copied to the HTML output directory. Note
-that these files will be copied to the base HTML output directory. Use the
-$relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
-files. In the HTML_STYLESHEET file, use the file name only. Also note that
-the files will be copied as-is; there are no commands or markers available.
-' depends='GENERATE_HTML'/>
- <option type='int' id='HTML_COLORSTYLE_HUE' docs='
-The HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
-Doxygen will adjust the colors in the style sheet and background images
-according to this color. Hue is specified as an angle on a colorwheel,
-see http://en.wikipedia.org/wiki/Hue for more information.
-For instance the value 0 represents red, 60 is yellow, 120 is green,
-180 is cyan, 240 is blue, 300 purple, and 360 is red again.
-The allowed range is 0 to 359.
-' minval='0' maxval='359' defval='220' depends='GENERATE_HTML'/>
- <option type='int' id='HTML_COLORSTYLE_SAT' docs='
-The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
-the colors in the HTML output. For a value of 0 the output will use
-grayscales only. A value of 255 will produce the most vivid colors.
-' minval='0' maxval='255' defval='100' depends='GENERATE_HTML'/>
- <option type='int' id='HTML_COLORSTYLE_GAMMA' docs='
-The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
-the luminance component of the colors in the HTML output. Values below
-100 gradually make the output lighter, whereas values above 100 make
-the output darker. The value divided by 100 is the actual gamma applied,
-so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
-and 100 does not change the gamma.
-' minval='40' maxval='240' defval='80' depends='GENERATE_HTML'/>
- <option type='bool' id='HTML_TIMESTAMP' docs='
-If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
-page will contain the date and time when the page was generated. Setting
-this to NO can help when comparing the output of multiple runs.
-' defval='1' depends='GENERATE_HTML'/>
- <option type='bool' id='HTML_DYNAMIC_SECTIONS' docs='
-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.
-' defval='0' depends='GENERATE_HTML'/>
- <option type='int' id='HTML_INDEX_NUM_ENTRIES' docs='
-With HTML_INDEX_NUM_ENTRIES one can control the preferred number of
-entries shown in the various tree structured indices initially; the user
-can expand and collapse entries dynamically later on. Doxygen will expand
-the tree to such a level that at most the specified number of entries are
-visible (unless a fully collapsed tree already exceeds this amount).
-So setting the number of entries 1 will produce a full collapsed tree by
-default. 0 is a special value representing an infinite number of entries
-and will result in a full expanded tree by default.
-' minval='0' maxval='9999' defval='100' depends='GENERATE_HTML'/>
- <option type='bool' id='GENERATE_DOCSET' docs='
-If the GENERATE_DOCSET tag is set to YES, additional index files
-will be generated that can be used as input for Apple&apos;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 &quot;make install&quot; will install the docset in
-~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
-it at startup.
-See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
-for more information.
-' defval='0' depends='GENERATE_HTML'/>
- <option type='string' id='DOCSET_FEEDNAME' format='string' docs='
-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.
-' defval='Doxygen generated docs' depends='GENERATE_DOCSET'/>
- <option type='string' id='DOCSET_BUNDLE_ID' format='string' 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.
-' defval='org.doxygen.Project' depends='GENERATE_DOCSET'/>
- <option type='string' id='DOCSET_PUBLISHER_ID' format='string' docs='
-When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely
-identify the documentation publisher. This should be a reverse domain-name
-style string, e.g. com.mycompany.MyDocSet.documentation.
-' defval='org.doxygen.Publisher' depends='GENERATE_DOCSET'/>
- <option type='string' id='DOCSET_PUBLISHER_NAME' format='string' docs='
-The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher.
-' defval='Publisher' depends='GENERATE_DOCSET'/>
- <option type='bool' id='GENERATE_HTMLHELP' docs='
-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.
-' defval='0' depends='GENERATE_HTML'/>
- <option type='string' id='CHM_FILE' format='file' docs='
-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.
-' defval='' depends='GENERATE_HTMLHELP'/>
- <option type='string' id='HHC_LOCATION' format='file' docs='
-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.
-' defval='' depends='GENERATE_HTMLHELP' abspath='1'/>
- <option type='bool' id='GENERATE_CHI' docs='
-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).
-' defval='0' depends='GENERATE_HTMLHELP'/>
- <option type='string' id='CHM_INDEX_ENCODING' format='string' docs='
-If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
-is used to encode HtmlHelp index (hhk), content (hhc) and project file
-content.
-' defval='' depends='GENERATE_HTMLHELP'/>
- <option type='bool' id='BINARY_TOC' docs='
-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.
-' defval='0' depends='GENERATE_HTMLHELP'/>
- <option type='bool' id='TOC_EXPAND' docs='
-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.
-' defval='0' depends='GENERATE_HTMLHELP'/>
- <option type='bool' id='GENERATE_QHP' docs='
-If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
-QHP_VIRTUAL_FOLDER are set, an additional index file will be generated
-that can be used as input for Qt&apos;s qhelpgenerator to generate a
-Qt Compressed Help (.qch) of the generated HTML documentation.
-' defval='0' depends='GENERATE_HTML'/>
- <option type='string' id='QCH_FILE' format='file' docs='
-If the QHG_LOCATION tag is specified, the QCH_FILE tag can
-be used to specify the file name of the resulting .qch file.
-The path specified is relative to the HTML output folder.
-' defval='' depends='GENERATE_QHP'/>
- <option type='string' id='QHP_NAMESPACE' format='string' docs='
-The QHP_NAMESPACE tag specifies the namespace to use when generating
-Qt Help Project output. For more information please see
-http://doc.trolltech.com/qthelpproject.html#namespace
-' defval='org.doxygen.Project' depends='GENERATE_QHP'/>
- <option type='string' id='QHP_VIRTUAL_FOLDER' format='string' docs='
-The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
-Qt Help Project output. For more information please see
-http://doc.trolltech.com/qthelpproject.html#virtual-folders
-' defval='doc' depends='GENERATE_QHP'/>
- <option type='string' id='QHP_CUST_FILTER_NAME' format='string' docs='
-If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to
-add. For more information please see
-http://doc.trolltech.com/qthelpproject.html#custom-filters
-' defval='' depends='GENERATE_QHP'/>
- <option type='string' id='QHP_CUST_FILTER_ATTRS' format='string' docs='
-The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the
-custom filter to add. For more information please see
-&lt;a href=&quot;http://doc.trolltech.com/qthelpproject.html#custom-filters&quot;&gt;
-Qt Help Project / Custom Filters&lt;/a&gt;.
-' defval='' depends='GENERATE_QHP'/>
- <option type='string' id='QHP_SECT_FILTER_ATTRS' format='string' docs='
-The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
-project&apos;s
-filter section matches.
-&lt;a href=&quot;http://doc.trolltech.com/qthelpproject.html#filter-attributes&quot;&gt;
-Qt Help Project / Filter Attributes&lt;/a&gt;.
-' defval='' depends='GENERATE_QHP'/>
- <option type='string' id='QHG_LOCATION' format='file' docs='
-If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
-be used to specify the location of Qt&apos;s qhelpgenerator.
-If non-empty doxygen will try to run qhelpgenerator on the generated
-.qhp file.
-' defval='' depends='GENERATE_QHP'/>
- <option type='bool' id='GENERATE_ECLIPSEHELP' docs='
-If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
-will be generated, which together with the HTML files, form an Eclipse help
-plugin. To install this plugin and make it available under the help contents
-menu in Eclipse, the contents of the directory containing the HTML and XML
-files needs to be copied into the plugins directory of eclipse. The name of
-the directory within the plugins directory should be the same as
-the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before
-the help appears.
-' defval='0' depends='GENERATE_HTML'/>
- <option type='string' id='ECLIPSE_DOC_ID' docs='
-A unique identifier for the eclipse help plugin. When installing the plugin
-the directory name containing the HTML and XML files should also have
-this name.
-' defval='org.doxygen.Project' depends='GENERATE_ECLIPSEHELP'/>
- <option type='bool' id='DISABLE_INDEX' docs='
-The DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs)
-at top of each HTML page. The value NO (the default) enables the index and
-the value YES disables it. Since the tabs have the same information as the
-navigation tree you can set this option to NO if you already set
-GENERATE_TREEVIEW to YES.
-' defval='0' depends='GENERATE_HTML'/>
- <option type='bool' id='GENERATE_TREEVIEW' defval='0' docs='
-The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
-structure should be generated to display hierarchical information.
-If the tag value 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 (i.e. any modern browser).
-Windows users are probably better off using the HTML help feature.
-Since the tree basically has the same information as the tab index you
-could consider to set DISABLE_INDEX to NO when enabling this option.
-' depends='GENERATE_HTML'/>
- <option type='int' id='ENUM_VALUES_PER_LINE' docs='
-The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values
-(range [0,1..20]) that doxygen will group on one line in the generated HTML
-documentation. Note that a value of 0 will completely suppress the enum
-values from appearing in the overview section.
-' minval='0' maxval='20' defval='4' depends='GENERATE_HTML'/>
- <option type='int' id='TREEVIEW_WIDTH' docs='
-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.
-' minval='0' maxval='1500' defval='250' depends='GENERATE_HTML'/>
- <option type='bool' id='EXT_LINKS_IN_WINDOW' defval='0' docs='
-When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open
-links to external symbols imported via tag files in a separate window.
-' depends='GENERATE_HTML'/>
- <option type='int' id='FORMULA_FONTSIZE' docs='
-Use this tag to change the font size of Latex formulas included
-as images in the HTML documentation. The default is 10. Note that
-when you change the font size after a successful doxygen run you need
-to manually remove any form_*.png images from the HTML output directory
-to force them to be regenerated.
-' minval='8' maxval='50' defval='10' depends='GENERATE_HTML'/>
- <option type='bool' id='FORMULA_TRANSPARENT' docs='
-Use the FORMULA_TRANPARENT tag to determine whether or not the images
-generated for formulas are transparent PNGs. Transparent PNGs are
-not supported properly for IE 6.0, but are supported on all modern browsers.
-Note that when changing this option you need to delete any form_*.png files
-in the HTML output before the changes have effect.
-' defval='1' depends='GENERATE_HTML'/>
- <option type='bool' id='USE_MATHJAX' docs='
-Enable the USE_MATHJAX option to render LaTeX formulas using MathJax
-(see http://www.mathjax.org) which uses client side Javascript for the
-rendering instead of using prerendered bitmaps. Use this if you do not
-have LaTeX installed or if you want to formulas look prettier in the HTML
-output. When enabled you may also need to install MathJax separately and
-configure the path to it using the MATHJAX_RELPATH option.
-' defval='0' depends='GENERATE_HTML'/>
- <option type='enum' id='MATHJAX_FORMAT' defval='HTML-CSS' docs='
-When MathJax is enabled you can set the default output format to be used for
-the MathJax output. Supported types are HTML-CSS, NativeMML (i.e. MathML) and
-SVG. The default value is HTML-CSS, which is slower, but has the best
-compatibility.
-' depends='USE_MATHJAX'>
- <value name="HTML-CSS"/>
- <value name="NativeMML"/>
+ <group name='HTML' docs='Configuration options related to the HTML output'>
+ <option type='bool' id='GENERATE_HTML' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_HTML tag is set to \c YES doxygen will
+ generate HTML output
+]]>
+ </docs>
+ </option>
+ <option type='string' id='HTML_OUTPUT' format='dir' defval='html' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+ If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
+ put in front of it.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='HTML_FILE_EXTENSION' format='string' defval='.html' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c HTML_FILE_EXTENSION tag can be used to specify the file extension for
+ each generated HTML page (for example: <code>.htm, .php, .asp</code>).
+]]>
+ </docs>
+ </option>
+ <option type='string' id='HTML_HEADER' format='file' defval='' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c HTML_HEADER tag can be used to specify a user-defined HTML
+ header file for each generated HTML page.
+ If the tag is left blank doxygen will generate a
+ standard header.
+<br>
+ To get valid HTML the header file that
+ includes any scripts and style sheets that doxygen
+ needs, which is dependent on the configuration options used (e.g. the
+ setting \ref cfg_generate_treeview "GENERATE_TREEVIEW").
+ It is highly recommended to start with a default header using
+\verbatim
+doxygen -w html new_header.html new_footer.html new_stylesheet.css YourConfigFile
+\endverbatim
+ and then modify the file \c new_header.html.
+
+ See also section \ref doxygen_usage for information on how to generate
+ the default header that doxygen normally uses.
+
+ @note The header is subject to change so you typically
+ have to regenerate the default header when upgrading to a newer version of
+ doxygen.
+]]>
+ </docs>
+ <docs doxywizard='0' doxyfile='0'>
+<![CDATA[
+ The following markers have a special meaning inside the header and footer:
+ <dl>
+ <dt><code>\$title</code><dd>will be replaced with the title of the page.
+ <dt><code>\$datetime</code><dd>will be replaced with current the date and time.
+ <dt><code>\$date</code><dd>will be replaced with the current date.
+ <dt><code>\$year</code><dd>will be replaces with the current year.
+ <dt><code>\$doxygenversion</code><dd>will be replaced with the version of doxygen
+ <dt><code>\$projectname</code><dd>will be replaced with the name of
+ the project (see \ref cfg_project_name "PROJECT_NAME")
+ <dt><code>\$projectnumber</code><dd>will be replaced with the project number
+ (see \ref cfg_project_number "PROJECT_NUMBER")
+ <dt><code>\$projectbrief</code><dd>will be replaced with the project brief
+ description (see \ref cfg_project_brief "PROJECT_BRIEF")
+ <dt><code>\$projectlogo</code><dd>will be replaced with the project logo
+ (see \ref cfg_project_logo "PROJECT_LOGO")
+ <dt><code>\$treeview</code><dd>will be replaced with links to
+ the javascript and style sheets needed for the navigation tree
+ (or an empty string when \ref cfg_generate_treeview "GENERATE_TREEVIEW"
+ is disabled).
+ <dt><code>\$search</code><dd>will be replaced with a links to
+ the javascript and style sheets needed for the search engine
+ (or an empty string when \ref cfg_searchengine "SEARCHENGINE"
+ is disabled).
+ <dt><code>\$mathjax</code><dd>will be replaced with a links to
+ the javascript and style sheets needed for the MathJax feature
+ (or an empty string when \ref cfg_use_mathjax "USE_MATHJAX" is disabled).
+ <dt><code>\$relpath^</code><dd>
+ If \ref cfg_create_subdirs "CREATE_SUBDIRS" is enabled, the command <code>\$relpath^</code> can be
+ used to produce a relative path to the root of the HTML output directory,
+ e.g. use <code>\$relpath^doxygen.css</code>, to refer to the standard style sheet.
+ </dl>
+
+ To cope with differences in the layout of the header and footer that depend on
+ configuration settings, the header can also contain special blocks that
+ will be copied to the output or skipped depending on the configuration.
+ Such blocks have the following form:
+\verbatim
+ <!--BEGIN BLOCKNAME-->
+ Some context copied when condition BLOCKNAME holds
+ <!--END BLOCKNAME-->
+ <!--BEGIN !BLOCKNAME-->
+ Some context copied when condition BLOCKNAME does not hold
+ <!--END !BLOCKNAME-->
+\endverbatim
+ The following block names are supported:
+ <dl>
+ <dt><code>DISABLE_INDEX</code><dd>Content within this block is copied to the output
+ when the \ref cfg_disable_index "DISABLE_INDEX" option is enabled (so when the index is disabled).
+ <dt><code>GENERATE_TREEVIEW</code><dd>Content within this block is copied to the output
+ when the \ref cfg_generate_treeview "GENERATE_TREEVIEW" option is enabled.
+ <dt><code>SEARCHENGINE</code><dd>Content within this block is copied to the output
+ when the \ref cfg_searchengine "SEARCHENGINE" option is enabled.
+ <dt><code>PROJECT_NAME</code><dd>Content within the block is copied to the output
+ when the \ref cfg_project_name "PROJECT_NAME" option is not empty.
+ <dt><code>PROJECT_NUMBER</code><dd>Content within the block is copied to the output
+ when the \ref cfg_project_number "PROJECT_NUMBER" option is not empty.
+ <dt><code>PROJECT_BRIEF</code><dd>Content within the block is copied to the output
+ when the \ref cfg_project_brief "PROJECT_BRIEF" option is not empty.
+ <dt><code>PROJECT_LOGO</code><dd>Content within the block is copied to the output
+ when the \ref cfg_project_logo "PROJECT_LOGO" option is not empty.
+ <dt><code>TITLEAREA</code><dd>Content within this block is copied to the output
+ when a title is visible at the top of each page. This is the case
+ if either \ref cfg_project_name "PROJECT_NAME",
+ \ref cfg_project_brief "PROJECT_BRIEF", \ref cfg_project_logo "PROJECT_LOGO"
+ is filled in or if both \ref cfg_disable_index "DISABLE_INDEX" and
+ \ref cfg_searchengine "SEARCHENGINE" are enabled.
+ </dl>
+]]>
+ </docs>
+ <docs documentation='0'>
+<![CDATA[
+ For a description of the possible markers and block names see the documentation.
+]]>
+ </docs>
+ </option>
+
+ <option type='string' id='HTML_FOOTER' format='file' defval='' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c HTML_FOOTER tag can be used to specify a user-defined HTML footer for
+ each generated HTML page.
+ If the tag is left blank doxygen will generate a standard footer.
+
+ See \ref cfg_html_header "HTML_HEADER" for more information on
+ how to generate a default footer and what special commands can be
+ used inside the footer.
+
+ See also section \ref doxygen_usage for information on how to generate
+ the default footer that doxygen normally uses.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='HTML_STYLESHEET' format='file' defval='' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c 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 left blank doxygen
+ will generate a default style sheet.
+
+ See also section \ref doxygen_usage for information on how to generate
+ the style sheet that doxygen normally uses.
+
+ \note It is recommended to use
+ \ref cfg_html_extra_stylesheet "HTML_EXTRA_STYLESHEET" instead of this tag,
+ as it is more robust and
+ this tag (<code>HTML_STYLESHEET</code>) will in the future become obsolete.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='HTML_EXTRA_STYLESHEET' format='file' defval='' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c HTML_EXTRA_STYLESHEET tag can be used to specify an additional
+ user-defined cascading style sheet that is included after the standard
+ style sheets created by doxygen. Using this option one can overrule
+ certain style aspects. This is preferred over using \ref cfg_html_stylesheet "HTML_STYLESHEET"
+ since it does not replace the standard style sheet and is therefor more
+ robust against future updates. Doxygen will copy the style sheet file to
+ the output directory.
+]]>
+ </docs>
+ <docs doxywizard='0' doxyfile='0'>
+<![CDATA[
+ Here is an example stylesheet that gives the contents area a fixed width:
+\verbatim
+body {
+ background-color: #CCC;
+ color: black;
+ margin: 0;
+}
+
+div.contents {
+ margin-bottom: 10px;
+ padding: 12px;
+ margin-left: auto;
+ margin-right: auto;
+ width: 960px;
+ background-color: white;
+ border-radius: 8px;
+}
+
+#titlearea {
+ background-color: white;
+}
+
+hr.footer {
+ display: none;
+}
+
+.footer {
+ background-color: #AAA;
+}
+\endverbatim
+]]>
+ </docs>
+ <docs documentation='0'>
+<![CDATA[
+ For an example see the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='HTML_EXTRA_FILES' format='file' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c HTML_EXTRA_FILES tag can be used to specify one or more extra images or
+ other source files which should be copied to the HTML output directory. Note
+ that these files will be copied to the base HTML output directory. Use the
+ <code>$relpath^</code> marker in the \ref cfg_html_header "HTML_HEADER" and/or
+ \ref cfg_html_footer "HTML_FOOTER" files to load these
+ files. In the \ref cfg_html_stylesheet "HTML_STYLESHEET" file, use the file name only. Also note that
+ the files will be copied as-is; there are no commands or markers available.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='HTML_COLORSTYLE_HUE' minval='0' maxval='359' defval='220' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c HTML_COLORSTYLE_HUE tag controls the color of the HTML output.
+ Doxygen will adjust the colors in the stylesheet and background images
+ according to this color. Hue is specified as an angle on a colorwheel,
+ see http://en.wikipedia.org/wiki/Hue for more information.
+ For instance the value 0 represents red, 60 is yellow, 120 is green,
+ 180 is cyan, 240 is blue, 300 purple, and 360 is red again.
+ The allowed range is 0 to 359.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='HTML_COLORSTYLE_SAT' minval='0' maxval='255' defval='100' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of
+ the colors in the HTML output. For a value of 0 the output will use
+ grayscales only. A value of 255 will produce the most vivid colors.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='HTML_COLORSTYLE_GAMMA' minval='40' maxval='240' defval='80' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to
+ the luminance component of the colors in the HTML output. Values below
+ 100 gradually make the output lighter, whereas values above 100 make
+ the output darker. The value divided by 100 is the actual gamma applied,
+ so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,
+ and 100 does not change the gamma.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='HTML_TIMESTAMP' defval='1' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ If the \c HTML_TIMESTAMP tag is set to \c YES then the footer of
+ each generated HTML page will contain the date and time when the page
+ was generated. Setting this to \c NO can help when comparing the output of
+ multiple runs.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='HTML_DYNAMIC_SECTIONS' defval='0' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ If the \c HTML_DYNAMIC_SECTIONS tag is set to \c YES then the generated HTML
+ documentation will contain sections that can be hidden and shown after the
+ page has loaded.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='HTML_INDEX_NUM_ENTRIES' minval='0' maxval='9999' defval='100' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ With \c HTML_INDEX_NUM_ENTRIES one can control the preferred number of
+ entries shown in the various tree structured indices initially; the user
+ can expand and collapse entries dynamically later on. Doxygen will expand
+ the tree to such a level that at most the specified number of entries are
+ visible (unless a fully collapsed tree already exceeds this amount).
+ So setting the number of entries 1 will produce a full collapsed tree by
+ default. 0 is a special value representing an infinite number of entries
+ and will result in a full expanded tree by default.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_DOCSET' defval='0' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_DOCSET tag is set to \c YES, additional index files
+ will be generated that can be used as input for
+ <a href="http://developer.apple.com/tools/xcode/">Apple's Xcode 3
+ integrated development environment</a>, introduced with OSX 10.5 (Leopard).
+ To create a documentation set, doxygen will generate a Makefile in the
+ HTML output directory. Running \c make will produce the docset in that
+ directory and running <code>make install</code> will install the docset in
+ <code>~/Library/Developer/Shared/Documentation/DocSets</code>
+ so that Xcode will find it at startup. See
+ http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for
+ more information.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='DOCSET_FEEDNAME' format='string' defval='Doxygen generated docs' depends='GENERATE_DOCSET'>
+ <docs>
+<![CDATA[
+ This tag determines the name of the docset
+ 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.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='DOCSET_BUNDLE_ID' format='string' defval='org.doxygen.Project' depends='GENERATE_DOCSET'>
+ <docs>
+<![CDATA[
+ This tag specifies a string that
+ should uniquely identify the documentation set bundle. This should be a
+ reverse domain-name style string, e.g. <code>com.mycompany.MyDocSet</code>.
+ Doxygen will append <code>.docset</code> to the name.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='DOCSET_PUBLISHER_ID' format='string' defval='org.doxygen.Publisher' depends='GENERATE_DOCSET'>
+ <docs>
+<![CDATA[
+The \c DOCSET_PUBLISHER_ID
+tag specifies a string that should uniquely identify
+the documentation publisher. This should be a reverse domain-name style
+string, e.g. <code>com.mycompany.MyDocSet.documentation</code>.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='DOCSET_PUBLISHER_NAME' format='string' defval='Publisher' depends='GENERATE_DOCSET'>
+ <docs>
+<![CDATA[
+The \c DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_HTMLHELP' defval='0' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_HTMLHELP tag is set to \c YES then
+ doxygen generates three additional HTML index files:
+ \c index.hhp, \c index.hhc, and \c index.hhk. The \c index.hhp is a
+ project file that can be read by
+ <a href="http://www.microsoft.com/en-us/download/details.aspx?id=21138">
+ Microsoft's HTML Help Workshop</a>
+ on Windows.
+<br>
+ The HTML Help Workshop contains a compiler that can convert all HTML output
+ generated by doxygen into a single compiled HTML file (`.chm`). Compiled
+ HTML files are now used as the Windows 98 help format, and will replace
+ the old Windows help format (`.hlp`) on all Windows platforms in the future.
+ Compressed HTML files also contain an index, a table of contents,
+ and you can search for words in the documentation.
+ The HTML workshop also contains a viewer for compressed HTML files.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='CHM_FILE' format='file' defval='' depends='GENERATE_HTMLHELP'>
+ <docs>
+<![CDATA[
+ The \c 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.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='HHC_LOCATION' format='file' defval='' depends='GENERATE_HTMLHELP' abspath='1'>
+ <docs>
+<![CDATA[
+ The \c HHC_LOCATION tag can
+ be used to specify the location (absolute path including file name) of
+ the HTML help compiler (\c hhc.exe). If non-empty doxygen will try to run
+ the HTML help compiler on the generated \c index.hhp.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_CHI' defval='0' depends='GENERATE_HTMLHELP'>
+ <docs>
+<![CDATA[
+ The \c GENERATE_CHI flag
+ controls if a separate `.chi` index file is generated (\c YES) or that
+ it should be included in the master `.chm` file (\c NO).
+]]>
+ </docs>
+ </option>
+ <option type='string' id='CHM_INDEX_ENCODING' format='string' defval='' depends='GENERATE_HTMLHELP'>
+ <docs>
+<![CDATA[
+ The \c CHM_INDEX_ENCODING
+ is used to encode HtmlHelp index (\c hhk), content (\c hhc) and project file
+ content.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='BINARY_TOC' defval='0' depends='GENERATE_HTMLHELP'>
+ <docs>
+<![CDATA[
+ The \c BINARY_TOC flag
+ controls whether a binary table of contents is generated (\c YES) or a
+ normal table of contents (\c NO) in the `.chm` file.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='TOC_EXPAND' defval='0' depends='GENERATE_HTMLHELP'>
+ <docs>
+<![CDATA[
+ The \c TOC_EXPAND flag can be set to \c YES to add extra items for
+ group members to the table of contents of the HTML help documentation
+ and to the tree view.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_QHP' defval='0' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_QHP tag is set to \c YES and both \ref cfg_qhp_namespace "QHP_NAMESPACE"
+ and \ref cfg_qhp_virtual_folder "QHP_VIRTUAL_FOLDER" are set, an additional index file will
+ be generated that can be used as input for Qt's qhelpgenerator
+ to generate a Qt Compressed Help (`.qch`) of the generated HTML
+ documentation.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='QCH_FILE' format='file' defval='' depends='GENERATE_QHP'>
+ <docs>
+<![CDATA[
+ If the \ref cfg_qhg_location "QHG_LOCATION" tag is specified, the \c QCH_FILE tag can
+ be used to specify the file name of the resulting `.qch` file.
+ The path specified is relative to the HTML output folder.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='QHP_NAMESPACE' format='string' defval='org.doxygen.Project' depends='GENERATE_QHP'>
+ <docs>
+<![CDATA[
+ The \c QHP_NAMESPACE tag specifies the namespace to use when generating
+ Qt Help Project output. For more information please see
+ <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace">Qt Help Project / Namespace</a>.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='QHP_VIRTUAL_FOLDER' format='string' defval='doc' depends='GENERATE_QHP'>
+ <docs>
+<![CDATA[
+ The \c QHP_VIRTUAL_FOLDER tag specifies the namespace to use when
+ generating Qt Help Project output. For more information please see
+ <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-folders">Qt Help Project / Virtual Folders</a>.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='QHP_CUST_FILTER_NAME' format='string' defval='' depends='GENERATE_QHP'>
+ <docs>
+<![CDATA[
+ If the \c QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom filter to add. For more information please see
+ <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='QHP_CUST_FILTER_ATTRS' format='string' defval='' depends='GENERATE_QHP'>
+ <docs>
+<![CDATA[
+ The \c QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the custom filter to add.
+ For more information please see
+ <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='QHP_SECT_FILTER_ATTRS' format='string' defval='' depends='GENERATE_QHP'>
+ <docs>
+<![CDATA[
+ The \c QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's filter section matches.
+ <a href="http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes">Qt Help Project / Filter Attributes</a>.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='QHG_LOCATION' format='file' defval='' depends='GENERATE_QHP'>
+ <docs>
+<![CDATA[
+ The \c QHG_LOCATION tag can be used to specify the location of Qt's qhelpgenerator.
+ If non-empty doxygen will try to run qhelpgenerator on the generated `.qhp` file.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_ECLIPSEHELP' defval='0' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_ECLIPSEHELP tag is set to \c YES, additional index files
+ will be generated, together with the HTML files, they form an `Eclipse` help
+ plugin.
+
+ To install this plugin and make it available under the help contents
+ menu in `Eclipse`, the contents of the directory containing the HTML and XML
+ files needs to be copied into the plugins directory of eclipse. The name of
+ the directory within the plugins directory should be the same as
+ the \ref cfg_eclipse_doc_id "ECLIPSE_DOC_ID" value.
+
+ After copying `Eclipse` needs to be restarted before the help appears.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='ECLIPSE_DOC_ID' format='string' defval='org.doxygen.Project' depends='GENERATE_ECLIPSEHELP'>
+ <docs>
+<![CDATA[
+ A unique identifier for the `Eclipse` help plugin. When installing the plugin
+ the directory name containing the HTML and XML files should also have
+ this name. Each documentation set should have its own identifier.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='DISABLE_INDEX' defval='0' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ If you want full control over the layout of the generated HTML pages it
+ might be necessary to disable the index and replace it with your own.
+ The \c DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at
+ top of each HTML page. A value of \c NO enables the index and the
+ value \c YES disables it. Since the tabs have the same information as the
+ navigation tree you can set this option to \c NO if you already set
+ \ref cfg_generate_treeview "GENERATE_TREEVIEW" to \c YES.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_TREEVIEW' defval='0' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+ structure should be generated to display hierarchical information.
+ If the tag value is set to \c 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 (i.e. any modern browser).
+ Windows users are probably better off using the HTML help feature.
+
+ Via custom stylesheets (see \ref cfg_html_extra_stylesheet "HTML_EXTRA_STYLESHEET")
+ one can further \ref doxygen_finetune "fine-tune" the look of the index.
+ As an example, the default style sheet generated by doxygen has an
+ example that shows how to put an image at the root of the tree instead of
+ the \ref cfg_project_name "PROJECT_NAME".
+
+ Since the tree basically has the same information as the tab index you
+ could consider to set \ref cfg_disable_index "DISABLE_INDEX" to \c NO when enabling this option.
+]]>
+ </docs>
+ </option>
+
+ <option type='int' id='ENUM_VALUES_PER_LINE' minval='0' maxval='20' defval='4' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ The \c ENUM_VALUES_PER_LINE tag can be used to set the number of enum values
+ that doxygen will group on one line in the generated HTML documentation.
+ <br>Note that a value of 0 will completely suppress the enum values from
+ appearing in the overview section.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='TREEVIEW_WIDTH' minval='0' maxval='1500' defval='250' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ If the treeview is enabled (see \ref cfg_generate_treeview "GENERATE_TREEVIEW") then this tag can be
+ used to set the initial width (in pixels) of the frame in which the tree
+ is shown.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXT_LINKS_IN_WINDOW' defval='0' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ When the \c EXT_LINKS_IN_WINDOW option is set to \c YES doxygen will open
+ links to external symbols imported via tag files in a separate window.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='FORMULA_FONTSIZE' minval='8' maxval='50' defval='10' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ Use this tag to change the font size of \f$\mbox{\LaTeX}\f$ formulas included
+ as images in the HTML documentation.
+ When you change the font size after a successful doxygen run you need
+ to manually remove any `form_*.png` images from the HTML
+ output directory to force them to be regenerated.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='FORMULA_TRANSPARENT' defval='1' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ Use the \c FORMULA_TRANPARENT tag to determine whether or not the images
+ generated for formulas are transparent PNGs. Transparent PNGs are
+ not supported properly for IE 6.0, but are supported on all modern browsers.
+ <br>Note that when changing this option you need to delete any `form_*.png` files
+ in the HTML output directory before the changes have effect.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='USE_MATHJAX' defval='0' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ Enable the \c USE_MATHJAX option to render \f$\mbox{\LaTeX}\f$ formulas using MathJax
+ (see http://www.mathjax.org) which uses client side Javascript for the
+ rendering instead of using prerendered bitmaps. Use this if you do not
+ have \f$\mbox{\LaTeX}\f$ installed or if you want to formulas look prettier in the HTML
+ output. When enabled you may also need to install MathJax separately and
+ configure the path to it using the \ref cfg_mathjax_relpath "MATHJAX_RELPATH"
+ option.
+]]>
+ </docs>
+ </option>
+ <option type='enum' id='MATHJAX_FORMAT' defval='HTML-CSS' depends='USE_MATHJAX'>
+ <docs>
+<![CDATA[
+ When MathJax is enabled you can set the default output format to be used for
+ the MathJax output.
+ See <a href="http://docs.mathjax.org/en/latest/output.html">the MathJax site</a>
+ for more details.
+]]>
+ </docs>
+ <value name="HTML-CSS" desc="(which is slower, but has the best compatibility)"/>
+ <value name="NativeMML" desc="(i.e. MathML)"/>
<value name="SVG"/>
- </option>
- <option type='string' id='MATHJAX_RELPATH' docs='
-When MathJax is enabled you need to specify the location relative to the
-HTML output directory using the MATHJAX_RELPATH option. The destination
-directory should contain the MathJax.js script. For instance, if the mathjax
-directory is located at the same level as the HTML output directory, then
-MATHJAX_RELPATH should be ../mathjax. The default value points to
-the MathJax Content Delivery Network so you can quickly see the result without
-installing MathJax. However, it is strongly recommended to install a local
-copy of MathJax from http://www.mathjax.org before deployment.
-' defval='http://cdn.mathjax.org/mathjax/latest' depends='USE_MATHJAX'/>
- <option type='list' id='MATHJAX_EXTENSIONS' format='string' docs='
-The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension
-names that should be enabled during MathJax rendering.
-' depends='USE_MATHJAX'>
- </option>
- <option type='string' id='MATHJAX_CODEFILE' format='string' docs='
-The MATHJAX_CODEFILE tag can be used to specify a file with javascript
-pieces of code that will be used on startup of the MathJax code.
-' depends='USE_MATHJAX'>
- </option>
- <option type='bool' id='SEARCHENGINE' docs='
-When the SEARCHENGINE tag is enabled doxygen will generate a search box
-for the HTML output. The underlying search engine uses javascript
-and DHTML and should work on any modern browser. Note that when using
-HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets
-(GENERATE_DOCSET) there is already a search function so this one should
-typically be disabled. For large projects the javascript based search engine
-can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
-' defval='1' depends='GENERATE_HTML'/>
- <option type='bool' id='SERVER_BASED_SEARCH' docs='
-When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+ </option>
+ <option type='string' id='MATHJAX_RELPATH' format='string' defval='http://cdn.mathjax.org/mathjax/latest' depends='USE_MATHJAX'>
+ <docs>
+<![CDATA[
+ When MathJax is enabled you need to specify the location relative to the
+ HTML output directory using the \c MATHJAX_RELPATH option. The destination
+ directory should contain the `MathJax.js` script. For instance, if the \c mathjax
+ directory is located at the same level as the HTML output directory, then
+ \c MATHJAX_RELPATH should be <code>../mathjax</code>. The default value points to
+ the MathJax Content Delivery Network so you can quickly see the result without
+ installing MathJax. However, it is strongly recommended to install a local
+ copy of MathJax from http://www.mathjax.org before deployment.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='MATHJAX_EXTENSIONS' format='string' depends='USE_MATHJAX'>
+ <docs>
+<![CDATA[
+ The \c MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax extension
+ names that should be enabled during MathJax rendering. For example
+\verbatim
+MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+\endverbatim
+]]>
+ </docs>
+ </option>
+ <option type='string' id='MATHJAX_CODEFILE' format='string' depends='USE_MATHJAX'>
+ <docs>
+<![CDATA[
+ The \c MATHJAX_CODEFILE tag can be used to specify a file with javascript
+ pieces of code that will be used on startup of the MathJax code.
+ See
+<a href="http://docs.mathjax.org/en/latest/output.html">the MathJax site</a>
+ for more details.
+]]>
+ </docs>
+ <docs doxywizard='0' doxyfile='0'>
+<![CDATA[
+ As an example to disable the "Math Renderer" menu item in the "Math
+ Settings" menu of MathJax:
+\verbatim
+MATHJAX_CODEFILE = disableRenderer.js
+\endverbatim
+ with in the file <code>disableRenderer.js</code>:
+\verbatim
+ MathJax.Hub.Config({
+ menuSettings: {
+ showRenderer: false,
+ }
+ });
+\endverbatim
+]]>
+ </docs>
+ <docs documentation='0'>
+<![CDATA[
+ For an example see the documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SEARCHENGINE' defval='1' depends='GENERATE_HTML'>
+ <docs>
+<![CDATA[
+ When the \c SEARCHENGINE tag is enabled doxygen will generate a search box
+ for the HTML output. The underlying search engine uses javascript
+ and DHTML and should work on any modern browser. Note that when using
+ HTML help (\ref cfg_generate_htmlhelp "GENERATE_HTMLHELP"),
+ Qt help (\ref cfg_generate_qhp "GENERATE_QHP"), or docsets
+ (\ref cfg_generate_docset "GENERATE_DOCSET") there is already a search
+ function so this one should typically be disabled. For large projects
+ the javascript based search engine can be slow, then enabling
+ \ref cfg_server_based_search "SERVER_BASED_SEARCH" may provide a
+ better solution.
+
+ It is possible to search using the keyboard;
+ to jump to the search box use <code>\<access key\> + S</code> (what the <code>\<access key\></code> is
+ depends on the OS and browser, but it is typically <code>\<CTRL\></code>, <code>\<ALT\></code>/<code>\<option\></code>, or both).
+ Inside the search box use the <code>\<cursor down key\></code> to jump into the search
+ results window, the results can be navigated using the <code>\<cursor keys\></code>.
+ Press <code>\<Enter\></code> to select an item or <code>\<escape\></code> to cancel the search. The
+ filter options can be selected when the cursor is inside the search box
+ by pressing <code>\<Shift\>+\<cursor down\></code>. Also here use the <code>\<cursor keys\></code> to
+ select a filter and <code>\<Enter\></code> or <code>\<escape\></code> to activate or cancel the filter option.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SERVER_BASED_SEARCH' defval='0' depends='SEARCHENGINE'>
+ <docs>
+<![CDATA[
+When the \c SERVER_BASED_SEARCH tag is enabled the search engine will be
implemented using a web server instead of a web client using Javascript.
-There are two flavours of web server based search depending on the
-EXTERNAL_SEARCH setting. When disabled, doxygen will generate a PHP script for
-searching and an index file used by the script. When EXTERNAL_SEARCH is
+
+There are two flavours of web server based searching depending on the
+\ref cfg_external_search "EXTERNAL_SEARCH" setting. When disabled,
+doxygen will generate a PHP script for searching and an index file used
+by the script. When \ref cfg_external_search "EXTERNAL_SEARCH" is
enabled the indexing and searching needs to be provided by external tools.
-See the manual for details.
-' defval='0' depends='SEARCHENGINE'/>
- <option type='bool' id='EXTERNAL_SEARCH' docs='
-When EXTERNAL_SEARCH is enabled doxygen will no longer generate the PHP
-script for searching. Instead the search results are written to an XML file
-which needs to be processed by an external indexer. Doxygen will invoke an
-external search engine pointed to by the SEARCHENGINE_URL option to obtain
-the search results. Doxygen ships with an example indexer (doxyindexer) and
-search engine (doxysearch.cgi) which are based on the open source search
-engine library Xapian. See the manual for configuration details.
-' defval='0' depends='SEARCHENGINE'/>
- <option type='string' id='SEARCHENGINE_URL' docs='
-The SEARCHENGINE_URL should point to a search engine hosted by a web server
-which will returned the search results when EXTERNAL_SEARCH is enabled.
-Doxygen ships with an example search engine (doxysearch) which is based on
-the open source search engine library Xapian. See the manual for configuration
-details.
-' defval='' depends='SEARCHENGINE'/>
- <option type='string' id='SEARCHDATA_FILE' format='file' docs='
-When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
+See the section \ref extsearch for details.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXTERNAL_SEARCH' defval='0' depends='SEARCHENGINE'>
+ <docs>
+<![CDATA[
+ When \c EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
+ script for searching. Instead the search results are written to an XML file
+ which needs to be processed by an external indexer. Doxygen will invoke an
+ external search engine pointed to by the
+ \ref cfg_searchengine_url "SEARCHENGINE_URL" option to obtain
+ the search results.
+ <br>Doxygen ships with an example indexer (\c doxyindexer) and
+ search engine (<code>doxysearch.cgi</code>) which are based on the open source search
+ engine library <a href="http://xapian.org/">Xapian</a>.
+ <br>See the section \ref extsearch for details.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='SEARCHENGINE_URL' format='string' defval='' depends='SEARCHENGINE'>
+ <docs>
+<![CDATA[
+ The \c SEARCHENGINE_URL should point to a search engine hosted by a web server
+ which will return the search results when \ref cfg_external_search "EXTERNAL_SEARCH"
+ is enabled.
+ <br>Doxygen ships with an example indexer (\c doxyindexer) and
+ search engine (<code>doxysearch.cgi</code>) which are based on the open source search
+ engine library <a href="http://xapian.org/">Xapian</a>.
+ See the section \ref extsearch for details.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='SEARCHDATA_FILE' format='file' defval='searchdata.xml' depends='SEARCHENGINE'>
+ <docs>
+<![CDATA[
+When \ref cfg_server_based_search "SERVER_BASED_SEARCH" and
+\ref cfg_external_search "EXTERNAL_SEARCH" are both enabled the unindexed
search data is written to a file for indexing by an external tool. With the
-SEARCHDATA_FILE tag the name of this file can be specified.
-' defval='searchdata.xml' depends='SEARCHENGINE'/>
- <option type='string' id='EXTERNAL_SEARCH_ID' docs='
-When SERVER_BASED_SEARCH AND EXTERNAL_SEARCH are both enabled the
-EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
-useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
-projects and redirect the results back to the right project.
-' defval='' depends='SEARCHENGINE'/>
- <option type='list' id='EXTRA_SEARCH_MAPPINGS' docs='
-The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
-projects other than the one defined by this configuration file, but that are
-all added to the same external search index. Each project needs to have a
-unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id
-of to a relative location where the documentation can be found.
-The format is: EXTRA_SEARCH_MAPPINGS = id1=loc1 id2=loc2 ...
-' defval='0' depends='SEARCHENGINE'/>
+\c SEARCHDATA_FILE tag the name of this file can be specified.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='EXTERNAL_SEARCH_ID' format='string' defval='' depends='SEARCHENGINE'>
+ <docs>
+<![CDATA[
+When \ref cfg_server_based_search "SERVER_BASED_SEARCH" and
+\ref cfg_external_search "EXTERNAL_SEARCH" are both enabled the
+\c EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
+useful in combination with \ref cfg_extra_search_mappings "EXTRA_SEARCH_MAPPINGS"
+to search through multiple projects and redirect the results back to the right project.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='EXTRA_SEARCH_MAPPINGS' format='string' depends='SEARCHENGINE'>
+ <docs>
+<![CDATA[
+ The \c EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
+ projects other than the one defined by this configuration file, but that are
+ all added to the same external search index. Each project needs to have a
+ unique id set via \ref cfg_external_search_id "EXTERNAL_SEARCH_ID".
+ The search mapping then maps the id of to a relative location where the
+ documentation can be found.
+
+ The format is:
+\verbatim
+EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
+\endverbatim
+]]>
+ </docs>
+ </option>
</group>
- <group name='LaTeX' docs='configuration options related to the LaTeX output'>
- <option type='bool' id='GENERATE_LATEX' docs='
-If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
-generate Latex output.
-' defval='1'/>
- <option type='string' id='LATEX_OUTPUT' format='dir' docs='
-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&apos; will be used as the default path.
-' defval='latex' depends='GENERATE_LATEX'/>
- <option type='string' id='LATEX_CMD_NAME' format='file' docs='
-The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
-invoked. If left blank `latex&apos; will be used as the default command name.
-Note that when enabling USE_PDFLATEX this option is only used for
-generating bitmaps for formulas in the HTML output, but not in the
-Makefile that is written to the output directory.
-' defval='latex' depends='GENERATE_LATEX'/>
- <option type='string' id='MAKEINDEX_CMD_NAME' format='file' docs='
-The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
-generate index for LaTeX. If left blank `makeindex&apos; will be used as the
-default command name.
-' defval='makeindex' depends='GENERATE_LATEX'/>
- <option type='bool' id='COMPACT_LATEX' docs='
-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.
-' defval='0' depends='GENERATE_LATEX'/>
- <option type='enum' id='PAPER_TYPE' defval='a4' docs='
-The PAPER_TYPE tag can be used to set the paper type that is used
-by the printer. Possible values are: a4, letter, legal and
-executive. If left blank a4 will be used.
-' depends='GENERATE_LATEX'>
- <value name='a4'/>
- <value name='letter'/>
- <value name='legal'/>
- <value name='executive'/>
- </option>
- <option type='list' id='EXTRA_PACKAGES' format='string' docs='
-The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
-packages that should be included in the LaTeX output.
-' depends='GENERATE_LATEX'>
- </option>
- <option type='string' id='LATEX_HEADER' format='file' docs='
-The LATEX_HEADER tag can be used to specify a personal LaTeX header for
-the generated latex document. The header should contain everything until
-the first chapter. If it is left blank doxygen will generate a
-standard header. Notice: only use this tag if you know what you are doing!
-' defval='' depends='GENERATE_LATEX'/>
- <option type='string' id='LATEX_FOOTER' format='file' docs='
-The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for
-the generated latex document. The footer should contain everything after
-the last chapter. If it is left blank doxygen will generate a
-standard footer. Notice: only use this tag if you know what you are doing!
-' defval='' depends='GENERATE_LATEX'/>
- <option type='list' id='LATEX_EXTRA_FILES' format='file' docs='
-The LATEX_EXTRA_FILES tag can be used to specify one or more extra images
-or other source files which should be copied to the LaTeX output directory.
-Note that the files will be copied as-is; there are no commands or markers
-available.
-' depends='GENERATE_LATEX'/>
- <option type='bool' id='PDF_HYPERLINKS' docs='
-If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
-is prepared for conversion to pdf (using ps2pdf). The pdf file will
-contain links (just like the HTML output) instead of page references
-This makes the output suitable for online browsing using a pdf viewer.
-' defval='1' depends='GENERATE_LATEX'/>
- <option type='bool' id='USE_PDFLATEX' docs='
-If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
-plain latex in the generated Makefile. Set this option to YES to get a
-higher quality PDF documentation.
-' defval='1' depends='GENERATE_LATEX'/>
- <option type='bool' id='LATEX_BATCHMODE' docs='
-If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
-command to the generated LaTeX files. This will instruct LaTeX to keep
-running if errors occur, instead of asking the user for help.
-This option is also used when generating formulas in HTML.
-' defval='0' depends='GENERATE_LATEX'/>
- <option type='bool' id='LATEX_HIDE_INDICES' docs='
-If LATEX_HIDE_INDICES is set to YES then doxygen will not
-include the index chapters (such as File Index, Compound Index, etc.)
-in the output.
-' defval='0' depends='GENERATE_LATEX'/>
- <option type='bool' id='LATEX_SOURCE_CODE' docs='
-If LATEX_SOURCE_CODE is set to YES then doxygen will include
-source code with syntax highlighting in the LaTeX output.
-Note that which sources are shown also depends on other settings
-such as SOURCE_BROWSER.
-' defval='0' depends='GENERATE_LATEX'/>
- <option type='string' id='LATEX_BIB_STYLE' format='string' docs='
-The LATEX_BIB_STYLE tag can be used to specify the style to use for the
-bibliography, e.g. plainnat, or ieeetr. The default style is &quot;plain&quot;. See
-http://en.wikipedia.org/wiki/BibTeX for more info.
-' defval='plain' depends='GENERATE_LATEX'/>
+ <group name='LaTeX' docs='Configuration options related to the LaTeX output'>
+ <option type='bool' id='GENERATE_LATEX' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_LATEX tag is set to \c YES doxygen will
+ generate \f$\mbox{\LaTeX}\f$ output.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='LATEX_OUTPUT' format='dir' defval='latex' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ The \c LATEX_OUTPUT tag is used to specify where the \f$\mbox{\LaTeX}\f$
+ docs will be put.
+ If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
+ put in front of it.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='LATEX_CMD_NAME' format='file' defval='latex' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ The \c LATEX_CMD_NAME tag can be used to specify the \f$\mbox{\LaTeX}\f$ command name to be invoked.
+ <br>Note that when enabling \ref cfg_use_pdflatex "USE_PDFLATEX" this option is only used for
+ generating bitmaps for formulas in the HTML output, but not in the
+ \c Makefile that is written to the output directory.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='MAKEINDEX_CMD_NAME' format='file' defval='makeindex' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ The \c MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+ generate index for \f$\mbox{\LaTeX}\f$.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='COMPACT_LATEX' defval='0' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ If the \c COMPACT_LATEX tag is set to \c YES doxygen generates more compact
+ \f$\mbox{\LaTeX}\f$ documents. This may be useful for small projects and may help to
+ save some trees in general.
+]]>
+ </docs>
+ </option>
+ <option type='enum' id='PAPER_TYPE' defval='a4' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ The \c PAPER_TYPE tag can be used to set the paper type that is used
+ by the printer.
+]]>
+ </docs>
+ <value name='a4' desc='(210 x 297 mm)'/>
+ <value name='letter' desc='(8.5 x 11 inches)'/>
+ <value name='legal' desc='(8.5 x 14 inches)'/>
+ <value name='executive' desc='(7.25 x 10.5 inches)'/>
+ </option>
+ <option type='list' id='EXTRA_PACKAGES' format='string' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ The \c EXTRA_PACKAGES tag can be used to specify one or more \f$\mbox{\LaTeX}\f$
+ package names that should be included in the \f$\mbox{\LaTeX}\f$ output.
+ To get the times font for instance you can specify
+\verbatim
+EXTRA_PACKAGES=times
+\endverbatim
+ If left blank no extra packages will be included.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='LATEX_HEADER' format='file' defval='' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ The \c LATEX_HEADER tag can be used to specify a personal \f$\mbox{\LaTeX}\f$
+ header for the generated \f$\mbox{\LaTeX}\f$ document.
+ The header should contain everything until the first chapter.
+
+ If it is left blank doxygen will generate a
+ standard header. See section \ref doxygen_usage for information on how to
+ let doxygen write the default header to a separate file.
+
+ <br>Note: Only use a user-defined header if you know what you are doing!
+
+ The following commands have a special meaning inside the header:
+ <code>\$title</code>, <code>\$datetime</code>, <code>\$date</code>,
+ <code>\$doxygenversion</code>, <code>\$projectname</code>,
+ <code>\$projectnumber</code>.
+ Doxygen will replace them by respectively
+ the title of the page, the current date and time, only the current date,
+ the version number of doxygen, the project name (see \ref cfg_project_name "PROJECT_NAME"), or the
+ project number (see \ref cfg_project_number "PROJECT_NUMBER").
+]]>
+ </docs>
+ </option>
+ <option type='string' id='LATEX_FOOTER' format='file' defval='' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ The \c LATEX_FOOTER tag can be used to specify a personal \f$\mbox{\LaTeX}\f$ footer for
+ the generated \f$\mbox{\LaTeX}\f$ document. The footer should contain everything after
+ the last chapter. If it is left blank doxygen will generate a
+ standard footer.
+
+ <br>Note: Only use a user-defined footer if you know what you are doing!
+]]>
+ </docs>
+ </option>
+ <option type='list' id='LATEX_EXTRA_FILES' format='file' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ The \c LATEX_EXTRA_FILES tag can be used to specify one or more extra images
+ or other source files which should be copied to the \ref cfg_latex_output "LATEX_OUTPUT"
+ output directory.
+ Note that the files will be copied as-is; there are no commands or markers
+ available.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='PDF_HYPERLINKS' defval='1' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ If the \c PDF_HYPERLINKS tag is set to \c YES, the \f$\mbox{\LaTeX}\f$ that
+ is generated is prepared for conversion to PDF (using \c ps2pdf or \c pdflatex).
+ The PDF file will
+ contain links (just like the HTML output) instead of page references.
+ This makes the output suitable for online browsing using a PDF viewer.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='USE_PDFLATEX' defval='1' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ If the \c LATEX_PDFLATEX tag is set to \c YES, doxygen will use
+ \c pdflatex to generate the PDF file directly from the \f$\mbox{\LaTeX}\f$
+ files. Set this option to \c YES to get a higher quality PDF documentation.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='LATEX_BATCHMODE' defval='0' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ If the \c LATEX_BATCHMODE tag is set to \c YES, doxygen will add the \c \\batchmode
+ command to the generated \f$\mbox{\LaTeX}\f$ files. This will
+ instruct \f$\mbox{\LaTeX}\f$ to keep running if errors occur, instead of
+ asking the user for help. This option is also used when generating formulas
+ in HTML.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='LATEX_HIDE_INDICES' defval='0' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ If the \c LATEX_HIDE_INDICES tag is set to \c YES then doxygen will not
+ include the index chapters (such as File Index, Compound Index, etc.)
+ in the output.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='LATEX_SOURCE_CODE' defval='0' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ If the \c LATEX_SOURCE_CODE tag is set to \c YES then doxygen will include
+ source code with syntax highlighting in the \f$\mbox{\LaTeX}\f$ output.
+ <br>Note that which sources are shown also depends on other settings
+ such as \ref cfg_source_browser "SOURCE_BROWSER".
+]]>
+ </docs>
+ </option>
+ <option type='string' id='LATEX_BIB_STYLE' format='string' defval='plain' depends='GENERATE_LATEX'>
+ <docs>
+<![CDATA[
+ The \c LATEX_BIB_STYLE tag can be used to specify the style to use for the
+ bibliography, e.g. \c plainnat, or \c ieeetr.
+ See http://en.wikipedia.org/wiki/BibTeX and \ref cmdcite "\\cite"
+ for more info.
+]]>
+ </docs>
+ </option>
</group>
- <group name='RTF' docs='configuration options related to the RTF output'>
- <option type='bool' id='GENERATE_RTF' docs='
-If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
-The RTF output is optimized for Word 97 and may not look very pretty with
-other RTF readers or editors.
-' defval='0'/>
- <option type='string' id='RTF_OUTPUT' format='dir' docs='
-The RTF_OUTPUT tag is used to specify where the RTF 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 `rtf&apos; will be used as the default path.
-' defval='rtf' depends='GENERATE_RTF'/>
- <option type='bool' id='COMPACT_RTF' docs='
-If the COMPACT_RTF tag is set to YES Doxygen generates more compact
-RTF documents. This may be useful for small projects and may help to
-save some trees in general.
-' defval='0' depends='GENERATE_RTF'/>
- <option type='bool' id='RTF_HYPERLINKS' docs='
-If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
-will contain hyperlink fields. The RTF file will
-contain links (just like the HTML output) instead of page references.
-This makes the output suitable for online browsing using WORD or other
-programs which support those fields.
-Note: wordpad (write) and others do not support links.
-' defval='0' depends='GENERATE_RTF'/>
- <option type='string' id='RTF_STYLESHEET_FILE' format='file' docs='
-Load style sheet definitions from file. Syntax is similar to doxygen&apos;s
-config file, i.e. a series of assignments. You only have to provide
-replacements, missing definitions are set to their default value.
-' defval='' depends='GENERATE_RTF'/>
- <option type='string' id='RTF_EXTENSIONS_FILE' format='file' docs='
-Set optional variables used in the generation of an rtf document.
-Syntax is similar to doxygen&apos;s config file.
-' defval='' depends='GENERATE_RTF'/>
+ <group name='RTF' docs='Configuration options related to the RTF output'>
+ <option type='bool' id='GENERATE_RTF' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_RTF tag is set to \c YES doxygen will generate RTF output.
+ The RTF output is optimized for Word 97 and may not look too pretty with
+ other RTF readers/editors.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='RTF_OUTPUT' format='dir' defval='rtf' depends='GENERATE_RTF'>
+ <docs>
+<![CDATA[
+ The \c RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+ If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
+ put in front of it.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='COMPACT_RTF' defval='0' depends='GENERATE_RTF'>
+ <docs>
+<![CDATA[
+ If the \c COMPACT_RTF tag is set to \c YES doxygen generates more compact
+ RTF documents. This may be useful for small projects and may help to
+ save some trees in general.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='RTF_HYPERLINKS' defval='0' depends='GENERATE_RTF'>
+ <docs>
+<![CDATA[
+ If the \c RTF_HYPERLINKS tag is set to \c YES, the RTF that is generated
+ will contain hyperlink fields. The RTF file will
+ contain links (just like the HTML output) instead of page references.
+ This makes the output suitable for online browsing using Word or some other
+ Word compatible readers that support those fields.
+
+ <br>Note: WordPad (write) and others do not support links.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='RTF_STYLESHEET_FILE' format='file' defval='' depends='GENERATE_RTF'>
+ <docs>
+<![CDATA[
+ Load stylesheet definitions from file. Syntax is similar to doxygen's
+ config file, i.e. a series of assignments. You only have to provide
+ replacements, missing definitions are set to their default value.
+<br>
+ See also section \ref doxygen_usage for information on how to generate
+ the default style sheet that doxygen normally uses.
+
+]]>
+ </docs>
+ </option>
+ <option type='string' id='RTF_EXTENSIONS_FILE' format='file' defval='' depends='GENERATE_RTF'>
+ <docs>
+<![CDATA[
+ Set optional variables used in the generation of an RTF document.
+ Syntax is similar to doxygen's config file.
+ A template extensions file can be generated using
+ <code>doxygen -e rtf extensionFile</code>.
+]]>
+ </docs>
+ </option>
</group>
- <group name='Man' docs='configuration options related to the man page output'>
- <option type='bool' id='GENERATE_MAN' docs='
-If the GENERATE_MAN tag is set to YES (the default) Doxygen will
-generate man pages
-' defval='0'/>
- <option type='string' id='MAN_OUTPUT' format='dir' docs='
-The MAN_OUTPUT tag is used to specify where the man pages will be put.
-If a relative path is entered the value of OUTPUT_DIRECTORY will be
-put in front of it. If left blank `man&apos; will be used as the default path.
-' defval='man' depends='GENERATE_MAN'/>
- <option type='string' id='MAN_EXTENSION' format='string' docs='
-The MAN_EXTENSION tag determines the extension that is added to
-the generated man pages (default is the subroutine&apos;s section .3)
-' defval='.3' depends='GENERATE_MAN'/>
- <option type='bool' id='MAN_LINKS' docs='
-If the MAN_LINKS tag is set to YES and Doxygen generates man output,
-then it will generate one additional man file for each entity
-documented in the real man page(s). These additional files
-only source the real man page, but without them the man command
-would be unable to find the correct page. The default is NO.
-' defval='0' depends='GENERATE_MAN'/>
+ <group name='Man' docs='Configuration options related to the man page output'>
+ <option type='bool' id='GENERATE_MAN' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_MAN tag is set to \c YES doxygen will
+ generate man pages for classes and files.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='MAN_OUTPUT' format='dir' defval='man' depends='GENERATE_MAN'>
+ <docs>
+<![CDATA[
+ The \c MAN_OUTPUT tag is used to specify where the man pages will be put.
+ If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
+ put in front of it.
+ A directory \c man3 will be created inside the directory specified by
+ \c MAN_OUTPUT.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='MAN_EXTENSION' format='string' defval='.3' depends='GENERATE_MAN'>
+ <docs>
+<![CDATA[
+ The \c MAN_EXTENSION tag determines the extension that is added to
+ the generated man pages. In case
+ the manual section does not start with a number, the number 3 is prepended.
+ The dot (.) at the beginning of the \c MAN_EXTENSION tag is optional.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='MAN_LINKS' defval='0' depends='GENERATE_MAN'>
+ <docs>
+<![CDATA[
+ If the \c MAN_LINKS tag is set to \c YES and doxygen generates man output,
+ then it will generate one additional man file for each entity documented in
+ the real man page(s). These additional files only source the real man page,
+ but without them the \c man command would be unable to find the correct page.
+]]>
+ </docs>
+ </option>
</group>
- <group name='XML' docs='configuration options related to the XML output'>
- <option type='bool' id='GENERATE_XML' docs='
-If the GENERATE_XML tag is set to YES Doxygen will
-generate an XML file that captures the structure of
-the code including all documentation.
-' defval='0'/>
- <option type='string' id='XML_OUTPUT' format='dir' docs='
-The XML_OUTPUT tag is used to specify where the XML pages will be put.
-If a relative path is entered the value of OUTPUT_DIRECTORY will be
-put in front of it. If left blank `xml&apos; will be used as the default path.
-' defval='xml' depends='GENERATE_XML'/>
- <option type='string' id='XML_SCHEMA' format='string' docs='
-The XML_SCHEMA tag can be used to specify an XML schema,
-which can be used by a validating XML parser to check the
-syntax of the XML files.
-' defval='' depends='GENERATE_XML'/>
- <option type='string' id='XML_DTD' format='string' docs='
-The XML_DTD tag can be used to specify an XML DTD,
-which can be used by a validating XML parser to check the
-syntax of the XML files.
-' defval='' depends='GENERATE_XML'/>
- <option type='bool' id='XML_PROGRAMLISTING' docs='
-If the XML_PROGRAMLISTING tag is set to YES Doxygen will
-dump the program listings (including syntax highlighting
-and cross-referencing information) to the XML output. Note that
-enabling this will significantly increase the size of the XML output.
-' defval='1' depends='GENERATE_XML'/>
+ <group name='XML' docs='Configuration options related to the XML output'>
+ <option type='bool' id='GENERATE_XML' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_XML tag is set to \c YES doxygen will
+ generate an XML file that captures the structure of
+ the code including all documentation.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='XML_OUTPUT' format='dir' defval='xml' depends='GENERATE_XML'>
+ <docs>
+<![CDATA[
+ The \c XML_OUTPUT tag is used to specify where the XML pages will be put.
+ If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
+ put in front of it.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='XML_SCHEMA' format='string' defval='' depends='GENERATE_XML'>
+ <docs>
+<![CDATA[
+ The \c XML_SCHEMA tag can be used to specify a XML schema,
+ which can be used by a validating XML parser to check the
+ syntax of the XML files.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='XML_DTD' format='string' defval='' depends='GENERATE_XML'>
+ <docs>
+<![CDATA[
+ The \c XML_DTD tag can be used to specify a XML DTD,
+ which can be used by a validating XML parser to check the
+ syntax of the XML files.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='XML_PROGRAMLISTING' defval='1' depends='GENERATE_XML'>
+ <docs>
+<![CDATA[
+ If the \c XML_PROGRAMLISTING tag is set to \c YES doxygen will
+ dump the program listings (including syntax highlighting
+ and cross-referencing information) to the XML output. Note that
+ enabling this will significantly increase the size of the XML output.
+]]>
+ </docs>
+ </option>
</group>
- <group name='Docbook' docs='configuration options related to the DOCBOOK output'>
- <option type='bool' id='GENERATE_DOCBOOK' docs='
-If the GENERATE_DOCBOOK tag is set to YES Doxygen will generate DOCBOOK files
+ <group name='Docbook' docs='Configuration options related to the DOCBOOK output'>
+ <option type='bool' id='GENERATE_DOCBOOK' defval='0'>
+ <docs>
+<![CDATA[
+If the \c GENERATE_DOCBOOK tag is set to \c YES doxygen will generate Docbook files
that can be used to generate PDF.
-' defval='0'/>
- <option type='string' id='DOCBOOK_OUTPUT' format='dir' docs='
-The DOCBOOK_OUTPUT tag is used to specify where the DOCBOOK pages will be put.
-If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
-front of it. If left blank docbook will be used as the default path.
-' defval='docbook' depends='GENERATE_DOCBOOK'/>
+]]>
+ </docs>
+ </option>
+ <option type='string' id='DOCBOOK_OUTPUT' format='dir' defval='docbook' depends='GENERATE_DOCBOOK'>
+ <docs>
+<![CDATA[
+The \c DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
+If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be put in
+front of it.
+]]>
+ </docs>
+ </option>
</group>
- <group name='DEF' docs='configuration options for the AutoGen Definitions output'>
- <option type='bool' id='GENERATE_AUTOGEN_DEF' docs='
-If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
-generate an AutoGen Definitions (see autogen.sf.net) file
-that captures the structure of the code including all
-documentation. Note that this feature is still experimental
-and incomplete at the moment.
-' defval='0'/>
+ <group name='DEF' docs='Configuration options for the AutoGen Definitions output'>
+ <option type='bool' id='GENERATE_AUTOGEN_DEF' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_AUTOGEN_DEF tag is set to \c YES doxygen will
+ generate an AutoGen Definitions (see http://autogen.sf.net) file
+ that captures the structure of the code including all
+ documentation. Note that this feature is still experimental
+ and incomplete at the moment.
+]]>
+ </docs>
+ </option>
</group>
<!--
- <group name='Sqlite3' docs='configuration options related to Sqlite3 output'>
- <option type='bool' id='GENERATE_SQLITE3' docs='
-If the GENERATE_SQLITE3 tag is set to YES doxygen will generate an
-sqlite database with symbols found by doxygen stored in tables.
-' defval='0'/>
- <option type='string' id='SQLITE3_OUTPUT' format='dir' docs='
-The SQLITE3_OUTPUT tag is used to specify where the Sqlite3 database will be put.
-If a relative path is entered the value of OUTPUT_DIRECTORY will be
-put in front of it. If left blank sqlite3 will be used as the default path.
-' defval='' depends='GENERATE_SQLITE3'/>
+ <group name='Sqlite3' docs='Configuration options related to Sqlite3 output'>
+ <option type='bool' id='GENERATE_SQLITE3' defval='0'>
+ <docs>
+<![CDATA[
+If the \c GENERATE_SQLITE3 tag is set to \c YES doxygen will generate a
+\c Sqlite3 database with symbols found by doxygen stored in tables.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='SQLITE3_OUTPUT' format='dir' defval='sqlite3' depends='GENERATE_SQLITE3'>
+ <docs>
+<![CDATA[
+The \c SQLITE3_OUTPUT tag is used to specify where the \c Sqlite3 database will be put.
+If a relative path is entered the value of \ref cfg_output_directory "OUTPUT_DIRECTORY" will be
+put in front of it.
+]]>
+ </docs>
+ </option>
+
</group>
-->
- <group name='PerlMod' docs='configuration options related to the Perl module output'>
- <option type='bool' id='GENERATE_PERLMOD' docs='
-If the GENERATE_PERLMOD tag is set to YES Doxygen will
-generate a Perl module file that captures the structure of
-the code including all documentation. Note that this
-feature is still experimental and incomplete at the
-moment.
-' defval='0'/>
- <option type='bool' id='PERLMOD_LATEX' docs='
-If the PERLMOD_LATEX tag is set to YES Doxygen will generate
-the necessary Makefile rules, Perl scripts and LaTeX code to be able
-to generate PDF and DVI output from the Perl module output.
-' defval='0' depends='GENERATE_PERLMOD'/>
- <option type='bool' id='PERLMOD_PRETTY' docs='
-If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
-nicely formatted so it can be parsed by a human reader. This is useful
-if you want to understand what is going on. On the other hand, if this
-tag is set to NO the size of the Perl module output will be much smaller
-and Perl will parse it just the same.
-' defval='1' depends='GENERATE_PERLMOD'/>
- <option type='string' id='PERLMOD_MAKEVAR_PREFIX' format='string' docs='
-The names of the make variables in the generated doxyrules.make file
-are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
-This is useful so different doxyrules.make files included by the same
-Makefile don&apos;t overwrite each other&apos;s variables.' defval='' depends='GENERATE_PERLMOD'/>
+ <group name='PerlMod' docs='Configuration options related to the Perl module output'>
+ <option type='bool' id='GENERATE_PERLMOD' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_PERLMOD tag is set to \c YES doxygen will
+ generate a Perl module file that captures the structure of
+ the code including all documentation.
+ <br>Note that this
+ feature is still experimental and incomplete at the
+ moment.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='PERLMOD_LATEX' defval='0' depends='GENERATE_PERLMOD'>
+ <docs>
+<![CDATA[
+ If the \c PERLMOD_LATEX tag is set to \c YES doxygen will generate
+ the necessary \c Makefile rules, \c Perl scripts and \f$\mbox{\LaTeX}\f$ code to be able
+ to generate PDF and DVI output from the Perl module output.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='PERLMOD_PRETTY' defval='1' depends='GENERATE_PERLMOD'>
+ <docs>
+<![CDATA[
+ If the \c PERLMOD_PRETTY tag is set to \c YES the Perl module output will be
+ nicely formatted so it can be parsed by a human reader. This is useful
+ if you want to understand what is going on. On the other hand, if this
+ tag is set to \c NO the size of the Perl module output will be much smaller
+ and Perl will parse it just the same.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='PERLMOD_MAKEVAR_PREFIX' format='string' defval='' depends='GENERATE_PERLMOD'>
+ <docs>
+<![CDATA[
+ The names of the make variables in the generated `doxyrules.make` file
+ are prefixed with the string contained in \c PERLMOD_MAKEVAR_PREFIX.
+ This is useful so different `doxyrules.make` files included by the same
+ `Makefile` don't overwrite each other's variables.
+]]>
+ </docs>
+ </option>
</group>
<group name='Preprocessor' docs='Configuration options related to the preprocessor'>
- <option type='bool' id='ENABLE_PREPROCESSING' docs='
-If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
-evaluate all C-preprocessor directives found in the sources and include
-files.
-' defval='1'/>
- <option type='bool' id='MACRO_EXPANSION' docs='
-If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
-names in the source code. If set to NO (the default) only conditional
-compilation will be performed. Macro expansion can be done in a controlled
-way by setting EXPAND_ONLY_PREDEF to YES.
-' defval='0' depends='ENABLE_PREPROCESSING'/>
- <option type='bool' id='EXPAND_ONLY_PREDEF' docs='
-If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
-then the macro expansion is limited to the macros specified with the
-PREDEFINED and EXPAND_AS_DEFINED tags.
-' defval='0' depends='ENABLE_PREPROCESSING'/>
- <option type='bool' id='SEARCH_INCLUDES' docs='
-If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
-pointed to by INCLUDE_PATH will be searched when a #include is found.
-' defval='1' depends='ENABLE_PREPROCESSING'/>
- <option type='list' id='INCLUDE_PATH' format='dir' docs='
-The INCLUDE_PATH tag can be used to specify one or more directories that
-contain include files that are not input files but should be processed by
-the preprocessor.
-' depends='SEARCH_INCLUDES'>
- </option>
- <option type='list' id='INCLUDE_FILE_PATTERNS' format='string' docs='
-You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
-patterns (like *.h and *.hpp) to filter out the header-files in the
-directories. If left blank, the patterns specified with FILE_PATTERNS will
-be used.
-' depends='ENABLE_PREPROCESSING'>
- </option>
- <option type='list' id='PREDEFINED' format='string' docs='
-The PREDEFINED tag can be used to specify one or more macro names that
-are defined before the preprocessor is started (similar to the -D option of
-gcc). The argument of the tag is a list of macros of the form: name
-or name=definition (no spaces). If the definition and the = are
-omitted =1 is assumed. To prevent a macro definition from being
-undefined via #undef or recursively expanded use the := operator
-instead of the = operator.
-' depends='ENABLE_PREPROCESSING'>
- </option>
- <option type='list' id='EXPAND_AS_DEFINED' format='string' docs='
-If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
-this tag can be used to specify a list of macro names that should be expanded.
-The macro definition that is found in the sources will be used.
-Use the PREDEFINED tag if you want to use a different macro definition that
-overrules the definition found in the source code.
-' depends='ENABLE_PREPROCESSING'>
- </option>
- <option type='bool' id='SKIP_FUNCTION_MACROS' docs='
-If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
-doxygen&apos;s preprocessor will remove all references to function-like macros
-that are alone on a line, have an all uppercase name, and do not end with a
-semicolon, because these will confuse the parser if not removed.
-' defval='1' depends='ENABLE_PREPROCESSING'/>
+ <option type='bool' id='ENABLE_PREPROCESSING' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c ENABLE_PREPROCESSING tag is set to \c YES doxygen will
+ evaluate all C-preprocessor directives found in the sources and include
+ files.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='MACRO_EXPANSION' defval='0' depends='ENABLE_PREPROCESSING'>
+ <docs>
+<![CDATA[
+ If the \c MACRO_EXPANSION tag is set to \c YES doxygen will expand all macro
+ names in the source code. If set to \c NO only conditional
+ compilation will be performed. Macro expansion can be done in a controlled
+ way by setting \ref cfg_expand_only_predef "EXPAND_ONLY_PREDEF" to \c YES.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXPAND_ONLY_PREDEF' defval='0' depends='ENABLE_PREPROCESSING'>
+ <docs>
+<![CDATA[
+ If the \c EXPAND_ONLY_PREDEF and \ref cfg_macro_expansion "MACRO_EXPANSION" tags are both set to \c YES
+ then the macro expansion is limited to the macros specified with the
+ \ref cfg_predefined "PREDEFINED" and \ref cfg_expand_as_defined "EXPAND_AS_DEFINED" tags.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SEARCH_INCLUDES' defval='1' depends='ENABLE_PREPROCESSING'>
+ <docs>
+<![CDATA[
+ If the \c SEARCH_INCLUDES tag is set to \c YES the includes files
+ in the \ref cfg_include_path "INCLUDE_PATH" will be searched if a \c \#include is found.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='INCLUDE_PATH' format='dir' depends='SEARCH_INCLUDES'>
+ <docs>
+<![CDATA[
+ The \c INCLUDE_PATH tag can be used to specify one or more directories that
+ contain include files that are not input files but should be processed by
+ the preprocessor.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='INCLUDE_FILE_PATTERNS' format='string' depends='ENABLE_PREPROCESSING'>
+ <docs>
+<![CDATA[
+ You can use the \c INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+ patterns (like `*.h` and `*.hpp`) to filter out the header-files in the
+ directories. If left blank, the patterns specified with \ref cfg_file_patterns "FILE_PATTERNS" will
+ be used.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='PREDEFINED' format='string' depends='ENABLE_PREPROCESSING'>
+ <docs>
+<![CDATA[
+ The \c PREDEFINED tag can be used to specify one or more macro names that
+ are defined before the preprocessor is started (similar to the `-D` option of
+ e.g. \c gcc). The argument of the tag is a list of macros of the form:
+ <code>name</code> or <code>name=definition</code> (no spaces).
+ If the definition and the \c "=" are omitted, \c "=1" is assumed. To prevent
+ a macro definition from being undefined via \c \#undef or recursively expanded
+ use the <code>:=</code> operator instead of the \c = operator.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='EXPAND_AS_DEFINED' format='string' depends='ENABLE_PREPROCESSING'>
+ <docs>
+<![CDATA[
+ If the \ref cfg_macro_expansion "MACRO_EXPANSION" and
+ \ref cfg_expand_only_predef "EXPAND_ONLY_PREDEF" tags are set to \c YES then
+ this tag can be used to specify a list of macro names that should be expanded.
+ The macro definition that is found in the sources will be used.
+ Use the \ref cfg_predefined "PREDEFINED" tag if you want to use a different macro definition that
+ overrules the definition found in the source code.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='SKIP_FUNCTION_MACROS' defval='1' depends='ENABLE_PREPROCESSING'>
+ <docs>
+<![CDATA[
+ If the \c SKIP_FUNCTION_MACROS tag is set to \c YES then
+ doxygen's preprocessor will remove all refrences to function-like macros that are alone
+ on a line, have an all uppercase name, and do not end with a semicolon.
+ Such function macros are typically
+ used for boiler-plate code, and will confuse the parser if not removed.
+]]>
+ </docs>
+ </option>
</group>
- <group name='External' docs='Configuration::additions related to external references'>
- <option type='list' id='TAGFILES' format='file' docs='
-The TAGFILES option can be used to specify one or more tagfiles. For each
+ <group name='External' docs='Configuration options related to external references'>
+ <option type='list' id='TAGFILES' format='file'>
+ <docs>
+<![CDATA[
+ The \c TAGFILES tag can be used to specify one or more tag files.
+
+For each
tag file the location of the external documentation should be added. The
format of a tag file without this location is as follows:
+\verbatim
TAGFILES = file1 file2 ...
+\endverbatim
Adding location for the tag files is done as follows:
- TAGFILES = file1=loc1 &quot;file2 = loc2&quot; ...
-where &quot;loc1&quot; and &quot;loc2&quot; can be relative or absolute paths
-or URLs. Note that each tag file must have a unique name (where the name does
-NOT include the path). If a tag file is not located in the directory in which
-doxygen is run, you must also specify the path to the tagfile here.
-'>
- </option>
- <option type='string' id='GENERATE_TAGFILE' format='file' docs='
-When a file name is specified after GENERATE_TAGFILE, doxygen will create
-a tag file that is based on the input files it reads.
-' defval=''/>
- <option type='bool' id='ALLEXTERNALS' docs='
-If the ALLEXTERNALS tag is set to YES all external classes will be listed
-in the class index. If set to NO only the inherited external classes
-will be listed.
-' defval='0'/>
- <option type='bool' id='EXTERNAL_GROUPS' docs='
-If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
-in the modules index. If set to NO, only the current project&apos;s groups will
-be listed.
-' defval='1'/>
- <option type='bool' id='EXTERNAL_PAGES' docs='
-If the EXTERNAL_PAGES tag is set to YES all external pages will be listed
-in the related pages index. If set to NO, only the current project&apos;s
-pages will be listed.
-' defval='1'/>
- <option type='string' id='PERL_PATH' format='dir' docs='
-The PERL_PATH should be the absolute path and name of the perl script
-interpreter (i.e. the result of `which perl&apos;).
-' defval='/usr/bin/perl'/>
+\verbatim
+ TAGFILES = file1=loc1 "file2 = loc2" ...
+\endverbatim
+where `loc1` and `loc2` can be relative or absolute paths or URLs.
+ See the section \ref external for more information about the use of tag files.
+
+ \note
+ Each tag file must have an unique name
+ (where the name does \e NOT include the path).
+ If a tag file is not located in the directory in which doxygen
+ is run, you must also specify the path to the tagfile here.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='GENERATE_TAGFILE' format='file' defval=''>
+ <docs>
+<![CDATA[
+ When a file name is specified after \c GENERATE_TAGFILE, doxygen will create
+ a tag file that is based on the input files it reads.
+ See section \ref external for more information about the usage of
+ tag files.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='ALLEXTERNALS' defval='0'>
+ <docs>
+<![CDATA[
+ If the \c ALLEXTERNALS tag is set to \c YES all external class will be listed
+ in the class index. If set to \c NO only the inherited external classes
+ will be listed.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXTERNAL_GROUPS' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c EXTERNAL_GROUPS tag is set to \c YES all external groups will be listed
+ in the modules index. If set to \c NO, only the current project's groups will
+ be listed.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='EXTERNAL_PAGES' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c EXTERNAL_PAGES tag is set to \c YES all external pages will be listed
+ in the related pages index. If set to \c NO, only the current project's
+ pages will be listed.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='PERL_PATH' format='file' defval='/usr/bin/perl' abspath='1'>
+ <docs>
+<![CDATA[
+ The \c PERL_PATH should be the absolute path and name of the perl script
+ interpreter (i.e. the result of `'which perl'`).
+]]>
+ </docs>
+ </option>
</group>
<group name='Dot' docs='Configuration options related to the dot tool'>
- <option type='bool' id='CLASS_DIAGRAMS' docs='
-If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
-generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
-or super classes. Setting the tag to NO turns the diagrams off. Note that
-this option also works with HAVE_DOT disabled, but it is recommended to
-install and use dot, since it yields more powerful graphs.
-' defval='1'/>
- <option type='string' id='MSCGEN_PATH' format='string' docs='
-You can define message sequence charts within doxygen comments using the \msc
-command. Doxygen will then run the mscgen tool (see
-http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
-documentation. The MSCGEN_PATH tag allows you to specify the directory where
-the mscgen tool resides. If left empty the tool is assumed to be found in the
-default search path.
-' defval=''/>
- <option type='bool' id='HIDE_UNDOC_RELATIONS' docs='
-If set to YES, the inheritance and collaboration graphs will hide
-inheritance and usage relations if the target is undocumented
-or is not a class.
-' defval='1'/>
- <option type='bool' id='HAVE_DOT' docs='
-If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
-available from the path. This tool is part of Graphviz, a graph visualization
-toolkit from AT&amp;T and Lucent Bell Labs. The other options in this section
-have no effect if this option is set to NO (the default)
-' defval='0'/>
- <option type='int' id='DOT_NUM_THREADS' docs='
-The DOT_NUM_THREADS specifies the number of dot invocations doxygen is
-allowed to run in parallel. When set to 0 (the default) doxygen will
-base this on the number of processors available in the system. You can set it
-explicitly to a value larger than 0 to get control over the balance
-between CPU load and processing speed.
-' defval='0' minval='0' maxval='32' depends='HAVE_DOT'/>
- <option type='string' id='DOT_FONTNAME' format='string' docs='
-By default doxygen will use the Helvetica font for all dot files that
-doxygen generates. When you want a differently looking font you can specify
-the font name using DOT_FONTNAME. You need to make sure dot is able to find
-the font, which can be done by putting it in a standard location or by setting
-the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the
-directory containing the font.
-' defval='Helvetica' depends='HAVE_DOT'/>
- <option type='int' id='DOT_FONTSIZE' docs='
-The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
-The default size is 10pt.
-' minval='4' maxval='24' defval='10' depends='HAVE_DOT'/>
- <option type='string' id='DOT_FONTPATH' format='string' docs='
-By default doxygen will tell dot to use the Helvetica font.
-If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to
-set the path where dot can find it.
-' defval='' depends='HAVE_DOT'/>
- <option type='bool' id='CLASS_GRAPH' docs='
-If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
-will generate a graph for each documented class showing the direct and
-indirect inheritance relations. Setting this tag to YES will force the
-CLASS_DIAGRAMS tag to NO.
-' defval='1' depends='HAVE_DOT'/>
- <option type='bool' id='COLLABORATION_GRAPH' docs='
-If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
-will generate a graph for each documented class showing the direct and
-indirect implementation dependencies (inheritance, containment, and
-class references variables) of the class with other documented classes.
-' defval='1' depends='HAVE_DOT'/>
- <option type='bool' id='GROUP_GRAPHS' docs='
-If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
-will generate a graph for groups, showing the direct groups dependencies
-' defval='1' depends='HAVE_DOT'/>
- <option type='bool' id='UML_LOOK' docs='
-If the UML_LOOK tag is set to YES doxygen will generate inheritance and
-collaboration diagrams in a style similar to the OMG&apos;s Unified Modeling
-Language.
-' defval='0' depends='HAVE_DOT'/>
- <option type='int' id='UML_LIMIT_NUM_FIELDS' docs='
-If the UML_LOOK tag is enabled, the fields and methods are shown inside
-the class node. If there are many fields or methods and many nodes the
-graph may become too big to be useful. The UML_LIMIT_NUM_FIELDS
-threshold limits the number of items for each type to make the size more
-manageable. Set this to 0 for no limit. Note that the threshold may be
-exceeded by 50% before the limit is enforced.
-' defval='10' minval='0' maxval='100' depends='HAVE_DOT'/>
- <option type='bool' id='TEMPLATE_RELATIONS' docs='
-If set to YES, the inheritance and collaboration graphs will show the
-relations between templates and their instances.
-' defval='0' depends='HAVE_DOT'/>
- <option type='bool' id='INCLUDE_GRAPH' docs='
-If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
-tags are set to YES then doxygen will generate a graph for each documented
-file showing the direct and indirect include dependencies of the file with
-other documented files.
-' defval='1' depends='HAVE_DOT'/>
- <option type='bool' id='INCLUDED_BY_GRAPH' docs='
-If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
-HAVE_DOT tags are set to YES then doxygen will generate a graph for each
-documented header file showing the documented files that directly or
-indirectly include this file.
-' defval='1' depends='HAVE_DOT'/>
- <option type='bool' id='CALL_GRAPH' docs='
-If the CALL_GRAPH and HAVE_DOT options are set to YES then
-doxygen will generate a call dependency graph for every global function
-or class method. Note that enabling this option will significantly increase
-the time of a run. So in most cases it will be better to enable call graphs
-for selected functions only using the \callgraph command.
-' defval='0' depends='HAVE_DOT'/>
- <option type='bool' id='CALLER_GRAPH' docs='
-If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
-doxygen will generate a caller dependency graph for every global function
-or class method. Note that enabling this option will significantly increase
-the time of a run. So in most cases it will be better to enable caller
-graphs for selected functions only using the \callergraph command.
-' defval='0' depends='HAVE_DOT'/>
- <option type='bool' id='GRAPHICAL_HIERARCHY' docs='
-If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
-will generate a graphical hierarchy of all classes instead of a textual one.
-' defval='1' depends='HAVE_DOT'/>
- <option type='bool' id='DIRECTORY_GRAPH' docs='
-If the DIRECTORY_GRAPH and HAVE_DOT tags are set to YES
-then doxygen will show the dependencies a directory has on other directories
-in a graphical way. The dependency relations are determined by the #include
-relations between the files in the directories.
-' defval='1' depends='HAVE_DOT'/>
- <option type='enum' id='DOT_IMAGE_FORMAT' defval='png' docs='
-The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
-generated by dot. Possible values are svg, png, jpg, or gif.
-If left blank png will be used. If you choose svg you need to set
-HTML_FILE_EXTENSION to xhtml in order to make the SVG files
-visible in IE 9+ (other browsers do not have this requirement).
-' depends='HAVE_DOT'>
+ <option type='bool' id='CLASS_DIAGRAMS' defval='1'>
+ <docs>
+<![CDATA[
+ If the \c CLASS_DIAGRAMS tag is set to \c YES doxygen will
+ generate a class diagram (in HTML and \f$\mbox{\LaTeX}\f$) for classes with base or
+ super classes. Setting the tag to \c NO turns the diagrams off. Note that
+ this option also works with \ref cfg_have_dot "HAVE_DOT" disabled, but it is recommended to
+ install and use \c dot, since it yields more powerful graphs.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='MSCGEN_PATH' format='dir' defval=''>
+ <docs>
+<![CDATA[
+ You can define message sequence charts within doxygen comments using the \ref cmdmsc "\\msc"
+ command. Doxygen will then run the <a href="http://www.mcternan.me.uk/mscgen/">mscgen tool</a>) to
+ produce the chart and insert it in the documentation. The <code>MSCGEN_PATH</code> tag allows you to
+ specify the directory where the \c mscgen tool resides. If left empty the tool is assumed to
+ be found in the default search path.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='HIDE_UNDOC_RELATIONS' defval='1'>
+ <docs>
+<![CDATA[
+ If set to \c YES, the inheritance and collaboration graphs will hide
+ inheritance and usage relations if the target is undocumented
+ or is not a class.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='HAVE_DOT' defval='0'>
+ <docs>
+<![CDATA[
+ If you set the \c HAVE_DOT tag to \c YES then doxygen will assume the \c dot tool is
+ available from the \c path. This tool is part of
+ <a href="http://www.graphviz.org/">Graphviz</a>, a graph
+ visualization toolkit from AT\&T and Lucent Bell Labs. The other options in
+ this section have no effect if this option is set to \c NO
+]]>
+ </docs>
+ </option>
+ <option type='int' id='DOT_NUM_THREADS' defval='0' minval='0' maxval='32' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ The \c DOT_NUM_THREADS specifies the number of \c dot invocations doxygen is
+ allowed to run in parallel. When set to \c 0 doxygen will
+ base this on the number of processors available in the system. You can set it
+ explicitly to a value larger than 0 to get control over the balance
+ between CPU load and processing speed.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='DOT_FONTNAME' format='string' defval='Helvetica' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ When you want a differently looking font n the dot files that doxygen generates
+ you can specify the font name
+ using \c DOT_FONTNAME. You need to make sure dot is able to find the font,
+ which can be done by putting it in a standard location or by setting the
+ \c DOTFONTPATH environment variable or by setting \ref cfg_dot_fontpath "DOT_FONTPATH" to the
+ directory containing the font.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='DOT_FONTSIZE' minval='4' maxval='24' defval='10' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ The \c DOT_FONTSIZE tag can be used to set the size (in points) of the font of dot graphs.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='DOT_FONTPATH' format='dir' defval='' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ By default doxygen will tell \c dot to use the default font as specified with \ref cfg_dot_fontname "DOT_FONTNAME".
+ If you specify a
+ different font using \ref cfg_dot_fontname "DOT_FONTNAME" you can set the path where \c dot
+ can find it using this tag.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='CLASS_GRAPH' defval='1' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c CLASS_GRAPH tag is set to \c YES then doxygen
+ will generate a graph for each documented class showing the direct and
+ indirect inheritance relations. Setting this tag to \c YES will force
+ the \ref cfg_class_diagrams "CLASS_DIAGRAMS" tag to \c NO.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='COLLABORATION_GRAPH' defval='1' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c COLLABORATION_GRAPH tag is set to \c YES then doxygen
+ will generate a graph for each documented class showing the direct and
+ indirect implementation dependencies (inheritance, containment, and
+ class references variables) of the class with other documented classes.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GROUP_GRAPHS' defval='1' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c GROUP_GRAPHS tag is set to \c YES then doxygen
+ will generate a graph for groups, showing the direct groups dependencies.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='UML_LOOK' defval='0' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c UML_LOOK tag is set to \c YES doxygen will generate inheritance and
+ collaboration diagrams in a style similar to the OMG's Unified Modeling
+ Language.
+]]>
+ </docs>
+ </option>
+ <option type='int' id='UML_LIMIT_NUM_FIELDS' defval='10' minval='0' maxval='100' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \ref cfg_uml_look "UML_LOOK" tag is enabled, the fields and methods are shown inside
+ the class node. If there are many fields or methods and many nodes the
+ graph may become too big to be useful. The \c UML_LIMIT_NUM_FIELDS
+ threshold limits the number of items for each type to make the size more
+ manageable. Set this to 0 for no limit. Note that the threshold may be
+ exceeded by 50% before the limit is enforced. So when you set the threshold
+ to 10, up to 15 fields may appear, but if the number exceeds 15, the
+ total amount of fields shown is limited to 10.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='TEMPLATE_RELATIONS' defval='0' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c TEMPLATE_RELATIONS tag is set to \c YES then
+ the inheritance and collaboration graphs will show the relations between templates and their instances.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='INCLUDE_GRAPH' defval='1' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c INCLUDE_GRAPH, \ref cfg_enable_preprocessing "ENABLE_PREPROCESSING" and
+ \ref cfg_search_includes "SEARCH_INCLUDES"
+ tags are set to \c YES then doxygen will generate a graph for each documented file
+ showing the direct and indirect include dependencies of the file with other
+ documented files.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='INCLUDED_BY_GRAPH' defval='1' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c INCLUDED_BY_GRAPH, \ref cfg_enable_preprocessing "ENABLE_PREPROCESSING" and
+ \ref cfg_search_includes "SEARCH_INCLUDES"
+ tags are set to \c YES then doxygen will generate a graph for each documented file
+ showing the direct and indirect include dependencies of the file with other
+ documented files.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='CALL_GRAPH' defval='0' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c CALL_GRAPH tag is set to \c YES then doxygen will
+ generate a call dependency graph for every global function or class method.
+ <br>Note that enabling this option will significantly increase the time of a run.
+ So in most cases it will be better to enable call graphs for selected
+ functions only using the \ref cmdcallgraph "\\callgraph" command.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='CALLER_GRAPH' defval='0' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c CALLER_GRAPH tag is set to \c YES then doxygen will
+ generate a caller dependency graph for every global function or class method.
+ <br>Note that enabling this option will significantly increase the time of a run.
+ So in most cases it will be better to enable caller graphs for selected
+ functions only using the \ref cmdcallergraph "\\callergraph" command.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GRAPHICAL_HIERARCHY' defval='1' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c GRAPHICAL_HIERARCHY tag is set to \c YES then
+ doxygen will graphical hierarchy of all classes instead of a textual one.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='DIRECTORY_GRAPH' defval='1' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c DIRECTORY_GRAPH tag is set
+ to \c YES then doxygen will show the dependencies a directory has on other directories
+ in a graphical way. The dependency relations are determined by the \c \#include
+ relations between the files in the directories.
+]]>
+ </docs>
+ </option>
+ <option type='enum' id='DOT_IMAGE_FORMAT' defval='png' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ The \c DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+ generated by \c dot.
+ \note If you choose \c svg you need to set
+ \ref cfg_html_file_extension "HTML_FILE_EXTENSION" to \c xhtml in order to make the SVG files
+ visible in IE 9+ (other browsers do not have this requirement).
+]]>
+ </docs>
<value name='png'/>
<value name='jpg'/>
<value name='gif'/>
<value name='svg'/>
</option>
- <option type='bool' id='INTERACTIVE_SVG' docs='
-If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
-enable generation of interactive SVG images that allow zooming and panning.
-Note that this requires a modern browser other than Internet Explorer.
-Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you
-need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files
-visible. Older versions of IE do not have SVG support.
-' defval='0' depends='HAVE_DOT'/>
- <option type='string' id='DOT_PATH' format='dir' docs='
-The tag DOT_PATH can be used to specify the path where the dot tool can be
-found. If left blank, it is assumed the dot tool can be found in the path.
-' defval='' depends='HAVE_DOT'/>
- <option type='list' id='DOTFILE_DIRS' format='dir' docs='
-The DOTFILE_DIRS tag can be used to specify one or more directories that
-contain dot files that are included in the documentation (see the
-\dotfile command).
-' depends='HAVE_DOT'>
- </option>
- <option type='list' id='MSCFILE_DIRS' format='dir' docs='
-The MSCFILE_DIRS tag can be used to specify one or more directories that
-contain msc files that are included in the documentation (see the
-\mscfile command).
-' >
- </option>
- <option type='int' id='DOT_GRAPH_MAX_NODES' docs='
-The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
-nodes that will be shown in the graph. If the number of nodes in a graph
-becomes larger than this value, doxygen will truncate the graph, which is
-visualized by representing a node as a red box. Note that doxygen if the
-number of direct children of the root node in a graph is already larger than
-DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
-that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
-' minval='0' maxval='10000' defval='50' depends='HAVE_DOT'/>
- <option type='int' id='MAX_DOT_GRAPH_DEPTH' docs='
-The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
-graphs generated by dot. A depth value of 3 means that only nodes reachable
-from the root by following a path via at most 3 edges will be shown. Nodes
-that lay further from the root node will be omitted. Note that setting this
-option to 1 or 2 may greatly reduce the computation time needed for large
-code bases. Also note that the size of a graph can be further restricted by
-DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
-' minval='0' maxval='1000' defval='0' depends='HAVE_DOT'/>
- <option type='bool' id='DOT_TRANSPARENT' docs='
-Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
-background. This is disabled by default, because dot on Windows does not
-seem to support this out of the box. Warning: Depending on the platform used,
-enabling this option may lead to badly anti-aliased labels on the edges of
-a graph (i.e. they become hard to read).
-' defval='0' depends='HAVE_DOT'/>
- <option type='bool' id='DOT_MULTI_TARGETS' docs='
-Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
-files in one run (i.e. multiple -o and -T options on the command line). This
-makes dot run faster, but since only newer versions of dot (&gt;1.8.10)
-support this, this feature is disabled by default.
-' defval='0' depends='HAVE_DOT'/>
- <option type='bool' id='GENERATE_LEGEND' docs='
-If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
-generate a legend page explaining the meaning of the various boxes and
-arrows in the dot generated graphs.
-' defval='1' depends='HAVE_DOT'/>
- <option type='bool' id='DOT_CLEANUP' docs='
-If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
-remove the intermediate dot files that are used to generate
-the various graphs.
-' defval='1' depends='HAVE_DOT'/>
+ <option type='bool' id='INTERACTIVE_SVG' defval='0' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If \ref cfg_dot_image_format "DOT_IMAGE_FORMAT" is set to \c svg, then this option can be set to \c YES to
+ enable generation of interactive SVG images that allow zooming and panning.
+ <br>Note that this requires a modern browser other than Internet Explorer.
+ Tested and working are Firefox, Chrome, Safari, and Opera.
+ \note For IE 9+ you need to set \ref cfg_html_file_extension "HTML_FILE_EXTENSION" to \c xhtml in order
+ to make the SVG files visible. Older versions of IE do not have SVG support.
+]]>
+ </docs>
+ </option>
+ <option type='string' id='DOT_PATH' format='dir' defval='' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ The \c DOT_PATH tag can be used to specify the path where the \c dot tool can be found.
+ If left blank, it is assumed the \c dot tool can be found in the \c path.
+]]>
+ </docs>
+ </option>
+ <option type='list' id='DOTFILE_DIRS' format='dir' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ The \c DOTFILE_DIRS tag can be used to specify one or more directories that
+ contain dot files that are included in the documentation (see the
+ \ref cmddotfile "\\dotfile" command).
+]]>
+ </docs>
+ </option>
+ <option type='list' id='MSCFILE_DIRS' format='dir'>
+ <docs>
+<![CDATA[
+ The \c MSCFILE_DIRS tag can be used to specify one or more directories that
+ contain msc files that are included in the documentation (see the
+ \ref cmdmscfile "\\mscfile" command).
+]]>
+ </docs>
+ </option>
+ <option type='int' id='DOT_GRAPH_MAX_NODES' minval='0' maxval='10000' defval='50' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ The \c DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
+ nodes that will be shown in the graph. If the number of nodes in a graph
+ becomes larger than this value, doxygen will truncate the graph, which is
+ visualized by representing a node as a red box. Note that doxygen if the number
+ of direct children of the root node in a graph is already larger than
+ \c DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
+ that the size of a graph can be further restricted by \ref cfg_max_dot_graph_depth "MAX_DOT_GRAPH_DEPTH".
+]]>
+ </docs>
+ </option>
+ <option type='int' id='MAX_DOT_GRAPH_DEPTH' minval='0' maxval='1000' defval='0' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ The \c MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+ graphs generated by \c dot. A depth value of 3 means that only nodes reachable
+ from the root by following a path via at most 3 edges will be shown. Nodes
+ that lay further from the root node will be omitted. Note that setting this
+ option to 1 or 2 may greatly reduce the computation time needed for large
+ code bases. Also note that the size of a graph can be further restricted by
+ \ref cfg_dot_graph_max_nodes "DOT_GRAPH_MAX_NODES". Using a depth of 0 means no depth restriction.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='DOT_TRANSPARENT' defval='0' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ Set the \c DOT_TRANSPARENT tag to \c YES to generate images with a transparent
+ background. This is disabled by default, because dot on Windows does not
+ seem to support this out of the box.
+ <br>
+ Warning: Depending on the platform used,
+ enabling this option may lead to badly anti-aliased labels on the edges of
+ a graph (i.e. they become hard to read).
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='DOT_MULTI_TARGETS' defval='0' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ Set the \c DOT_MULTI_TARGETS tag to \c YES allow dot to generate multiple output
+ files in one run (i.e. multiple -o and -T options on the command line). This
+ makes \c dot run faster, but since only newer versions of \c dot (>1.8.10)
+ support this, this feature is disabled by default.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='GENERATE_LEGEND' defval='1' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+ If the \c GENERATE_LEGEND tag is set to \c YES doxygen will
+ generate a legend page explaining the meaning of the various boxes and
+ arrows in the dot generated graphs.
+]]>
+ </docs>
+ </option>
+ <option type='bool' id='DOT_CLEANUP' defval='1' depends='HAVE_DOT'>
+ <docs>
+<![CDATA[
+If the \c DOT_CLEANUP tag is set to \c YES doxygen will
+remove the intermediate dot files that are used to generate the various graphs.
+]]>
+ </docs>
+ </option>
+
<option type='obsolete' id='USE_WINDOWS_ENCODING'/>
<option type='obsolete' id='DETAILS_AT_TOP'/>
<option type='obsolete' id='QTHELP_FILE'/>
diff --git a/src/configgen.py b/src/configgen.py
index b05f743..fdbdaa7 100755
--- a/src/configgen.py
+++ b/src/configgen.py
@@ -1,10 +1,11 @@
-# python script to generate configoptions.cpp from config.xml
+#!/usr/bin/python
+# python script to generate configoptions.cpp and config.doc from config.xml
#
# Copyright (C) 1997-2013 by Dimitri van Heesch.
#
# Permission to use, copy, modify, and distribute this software and its
-# documentation under the terms of the GNU General Public License is hereby
-# granted. No representations are made about the suitability of this software
+# documentation under the terms of the GNU General Public License is hereby
+# granted. No representations are made about the suitability of this software
# for any purpose. It is provided "as is" without express or implied warranty.
# See the GNU General Public License for more details.
#
@@ -13,136 +14,594 @@
#
import xml.dom.minidom
import sys
+import re
+import textwrap
from xml.dom import minidom, Node
-def addValues(var,node):
+
+def transformDocs(doc):
+ # join lines, unless it is an empty line
+ # remove doxygen layout constructs
+ doc = doc.strip()
+ doc = doc.replace("\n", " ")
+ doc = doc.replace("\r", " ")
+ doc = doc.replace("\t", " ")
+ doc = doc.replace("\\&", "&")
+ doc = doc.replace("\\c ", " ")
+ doc = doc.replace("\\b ", " ")
+ doc = doc.replace("\\e ", " ")
+ doc = doc.replace("\\$", "$")
+ doc = doc.replace("\\#include ", "#include ")
+ doc = doc.replace("\\#undef ", "#undef ")
+ doc = doc.replace("-# ", "\n - ")
+ doc = doc.replace(" - ", "\n - ")
+ doc = doc.replace("\\sa", "\nSee also: ")
+ doc = doc.replace("\\par", "\n")
+ doc = doc.replace("@note", "\nNote:")
+ doc = doc.replace("\\note", "\nNote:")
+ doc = doc.replace("\\verbatim", "\n")
+ doc = doc.replace("\\endverbatim", "\n")
+ doc = doc.replace("<code>", "")
+ doc = doc.replace("</code>", "")
+ doc = doc.replace("`", "")
+ doc = doc.replace("\\<", "<")
+ doc = doc.replace("\\>", ">")
+ doc = doc.replace("\\@", "@")
+ doc = doc.replace("\\\\", "\\")
+ # \ref name "description" -> description
+ doc = re.sub('\\\\ref +[^ ]* +"([^"]*)"', '\\1', doc)
+ # \ref specials
+ # \ref <key> -> description
+ doc = re.sub('\\\\ref +doxygen_usage', '"Doxygen usage"', doc)
+ doc = re.sub('\\\\ref +extsearch', '"External Indexing and Searching"',
+ doc)
+ doc = re.sub('\\\\ref +external', '"Linking to external documentation"',
+ doc)
+ # fallback for not handled
+ doc = re.sub('\\\\ref', '', doc)
+ #<a href="address">description</a> -> description (see: address)
+ doc = re.sub('<a +href="([^"]*)" *>([^<]*)</a>', '\\2 (see: \\1)', doc)
+ # LaTeX name as formula -> LaTeX
+ doc = doc.replace("\\f$\\mbox{\\LaTeX}\\f$", "LaTeX")
+ # Other forula's (now just 2) so explicitely mentioned.
+ doc = doc.replace("\\f$2^{(16+\\mbox{LOOKUP\\_CACHE\\_SIZE})}\\f$",
+ "2^(16+LOOKUP_CACHE_SIZE)")
+ doc = doc.replace("\\f$2^{16} = 65536\\f$", "2^16=65536")
+ # remove consecutive spaces
+ doc = re.sub(" +", " ", doc)
+ # a dirty trick to get an extra empty line in Doxyfile documentation.
+ # <br> will be removed later on again, we need it here otherwise splitlines
+ # will filter the extra line.
+ doc = doc.replace("<br>", "\n<br>\n")
+ #
+ doc = doc.splitlines()
+ split_doc = []
+ for line in doc:
+ split_doc += textwrap.wrap(line, 78)
+ # replace \ by \\, replace " by \", and ' ' by a newline with end string
+ # and start string at next line
+ docC = []
+ for line in split_doc:
+ docC.append(line.strip().replace('\\', '\\\\').
+ replace('"', '\\"').replace("<br>", ""))
+ return docC
+
+
+def collectValues(node):
+ values = []
+ for n in node.childNodes:
+ if (n.nodeName == "value"):
+ if n.nodeType == Node.ELEMENT_NODE:
+ if n.getAttribute('name') != "":
+ name = "<code>" + n.getAttribute('name') + "</code>"
+ desc = n.getAttribute('desc')
+ if (desc != ""):
+ name += " " + desc
+ values.append(name)
+ return values
+
+
+def addValues(var, node):
+ for n in node.childNodes:
+ if (n.nodeName == "value"):
+ if n.nodeType == Node.ELEMENT_NODE:
+ name = n.getAttribute('name')
+ print " %s->addValue(\"%s\");" % (var, name)
+
+
+def parseHeader(node,objName):
+ doc = ""
for n in node.childNodes:
if n.nodeType == Node.ELEMENT_NODE:
- name = n.getAttribute('name');
- print " %s->addValue(\"%s\");" % (var,name)
-
+ if (n.nodeName == "docs"):
+ if (n.getAttribute('doxyfile') != "0"):
+ doc += parseDocs(n)
+ docC = transformDocs(doc)
+ print " %s->setHeader(" % (objName)
+ rng = len(docC)
+ for i in range(rng):
+ line = docC[i]
+ if i != rng - 1: # since we go from 0 to rng-1
+ print " \"%s\\n\"" % (line)
+ else:
+ print " \"%s\"" % (line)
+ print " );"
+
+
+def prepCDocs(node):
+ type = node.getAttribute('type')
+ format = node.getAttribute('format')
+ defval = node.getAttribute('defval')
+ adefval = node.getAttribute('altdefval')
+ doc = "";
+ if (type != 'obsolete'):
+ for n in node.childNodes:
+ if (n.nodeName == "docs"):
+ if (n.getAttribute('doxyfile') != "0"):
+ if n.nodeType == Node.ELEMENT_NODE:
+ doc += parseDocs(n)
+ if (type == 'enum'):
+ values = collectValues(node)
+ doc += "Possible values are: "
+ rng = len(values)
+ for i in range(rng):
+ val = values[i]
+ if i == rng - 2:
+ doc += "%s and " % (val)
+ elif i == rng - 1:
+ doc += "%s." % (val)
+ else:
+ doc += "%s, " % (val)
+ if (defval != ""):
+ doc += "<br>"
+ doc += "The default value is: <code>%s</code>." % (defval)
+ elif (type == 'int'):
+ minval = node.getAttribute('minval')
+ maxval = node.getAttribute('maxval')
+ doc += "%s: %s, %s: %s, %s: %s." % (" Minimum value", minval,
+ "maximum value", maxval,
+ "default value", defval)
+ elif (type == 'bool'):
+ if (node.hasAttribute('altdefval')):
+ doc += "%s: %s." % ("Default value", "system dependent")
+ else:
+ doc += "%s: %s." % ("Default value", "YES" if (defval == "1") else "NO")
+ elif (type == 'list'):
+ if format == 'string':
+ values = collectValues(node)
+ rng = len(values)
+ for i in range(rng):
+ val = values[i]
+ if i == rng - 2:
+ doc += "%s and " % (val)
+ elif i == rng - 1:
+ doc += "%s." % (val)
+ else:
+ doc += "%s, " % (val)
+ elif (type == 'string'):
+ if format == 'dir':
+ if defval != '':
+ doc += "The default directory is: <code>%s</code>." % (
+ defval)
+ elif format == 'file':
+ abspath = node.getAttribute('abspath')
+ if defval != '':
+ if abspath != '1':
+ doc += "The default file is: <code>%s</code>." % (
+ defval)
+ else:
+ doc += "%s: %s%s%s." % (
+ "The default file (with absolute path) is",
+ "<code>",defval,"</code>")
+ else:
+ if abspath == '1':
+ doc += "The file has to be specified with full path."
+ else: # format == 'string':
+ if defval != '':
+ doc += "The default value is: <code>%s</code>." % (
+ defval)
+ # depends handling
+ if (node.hasAttribute('depends')):
+ depends = node.getAttribute('depends')
+ doc += "<br>"
+ doc += "%s \\ref cfg_%s \"%s\" is set to \\c YES." % (
+ "This tag requires that the tag", depends.lower(), depends.upper())
+
+ docC = transformDocs(doc)
+ return docC;
+
def parseOption(node):
- name = node.getAttribute('id')
- type = node.getAttribute('type')
- format = node.getAttribute('format')
- doc = node.getAttribute('docs')
- defval = node.getAttribute('defval')
+ # Handling part for Doxyfile
+ name = node.getAttribute('id')
+ type = node.getAttribute('type')
+ format = node.getAttribute('format')
+ defval = node.getAttribute('defval')
adefval = node.getAttribute('altdefval')
depends = node.getAttribute('depends')
setting = node.getAttribute('setting')
- # replace \ by \\, replace " by \", and ' ' by a newline with end string and start string at next line
- docC = doc.strip().replace('\\','\\\\').replace('"','\\"').replace(' ','\\n"\n\t\t\t"')
- if len(setting)>0:
+ docC = prepCDocs(node);
+ if len(setting) > 0:
print "#if %s" % (setting)
- print " //----"
- if type=='bool':
- if len(adefval)>0:
+ print " //----"
+ if type == 'bool':
+ if len(adefval) > 0:
enabled = adefval
- elif defval=='1':
+ elif defval == '1':
enabled = "TRUE"
else:
enabled = "FALSE"
- print " cb = cfg->addBool("
- print " \"%s\"," % (name)
- print " \"%s\"," % (docC)
- print " %s" % (enabled)
- print " );"
- if depends!='':
- print " cb->addDependency(\"%s\");" % (depends)
- elif type=='string':
- print " cs = cfg->addString("
- print " \"%s\"," % (name)
- print " \"%s\"" % (docC)
- print " );"
- if defval!='':
- print " cs->setDefaultValue(\"%s\");" % (defval)
- if format=='file':
- print " cs->setWidgetType(ConfigString::File);"
- elif format=='dir':
- print " cs->setWidgetType(ConfigString::Dir);"
- if depends!='':
- print " cs->addDependency(\"%s\");" % (depends)
- elif type=='enum':
- print " ce = cfg->addEnum("
- print " \"%s\"," % (name)
- print " \"%s\"," % (docC)
- print " \"%s\"" % (defval)
- print " );"
- addValues("ce",node)
- if depends!='':
- print " ce->addDependency(\"%s\");" % (depends)
- elif type=='int':
+ print " cb = cfg->addBool("
+ print " \"%s\"," % (name)
+ rng = len(docC)
+ for i in range(rng):
+ line = docC[i]
+ if i != rng - 1: # since we go from 0 to rng-1
+ print " \"%s\\n\"" % (line)
+ else:
+ print " \"%s\"," % (line)
+ print " %s" % (enabled)
+ print " );"
+ if depends != '':
+ print " cb->addDependency(\"%s\");" % (depends)
+ elif type == 'string':
+ print " cs = cfg->addString("
+ print " \"%s\"," % (name)
+ rng = len(docC)
+ for i in range(rng):
+ line = docC[i]
+ if i != rng - 1: # since we go from 0 to rng-1
+ print " \"%s\\n\"" % (line)
+ else:
+ print " \"%s\"" % (line)
+ print " );"
+ if defval != '':
+ print " cs->setDefaultValue(\"%s\");" % (defval)
+ if format == 'file':
+ print " cs->setWidgetType(ConfigString::File);"
+ elif format == 'dir':
+ print " cs->setWidgetType(ConfigString::Dir);"
+ if depends != '':
+ print " cs->addDependency(\"%s\");" % (depends)
+ elif type == 'enum':
+ print " ce = cfg->addEnum("
+ print " \"%s\"," % (name)
+ rng = len(docC)
+ for i in range(rng):
+ line = docC[i]
+ if i != rng - 1: # since we go from 0 to rng-1
+ print " \"%s\\n\"" % (line)
+ else:
+ print " \"%s\"," % (line)
+ print " \"%s\"" % (defval)
+ print " );"
+ addValues("ce", node)
+ if depends != '':
+ print " ce->addDependency(\"%s\");" % (depends)
+ elif type == 'int':
minval = node.getAttribute('minval')
maxval = node.getAttribute('maxval')
- print " ci = cfg->addInt("
- print " \"%s\"," % (name)
- print " \"%s\"," % (docC)
- print " %s,%s,%s" % (minval,maxval,defval)
- print " );"
- if depends!='':
- print " ci->addDependency(\"%s\");" % (depends)
- elif type=='list':
- print " cl = cfg->addList("
- print " \"%s\"," % (name)
- print " \"%s\"" % (docC)
- print " );"
- addValues("cl",node)
- if depends!='':
- print " cl->addDependency(\"%s\");" % (depends)
- if format=='file':
- print " cl->setWidgetType(ConfigList::File);"
- elif format=='dir':
- print " cl->setWidgetType(ConfigList::Dir);"
- elif format=='filedir':
- print " cl->setWidgetType(ConfigList::FileAndDir);"
- elif type=='obsolete':
- print " cfg->addObsolete(\"%s\");" % (name)
- if len(setting)>0:
+ print " ci = cfg->addInt("
+ print " \"%s\"," % (name)
+ rng = len(docC)
+ for i in range(rng):
+ line = docC[i]
+ if i != rng - 1: # since we go from 0 to rng-1
+ print " \"%s\\n\"" % (line)
+ else:
+ print " \"%s\"," % (line)
+ print " %s,%s,%s" % (minval, maxval, defval)
+ print " );"
+ if depends != '':
+ print " ci->addDependency(\"%s\");" % (depends)
+ elif type == 'list':
+ print " cl = cfg->addList("
+ print " \"%s\"," % (name)
+ rng = len(docC)
+ for i in range(rng):
+ line = docC[i]
+ if i != rng - 1: # since we go from 0 to rng-1
+ print " \"%s\\n\"" % (line)
+ else:
+ print " \"%s\"" % (line)
+ print " );"
+ addValues("cl", node)
+ if depends != '':
+ print " cl->addDependency(\"%s\");" % (depends)
+ if format == 'file':
+ print " cl->setWidgetType(ConfigList::File);"
+ elif format == 'dir':
+ print " cl->setWidgetType(ConfigList::Dir);"
+ elif format == 'filedir':
+ print " cl->setWidgetType(ConfigList::FileAndDir);"
+ elif type == 'obsolete':
+ print " cfg->addObsolete(\"%s\");" % (name)
+ if len(setting) > 0:
print "#else"
- print " cfg->addDisabled(\"%s\");" % (name)
+ print " cfg->addDisabled(\"%s\");" % (name)
print "#endif"
-
-
def parseGroups(node):
name = node.getAttribute('name')
- doc = node.getAttribute('docs')
- print " //---------------------------------------------------------------------------";
- print " cfg->addInfo(\"%s\",\"%s\");" % (name,doc)
- print " //---------------------------------------------------------------------------";
+ doc = node.getAttribute('docs')
+ print "%s%s" % (" //-----------------------------------------",
+ "----------------------------------")
+ print " cfg->addInfo(\"%s\",\"%s\");" % (name, doc)
+ print "%s%s" % (" //-----------------------------------------",
+ "----------------------------------")
print
for n in node.childNodes:
if n.nodeType == Node.ELEMENT_NODE:
parseOption(n)
-
+
+def parseGroupCDocs(node):
+ for n in node.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ type = n.getAttribute('type')
+ name = n.getAttribute('id')
+ docC = prepCDocs(n);
+ if type != 'obsolete':
+ print " doc->add("
+ print " \"%s\"," % (name)
+ rng = len(docC)
+ for i in range(rng):
+ line = docC[i]
+ if i != rng - 1: # since we go from 0 to rng-1
+ print " \"%s\\n\"" % (line)
+ else:
+ print " \"%s\"" % (line)
+ print " );"
+
+def parseOptionDoc(node, first):
+ # Handling part for documentation
+ name = node.getAttribute('id')
+ type = node.getAttribute('type')
+ format = node.getAttribute('format')
+ defval = node.getAttribute('defval')
+ adefval = node.getAttribute('altdefval')
+ depends = node.getAttribute('depends')
+ setting = node.getAttribute('setting')
+ doc = ""
+ if (type != 'obsolete'):
+ for n in node.childNodes:
+ if (n.nodeName == "docs"):
+ if (n.getAttribute('documentation') != "0"):
+ if n.nodeType == Node.ELEMENT_NODE:
+ doc += parseDocs(n)
+ if (first):
+ print " \\anchor cfg_%s" % (name.lower())
+ print "<dl>"
+ print ""
+ print "<dt>\\c %s <dd>" % (name)
+ else:
+ print " \\anchor cfg_%s" % (name.lower())
+ print "<dt>\\c %s <dd>" % (name)
+ print " \\addindex %s" % (name)
+ print doc
+ if (type == 'enum'):
+ values = collectValues(node)
+ print ""
+ print "Possible values are: "
+ rng = len(values)
+ for i in range(rng):
+ val = values[i]
+ if i == rng - 2:
+ print "%s and " % (val)
+ elif i == rng - 1:
+ print "%s." % (val)
+ else:
+ print "%s, " % (val)
+ if (defval != ""):
+ print ""
+ print "The default value is: <code>%s</code>." % (defval)
+ print ""
+ elif (type == 'int'):
+ minval = node.getAttribute('minval')
+ maxval = node.getAttribute('maxval')
+ print ""
+ print "%s: %s%s%s, %s: %s%s%s, %s: %s%s%s." % (
+ " Minimum value", "<code>", minval, "</code>",
+ "maximum value", "<code>", maxval, "</code>",
+ "default value", "<code>", defval, "</code>")
+ print ""
+ elif (type == 'bool'):
+ print ""
+ if (node.hasAttribute('altdefval')):
+ print "Default value is system dependent."
+ else:
+ print "The default value is: <code>%s</code>." % (
+ "YES" if (defval == "1") else "NO")
+ print ""
+ elif (type == 'list'):
+ if format == 'string':
+ values = collectValues(node)
+ rng = len(values)
+ for i in range(rng):
+ val = values[i]
+ if i == rng - 2:
+ print "%s and " % (val)
+ elif i == rng - 1:
+ print "%s." % (val)
+ else:
+ print "%s, " % (val)
+ print ""
+ elif (type == 'string'):
+ if format == 'dir':
+ if defval != '':
+ print "The default directory is: <code>%s</code>." % (
+ defval)
+ elif format == 'file':
+ abspath = node.getAttribute('abspath')
+ if defval != '':
+ if abspath != '1':
+ print "The default file is: <code>%s</code>." % (
+ defval)
+ else:
+ print "%s: %s%s%s." % (
+ "The default file (with absolute path) is",
+ "<code>",defval,"</code>")
+ else:
+ if abspath == '1':
+ print "The file has to be specified with full path."
+ else: # format == 'string':
+ if defval != '':
+ print "The default value is: <code>%s</code>." % (
+ defval)
+ print ""
+ # depends handling
+ if (node.hasAttribute('depends')):
+ depends = node.getAttribute('depends')
+ print "%s \\ref cfg_%s \"%s\" is set to \\c YES." % (
+ "This tag requires that the tag", depends.lower(), depends.upper())
+ return False
+
+
+def parseGroupsDoc(node):
+ name = node.getAttribute('name')
+ doc = node.getAttribute('docs')
+ print "\section config_%s %s" % (name.lower(), doc)
+ # Start of list has been moved to the first option for better
+ # anchor placement
+ # print "<dl>"
+ # print ""
+ first = True
+ for n in node.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ first = parseOptionDoc(n, first)
+ if (not first):
+ print "</dl>"
+
+
+def parseGroupsList(node, commandsList):
+ list = ()
+ for n in node.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ type = n.getAttribute('type')
+ if type != 'obsolete':
+ commandsList = commandsList + (n.getAttribute('id'),)
+ return commandsList
+
+
+def parseDocs(node):
+ doc = ""
+ for n in node.childNodes:
+ if n.nodeType == Node.TEXT_NODE:
+ doc += n.nodeValue.strip()
+ if n.nodeType == Node.CDATA_SECTION_NODE:
+ doc += n.nodeValue.rstrip("\r\n ").lstrip("\r\n")
+ #doc += "<br>"
+ return doc
+
+
+def parseHeaderDoc(node):
+ doc = ""
+ for n in node.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "docs"):
+ if (n.getAttribute('documentation') != "0"):
+ doc += parseDocs(n)
+ print doc
+
+
+def parseFooterDoc(node):
+ doc = ""
+ for n in node.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "docs"):
+ if (n.getAttribute('documentation') != "0"):
+ doc += parseDocs(n)
+ print doc
+
def main():
- doc = xml.dom.minidom.parse(sys.argv[1])
+ if len(sys.argv)<3 or (not sys.argv[1] in ['-doc','-cpp','-wiz']):
+ sys.exit('Usage: %s -doc|-cpp|-wiz config.xml' % sys.argv[0])
+ try:
+ doc = xml.dom.minidom.parse(sys.argv[2])
+ except Exception as inst:
+ print >> sys.stderr
+ print >> sys.stderr, inst
+ print >> sys.stderr
+ sys.exit(1)
elem = doc.documentElement
- print "/* WARNING: This file is generated!"
- print " * Do not edit this file, but edit config.xml instead and run"
- print " * python configgen.py to regenerate this file!"
- print " */"
- print ""
- print "#include \"configoptions.h\""
- print "#include \"config.h\""
- print "#include \"portable.h\""
- print "#include \"settings.h\""
- print ""
- print "void addConfigOptions(Config *cfg)"
- print "{"
- print " ConfigString *cs;"
- print " ConfigEnum *ce;"
- print " ConfigList *cl;"
- print " ConfigInt *ci;"
- print " ConfigBool *cb;"
- print ""
- for n in elem.childNodes:
- if n.nodeType == Node.ELEMENT_NODE:
- parseGroups(n)
- print "}"
+ if (sys.argv[1] == "-doc"):
+ print "/* WARNING: This file is generated!"
+ print " * Do not edit this file, but edit config.xml instead and run"
+ print " * python configgen.py -doc config.xml to regenerate this file!"
+ print " */"
+ # process header
+ for n in elem.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "header"):
+ parseHeaderDoc(n)
+ # generate list with all commands
+ commandsList = ()
+ for n in elem.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "group"):
+ commandsList = parseGroupsList(n, commandsList)
+ print "\\secreflist"
+ for x in sorted(commandsList):
+ print "\\refitem cfg_%s %s" % (x.lower(), x)
+ print "\\endsecreflist"
+ # process groups and options
+ for n in elem.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "group"):
+ parseGroupsDoc(n)
+ # process footers
+ for n in elem.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "footer"):
+ parseFooterDoc(n)
+ elif (sys.argv[1] == "-cpp"):
+ print "/* WARNING: This file is generated!"
+ print " * Do not edit this file, but edit config.xml instead and run"
+ print " * python configgen.py -cpp config.xml to regenerate this file!"
+ print " */"
+ print ""
+ print "#include \"configoptions.h\""
+ print "#include \"config.h\""
+ print "#include \"portable.h\""
+ print "#include \"settings.h\""
+ print ""
+ print "void addConfigOptions(Config *cfg)"
+ print "{"
+ print " ConfigString *cs;"
+ print " ConfigEnum *ce;"
+ print " ConfigList *cl;"
+ print " ConfigInt *ci;"
+ print " ConfigBool *cb;"
+ print ""
+ # process header
+ for n in elem.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "header"):
+ parseHeader(n,'cfg')
+ for n in elem.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "group"):
+ parseGroups(n)
+ print "}"
+ elif (sys.argv[1] == "-wiz"):
+ print "/* WARNING: This file is generated!"
+ print " * Do not edit this file, but edit config.xml instead and run"
+ print " * python configgen.py -wiz config.xml to regenerate this file!"
+ print " */"
+ print "#include \"configdoc.h\""
+ print "#include \"docintf.h\""
+ print ""
+ print "void addConfigDocs(DocIntf *doc)"
+ print "{"
+ for n in elem.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "header"):
+ parseHeader(n,'doc')
+ for n in elem.childNodes:
+ if n.nodeType == Node.ELEMENT_NODE:
+ if (n.nodeName == "group"):
+ parseGroupCDocs(n)
+ print "}"
if __name__ == '__main__':
main()
-
diff --git a/src/configoptions.cpp b/src/configoptions.cpp
index 01e495f..1dc4a06 100644
--- a/src/configoptions.cpp
+++ b/src/configoptions.cpp
@@ -1,6 +1,6 @@
/* WARNING: This file is generated!
* Do not edit this file, but edit config.xml instead and run
- * python configgen.py to regenerate this file!
+ * python configgen.py -cpp config.xml to regenerate this file!
*/
#include "configoptions.h"
@@ -10,2657 +10,3077 @@
void addConfigOptions(Config *cfg)
{
- ConfigString *cs;
- ConfigEnum *ce;
- ConfigList *cl;
- ConfigInt *ci;
- ConfigBool *cb;
+ ConfigString *cs;
+ ConfigEnum *ce;
+ ConfigList *cl;
+ ConfigInt *ci;
+ ConfigBool *cb;
- //---------------------------------------------------------------------------
- cfg->addInfo("Project","Project related configuration options");
- //---------------------------------------------------------------------------
+ cfg->setHeader(
+ "This file describes the settings to be used by the documentation system\n"
+ "doxygen (www.doxygen.org) for a project.\n"
+ "\n"
+ "All text after a double hash (##) is considered a comment and is placed in\n"
+ "front of the TAG it is preceding.\n"
+ "\n"
+ "All text after a single hash (#) is considered a comment and will be ignored.\n"
+ "The format is:\n"
+ "TAG = value [value, ...]\n"
+ "For lists, items can also be appended using:\n"
+ "TAG += value [value, ...]\n"
+ "Values that contain spaces should be placed between quotes (\\\" \\\")."
+ );
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Project","Project related configuration options");
+ //---------------------------------------------------------------------------
- //----
- cs = cfg->addString(
- "DOXYFILE_ENCODING",
- "This tag specifies the encoding used for all characters in the config file\n"
- "that follow. The default is UTF-8 which is also the encoding used for all\n"
- "text before the first occurrence of this tag. Doxygen uses libiconv (or the\n"
- "iconv built into libc) for the transcoding. See\n"
- "http://www.gnu.org/software/libiconv for the list of possible encodings."
- );
- cs->setDefaultValue("UTF-8");
- //----
- cs = cfg->addString(
- "PROJECT_NAME",
- "The PROJECT_NAME tag is a single word (or sequence of words) that should\n"
- "identify the project. Note that if you do not use Doxywizard you need\n"
- "to put quotes around the project name if it contains spaces."
- );
- cs->setDefaultValue("My Project");
- //----
- cs = cfg->addString(
- "PROJECT_NUMBER",
- "The PROJECT_NUMBER tag can be used to enter a project or revision number.\n"
- "This could be handy for archiving the generated documentation or\n"
- "if some version control system is used."
- );
- //----
- cs = cfg->addString(
- "PROJECT_BRIEF",
- "Using the PROJECT_BRIEF tag one can provide an optional one line description\n"
- "for a project that appears at the top of each page and should give viewer\n"
- "a quick idea about the purpose of the project. Keep the description short."
- );
- //----
- cs = cfg->addString(
- "PROJECT_LOGO",
- "With the PROJECT_LOGO tag one can specify an logo or icon that is\n"
- "included in the documentation. The maximum height of the logo should not\n"
- "exceed 55 pixels and the maximum width should not exceed 200 pixels.\n"
- "Doxygen will copy the logo to the output directory."
- );
- cs->setWidgetType(ConfigString::File);
- //----
- cs = cfg->addString(
- "OUTPUT_DIRECTORY",
- "The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)\n"
- "base path where the generated documentation will be put.\n"
- "If a relative path is entered, it will be relative to the location\n"
- "where doxygen was started. If left blank the current directory will be used."
- );
- cs->setWidgetType(ConfigString::Dir);
- //----
- cb = cfg->addBool(
- "CREATE_SUBDIRS",
- "If the CREATE_SUBDIRS tag is set to YES, then doxygen will create\n"
- "4096 sub-directories (in 2 levels) under the output directory of each output\n"
- "format and will distribute the generated files over these directories.\n"
- "Enabling this option can be useful when feeding doxygen a huge amount of\n"
- "source files, where putting all generated files in the same directory would\n"
- "otherwise cause performance problems for the file system.",
- FALSE
- );
- //----
- ce = cfg->addEnum(
- "OUTPUT_LANGUAGE",
- "The OUTPUT_LANGUAGE tag is used to specify the language in which all\n"
- "documentation generated by doxygen is written. Doxygen will use this\n"
- "information to generate all constant output in the proper language.\n"
- "The default language is English, other supported languages are:\n"
- "Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,\n"
- "Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,\n"
- "Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English\n"
- "messages), Korean, Korean-en, Latvian, Lithuanian, Norwegian, Macedonian,\n"
- "Persian, Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic,\n"
- "Slovak, Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.",
- "English"
- );
- ce->addValue("Afrikaans");
- ce->addValue("Arabic");
- ce->addValue("Brazilian");
- ce->addValue("Catalan");
- ce->addValue("Chinese");
- ce->addValue("Chinese-Traditional");
- ce->addValue("Croatian");
- ce->addValue("Czech");
- ce->addValue("Danish");
- ce->addValue("Dutch");
- ce->addValue("English");
- ce->addValue("Esperanto");
- ce->addValue("Farsi");
- ce->addValue("Finnish");
- ce->addValue("French");
- ce->addValue("German");
- ce->addValue("Greek");
- ce->addValue("Hungarian");
- ce->addValue("Italian");
- ce->addValue("Japanese");
- ce->addValue("Japanese-en");
- ce->addValue("Korean");
- ce->addValue("Korean-en");
- ce->addValue("Latvian");
- ce->addValue("Norwegian");
- ce->addValue("Macedonian");
- ce->addValue("Persian");
- ce->addValue("Polish");
- ce->addValue("Portuguese");
- ce->addValue("Romanian");
- ce->addValue("Russian");
- ce->addValue("Serbian");
- ce->addValue("Slovak");
- ce->addValue("Slovene");
- ce->addValue("Spanish");
- ce->addValue("Swedish");
- ce->addValue("Turkish");
- ce->addValue("Ukrainian");
- ce->addValue("Vietnamese");
- //----
- cb = cfg->addBool(
- "BRIEF_MEMBER_DESC",
- "If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will\n"
- "include brief member descriptions after the members that are listed in\n"
- "the file and class documentation (similar to JavaDoc).\n"
- "Set to NO to disable this.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "REPEAT_BRIEF",
- "If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend\n"
- "the brief description of a member or function before the detailed description.\n"
- "Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the\n"
- "brief descriptions will be completely suppressed.",
- TRUE
- );
- //----
- cl = cfg->addList(
- "ABBREVIATE_BRIEF",
- "This tag implements a quasi-intelligent brief description abbreviator\n"
- "that is used to form the text in various listings. Each string\n"
- "in this list, if found as the leading text of the brief description, will be\n"
- "stripped from the text and the result after processing the whole list, is\n"
- "used as the annotated text. Otherwise, the brief description is used as-is.\n"
- "If left blank, the following values are used (\"$name\" is automatically\n"
- "replaced with the name of the entity): \"The $name class\" \"The $name widget\"\n"
- "\"The $name file\" \"is\" \"provides\" \"specifies\" \"contains\"\n"
- "\"represents\" \"a\" \"an\" \"the\""
- );
- cl->addValue("The $name class");
- cl->addValue("The $name widget");
- cl->addValue("The $name file");
- cl->addValue("is");
- cl->addValue("provides");
- cl->addValue("specifies");
- cl->addValue("contains");
- cl->addValue("represents");
- cl->addValue("a");
- cl->addValue("an");
- cl->addValue("the");
- //----
- cb = cfg->addBool(
- "ALWAYS_DETAILED_SEC",
- "If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then\n"
- "Doxygen will generate a detailed section even if there is only a brief\n"
- "description.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "INLINE_INHERITED_MEMB",
- "If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all\n"
- "inherited members of a class in the documentation of that class as if those\n"
- "members were ordinary class members. Constructors, destructors and assignment\n"
- "operators of the base classes will not be shown.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "FULL_PATH_NAMES",
- "If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full\n"
- "path before files name in the file list and in the header files. If set\n"
- "to NO the shortest path that makes the file name unique will be used.",
- TRUE
- );
- //----
- cl = cfg->addList(
- "STRIP_FROM_PATH",
- "If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag\n"
- "can be used to strip a user-defined part of the path. Stripping is\n"
- "only done if one of the specified strings matches the left-hand part of\n"
- "the path. The tag can be used to show relative paths in the file list.\n"
- "If left blank the directory from which doxygen is run is used as the\n"
- "path to strip. Note that you specify absolute paths here, but also\n"
- "relative paths, which will be relative from the directory where doxygen is\n"
- "started."
- );
- cl->addValue("");
- cl->addDependency("FULL_PATH_NAMES");
- //----
- cl = cfg->addList(
- "STRIP_FROM_INC_PATH",
- "The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of\n"
- "the path mentioned in the documentation of a class, which tells\n"
- "the reader which header file to include in order to use a class.\n"
- "If left blank only the name of the header file containing the class\n"
- "definition is used. Otherwise one should specify the include paths that\n"
- "are normally passed to the compiler using the -I flag."
- );
- //----
- cb = cfg->addBool(
- "SHORT_NAMES",
- "If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter\n"
- "(but less readable) file names. This can be useful if your file system\n"
- "doesn't support long names like on DOS, Mac, or CD-ROM.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "JAVADOC_AUTOBRIEF",
- "If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen\n"
- "will interpret the first line (until the first dot) of a JavaDoc-style\n"
- "comment as the brief description. If set to NO, the JavaDoc\n"
- "comments will behave just like regular Qt-style comments\n"
- "(thus requiring an explicit @brief command for a brief description.)",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "QT_AUTOBRIEF",
- "If the QT_AUTOBRIEF tag is set to YES then Doxygen will\n"
- "interpret the first line (until the first dot) of a Qt-style\n"
- "comment as the brief description. If set to NO, the comments\n"
- "will behave just like regular Qt-style comments (thus requiring\n"
- "an explicit \\brief command for a brief description.)",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "MULTILINE_CPP_IS_BRIEF",
- "The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen\n"
- "treat a multi-line C++ special comment block (i.e. a block of //! or ///\n"
- "comments) as a brief description. This used to be the default behaviour.\n"
- "The new default is to treat a multi-line C++ comment block as a detailed\n"
- "description. Set this tag to YES if you prefer the old behaviour instead.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "INHERIT_DOCS",
- "If the INHERIT_DOCS tag is set to YES (the default) then an undocumented\n"
- "member inherits the documentation from any documented member that it\n"
- "re-implements.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "SEPARATE_MEMBER_PAGES",
- "If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce\n"
- "a new page for each member. If set to NO, the documentation of a member will\n"
- "be part of the file/class/namespace that contains it.",
- FALSE
- );
- //----
- ci = cfg->addInt(
- "TAB_SIZE",
- "The TAB_SIZE tag can be used to set the number of spaces in a tab.\n"
- "Doxygen uses this value to replace tabs by spaces in code fragments.",
- 1,16,4
- );
- //----
- cl = cfg->addList(
- "ALIASES",
- "This tag can be used to specify a number of aliases that acts\n"
- "as commands in the documentation. An alias has the form \"name=value\".\n"
- "For example adding \"sideeffect=\\par Side Effects:\\n\" will allow you to\n"
- "put the command \\sideeffect (or @sideeffect) in the documentation, which\n"
- "will result in a user-defined paragraph with heading \"Side Effects:\".\n"
- "You can put \\n's in the value part of an alias to insert newlines."
- );
- //----
- cl = cfg->addList(
- "TCL_SUBST",
- "This tag can be used to specify a number of word-keyword mappings (TCL only).\n"
- "A mapping has the form \"name=value\". For example adding\n"
- "\"class=itcl::class\" will allow you to use the command class in the\n"
- "itcl::class meaning."
- );
- //----
- cb = cfg->addBool(
- "OPTIMIZE_OUTPUT_FOR_C",
- "Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C\n"
- "sources only. Doxygen will then generate output that is more tailored for C.\n"
- "For instance, some of the names that are used will be different. The list\n"
- "of all members will be omitted, etc.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "OPTIMIZE_OUTPUT_JAVA",
- "Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java\n"
- "sources only. Doxygen will then generate output that is more tailored for\n"
- "Java. For instance, namespaces will be presented as packages, qualified\n"
- "scopes will look different, etc.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "OPTIMIZE_FOR_FORTRAN",
- "Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran\n"
- "sources only. Doxygen will then generate output that is more tailored for\n"
- "Fortran.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "OPTIMIZE_OUTPUT_VHDL",
- "Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL\n"
- "sources. Doxygen will then generate output that is tailored for\n"
- "VHDL.",
- FALSE
- );
- //----
- cl = cfg->addList(
- "EXTENSION_MAPPING",
- "Doxygen selects the parser to use depending on the extension of the files it\n"
- "parses. With this tag you can assign which parser to use for a given\n"
- "extension. Doxygen has a built-in mapping, but you can override or extend it\n"
- "using this tag. The format is ext=language, where ext is a file extension,\n"
- "and language is one of the parsers supported by doxygen: IDL, Java,\n"
- "Javascript, CSharp, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL, C,\n"
- "C++. For instance to make doxygen treat .inc files as Fortran files (default\n"
- "is PHP), and .f files as C (default is Fortran), use: inc=Fortran f=C. Note\n"
- "that for custom extensions you also need to set FILE_PATTERNS otherwise the\n"
- "files are not read by doxygen."
- );
- //----
- cb = cfg->addBool(
- "MARKDOWN_SUPPORT",
- "If MARKDOWN_SUPPORT is enabled (the default) then doxygen pre-processes all\n"
- "comments according to the Markdown format, which allows for more readable\n"
- "documentation. See http://daringfireball.net/projects/markdown/ for details.\n"
- "The output of markdown processing is further processed by doxygen, so you\n"
- "can mix doxygen, HTML, and XML commands with Markdown formatting.\n"
- "Disable only in case of backward compatibilities issues.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "AUTOLINK_SUPPORT",
- "When enabled doxygen tries to link words that correspond to documented\n"
- "classes, or namespaces to their corresponding documentation. Such a link can\n"
- "be prevented in individual cases by by putting a % sign in front of the word\n"
- "or globally by setting AUTOLINK_SUPPORT to NO.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "BUILTIN_STL_SUPPORT",
- "If you use STL classes (i.e. std::string, std::vector, etc.) but do not want\n"
- "to include (a tag file for) the STL sources as input, then you should\n"
- "set this tag to YES in order to let doxygen match functions declarations and\n"
- "definitions whose arguments contain STL classes (e.g. func(std::string); v.s.\n"
- "func(std::string) {}). This also makes the inheritance and collaboration\n"
- "diagrams that involve STL classes more complete and accurate.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "CPP_CLI_SUPPORT",
- "If you use Microsoft's C++/CLI language, you should set this option to YES to\n"
- "enable parsing support.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "SIP_SUPPORT",
- "Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.\n"
- "Doxygen will parse them like normal C++ but will assume all classes use public\n"
- "instead of private inheritance when no explicit protection keyword is present.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "IDL_PROPERTY_SUPPORT",
- "For Microsoft's IDL there are propget and propput attributes to indicate\n"
- "getter and setter methods for a property. Setting this option to YES (the\n"
- "default) will make doxygen replace the get and set methods by a property in\n"
- "the documentation. This will only work if the methods are indeed getting or\n"
- "setting a simple type. If this is not the case, or you want to show the\n"
- "methods anyway, you should set this option to NO.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "DISTRIBUTE_GROUP_DOC",
- "If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC\n"
- "tag is set to YES, then doxygen will reuse the documentation of the first\n"
- "member in the group (if any) for the other members of the group. By default\n"
- "all members of a group must be documented explicitly.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "SUBGROUPING",
- "Set the SUBGROUPING tag to YES (the default) to allow class member groups of\n"
- "the same type (for instance a group of public functions) to be put as a\n"
- "subgroup of that type (e.g. under the Public Functions section). Set it to\n"
- "NO to prevent subgrouping. Alternatively, this can be done per class using\n"
- "the \\nosubgrouping command.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "INLINE_GROUPED_CLASSES",
- "When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and\n"
- "unions are shown inside the group in which they are included (e.g. using\n"
- "@ingroup) instead of on a separate page (for HTML and Man pages) or\n"
- "section (for LaTeX and RTF).",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "INLINE_SIMPLE_STRUCTS",
- "When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and\n"
- "unions with only public data fields or simple typedef fields will be shown\n"
- "inline in the documentation of the scope in which they are defined (i.e. file,\n"
- "namespace, or group documentation), provided this scope is documented. If set\n"
- "to NO (the default), structs, classes, and unions are shown on a separate\n"
- "page (for HTML and Man pages) or section (for LaTeX and RTF).",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "TYPEDEF_HIDES_STRUCT",
- "When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum\n"
- "is documented as struct, union, or enum with the name of the typedef. So\n"
- "typedef struct TypeS {} TypeT, will appear in the documentation as a struct\n"
- "with name TypeT. When disabled the typedef will appear as a member of a file,\n"
- "namespace, or class. And the struct will be named TypeS. This can typically\n"
- "be useful for C code in case the coding convention dictates that all compound\n"
- "types are typedef'ed and only the typedef is referenced, never the tag name.",
- FALSE
- );
- //----
- ci = cfg->addInt(
- "LOOKUP_CACHE_SIZE",
- "The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This\n"
- "cache is used to resolve symbols given their name and scope. Since this can\n"
- "be an expensive process and often the same symbol appear multiple times in\n"
- "the code, doxygen keeps a cache of pre-resolved symbols. If the cache is too\n"
- "small doxygen will become slower. If the cache is too large, memory is wasted.\n"
- "The cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid\n"
- "range is 0..9, the default is 0, corresponding to a cache size of 2^16 = 65536\n"
- "symbols.",
- 0,9,0
- );
- //---------------------------------------------------------------------------
- cfg->addInfo("Build","Build related configuration options");
- //---------------------------------------------------------------------------
+ //----
+ cs = cfg->addString(
+ "DOXYFILE_ENCODING",
+ "This tag specifies the encoding used for all characters in the config file\n"
+ "that follow. The default is UTF-8 which is also the encoding used for all text\n"
+ "before the first occurrence of this tag. Doxygen uses libiconv (or the iconv\n"
+ "built into libc) for the transcoding. See http://www.gnu.org/software/libiconv\n"
+ "for the list of possible encodings.The default value is: UTF-8."
+ );
+ cs->setDefaultValue("UTF-8");
+ //----
+ cs = cfg->addString(
+ "PROJECT_NAME",
+ "The PROJECT_NAME tag is a single word (or a sequence of words surrounded by\n"
+ "double-quotes, unless you are using Doxywizard) that should identify the\n"
+ "project for which the documentation is generated. This name is used in the\n"
+ "title of most generated pages and in a few other places.The default value is:\n"
+ "My Project."
+ );
+ cs->setDefaultValue("My Project");
+ //----
+ cs = cfg->addString(
+ "PROJECT_NUMBER",
+ "The PROJECT_NUMBER tag can be used to enter a project or revision number. This\n"
+ "could be handy for archiving the generated documentation or if some version\n"
+ "control system is used."
+ );
+ //----
+ cs = cfg->addString(
+ "PROJECT_BRIEF",
+ "Using the PROJECT_BRIEF tag one can provide an optional one line description\n"
+ "for a project that appears at the top of each page and should give viewer a\n"
+ "quick idea about the purpose of the project. Keep the description short."
+ );
+ //----
+ cs = cfg->addString(
+ "PROJECT_LOGO",
+ "With the PROJECT_LOGO tag one can specify an logo or icon that is included in\n"
+ "the documentation. The maximum height of the logo should not exceed 55 pixels\n"
+ "and the maximum width should not exceed 200 pixels. Doxygen will copy the logo\n"
+ "to the output directory."
+ );
+ cs->setWidgetType(ConfigString::File);
+ //----
+ cs = cfg->addString(
+ "OUTPUT_DIRECTORY",
+ "The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path\n"
+ "into which the generated documentation will be written. If a relative path is\n"
+ "entered, it will be relative to the location where doxygen was started. If\n"
+ "left blank the current directory will be used."
+ );
+ cs->setWidgetType(ConfigString::Dir);
+ //----
+ cb = cfg->addBool(
+ "CREATE_SUBDIRS",
+ "If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub-\n"
+ "directories (in 2 levels) under the output directory of each output format and\n"
+ "will distribute the generated files over these directories. Enabling this\n"
+ "option can be useful when feeding doxygen a huge amount of source files, where\n"
+ "putting all generated files in the same directory would otherwise causes\n"
+ "performance problems for the file system.Default value: NO.",
+ FALSE
+ );
+ //----
+ ce = cfg->addEnum(
+ "OUTPUT_LANGUAGE",
+ "The OUTPUT_LANGUAGE tag is used to specify the language in which all\n"
+ "documentation generated by doxygen is written. Doxygen will use this\n"
+ "information to generate all constant output in the proper language.Possible\n"
+ "values are: Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-\n"
+ "Traditional, Croatian, Czech, Danish, Dutch, English, Esperanto, Farsi,\n"
+ "Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en,\n"
+ "Korean, Korean-en, Latvian, Norwegian, Macedonian, Persian, Polish,\n"
+ "Portuguese, Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish,\n"
+ "Turkish, Ukrainian and Vietnamese.\n"
+ "\n"
+ "The default value is: English.",
+ "English"
+ );
+ ce->addValue("Afrikaans");
+ ce->addValue("Arabic");
+ ce->addValue("Brazilian");
+ ce->addValue("Catalan");
+ ce->addValue("Chinese");
+ ce->addValue("Chinese-Traditional");
+ ce->addValue("Croatian");
+ ce->addValue("Czech");
+ ce->addValue("Danish");
+ ce->addValue("Dutch");
+ ce->addValue("English");
+ ce->addValue("Esperanto");
+ ce->addValue("Farsi");
+ ce->addValue("Finnish");
+ ce->addValue("French");
+ ce->addValue("German");
+ ce->addValue("Greek");
+ ce->addValue("Hungarian");
+ ce->addValue("Italian");
+ ce->addValue("Japanese");
+ ce->addValue("Japanese-en");
+ ce->addValue("Korean");
+ ce->addValue("Korean-en");
+ ce->addValue("Latvian");
+ ce->addValue("Norwegian");
+ ce->addValue("Macedonian");
+ ce->addValue("Persian");
+ ce->addValue("Polish");
+ ce->addValue("Portuguese");
+ ce->addValue("Romanian");
+ ce->addValue("Russian");
+ ce->addValue("Serbian");
+ ce->addValue("Slovak");
+ ce->addValue("Slovene");
+ ce->addValue("Spanish");
+ ce->addValue("Swedish");
+ ce->addValue("Turkish");
+ ce->addValue("Ukrainian");
+ ce->addValue("Vietnamese");
+ //----
+ cb = cfg->addBool(
+ "BRIEF_MEMBER_DESC",
+ "If the BRIEF_MEMBER_DESC tag is set to YES doxygen will include brief member\n"
+ "descriptions after the members that are listed in the file and class\n"
+ "documentation (similar to Javadoc). Set to NO to disable this.Default value:\n"
+ "YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "REPEAT_BRIEF",
+ "If the REPEAT_BRIEF tag is set to YES doxygen will prepend the brief\n"
+ "description of a member or function before the detailed description\n"
+ "\n"
+ "Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the\n"
+ "brief descriptions will be completely suppressed.Default value: YES.",
+ TRUE
+ );
+ //----
+ cl = cfg->addList(
+ "ABBREVIATE_BRIEF",
+ "This tag implements a quasi-intelligent brief description abbreviator that is\n"
+ "used to form the text in various listings. Each string in this list, if found\n"
+ "as the leading text of the brief description, will be stripped from the text\n"
+ "and the result, after processing the whole list, is used as the annotated\n"
+ "text. Otherwise, the brief description is used as-is. If left blank, the\n"
+ "following values are used ($name is automatically replaced with the name of\n"
+ "the entity):The $name class, The $name widget, The $name file, is, provides,\n"
+ "specifies, contains, represents, a, an and the."
+ );
+ cl->addValue("The $name class");
+ cl->addValue("The $name widget");
+ cl->addValue("The $name file");
+ cl->addValue("is");
+ cl->addValue("provides");
+ cl->addValue("specifies");
+ cl->addValue("contains");
+ cl->addValue("represents");
+ cl->addValue("a");
+ cl->addValue("an");
+ cl->addValue("the");
+ //----
+ cb = cfg->addBool(
+ "ALWAYS_DETAILED_SEC",
+ "If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then\n"
+ "doxygen will generate a detailed section even if there is only a brief\n"
+ "description.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "INLINE_INHERITED_MEMB",
+ "If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all\n"
+ "inherited members of a class in the documentation of that class as if those\n"
+ "members were ordinary class members. Constructors, destructors and assignment\n"
+ "operators of the base classes will not be shown.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "FULL_PATH_NAMES",
+ "If the FULL_PATH_NAMES tag is set to YES doxygen will prepend the full path\n"
+ "before files name in the file list and in the header files. If set to NO the\n"
+ "shortest path that makes the file name unique will be usedDefault value: YES.",
+ TRUE
+ );
+ //----
+ cl = cfg->addList(
+ "STRIP_FROM_PATH",
+ "The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.\n"
+ "Stripping is only done if one of the specified strings matches the left-hand\n"
+ "part of the path. The tag can be used to show relative paths in the file list.\n"
+ "If left blank the directory from which doxygen is run is used as the path to\n"
+ "strip.\n"
+ "\n"
+ "Note that you can specify absolute paths here, but also relative paths, which\n"
+ "will be relative from the directory where doxygen is started.\n"
+ "\n"
+ "This tag requires that the tag FULL_PATH_NAMES is set to YES."
+ );
+ cl->addValue("");
+ cl->addDependency("FULL_PATH_NAMES");
+ //----
+ cl = cfg->addList(
+ "STRIP_FROM_INC_PATH",
+ "The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the\n"
+ "path mentioned in the documentation of a class, which tells the reader which\n"
+ "header file to include in order to use a class. If left blank only the name of\n"
+ "the header file containing the class definition is used. Otherwise one should\n"
+ "specify the list of include paths that are normally passed to the compiler\n"
+ "using the -I flag."
+ );
+ //----
+ cb = cfg->addBool(
+ "SHORT_NAMES",
+ "If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but\n"
+ "less readable) file names. This can be useful is your file systems doesn't\n"
+ "support long names like on DOS, Mac, or CD-ROM.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "JAVADOC_AUTOBRIEF",
+ "If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the\n"
+ "first line (until the first dot) of a Javadoc-style comment as the brief\n"
+ "description. If set to NO, the Javadoc-style will behave just like regular Qt-\n"
+ "style comments (thus requiring an explicit @brief command for a brief\n"
+ "description.)Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "QT_AUTOBRIEF",
+ "If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first\n"
+ "line (until the first dot) of a Qt-style comment as the brief description. If\n"
+ "set to NO, the Qt-style will behave just like regular Qt-style comments (thus\n"
+ "requiring an explicit \\brief command for a brief description.)Default value:\n"
+ "NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "MULTILINE_CPP_IS_BRIEF",
+ "The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a\n"
+ "multi-line C++ special comment block (i.e. a block of //! or /// comments) as\n"
+ "a brief description. This used to be the default behavior. The new default is\n"
+ "to treat a multi-line C++ comment block as a detailed description. Set this\n"
+ "tag to YES if you prefer the old behavior instead.\n"
+ "\n"
+ "Note that setting this tag to YES also means that rational rose comments are\n"
+ "not recognized any more.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "INHERIT_DOCS",
+ "If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the\n"
+ "documentation from any documented member that it re-implements.Default value:\n"
+ "YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "SEPARATE_MEMBER_PAGES",
+ "If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce a\n"
+ "new page for each member. If set to NO, the documentation of a member will be\n"
+ "part of the file/class/namespace that contains it.Default value: NO.",
+ FALSE
+ );
+ //----
+ ci = cfg->addInt(
+ "TAB_SIZE",
+ "The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen\n"
+ "uses this value to replace tabs by spaces in code fragments. Minimum value: 1,\n"
+ "maximum value: 16, default value: 4.",
+ 1,16,4
+ );
+ //----
+ cl = cfg->addList(
+ "ALIASES",
+ "This tag can be used to specify a number of aliases that act as commands in\n"
+ "the documentation. An alias has the form:\n"
+ "name=value\n"
+ "For example adding\n"
+ "\"sideeffect=@par Side Effects:\\n\"\n"
+ "will allow you to put the command \\sideeffect (or @sideeffect) in the\n"
+ "documentation, which will result in a user-defined paragraph with heading\n"
+ "\"Side Effects:\". You can put \\n's in the value part of an alias to insert\n"
+ "newlines."
+ );
+ //----
+ cl = cfg->addList(
+ "TCL_SUBST",
+ "This tag can be used to specify a number of word-keyword mappings (TCL only).\n"
+ "A mapping has the form \"name=value\". For example adding \"class=itcl::class\"\n"
+ "will allow you to use the command class in the itcl::class meaning."
+ );
+ //----
+ cb = cfg->addBool(
+ "OPTIMIZE_OUTPUT_FOR_C",
+ "Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources\n"
+ "only. Doxygen will then generate output that is more tailored for C. For\n"
+ "instance, some of the names that are used will be different. The list of all\n"
+ "members will be omitted, etc.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "OPTIMIZE_OUTPUT_JAVA",
+ "Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or\n"
+ "Python sources only. Doxygen will then generate output that is more tailored\n"
+ "for that language. For instance, namespaces will be presented as packages,\n"
+ "qualified scopes will look different, etc.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "OPTIMIZE_FOR_FORTRAN",
+ "Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran\n"
+ "sources. Doxygen will then generate output that is tailored for\n"
+ "Fortran.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "OPTIMIZE_OUTPUT_VHDL",
+ "Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL\n"
+ "sources. Doxygen will then generate output that is tailored for VHDL.Default\n"
+ "value: NO.",
+ FALSE
+ );
+ //----
+ cl = cfg->addList(
+ "EXTENSION_MAPPING",
+ "Doxygen selects the parser to use depending on the extension of the files it\n"
+ "parses. With this tag you can assign which parser to use for a given\n"
+ "extension. Doxygen has a built-in mapping, but you can override or extend it\n"
+ "using this tag. The format is ext=language, where ext is a file extension, and\n"
+ "language is one of the parsers supported by doxygen: IDL, Java, Javascript,\n"
+ "C#, C, C++, D, PHP, Objective-C, Python, Fortran, VHDL. For instance to make\n"
+ "doxygen treat .inc files as Fortran files (default is PHP), and .f files as C\n"
+ "(default is Fortran), use: inc=Fortran f=C.\n"
+ "\n"
+ "Note For files without extension you can use no_extension as a placeholder.\n"
+ "\n"
+ "Note that for custom extensions you also need to set FILE_PATTERNS otherwise\n"
+ "the files are not read by doxygen."
+ );
+ //----
+ cb = cfg->addBool(
+ "MARKDOWN_SUPPORT",
+ "If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments\n"
+ "according to the Markdown format, which allows for more readable\n"
+ "documentation. See http://daringfireball.net/projects/markdown/ for details.\n"
+ "The output of markdown processing is further processed by doxygen, so you can\n"
+ "mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in\n"
+ "case of backward compatibilities issues.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "AUTOLINK_SUPPORT",
+ "When enabled doxygen tries to link words that correspond to documented\n"
+ "classes, or namespaces to their corresponding documentation. Such a link can\n"
+ "be prevented in individual cases by by putting a % sign in front of the word\n"
+ "or globally by setting AUTOLINK_SUPPORT to NO.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "BUILTIN_STL_SUPPORT",
+ "If you use STL classes (i.e. std::string, std::vector, etc.) but do not want\n"
+ "to include (a tag file for) the STL sources as input, then you should set this\n"
+ "tag to YES in order to let doxygen match functions declarations and\n"
+ "definitions whose arguments contain STL classes (e.g. func(std::string);\n"
+ "versus func(std::string) {}). This also make the inheritance and collaboration\n"
+ "diagrams that involve STL classes more complete and accurate.Default value:\n"
+ "NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "CPP_CLI_SUPPORT",
+ "If you use Microsoft's C++/CLI language, you should set this option to YES to\n"
+ "enable parsing support.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "SIP_SUPPORT",
+ "Set the SIP_SUPPORT tag to YES if your project consists of sip (see:\n"
+ "http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen\n"
+ "will parse them like normal C++ but will assume all classes use public instead\n"
+ "of private inheritance when no explicit protection keyword is present.Default\n"
+ "value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "IDL_PROPERTY_SUPPORT",
+ "For Microsoft's IDL there are propget and propput attributes to indicate\n"
+ "getter and setter methods for a property. Setting this option to YES will make\n"
+ "doxygen to replace the get and set methods by a property in the documentation.\n"
+ "This will only work if the methods are indeed getting or setting a simple\n"
+ "type. If this is not the case, or you want to show the methods anyway, you\n"
+ "should set this option to NO.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "DISTRIBUTE_GROUP_DOC",
+ "If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC\n"
+ "tag is set to YES, then doxygen will reuse the documentation of the first\n"
+ "member in the group (if any) for the other members of the group. By default\n"
+ "all members of a group must be documented explicitly.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "SUBGROUPING",
+ "Set the SUBGROUPING tag to YES to allow class member groups of the same type\n"
+ "(for instance a group of public functions) to be put as a subgroup of that\n"
+ "type (e.g. under the Public Functions section). Set it to NO to prevent\n"
+ "subgrouping. Alternatively, this can be done per class using the\n"
+ "\\nosubgrouping command.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "INLINE_GROUPED_CLASSES",
+ "When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions\n"
+ "are shown inside the group in which they are included (e.g. using \\ingroup)\n"
+ "instead of on a separate page (for HTML and Man pages) or section (for LaTeX\n"
+ "and RTF).\n"
+ "\n"
+ "Note that this feature does not work in combination with\n"
+ "SEPARATE_MEMBER_PAGES.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "INLINE_SIMPLE_STRUCTS",
+ "When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions\n"
+ "with only public data fields or simple typedef fields will be shown inline in\n"
+ "the documentation of the scope in which they are defined (i.e. file,\n"
+ "namespace, or group documentation), provided this scope is documented. If set\n"
+ "to NO, structs, classes, and unions are shown on a separate page (for HTML and\n"
+ "Man pages) or section (for LaTeX and RTF).Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "TYPEDEF_HIDES_STRUCT",
+ "When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or\n"
+ "enum is documented as struct, union, or enum with the name of the typedef. So\n"
+ "typedef struct TypeS {} TypeT, will appear in the documentation as a struct\n"
+ "with name TypeT. When disabled the typedef will appear as a member of a file,\n"
+ "namespace, or class. And the struct will be named TypeS. This can typically be\n"
+ "useful for C code in case the coding convention dictates that all compound\n"
+ "types are typedef'ed and only the typedef is referenced, never the tag\n"
+ "name.Default value: NO.",
+ FALSE
+ );
+ //----
+ ci = cfg->addInt(
+ "LOOKUP_CACHE_SIZE",
+ "The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This\n"
+ "cache is used to resolve symbols given their name and scope. Since this can be\n"
+ "an expensive process and often the same symbol appears multiple times in the\n"
+ "code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small\n"
+ "doxygen will become slower. If the cache is too large, memory is wasted. The\n"
+ "cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range\n"
+ "is 0..9, the default is 0, corresponding to a cache size of 2^16=65536\n"
+ "symbols. At the end of a run doxygen will report the cache usage and suggest\n"
+ "the optimal cache size from a speed point of view. Minimum value: 0, maximum\n"
+ "value: 9, default value: 0.",
+ 0,9,0
+ );
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Build","Build related configuration options");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "EXTRACT_ALL",
- "If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in\n"
- "documentation are documented, even if no documentation was available.\n"
- "Private class members and static file members will be hidden unless\n"
- "the EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "EXTRACT_PRIVATE",
- "If the EXTRACT_PRIVATE tag is set to YES all private members of a class\n"
- "will be included in the documentation.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "EXTRACT_PACKAGE",
- "If the EXTRACT_PACKAGE tag is set to YES all members with package or internal\n"
- "scope will be included in the documentation.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "EXTRACT_STATIC",
- "If the EXTRACT_STATIC tag is set to YES all static members of a file\n"
- "will be included in the documentation.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "EXTRACT_LOCAL_CLASSES",
- "If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)\n"
- "defined locally in source files will be included in the documentation.\n"
- "If set to NO only classes defined in header files are included.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "EXTRACT_LOCAL_METHODS",
- "This flag is only useful for Objective-C code. When set to YES local\n"
- "methods, which are defined in the implementation section but not in\n"
- "the interface are included in the documentation.\n"
- "If set to NO (the default) only methods in the interface are included.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "EXTRACT_ANON_NSPACES",
- "If this flag is set to YES, the members of anonymous namespaces will be\n"
- "extracted and appear in the documentation as a namespace called\n"
- "'anonymous_namespace{file}', where file will be replaced with the base\n"
- "name of the file that contains the anonymous namespace. By default\n"
- "anonymous namespaces are hidden.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "HIDE_UNDOC_MEMBERS",
- "If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all\n"
- "undocumented members of documented classes, files or namespaces.\n"
- "If set to NO (the default) these members will be included in the\n"
- "various overviews, but no documentation section is generated.\n"
- "This option has no effect if EXTRACT_ALL is enabled.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "HIDE_UNDOC_CLASSES",
- "If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all\n"
- "undocumented classes that are normally visible in the class hierarchy.\n"
- "If set to NO (the default) these classes will be included in the various\n"
- "overviews. This option has no effect if EXTRACT_ALL is enabled.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "HIDE_FRIEND_COMPOUNDS",
- "If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all\n"
- "friend (class|struct|union) declarations.\n"
- "If set to NO (the default) these declarations will be included in the\n"
- "documentation.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "HIDE_IN_BODY_DOCS",
- "If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any\n"
- "documentation blocks found inside the body of a function.\n"
- "If set to NO (the default) these blocks will be appended to the\n"
- "function's detailed documentation block.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "INTERNAL_DOCS",
- "The INTERNAL_DOCS tag determines if documentation\n"
- "that is typed after a \\internal command is included. If the tag is set\n"
- "to NO (the default) then the documentation will be excluded.\n"
- "Set it to YES to include the internal documentation.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "CASE_SENSE_NAMES",
- "If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate\n"
- "file names in lower-case letters. If set to YES upper-case letters are also\n"
- "allowed. This is useful if you have classes or files whose names only differ\n"
- "in case and if your file system supports case sensitive file names. Windows\n"
- "and Mac users are advised to set this option to NO.",
- portable_fileSystemIsCaseSensitive()
- );
- //----
- cb = cfg->addBool(
- "HIDE_SCOPE_NAMES",
- "If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen\n"
- "will show members with their full class and namespace scopes in the\n"
- "documentation. If set to YES the scope will be hidden.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "SHOW_INCLUDE_FILES",
- "If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen\n"
- "will put a list of the files that are included by a file in the documentation\n"
- "of that file.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "FORCE_LOCAL_INCLUDES",
- "If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen\n"
- "will list include files with double quotes in the documentation\n"
- "rather than with sharp brackets.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "INLINE_INFO",
- "If the INLINE_INFO tag is set to YES (the default) then a tag [inline]\n"
- "is inserted in the documentation for inline members.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "SORT_MEMBER_DOCS",
- "If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen\n"
- "will sort the (detailed) documentation of file and class members\n"
- "alphabetically by member name. If set to NO the members will appear in\n"
- "declaration order.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "SORT_BRIEF_DOCS",
- "If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the\n"
- "brief documentation of file, namespace and class members alphabetically\n"
- "by member name. If set to NO (the default) the members will appear in\n"
- "declaration order.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "SORT_MEMBERS_CTORS_1ST",
- "If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen\n"
- "will sort the (brief and detailed) documentation of class members so that\n"
- "constructors and destructors are listed first. If set to NO (the default)\n"
- "the constructors will appear in the respective orders defined by\n"
- "SORT_MEMBER_DOCS and SORT_BRIEF_DOCS.\n"
- "This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO\n"
- "and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "SORT_GROUP_NAMES",
- "If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the\n"
- "hierarchy of group names into alphabetical order. If set to NO (the default)\n"
- "the group names will appear in their defined order.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "SORT_BY_SCOPE_NAME",
- "If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be\n"
- "sorted by fully-qualified names, including namespaces. If set to\n"
- "NO (the default), the class list will be sorted only by class name,\n"
- "not including the namespace part.\n"
- "Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.\n"
- "Note: This option applies only to the class list, not to the\n"
- "alphabetical list.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "STRICT_PROTO_MATCHING",
- "If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to\n"
- "do proper type resolution of all parameters of a function it will reject a\n"
- "match between the prototype and the implementation of a member function even\n"
- "if there is only one candidate or it is obvious which candidate to choose\n"
- "by doing a simple string match. By disabling STRICT_PROTO_MATCHING doxygen\n"
- "will still accept a match between prototype and implementation in such cases.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "GENERATE_TODOLIST",
- "The GENERATE_TODOLIST tag can be used to enable (YES) or\n"
- "disable (NO) the todo list. This list is created by putting \\todo\n"
- "commands in the documentation.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "GENERATE_TESTLIST",
- "The GENERATE_TESTLIST tag can be used to enable (YES) or\n"
- "disable (NO) the test list. This list is created by putting \\test\n"
- "commands in the documentation.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "GENERATE_BUGLIST",
- "The GENERATE_BUGLIST tag can be used to enable (YES) or\n"
- "disable (NO) the bug list. This list is created by putting \\bug\n"
- "commands in the documentation.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "GENERATE_DEPRECATEDLIST",
- "The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or\n"
- "disable (NO) the deprecated list. This list is created by putting\n"
- "\\deprecated commands in the documentation.",
- TRUE
- );
- //----
- cl = cfg->addList(
- "ENABLED_SECTIONS",
- "The ENABLED_SECTIONS tag can be used to enable conditional\n"
- "documentation sections, marked by \\if section-label ... \\endif\n"
- "and \\cond section-label ... \\endcond blocks."
- );
- //----
- ci = cfg->addInt(
- "MAX_INITIALIZER_LINES",
- "The MAX_INITIALIZER_LINES tag determines the maximum number of lines\n"
- "the initial value of a variable or macro consists of for it to appear in\n"
- "the documentation. If the initializer consists of more lines than specified\n"
- "here it will be hidden. Use a value of 0 to hide initializers completely.\n"
- "The appearance of the initializer of individual variables and macros in the\n"
- "documentation can be controlled using \\showinitializer or \\hideinitializer\n"
- "command in the documentation regardless of this setting.",
- 0,10000,30
- );
- //----
- cb = cfg->addBool(
- "SHOW_USED_FILES",
- "Set the SHOW_USED_FILES tag to NO to disable the list of files generated\n"
- "at the bottom of the documentation of classes and structs. If set to YES the\n"
- "list will mention the files that were used to generate the documentation.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "SHOW_FILES",
- "Set the SHOW_FILES tag to NO to disable the generation of the Files page.\n"
- "This will remove the Files entry from the Quick Index and from the\n"
- "Folder Tree View (if specified). The default is YES.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "SHOW_NAMESPACES",
- "Set the SHOW_NAMESPACES tag to NO to disable the generation of the\n"
- "Namespaces page.\n"
- "This will remove the Namespaces entry from the Quick Index\n"
- "and from the Folder Tree View (if specified). The default is YES.",
- TRUE
- );
- //----
- cs = cfg->addString(
- "FILE_VERSION_FILTER",
- "The FILE_VERSION_FILTER tag can be used to specify a program or script that\n"
- "doxygen should invoke to get the current version for each file (typically from\n"
- "the version control system). Doxygen will invoke the program by executing (via\n"
- "popen()) the command <command> <input-file>, where <command> is the value of\n"
- "the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file\n"
- "provided by doxygen. Whatever the program writes to standard output\n"
- "is used as the file version. See the manual for examples."
- );
- cs->setWidgetType(ConfigString::File);
- //----
- cs = cfg->addString(
- "LAYOUT_FILE",
- "The LAYOUT_FILE tag can be used to specify a layout file which will be parsed\n"
- "by doxygen. The layout file controls the global structure of the generated\n"
- "output files in an output format independent way. To create the layout file\n"
- "that represents doxygen's defaults, run doxygen with the -l option.\n"
- "You can optionally specify a file name after the option, if omitted\n"
- "DoxygenLayout.xml will be used as the name of the layout file."
- );
- cs->setWidgetType(ConfigString::File);
- //----
- cl = cfg->addList(
- "CITE_BIB_FILES",
- "The CITE_BIB_FILES tag can be used to specify one or more bib files\n"
- "containing the references data. This must be a list of .bib files. The\n"
- ".bib extension is automatically appended if omitted. Using this command\n"
- "requires the bibtex tool to be installed. See also\n"
- "http://en.wikipedia.org/wiki/BibTeX for more info. For LaTeX the style\n"
- "of the bibliography can be controlled using LATEX_BIB_STYLE. To use this\n"
- "feature you need bibtex and perl available in the search path. Do not use\n"
- "file names with spaces, bibtex cannot handle them."
- );
- cl->setWidgetType(ConfigList::File);
- //---------------------------------------------------------------------------
- cfg->addInfo("Messages","configuration options related to warning and progress messages");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "EXTRACT_ALL",
+ "If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in\n"
+ "documentation are documented, even if no documentation was available. Private\n"
+ "class members and static file members will be hidden unless the\n"
+ "EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES\n"
+ "Note: This will also disable the warnings about undocumented members that are\n"
+ "normally produced when WARNINGS is set to YESDefault value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "EXTRACT_PRIVATE",
+ "If the EXTRACT_PRIVATE tag is set to YES all private members of a class will\n"
+ "be included in the documentation.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "EXTRACT_PACKAGE",
+ "If the EXTRACT_PACKAGE tag is set to YES all members with package or internal\n"
+ "scope will be included in the documentation.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "EXTRACT_STATIC",
+ "If the EXTRACT_STATIC tag is set to YES all static members of a file will be\n"
+ "included in the documentation.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "EXTRACT_LOCAL_CLASSES",
+ "If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) defined\n"
+ "locally in source files will be included in the documentation. If set to NO\n"
+ "only classes defined in header files are included. Does not have any effect\n"
+ "for Java sources.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "EXTRACT_LOCAL_METHODS",
+ "This flag is only useful for Objective-C code. When set to YES local methods,\n"
+ "which are defined in the implementation section but not in the interface are\n"
+ "included in the documentation. If set to NO only methods in the interface are\n"
+ "included.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "EXTRACT_ANON_NSPACES",
+ "If this flag is set to YES, the members of anonymous namespaces will be\n"
+ "extracted and appear in the documentation as a namespace called\n"
+ "'anonymous_namespace{file}', where file will be replaced with the base name of\n"
+ "the file that contains the anonymous namespace. By default anonymous namespace\n"
+ "are hidden.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "HIDE_UNDOC_MEMBERS",
+ "If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all\n"
+ "undocumented members inside documented classes or files. If set to NO these\n"
+ "members will be included in the various overviews, but no documentation\n"
+ "section is generated. This option has no effect if EXTRACT_ALL is\n"
+ "enabled.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "HIDE_UNDOC_CLASSES",
+ "If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all\n"
+ "undocumented classes that are normally visible in the class hierarchy. If set\n"
+ "to NO these classes will be included in the various overviews. This option has\n"
+ "no effect if EXTRACT_ALL is enabled.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "HIDE_FRIEND_COMPOUNDS",
+ "If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend\n"
+ "(class|struct|union) declarations. If set to NO these declarations will be\n"
+ "included in the documentation.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "HIDE_IN_BODY_DOCS",
+ "If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any\n"
+ "documentation blocks found inside the body of a function. If set to NO these\n"
+ "blocks will be appended to the function's detailed documentation block.Default\n"
+ "value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "INTERNAL_DOCS",
+ "The INTERNAL_DOCS tag determines if documentation that is typed after a\n"
+ "\\internal command is included. If the tag is set to NO then the documentation\n"
+ "will be excluded. Set it to YES to include the internal documentation.Default\n"
+ "value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "CASE_SENSE_NAMES",
+ "If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file\n"
+ "names in lower-case letters. If set to YES upper-case letters are also\n"
+ "allowed. This is useful if you have classes or files whose names only differ\n"
+ "in case and if your file system supports case sensitive file names. Windows\n"
+ "and Mac users are advised to set this option to NO.Default value: system\n"
+ "dependent.",
+ portable_fileSystemIsCaseSensitive()
+ );
+ //----
+ cb = cfg->addBool(
+ "HIDE_SCOPE_NAMES",
+ "If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with\n"
+ "their full class and namespace scopes in the documentation. If set to YES the\n"
+ "scope will be hidden.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "SHOW_INCLUDE_FILES",
+ "If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of\n"
+ "the files that are included by a file in the documentation of that\n"
+ "file.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "FORCE_LOCAL_INCLUDES",
+ "If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include\n"
+ "files with double quotes in the documentation rather than with sharp\n"
+ "brackets.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "INLINE_INFO",
+ "If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the\n"
+ "documentation for inline members.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "SORT_MEMBER_DOCS",
+ "If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the\n"
+ "(detailed) documentation of file and class members alphabetically by member\n"
+ "name. If set to NO the members will appear in declaration order.Default value:\n"
+ "YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "SORT_BRIEF_DOCS",
+ "If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief\n"
+ "descriptions of file, namespace and class members alphabetically by member\n"
+ "name. If set to NO the members will appear in declaration order.Default value:\n"
+ "NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "SORT_MEMBERS_CTORS_1ST",
+ "If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the\n"
+ "(brief and detailed) documentation of class members so that constructors and\n"
+ "destructors are listed first. If set to NO the constructors will appear in the\n"
+ "respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.\n"
+ "Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief\n"
+ "member documentation.\n"
+ "Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting\n"
+ "detailed member documentation.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "SORT_GROUP_NAMES",
+ "If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy\n"
+ "of group names into alphabetical order. If set to NO the group names will\n"
+ "appear in their defined order.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "SORT_BY_SCOPE_NAME",
+ "If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by\n"
+ "fully-qualified names, including namespaces. If set to NO, the class list will\n"
+ "be sorted only by class name, not including the namespace part.\n"
+ "Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.\n"
+ "Note: This option applies only to the class list, not to the alphabetical\n"
+ "list.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "STRICT_PROTO_MATCHING",
+ "If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper\n"
+ "type resolution of all parameters of a function it will reject a match between\n"
+ "the prototype and the implementation of a member function even if there is\n"
+ "only one candidate or it is obvious which candidate to choose by doing a\n"
+ "simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still\n"
+ "accept a match between prototype and implementation in such cases.Default\n"
+ "value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "GENERATE_TODOLIST",
+ "The GENERATE_TODOLIST tag can be used to enable ( YES) or disable ( NO) the\n"
+ "todo list. This list is created by putting \\todo commands in the\n"
+ "documentation.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "GENERATE_TESTLIST",
+ "The GENERATE_TESTLIST tag can be used to enable ( YES) or disable ( NO) the\n"
+ "test list. This list is created by putting \\test commands in the\n"
+ "documentation.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "GENERATE_BUGLIST",
+ "The GENERATE_BUGLIST tag can be used to enable ( YES) or disable ( NO) the bug\n"
+ "list. This list is created by putting \\bug commands in the\n"
+ "documentation.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "GENERATE_DEPRECATEDLIST",
+ "The GENERATE_DEPRECATEDLIST tag can be used to enable ( YES) or disable ( NO)\n"
+ "the deprecated list. This list is created by putting \\deprecated commands in\n"
+ "the documentation.Default value: YES.",
+ TRUE
+ );
+ //----
+ cl = cfg->addList(
+ "ENABLED_SECTIONS",
+ "The ENABLED_SECTIONS tag can be used to enable conditional documentation\n"
+ "sections, marked by \\if <section_label> ... \\endif and \\cond <section_label>\n"
+ "... \\endcond blocks."
+ );
+ //----
+ ci = cfg->addInt(
+ "MAX_INITIALIZER_LINES",
+ "The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the\n"
+ "initial value of a variable or macro / define can have for it to appear in the\n"
+ "documentation. If the initializer consists of more lines than specified here\n"
+ "it will be hidden. Use a value of 0 to hide initializers completely. The\n"
+ "appearance of the value of individual variables and macros / defines can be\n"
+ "controlled using \\showinitializer or \\hideinitializer command in the\n"
+ "documentation regardless of this setting. Minimum value: 0, maximum value:\n"
+ "10000, default value: 30.",
+ 0,10000,30
+ );
+ //----
+ cb = cfg->addBool(
+ "SHOW_USED_FILES",
+ "Set the SHOW_USED_FILES tag to NO to disable the list of files generated at\n"
+ "the bottom of the documentation of classes and structs. If set to YES the list\n"
+ "will mention the files that were used to generate the documentation.Default\n"
+ "value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "SHOW_FILES",
+ "Set the SHOW_FILES tag to NO to disable the generation of the Files page. This\n"
+ "will remove the Files entry from the Quick Index and from the Folder Tree View\n"
+ "(if specified). The default is YES.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "SHOW_NAMESPACES",
+ "Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces\n"
+ "page. This will remove the Namespaces entry from the Quick Index and from the\n"
+ "Folder Tree View (if specified). The default is YES.Default value: YES.",
+ TRUE
+ );
+ //----
+ cs = cfg->addString(
+ "FILE_VERSION_FILTER",
+ "The FILE_VERSION_FILTER tag can be used to specify a program or script that\n"
+ "doxygen should invoke to get the current version for each file (typically from\n"
+ "the version control system). Doxygen will invoke the program by executing (via\n"
+ "popen()) the command command input-file, where command is the value of the\n"
+ "FILE_VERSION_FILTER tag, and input-file is the name of an input file provided\n"
+ "by doxygen. Whatever the program writes to standard output is used as the file\n"
+ "version. For an example see the documentation."
+ );
+ cs->setWidgetType(ConfigString::File);
+ //----
+ cs = cfg->addString(
+ "LAYOUT_FILE",
+ "The LAYOUT_FILE tag can be used to specify a layout file which will be parsed\n"
+ "by doxygen. The layout file controls the global structure of the generated\n"
+ "output files in an output format independent way. To create the layout file\n"
+ "that represents doxygen's defaults, run doxygen with the -l option. You can\n"
+ "optionally specify a file name after the option, if omitted DoxygenLayout.xml\n"
+ "will be used as the name of the layout file.\n"
+ "\n"
+ "Note that if you run doxygen from a directory containing a file called\n"
+ "DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE\n"
+ "tag is left empty."
+ );
+ cs->setWidgetType(ConfigString::File);
+ //----
+ cl = cfg->addList(
+ "CITE_BIB_FILES",
+ "The CITE_BIB_FILES tag can be used to specify one or more bib files containing\n"
+ "the reference definitions. This must be a list of .bib files. The .bib\n"
+ "extension is automatically appended if omitted. This requires the bibtex tool\n"
+ "to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.\n"
+ "For LaTeX the style of the bibliography can be controlled using\n"
+ "LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the\n"
+ "search path. Do not use file names with spaces, bibtex cannot handle them. See\n"
+ "also \\cite for info how to create references."
+ );
+ cl->setWidgetType(ConfigList::File);
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Messages","Configuration options related to warning and progress messages");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "QUIET",
- "The QUIET tag can be used to turn on/off the messages that are generated\n"
- "by doxygen. Possible values are YES and NO. If left blank NO is used.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "WARNINGS",
- "The WARNINGS tag can be used to turn on/off the warning messages that are\n"
- "generated by doxygen. Possible values are YES and NO. If left blank\n"
- "NO is used.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "WARN_IF_UNDOCUMENTED",
- "If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings\n"
- "for undocumented members. If EXTRACT_ALL is set to YES then this flag will\n"
- "automatically be disabled.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "WARN_IF_DOC_ERROR",
- "If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for\n"
- "potential errors in the documentation, such as not documenting some\n"
- "parameters in a documented function, or documenting parameters that\n"
- "don't exist or using markup commands wrongly.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "WARN_NO_PARAMDOC",
- "The WARN_NO_PARAMDOC option can be enabled to get warnings for\n"
- "functions that are documented, but have no documentation for their parameters\n"
- "or return value. If set to NO (the default) doxygen will only warn about\n"
- "wrong or incomplete parameter documentation, but not about the absence of\n"
- "documentation.",
- FALSE
- );
- //----
- cs = cfg->addString(
- "WARN_FORMAT",
- "The WARN_FORMAT tag determines the format of the warning messages that\n"
- "doxygen can produce. The string should contain the $file, $line, and $text\n"
- "tags, which will be replaced by the file and line number from which the\n"
- "warning originated and the warning text. Optionally the format may contain\n"
- "$version, which will be replaced by the version of the file (if it could\n"
- "be obtained via FILE_VERSION_FILTER)"
- );
- cs->setDefaultValue("$file:$line: $text");
- //----
- cs = cfg->addString(
- "WARN_LOGFILE",
- "The WARN_LOGFILE tag can be used to specify a file to which warning\n"
- "and error messages should be written. If left blank the output is written\n"
- "to stderr."
- );
- cs->setWidgetType(ConfigString::File);
- //---------------------------------------------------------------------------
- cfg->addInfo("Input","configuration options related to the input files");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "QUIET",
+ "The QUIET tag can be used to turn on/off the messages that are generated to\n"
+ "standard output by doxygen. Possible values are YES and NO, where YES implies\n"
+ "that the messages are off.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "WARNINGS",
+ "The WARNINGS tag can be used to turn on/off the warning messages that are\n"
+ "generated to standard error ( stderr) by doxygen. Possible values are YES and\n"
+ "NO, where YES implies that the warnings are on.\n"
+ "\n"
+ "Tip: Turn warnings on while writing the documentation.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "WARN_IF_UNDOCUMENTED",
+ "If the WARN_IF_UNDOCUMENTED tag is set to YES, then doxygen will generate\n"
+ "warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag\n"
+ "will automatically be disabled.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "WARN_IF_DOC_ERROR",
+ "If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for\n"
+ "potential errors in the documentation, such as not documenting some parameters\n"
+ "in a documented function, or documenting parameters that don't exist or using\n"
+ "markup commands wrongly.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "WARN_NO_PARAMDOC",
+ "This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that\n"
+ "are documented, but have no documentation for their parameters or return\n"
+ "value. If set to NO doxygen will only warn about wrong or incomplete parameter\n"
+ "documentation, but not about the absence of documentation.Default value: NO.",
+ FALSE
+ );
+ //----
+ cs = cfg->addString(
+ "WARN_FORMAT",
+ "The WARN_FORMAT tag determines the format of the warning messages that doxygen\n"
+ "can produce. The string should contain the $file, $line, and $text tags, which\n"
+ "will be replaced by the file and line number from which the warning originated\n"
+ "and the warning text. Optionally the format may contain $version, which will\n"
+ "be replaced by the version of the file (if it could be obtained via\n"
+ "FILE_VERSION_FILTER)The default value is: $file:$line: $text."
+ );
+ cs->setDefaultValue("$file:$line: $text");
+ //----
+ cs = cfg->addString(
+ "WARN_LOGFILE",
+ "The WARN_LOGFILE tag can be used to specify a file to which warning and error\n"
+ "messages should be written. If left blank the output is written to standard\n"
+ "error ( stderr)."
+ );
+ cs->setWidgetType(ConfigString::File);
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Input","Configuration options related to the input files");
+ //---------------------------------------------------------------------------
- //----
- cl = cfg->addList(
- "INPUT",
- "The INPUT tag can be used to specify the files and/or directories that contain\n"
- "documented source files. You may enter file names like \"myfile.cpp\" or\n"
- "directories like \"/usr/src/myproject\". Separate the files or directories\n"
- "with spaces."
- );
- cl->addValue("");
- cl->setWidgetType(ConfigList::FileAndDir);
- //----
- cs = cfg->addString(
- "INPUT_ENCODING",
- "This tag can be used to specify the character encoding of the source files\n"
- "that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is\n"
- "also the default input encoding. Doxygen uses libiconv (or the iconv built\n"
- "into libc) for the transcoding. See http://www.gnu.org/software/libiconv for\n"
- "the list of possible encodings."
- );
- cs->setDefaultValue("UTF-8");
- //----
- cl = cfg->addList(
- "FILE_PATTERNS",
- "If the value of the INPUT tag contains directories, you can use the\n"
- "FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp\n"
- "and *.h) to filter out the source-files in the directories. If left\n"
- "blank the following patterns are tested:\n"
- "*.c *.cc *.cxx *.cpp *.c++ *.d *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh\n"
- "*.hxx *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.dox *.py\n"
- "*.f90 *.f *.for *.vhd *.vhdl"
- );
- cl->addValue("*.c");
- cl->addValue("*.cc");
- cl->addValue("*.cxx");
- cl->addValue("*.cpp");
- cl->addValue("*.c++");
- cl->addValue("*.d");
- cl->addValue("*.java");
- cl->addValue("*.ii");
- cl->addValue("*.ixx");
- cl->addValue("*.ipp");
- cl->addValue("*.i++");
- cl->addValue("*.inl");
- cl->addValue("*.h");
- cl->addValue("*.hh");
- cl->addValue("*.hxx");
- cl->addValue("*.hpp");
- cl->addValue("*.h++");
- cl->addValue("*.idl");
- cl->addValue("*.odl");
- cl->addValue("*.cs");
- cl->addValue("*.php");
- cl->addValue("*.php3");
- cl->addValue("*.inc");
- cl->addValue("*.m");
- cl->addValue("*.markdown");
- cl->addValue("*.md");
- cl->addValue("*.mm");
- cl->addValue("*.dox");
- cl->addValue("*.py");
- cl->addValue("*.f90");
- cl->addValue("*.f");
- cl->addValue("*.for");
- cl->addValue("*.vhd");
- cl->addValue("*.vhdl");
- //----
- cb = cfg->addBool(
- "RECURSIVE",
- "The RECURSIVE tag can be used to turn specify whether or not subdirectories\n"
- "should be searched for input files as well. Possible values are YES and NO.\n"
- "If left blank NO is used.",
- FALSE
- );
- //----
- cl = cfg->addList(
- "EXCLUDE",
- "The EXCLUDE tag can be used to specify files and/or directories that should be\n"
- "excluded from the INPUT source files. This way you can easily exclude a\n"
- "subdirectory from a directory tree whose root is specified with the INPUT tag.\n"
- "Note that relative paths are relative to the directory from which doxygen is\n"
- "run."
- );
- cl->setWidgetType(ConfigList::FileAndDir);
- //----
- cb = cfg->addBool(
- "EXCLUDE_SYMLINKS",
- "The EXCLUDE_SYMLINKS tag can be used to select whether or not files or\n"
- "directories that are symbolic links (a Unix file system feature) are excluded\n"
- "from the input.",
- FALSE
- );
- //----
- cl = cfg->addList(
- "EXCLUDE_PATTERNS",
- "If the value of the INPUT tag contains directories, you can use the\n"
- "EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude\n"
- "certain files from those directories. Note that the wildcards are matched\n"
- "against the file with absolute path, so to exclude all test directories\n"
- "for example use the pattern */test/*"
- );
- //----
- cl = cfg->addList(
- "EXCLUDE_SYMBOLS",
- "The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names\n"
- "(namespaces, classes, functions, etc.) that should be excluded from the\n"
- "output. The symbol name can be a fully qualified name, a word, or if the\n"
- "wildcard * is used, a substring. Examples: ANamespace, AClass,\n"
- "AClass::ANamespace, ANamespace::*Test"
- );
- //----
- cl = cfg->addList(
- "EXAMPLE_PATH",
- "The EXAMPLE_PATH tag can be used to specify one or more files or\n"
- "directories that contain example code fragments that are included (see\n"
- "the \\include command)."
- );
- cl->setWidgetType(ConfigList::Dir);
- //----
- cl = cfg->addList(
- "EXAMPLE_PATTERNS",
- "If the value of the EXAMPLE_PATH tag contains directories, you can use the\n"
- "EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp\n"
- "and *.h) to filter out the source-files in the directories. If left\n"
- "blank all files are included."
- );
- cl->addValue("*");
- //----
- cb = cfg->addBool(
- "EXAMPLE_RECURSIVE",
- "If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be\n"
- "searched for input files to be used with the \\include or \\dontinclude\n"
- "commands irrespective of the value of the RECURSIVE tag.\n"
- "Possible values are YES and NO. If left blank NO is used.",
- FALSE
- );
- //----
- cl = cfg->addList(
- "IMAGE_PATH",
- "The IMAGE_PATH tag can be used to specify one or more files or\n"
- "directories that contain image that are included in the documentation (see\n"
- "the \\image command)."
- );
- cl->setWidgetType(ConfigList::Dir);
- //----
- cs = cfg->addString(
- "INPUT_FILTER",
- "The INPUT_FILTER tag can be used to specify a program that doxygen should\n"
- "invoke to filter for each input file. Doxygen will invoke the filter program\n"
- "by executing (via popen()) the command <filter> <input-file>, where <filter>\n"
- "is the value of the INPUT_FILTER tag, and <input-file> is the name of an\n"
- "input file. Doxygen will then use the output that the filter program writes\n"
- "to standard output.\n"
- "If FILTER_PATTERNS is specified, this tag will be ignored.\n"
- "Note that the filter must not add or remove lines; it is applied before the\n"
- "code is scanned, but not when the output code is generated. If lines are added\n"
- "or removed, the anchors will not be placed correctly."
- );
- cs->setWidgetType(ConfigString::File);
- //----
- cl = cfg->addList(
- "FILTER_PATTERNS",
- "The FILTER_PATTERNS tag can be used to specify filters on a per file pattern\n"
- "basis.\n"
- "Doxygen will compare the file name with each pattern and apply the\n"
- "filter if there is a match.\n"
- "The filters are a list of the form:\n"
- "pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further\n"
- "info on how filters are used. If FILTER_PATTERNS is empty or if\n"
- "non of the patterns match the file name, INPUT_FILTER is applied."
- );
- //----
- cb = cfg->addBool(
- "FILTER_SOURCE_FILES",
- "If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using\n"
- "INPUT_FILTER) will be used to filter the input files when producing source\n"
- "files to browse (i.e. when SOURCE_BROWSER is set to YES).",
- FALSE
- );
- //----
- cl = cfg->addList(
- "FILTER_SOURCE_PATTERNS",
- "The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file\n"
- "pattern. A pattern will override the setting for FILTER_PATTERN (if any)\n"
- "and it is also possible to disable source filtering for a specific pattern\n"
- "using *.ext= (so without naming a filter). This option only has effect when\n"
- "FILTER_SOURCE_FILES is enabled."
- );
- cl->addDependency("FILTER_SOURCE_FILES");
- //----
- cs = cfg->addString(
- "USE_MDFILE_AS_MAINPAGE",
- "If the USE_MD_FILE_AS_MAINPAGE tag refers to the name of a markdown file that\n"
- "is part of the input, its contents will be placed on the main page\n"
- "(index.html). This can be useful if you have a project on for instance GitHub\n"
- "and want reuse the introduction page also for the doxygen output."
- );
- //---------------------------------------------------------------------------
- cfg->addInfo("Source Browser","configuration options related to source browsing");
- //---------------------------------------------------------------------------
+ //----
+ cl = cfg->addList(
+ "INPUT",
+ "The INPUT tag is used to specify the files and/or directories that contain\n"
+ "documented source files. You may enter file names like myfile.cpp or\n"
+ "directories like /usr/src/myproject. Separate the files or directories with\n"
+ "spaces.\n"
+ "Note: If this tag is empty the current directory is searched."
+ );
+ cl->addValue("");
+ cl->setWidgetType(ConfigList::FileAndDir);
+ //----
+ cs = cfg->addString(
+ "INPUT_ENCODING",
+ "This tag can be used to specify the character encoding of the source files\n"
+ "that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses\n"
+ "libiconv (or the iconv built into libc) for the transcoding. See the libiconv\n"
+ "documentation (see: http://www.gnu.org/software/libiconv) for the list of\n"
+ "possible encodings.The default value is: UTF-8."
+ );
+ cs->setDefaultValue("UTF-8");
+ //----
+ cl = cfg->addList(
+ "FILE_PATTERNS",
+ "If the value of the INPUT tag contains directories, you can use the\n"
+ "FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and\n"
+ "*.h) to filter out the source-files in the directories. If left blank the\n"
+ "following patterns are tested:*.c, *.cc, *.cxx, *.cpp, *.c++, *.java, *.ii,\n"
+ "*.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, *.hh, *.hxx, *.hpp,\n"
+ "*.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, *.m, *.markdown,\n"
+ "*.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, *.vhdl, *.ucf,\n"
+ "*.qsf, *.as and *.js."
+ );
+ cl->addValue("*.c");
+ cl->addValue("*.cc");
+ cl->addValue("*.cxx");
+ cl->addValue("*.cpp");
+ cl->addValue("*.c++");
+ cl->addValue("*.java");
+ cl->addValue("*.ii");
+ cl->addValue("*.ixx");
+ cl->addValue("*.ipp");
+ cl->addValue("*.i++");
+ cl->addValue("*.inl");
+ cl->addValue("*.idl");
+ cl->addValue("*.ddl");
+ cl->addValue("*.odl");
+ cl->addValue("*.h");
+ cl->addValue("*.hh");
+ cl->addValue("*.hxx");
+ cl->addValue("*.hpp");
+ cl->addValue("*.h++");
+ cl->addValue("*.cs");
+ cl->addValue("*.d");
+ cl->addValue("*.php");
+ cl->addValue("*.php4");
+ cl->addValue("*.php5");
+ cl->addValue("*.phtml");
+ cl->addValue("*.inc");
+ cl->addValue("*.m");
+ cl->addValue("*.markdown");
+ cl->addValue("*.md");
+ cl->addValue("*.mm");
+ cl->addValue("*.dox");
+ cl->addValue("*.py");
+ cl->addValue("*.f90");
+ cl->addValue("*.f");
+ cl->addValue("*.for");
+ cl->addValue("*.tcl");
+ cl->addValue("*.vhd");
+ cl->addValue("*.vhdl");
+ cl->addValue("*.ucf");
+ cl->addValue("*.qsf");
+ cl->addValue("*.as");
+ cl->addValue("*.js");
+ //----
+ cb = cfg->addBool(
+ "RECURSIVE",
+ "The RECURSIVE tag can be used to specify whether or not subdirectories should\n"
+ "be searched for input files as well. Possible values are YES and NO.Default\n"
+ "value: NO.",
+ FALSE
+ );
+ //----
+ cl = cfg->addList(
+ "EXCLUDE",
+ "The EXCLUDE tag can be used to specify files and/or directories that should be\n"
+ "excluded from the INPUT source files. This way you can easily exclude a\n"
+ "subdirectory from a directory tree whose root is specified with the INPUT tag.\n"
+ "\n"
+ "Note that relative paths are relative to the directory from which doxygen is\n"
+ "run."
+ );
+ cl->setWidgetType(ConfigList::FileAndDir);
+ //----
+ cb = cfg->addBool(
+ "EXCLUDE_SYMLINKS",
+ "The EXCLUDE_SYMLINKS tag can be used to select whether or not files or\n"
+ "directories that are symbolic links (a Unix file system feature) are excluded\n"
+ "from the input.Default value: NO.",
+ FALSE
+ );
+ //----
+ cl = cfg->addList(
+ "EXCLUDE_PATTERNS",
+ "If the value of the INPUT tag contains directories, you can use the\n"
+ "EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude\n"
+ "certain files from those directories.\n"
+ "\n"
+ "Note that the wildcards are matched against the file with absolute path, so to\n"
+ "exclude all test directories for example use the pattern */test/*"
+ );
+ //----
+ cl = cfg->addList(
+ "EXCLUDE_SYMBOLS",
+ "The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names\n"
+ "(namespaces, classes, functions, etc.) that should be excluded from the\n"
+ "output. The symbol name can be a fully qualified name, a word, or if the\n"
+ "wildcard * is used, a substring. Examples: ANamespace, AClass,\n"
+ "AClass::ANamespace, ANamespace::*Test\n"
+ "\n"
+ "Note that the wildcards are matched against the file with absolute path, so to\n"
+ "exclude all test directories use the pattern */test/*"
+ );
+ //----
+ cl = cfg->addList(
+ "EXAMPLE_PATH",
+ "The EXAMPLE_PATH tag can be used to specify one or more files or directories\n"
+ "that contain example code fragments that are included (see the \\include\n"
+ "command)."
+ );
+ cl->setWidgetType(ConfigList::FileAndDir);
+ //----
+ cl = cfg->addList(
+ "EXAMPLE_PATTERNS",
+ "If the value of the EXAMPLE_PATH tag contains directories, you can use the\n"
+ "EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and\n"
+ "*.h) to filter out the source-files in the directories. If left blank all\n"
+ "files are included.*."
+ );
+ cl->addValue("*");
+ //----
+ cb = cfg->addBool(
+ "EXAMPLE_RECURSIVE",
+ "If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be\n"
+ "searched for input files to be used with the \\include or \\dontinclude commands\n"
+ "irrespective of the value of the RECURSIVE tag.Default value: NO.",
+ FALSE
+ );
+ //----
+ cl = cfg->addList(
+ "IMAGE_PATH",
+ "The IMAGE_PATH tag can be used to specify one or more files or directories\n"
+ "that contain images that are to be included in the documentation (see the\n"
+ "\\image command)."
+ );
+ cl->setWidgetType(ConfigList::FileAndDir);
+ //----
+ cs = cfg->addString(
+ "INPUT_FILTER",
+ "The INPUT_FILTER tag can be used to specify a program that doxygen should\n"
+ "invoke to filter for each input file. Doxygen will invoke the filter program\n"
+ "by executing (via popen()) the command:\n"
+ "\n"
+ "<filter> <input-file>\n"
+ "\n"
+ "where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the\n"
+ "name of an input file. Doxygen will then use the output that the filter\n"
+ "program writes to standard output. If FILTER_PATTERNS is specified, this tag\n"
+ "will be ignored.\n"
+ "\n"
+ "Note that the filter must not add or remove lines; it is applied before the\n"
+ "code is scanned, but not when the output code is generated. If lines are added\n"
+ "or removed, the anchors will not be placed correctly."
+ );
+ cs->setWidgetType(ConfigString::File);
+ //----
+ cl = cfg->addList(
+ "FILTER_PATTERNS",
+ "The FILTER_PATTERNS tag can be used to specify filters on a per file pattern\n"
+ "basis. Doxygen will compare the file name with each pattern and apply the\n"
+ "filter if there is a match. The filters are a list of the form: pattern=filter\n"
+ "(like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how\n"
+ "filters are used. If the FILTER_PATTERNS tag is empty or if none of the\n"
+ "patterns match the file name, INPUT_FILTER is applied."
+ );
+ //----
+ cb = cfg->addBool(
+ "FILTER_SOURCE_FILES",
+ "If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using\n"
+ "INPUT_FILTER ) will also be used to filter the input files that are used for\n"
+ "producing the source files to browse (i.e. when SOURCE_BROWSER is set to\n"
+ "YES).Default value: NO.",
+ FALSE
+ );
+ //----
+ cl = cfg->addList(
+ "FILTER_SOURCE_PATTERNS",
+ "The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file\n"
+ "pattern. A pattern will override the setting for FILTER_PATTERN (if any) and\n"
+ "it is also possible to disable source filtering for a specific pattern using\n"
+ "*.ext= (so without naming a filter).\n"
+ "\n"
+ "This tag requires that the tag FILTER_SOURCE_FILES is set to YES."
+ );
+ cl->addDependency("FILTER_SOURCE_FILES");
+ //----
+ cs = cfg->addString(
+ "USE_MDFILE_AS_MAINPAGE",
+ "If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that\n"
+ "is part of the input, its contents will be placed on the main page\n"
+ "(index.html). This can be useful if you have a project on for instance GitHub\n"
+ "and want to reuse the introduction page also for the doxygen output."
+ );
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Source_Browser","Configuration options related to source browsing");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "SOURCE_BROWSER",
- "If the SOURCE_BROWSER tag is set to YES then a list of source files will\n"
- "be generated. Documented entities will be cross-referenced with these sources.\n"
- "Note: To get rid of all source code in the generated output, make sure also\n"
- "VERBATIM_HEADERS is set to NO.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "INLINE_SOURCES",
- "Setting the INLINE_SOURCES tag to YES will include the body\n"
- "of functions and classes directly in the documentation.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "STRIP_CODE_COMMENTS",
- "Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct\n"
- "doxygen to hide any special comment blocks from generated source code\n"
- "fragments. Normal C, C++ and Fortran comments will always remain visible.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "REFERENCED_BY_RELATION",
- "If the REFERENCED_BY_RELATION tag is set to YES\n"
- "then for each documented function all documented\n"
- "functions referencing it will be listed.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "REFERENCES_RELATION",
- "If the REFERENCES_RELATION tag is set to YES\n"
- "then for each documented function all documented entities\n"
- "called/used by that function will be listed.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "REFERENCES_LINK_SOURCE",
- "If the REFERENCES_LINK_SOURCE tag is set to YES (the default)\n"
- "and SOURCE_BROWSER tag is set to YES, then the hyperlinks from\n"
- "functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will\n"
- "link to the source code.\n"
- "Otherwise they will link to the documentation.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "SOURCE_TOOLTIPS",
- "If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the\n"
- "source code will show a tooltip with additional information such as prototype,\n"
- "brief description and links to the definition and documentation. Since this will\n"
- "make the HTML file larger and loading of large files a bit slower, you can opt\n"
- "to disable this feature.",
- TRUE
- );
- cb->addDependency("SOURCE_BROWSER");
- //----
- cb = cfg->addBool(
- "USE_HTAGS",
- "If the USE_HTAGS tag is set to YES then the references to source code\n"
- "will point to the HTML generated by the htags(1) tool instead of doxygen\n"
- "built-in source browser. The htags tool is part of GNU's global source\n"
- "tagging system (see http://www.gnu.org/software/global/global.html). You\n"
- "will need version 4.8.6 or higher.",
- FALSE
- );
- cb->addDependency("SOURCE_BROWSER");
- //----
- cb = cfg->addBool(
- "VERBATIM_HEADERS",
- "If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen\n"
- "will generate a verbatim copy of the header file for each class for\n"
- "which an include is specified. Set to NO to disable this.",
- TRUE
- );
+ //----
+ cb = cfg->addBool(
+ "SOURCE_BROWSER",
+ "If the SOURCE_BROWSER tag is set to YES then a list of source files will be\n"
+ "generated. Documented entities will be cross-referenced with these sources.\n"
+ "\n"
+ "Note: To get rid of all source code in the generated output, make sure that\n"
+ "also VERBATIM_HEADERS is set to NO.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "INLINE_SOURCES",
+ "Setting the INLINE_SOURCES tag to YES will include the body of functions,\n"
+ "classes and enums directly into the documentation.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "STRIP_CODE_COMMENTS",
+ "Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any\n"
+ "special comment blocks from generated source code fragments. Normal C, C++ and\n"
+ "Fortran comments will always remain visible.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "REFERENCED_BY_RELATION",
+ "If the REFERENCED_BY_RELATION tag is set to YES then for each documented\n"
+ "function all documented functions referencing it will be listed.Default value:\n"
+ "NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "REFERENCES_RELATION",
+ "If the REFERENCES_RELATION tag is set to YES then for each documented function\n"
+ "all documented entities called/used by that function will be listed.Default\n"
+ "value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "REFERENCES_LINK_SOURCE",
+ "If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set\n"
+ "to YES, then the hyperlinks from functions in REFERENCES_RELATION and\n"
+ "REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will\n"
+ "link to the documentation.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "SOURCE_TOOLTIPS",
+ "If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the\n"
+ "source code will show a tooltip with additional information such as prototype,\n"
+ "brief description and links to the definition and documentation. Since this\n"
+ "will make the HTML file larger and loading of large files a bit slower, you\n"
+ "can opt to disable this feature.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag SOURCE_BROWSER is set to YES.",
+ TRUE
+ );
+ cb->addDependency("SOURCE_BROWSER");
+ //----
+ cb = cfg->addBool(
+ "USE_HTAGS",
+ "If the USE_HTAGS tag is set to YES then the references to source code will\n"
+ "point to the HTML generated by the htags(1) tool instead of doxygen built-in\n"
+ "source browser. The htags tool is part of GNU's global source tagging system\n"
+ "(see http://www.gnu.org/software/global/global.html). You will need version\n"
+ "4.8.6 or higher.\n"
+ "\n"
+ "To use it do the following:\n"
+ "- Install the latest version of global\n"
+ "- Enable SOURCE_BROWSER and USE_HTAGS in the config file\n"
+ "- Make sure the INPUT points to the root of the source tree\n"
+ "- Run doxygen as normal\n"
+ "\n"
+ "Doxygen will invoke htags (and that will in turn invoke gtags), so these\n"
+ "tools must be available from the command line (i.e. in the search path).\n"
+ "\n"
+ "The result: instead of the source browser generated by doxygen, the links to\n"
+ "source code will now point to the output of htags.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag SOURCE_BROWSER is set to YES.",
+ FALSE
+ );
+ cb->addDependency("SOURCE_BROWSER");
+ //----
+ cb = cfg->addBool(
+ "VERBATIM_HEADERS",
+ "If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a\n"
+ "verbatim copy of the header file for each class for which an include is\n"
+ "specified. Set to NO to disable this.\n"
+ "See also: Section \\class.Default value: YES.",
+ TRUE
+ );
#if USE_LIBCLANG
- //----
- cb = cfg->addBool(
- "CLANG_ASSISTED_PARSING",
- "If CLANG_ASSISTED_PARSING is set to YES, then doxygen will use the clang parser\n"
- "for more acurate parsing at the cost of reduced performance. This can be\n"
- "particularly helpful with template rich C++ code for which doxygen's built-in\n"
- "parser lacks the necessairy type information.",
- FALSE
- );
+ //----
+ cb = cfg->addBool(
+ "CLANG_ASSISTED_PARSING",
+ "If the CLANG_ASSISTED_PARSING tag is set to YES, then doxygen will use the\n"
+ "clang parser (see: http://clang.llvm.org/) for more acurate parsing at the\n"
+ "cost of reduced performance. This can be particularly helpful with template\n"
+ "rich C++ code for which doxygen's built-in parser lacks the necessary type\n"
+ "information.\n"
+ "Note: The availability of this option depends on whether or not doxygen was\n"
+ "compiled with the --with-libclang option.Default value: NO.",
+ FALSE
+ );
#else
- cfg->addDisabled("CLANG_ASSISTED_PARSING");
+ cfg->addDisabled("CLANG_ASSISTED_PARSING");
#endif
#if USE_LIBCLANG
- //----
- cl = cfg->addList(
- "CLANG_OPTIONS",
- "If clang assisted parsing is enabled you can provide the compiler with command\n"
- "line options that you would normally use when invoking the compiler. Note that\n"
- "the include paths will already be set by doxygen for the files and directories\n"
- "specified at INPUT and INCLUDE_PATH."
- );
- cl->addDependency("CLANG_ASSISTED_PARSING");
+ //----
+ cl = cfg->addList(
+ "CLANG_OPTIONS",
+ "If clang assisted parsing is enabled you can provide the compiler with command\n"
+ "line options that you would normally use when invoking the compiler. Note that\n"
+ "the include paths will already be set by doxygen for the files and directories\n"
+ "specified with INPUT and INCLUDE_PATH.\n"
+ "\n"
+ "This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES."
+ );
+ cl->addDependency("CLANG_ASSISTED_PARSING");
#else
- cfg->addDisabled("CLANG_OPTIONS");
+ cfg->addDisabled("CLANG_OPTIONS");
#endif
- //---------------------------------------------------------------------------
- cfg->addInfo("Index","configuration options related to the alphabetical class index");
- //---------------------------------------------------------------------------
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Index","Configuration options related to the alphabetical class index");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "ALPHABETICAL_INDEX",
- "If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index\n"
- "of all compounds will be generated. Enable this if the project\n"
- "contains a lot of classes, structs, unions or interfaces.",
- TRUE
- );
- //----
- ci = cfg->addInt(
- "COLS_IN_ALPHA_INDEX",
- "If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then\n"
- "the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns\n"
- "in which this list will be split (can be a number in the range [1..20])",
- 1,20,5
- );
- ci->addDependency("ALPHABETICAL_INDEX");
- //----
- cl = cfg->addList(
- "IGNORE_PREFIX",
- "In case all classes in a project start with a common prefix, all\n"
- "classes will be put under the same header in the alphabetical index.\n"
- "The IGNORE_PREFIX tag can be used to specify one or more prefixes that\n"
- "should be ignored while generating the index headers."
- );
- cl->addDependency("ALPHABETICAL_INDEX");
- //---------------------------------------------------------------------------
- cfg->addInfo("HTML","configuration options related to the HTML output");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "ALPHABETICAL_INDEX",
+ "If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all\n"
+ "compounds will be generated. Enable this if the project contains a lot of\n"
+ "classes, structs, unions or interfaces.Default value: YES.",
+ TRUE
+ );
+ //----
+ ci = cfg->addInt(
+ "COLS_IN_ALPHA_INDEX",
+ "The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in\n"
+ "which the alphabetical index list will be split. Minimum value: 1, maximum\n"
+ "value: 20, default value: 5.\n"
+ "\n"
+ "This tag requires that the tag ALPHABETICAL_INDEX is set to YES.",
+ 1,20,5
+ );
+ ci->addDependency("ALPHABETICAL_INDEX");
+ //----
+ cl = cfg->addList(
+ "IGNORE_PREFIX",
+ "In case all classes in a project start with a common prefix, all classes will\n"
+ "be put under the same header in the alphabetical index. The IGNORE_PREFIX tag\n"
+ "can be used to specify a prefix (or a list of prefixes) that should be ignored\n"
+ "while generating the index headers.\n"
+ "\n"
+ "This tag requires that the tag ALPHABETICAL_INDEX is set to YES."
+ );
+ cl->addDependency("ALPHABETICAL_INDEX");
+ //---------------------------------------------------------------------------
+ cfg->addInfo("HTML","Configuration options related to the HTML output");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "GENERATE_HTML",
- "If the GENERATE_HTML tag is set to YES (the default) Doxygen will\n"
- "generate HTML output.",
- TRUE
- );
- //----
- cs = cfg->addString(
- "HTML_OUTPUT",
- "The HTML_OUTPUT tag is used to specify where the HTML docs will be put.\n"
- "If a relative path is entered the value of OUTPUT_DIRECTORY will be\n"
- "put in front of it. If left blank `html' will be used as the default path."
- );
- cs->setDefaultValue("html");
- cs->setWidgetType(ConfigString::Dir);
- cs->addDependency("GENERATE_HTML");
- //----
- cs = cfg->addString(
- "HTML_FILE_EXTENSION",
- "The HTML_FILE_EXTENSION tag can be used to specify the file extension for\n"
- "each generated HTML page (for example: .htm,.php,.asp). If it is left blank\n"
- "doxygen will generate files with .html extension."
- );
- cs->setDefaultValue(".html");
- cs->addDependency("GENERATE_HTML");
- //----
- cs = cfg->addString(
- "HTML_HEADER",
- "The HTML_HEADER tag can be used to specify a personal HTML header for\n"
- "each generated HTML page. If it is left blank doxygen will generate a\n"
- "standard header. Note that when using a custom header you are responsible\n"
- " for the proper inclusion of any scripts and style sheets that doxygen\n"
- "needs, which is dependent on the configuration options used.\n"
- "It is advised to generate a default header using \"doxygen -w html\n"
- "header.html footer.html stylesheet.css YourConfigFile\" and then modify\n"
- "that header. Note that the header is subject to change so you typically\n"
- "have to redo this when upgrading to a newer version of doxygen or when\n"
- "changing the value of configuration settings such as GENERATE_TREEVIEW!"
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_HTML");
- //----
- cs = cfg->addString(
- "HTML_FOOTER",
- "The HTML_FOOTER tag can be used to specify a personal HTML footer for\n"
- "each generated HTML page. If it is left blank doxygen will generate a\n"
- "standard footer."
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_HTML");
- //----
- cs = cfg->addString(
- "HTML_STYLESHEET",
- "The HTML_STYLESHEET tag can be used to specify a user-defined cascading\n"
- "style sheet that is used by each HTML page. It can be used to\n"
- "fine-tune the look of the HTML output. If left blank doxygen will\n"
- "generate a default style sheet. Note that it is recommended to use\n"
- "HTML_EXTRA_STYLESHEET instead of this one, as it is more robust and this\n"
- "tag will in the future become obsolete."
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_HTML");
- //----
- cs = cfg->addString(
- "HTML_EXTRA_STYLESHEET",
- "The HTML_EXTRA_STYLESHEET tag can be used to specify an additional\n"
- "user-defined cascading style sheet that is included after the standard\n"
- "style sheets created by doxygen. Using this option one can overrule\n"
- "certain style aspects. This is preferred over using HTML_STYLESHEET\n"
- "since it does not replace the standard style sheet and is therefor more\n"
- "robust against future updates. Doxygen will copy the style sheet file to\n"
- "the output directory."
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_HTML");
- //----
- cl = cfg->addList(
- "HTML_EXTRA_FILES",
- "The HTML_EXTRA_FILES tag can be used to specify one or more extra images or\n"
- "other source files which should be copied to the HTML output directory. Note\n"
- "that these files will be copied to the base HTML output directory. Use the\n"
- "$relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these\n"
- "files. In the HTML_STYLESHEET file, use the file name only. Also note that\n"
- "the files will be copied as-is; there are no commands or markers available."
- );
- cl->addDependency("GENERATE_HTML");
- cl->setWidgetType(ConfigList::File);
- //----
- ci = cfg->addInt(
- "HTML_COLORSTYLE_HUE",
- "The HTML_COLORSTYLE_HUE tag controls the color of the HTML output.\n"
- "Doxygen will adjust the colors in the style sheet and background images\n"
- "according to this color. Hue is specified as an angle on a colorwheel,\n"
- "see http://en.wikipedia.org/wiki/Hue for more information.\n"
- "For instance the value 0 represents red, 60 is yellow, 120 is green,\n"
- "180 is cyan, 240 is blue, 300 purple, and 360 is red again.\n"
- "The allowed range is 0 to 359.",
- 0,359,220
- );
- ci->addDependency("GENERATE_HTML");
- //----
- ci = cfg->addInt(
- "HTML_COLORSTYLE_SAT",
- "The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of\n"
- "the colors in the HTML output. For a value of 0 the output will use\n"
- "grayscales only. A value of 255 will produce the most vivid colors.",
- 0,255,100
- );
- ci->addDependency("GENERATE_HTML");
- //----
- ci = cfg->addInt(
- "HTML_COLORSTYLE_GAMMA",
- "The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to\n"
- "the luminance component of the colors in the HTML output. Values below\n"
- "100 gradually make the output lighter, whereas values above 100 make\n"
- "the output darker. The value divided by 100 is the actual gamma applied,\n"
- "so 80 represents a gamma of 0.8, The value 220 represents a gamma of 2.2,\n"
- "and 100 does not change the gamma.",
- 40,240,80
- );
- ci->addDependency("GENERATE_HTML");
- //----
- cb = cfg->addBool(
- "HTML_TIMESTAMP",
- "If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML\n"
- "page will contain the date and time when the page was generated. Setting\n"
- "this to NO can help when comparing the output of multiple runs.",
- TRUE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- cb = cfg->addBool(
- "HTML_DYNAMIC_SECTIONS",
- "If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML\n"
- "documentation will contain sections that can be hidden and shown after the\n"
- "page has loaded.",
- FALSE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- ci = cfg->addInt(
- "HTML_INDEX_NUM_ENTRIES",
- "With HTML_INDEX_NUM_ENTRIES one can control the preferred number of\n"
- "entries shown in the various tree structured indices initially; the user\n"
- "can expand and collapse entries dynamically later on. Doxygen will expand\n"
- "the tree to such a level that at most the specified number of entries are\n"
- "visible (unless a fully collapsed tree already exceeds this amount).\n"
- "So setting the number of entries 1 will produce a full collapsed tree by\n"
- "default. 0 is a special value representing an infinite number of entries\n"
- "and will result in a full expanded tree by default.",
- 0,9999,100
- );
- ci->addDependency("GENERATE_HTML");
- //----
- cb = cfg->addBool(
- "GENERATE_DOCSET",
- "If the GENERATE_DOCSET tag is set to YES, additional index files\n"
- "will be generated that can be used as input for Apple's Xcode 3\n"
- "integrated development environment, introduced with OSX 10.5 (Leopard).\n"
- "To create a documentation set, doxygen will generate a Makefile in the\n"
- "HTML output directory. Running make will produce the docset in that\n"
- "directory and running \"make install\" will install the docset in\n"
- "~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find\n"
- "it at startup.\n"
- "See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html\n"
- "for more information.",
- FALSE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- cs = cfg->addString(
- "DOCSET_FEEDNAME",
- "When GENERATE_DOCSET tag is set to YES, this tag determines the name of the\n"
- "feed. A documentation feed provides an umbrella under which multiple\n"
- "documentation sets from a single provider (such as a company or product suite)\n"
- "can be grouped."
- );
- cs->setDefaultValue("Doxygen generated docs");
- cs->addDependency("GENERATE_DOCSET");
- //----
- cs = cfg->addString(
- "DOCSET_BUNDLE_ID",
- "When GENERATE_DOCSET tag is set to YES, this tag specifies a string that\n"
- "should uniquely identify the documentation set bundle. This should be a\n"
- "reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen\n"
- "will append .docset to the name."
- );
- cs->setDefaultValue("org.doxygen.Project");
- cs->addDependency("GENERATE_DOCSET");
- //----
- cs = cfg->addString(
- "DOCSET_PUBLISHER_ID",
- "When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely\n"
- "identify the documentation publisher. This should be a reverse domain-name\n"
- "style string, e.g. com.mycompany.MyDocSet.documentation."
- );
- cs->setDefaultValue("org.doxygen.Publisher");
- cs->addDependency("GENERATE_DOCSET");
- //----
- cs = cfg->addString(
- "DOCSET_PUBLISHER_NAME",
- "The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher."
- );
- cs->setDefaultValue("Publisher");
- cs->addDependency("GENERATE_DOCSET");
- //----
- cb = cfg->addBool(
- "GENERATE_HTMLHELP",
- "If the GENERATE_HTMLHELP tag is set to YES, additional index files\n"
- "will be generated that can be used as input for tools like the\n"
- "Microsoft HTML help workshop to generate a compiled HTML help file (.chm)\n"
- "of the generated HTML documentation.",
- FALSE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- cs = cfg->addString(
- "CHM_FILE",
- "If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can\n"
- "be used to specify the file name of the resulting .chm file. You\n"
- "can add a path in front of the file if the result should not be\n"
- "written to the html output directory."
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_HTMLHELP");
- //----
- cs = cfg->addString(
- "HHC_LOCATION",
- "If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can\n"
- "be used to specify the location (absolute path including file name) of\n"
- "the HTML help compiler (hhc.exe). If non-empty doxygen will try to run\n"
- "the HTML help compiler on the generated index.hhp."
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_HTMLHELP");
- //----
- cb = cfg->addBool(
- "GENERATE_CHI",
- "If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag\n"
- "controls if a separate .chi index file is generated (YES) or that\n"
- "it should be included in the master .chm file (NO).",
- FALSE
- );
- cb->addDependency("GENERATE_HTMLHELP");
- //----
- cs = cfg->addString(
- "CHM_INDEX_ENCODING",
- "If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING\n"
- "is used to encode HtmlHelp index (hhk), content (hhc) and project file\n"
- "content."
- );
- cs->addDependency("GENERATE_HTMLHELP");
- //----
- cb = cfg->addBool(
- "BINARY_TOC",
- "If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag\n"
- "controls whether a binary table of contents is generated (YES) or a\n"
- "normal table of contents (NO) in the .chm file.",
- FALSE
- );
- cb->addDependency("GENERATE_HTMLHELP");
- //----
- cb = cfg->addBool(
- "TOC_EXPAND",
- "The TOC_EXPAND flag can be set to YES to add extra items for group members\n"
- "to the contents of the HTML help documentation and to the tree view.",
- FALSE
- );
- cb->addDependency("GENERATE_HTMLHELP");
- //----
- cb = cfg->addBool(
- "GENERATE_QHP",
- "If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and\n"
- "QHP_VIRTUAL_FOLDER are set, an additional index file will be generated\n"
- "that can be used as input for Qt's qhelpgenerator to generate a\n"
- "Qt Compressed Help (.qch) of the generated HTML documentation.",
- FALSE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- cs = cfg->addString(
- "QCH_FILE",
- "If the QHG_LOCATION tag is specified, the QCH_FILE tag can\n"
- "be used to specify the file name of the resulting .qch file.\n"
- "The path specified is relative to the HTML output folder."
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_QHP");
- //----
- cs = cfg->addString(
- "QHP_NAMESPACE",
- "The QHP_NAMESPACE tag specifies the namespace to use when generating\n"
- "Qt Help Project output. For more information please see\n"
- "http://doc.trolltech.com/qthelpproject.html#namespace"
- );
- cs->setDefaultValue("org.doxygen.Project");
- cs->addDependency("GENERATE_QHP");
- //----
- cs = cfg->addString(
- "QHP_VIRTUAL_FOLDER",
- "The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating\n"
- "Qt Help Project output. For more information please see\n"
- "http://doc.trolltech.com/qthelpproject.html#virtual-folders"
- );
- cs->setDefaultValue("doc");
- cs->addDependency("GENERATE_QHP");
- //----
- cs = cfg->addString(
- "QHP_CUST_FILTER_NAME",
- "If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to\n"
- "add. For more information please see\n"
- "http://doc.trolltech.com/qthelpproject.html#custom-filters"
- );
- cs->addDependency("GENERATE_QHP");
- //----
- cs = cfg->addString(
- "QHP_CUST_FILTER_ATTRS",
- "The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the\n"
- "custom filter to add. For more information please see\n"
- "<a href=\"http://doc.trolltech.com/qthelpproject.html#custom-filters\">\n"
- "Qt Help Project / Custom Filters</a>."
- );
- cs->addDependency("GENERATE_QHP");
- //----
- cs = cfg->addString(
- "QHP_SECT_FILTER_ATTRS",
- "The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this\n"
- "project's\n"
- "filter section matches.\n"
- "<a href=\"http://doc.trolltech.com/qthelpproject.html#filter-attributes\">\n"
- "Qt Help Project / Filter Attributes</a>."
- );
- cs->addDependency("GENERATE_QHP");
- //----
- cs = cfg->addString(
- "QHG_LOCATION",
- "If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can\n"
- "be used to specify the location of Qt's qhelpgenerator.\n"
- "If non-empty doxygen will try to run qhelpgenerator on the generated\n"
- ".qhp file."
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_QHP");
- //----
- cb = cfg->addBool(
- "GENERATE_ECLIPSEHELP",
- "If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files\n"
- " will be generated, which together with the HTML files, form an Eclipse help\n"
- "plugin. To install this plugin and make it available under the help contents\n"
- "menu in Eclipse, the contents of the directory containing the HTML and XML\n"
- "files needs to be copied into the plugins directory of eclipse. The name of\n"
- "the directory within the plugins directory should be the same as\n"
- "the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before\n"
- "the help appears.",
- FALSE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- cs = cfg->addString(
- "ECLIPSE_DOC_ID",
- "A unique identifier for the eclipse help plugin. When installing the plugin\n"
- "the directory name containing the HTML and XML files should also have\n"
- "this name."
- );
- cs->setDefaultValue("org.doxygen.Project");
- cs->addDependency("GENERATE_ECLIPSEHELP");
- //----
- cb = cfg->addBool(
- "DISABLE_INDEX",
- "The DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs)\n"
- "at top of each HTML page. The value NO (the default) enables the index and\n"
- "the value YES disables it. Since the tabs have the same information as the\n"
- "navigation tree you can set this option to NO if you already set\n"
- "GENERATE_TREEVIEW to YES.",
- FALSE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- cb = cfg->addBool(
- "GENERATE_TREEVIEW",
- "The GENERATE_TREEVIEW tag is used to specify whether a tree-like index\n"
- "structure should be generated to display hierarchical information.\n"
- "If the tag value is set to YES, a side panel will be generated\n"
- "containing a tree-like index structure (just like the one that\n"
- "is generated for HTML Help). For this to work a browser that supports\n"
- "JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).\n"
- "Windows users are probably better off using the HTML help feature.\n"
- "Since the tree basically has the same information as the tab index you\n"
- "could consider to set DISABLE_INDEX to NO when enabling this option.",
- FALSE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- ci = cfg->addInt(
- "ENUM_VALUES_PER_LINE",
- "The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values\n"
- "(range [0,1..20]) that doxygen will group on one line in the generated HTML\n"
- "documentation. Note that a value of 0 will completely suppress the enum\n"
- "values from appearing in the overview section.",
- 0,20,4
- );
- ci->addDependency("GENERATE_HTML");
- //----
- ci = cfg->addInt(
- "TREEVIEW_WIDTH",
- "If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be\n"
- "used to set the initial width (in pixels) of the frame in which the tree\n"
- "is shown.",
- 0,1500,250
- );
- ci->addDependency("GENERATE_HTML");
- //----
- cb = cfg->addBool(
- "EXT_LINKS_IN_WINDOW",
- "When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open\n"
- "links to external symbols imported via tag files in a separate window.",
- FALSE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- ci = cfg->addInt(
- "FORMULA_FONTSIZE",
- "Use this tag to change the font size of Latex formulas included\n"
- "as images in the HTML documentation. The default is 10. Note that\n"
- "when you change the font size after a successful doxygen run you need\n"
- "to manually remove any form_*.png images from the HTML output directory\n"
- "to force them to be regenerated.",
- 8,50,10
- );
- ci->addDependency("GENERATE_HTML");
- //----
- cb = cfg->addBool(
- "FORMULA_TRANSPARENT",
- "Use the FORMULA_TRANPARENT tag to determine whether or not the images\n"
- "generated for formulas are transparent PNGs. Transparent PNGs are\n"
- "not supported properly for IE 6.0, but are supported on all modern browsers.\n"
- "Note that when changing this option you need to delete any form_*.png files\n"
- "in the HTML output before the changes have effect.",
- TRUE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- cb = cfg->addBool(
- "USE_MATHJAX",
- "Enable the USE_MATHJAX option to render LaTeX formulas using MathJax\n"
- "(see http://www.mathjax.org) which uses client side Javascript for the\n"
- "rendering instead of using prerendered bitmaps. Use this if you do not\n"
- "have LaTeX installed or if you want to formulas look prettier in the HTML\n"
- "output. When enabled you may also need to install MathJax separately and\n"
- "configure the path to it using the MATHJAX_RELPATH option.",
- FALSE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- ce = cfg->addEnum(
- "MATHJAX_FORMAT",
- "When MathJax is enabled you can set the default output format to be used for\n"
- "the MathJax output. Supported types are HTML-CSS, NativeMML (i.e. MathML) and\n"
- "SVG. The default value is HTML-CSS, which is slower, but has the best\n"
- "compatibility.",
- "HTML-CSS"
- );
- ce->addValue("HTML-CSS");
- ce->addValue("NativeMML");
- ce->addValue("SVG");
- ce->addDependency("USE_MATHJAX");
- //----
- cs = cfg->addString(
- "MATHJAX_RELPATH",
- "When MathJax is enabled you need to specify the location relative to the\n"
- "HTML output directory using the MATHJAX_RELPATH option. The destination\n"
- "directory should contain the MathJax.js script. For instance, if the mathjax\n"
- "directory is located at the same level as the HTML output directory, then\n"
- "MATHJAX_RELPATH should be ../mathjax. The default value points to\n"
- "the MathJax Content Delivery Network so you can quickly see the result without\n"
- "installing MathJax.\n"
- "However, it is strongly recommended to install a local\n"
- "copy of MathJax from http://www.mathjax.org before deployment."
- );
- cs->setDefaultValue("http://cdn.mathjax.org/mathjax/latest");
- cs->addDependency("USE_MATHJAX");
- //----
- cl = cfg->addList(
- "MATHJAX_EXTENSIONS",
- "The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension\n"
- "names that should be enabled during MathJax rendering."
- );
- cl->addDependency("USE_MATHJAX");
- //----
- cs = cfg->addString(
- "MATHJAX_CODEFILE",
- "The MATHJAX_CODEFILE tag can be used to specify a file with javascript\n"
- "pieces of code that will be used on startup of the MathJax code."
- );
- cs->addDependency("USE_MATHJAX");
- //----
- cb = cfg->addBool(
- "SEARCHENGINE",
- "When the SEARCHENGINE tag is enabled doxygen will generate a search box\n"
- "for the HTML output. The underlying search engine uses javascript\n"
- "and DHTML and should work on any modern browser. Note that when using\n"
- "HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets\n"
- "(GENERATE_DOCSET) there is already a search function so this one should\n"
- "typically be disabled. For large projects the javascript based search engine\n"
- "can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.",
- TRUE
- );
- cb->addDependency("GENERATE_HTML");
- //----
- cb = cfg->addBool(
- "SERVER_BASED_SEARCH",
- "When the SERVER_BASED_SEARCH tag is enabled the search engine will be\n"
- "implemented using a web server instead of a web client using Javascript.\n"
- "There are two flavours of web server based search depending on the\n"
- "EXTERNAL_SEARCH setting. When disabled, doxygen will generate a PHP script for\n"
- "searching and an index file used by the script. When EXTERNAL_SEARCH is\n"
- "enabled the indexing and searching needs to be provided by external tools.\n"
- "See the manual for details.",
- FALSE
- );
- cb->addDependency("SEARCHENGINE");
- //----
- cb = cfg->addBool(
- "EXTERNAL_SEARCH",
- "When EXTERNAL_SEARCH is enabled doxygen will no longer generate the PHP\n"
- "script for searching. Instead the search results are written to an XML file\n"
- "which needs to be processed by an external indexer. Doxygen will invoke an\n"
- "external search engine pointed to by the SEARCHENGINE_URL option to obtain\n"
- "the search results. Doxygen ships with an example indexer (doxyindexer) and\n"
- "search engine (doxysearch.cgi) which are based on the open source search\n"
- "engine library Xapian. See the manual for configuration details.",
- FALSE
- );
- cb->addDependency("SEARCHENGINE");
- //----
- cs = cfg->addString(
- "SEARCHENGINE_URL",
- "The SEARCHENGINE_URL should point to a search engine hosted by a web server\n"
- "which will returned the search results when EXTERNAL_SEARCH is enabled.\n"
- "Doxygen ships with an example search engine (doxysearch) which is based on\n"
- "the open source search engine library Xapian. See the manual for configuration\n"
- "details."
- );
- cs->addDependency("SEARCHENGINE");
- //----
- cs = cfg->addString(
- "SEARCHDATA_FILE",
- "When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed\n"
- "search data is written to a file for indexing by an external tool. With the\n"
- "SEARCHDATA_FILE tag the name of this file can be specified."
- );
- cs->setDefaultValue("searchdata.xml");
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("SEARCHENGINE");
- //----
- cs = cfg->addString(
- "EXTERNAL_SEARCH_ID",
- "When SERVER_BASED_SEARCH AND EXTERNAL_SEARCH are both enabled the\n"
- "EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is\n"
- "useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple\n"
- "projects and redirect the results back to the right project."
- );
- cs->addDependency("SEARCHENGINE");
- //----
- cl = cfg->addList(
- "EXTRA_SEARCH_MAPPINGS",
- "The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen\n"
- "projects other than the one defined by this configuration file, but that are\n"
- "all added to the same external search index. Each project needs to have a\n"
- "unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id\n"
- "of to a relative location where the documentation can be found.\n"
- "The format is: EXTRA_SEARCH_MAPPINGS = id1=loc1 id2=loc2 ..."
- );
- cl->addDependency("SEARCHENGINE");
- //---------------------------------------------------------------------------
- cfg->addInfo("LaTeX","configuration options related to the LaTeX output");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "GENERATE_HTML",
+ "If the GENERATE_HTML tag is set to YES doxygen will generate HTML\n"
+ "outputDefault value: YES.",
+ TRUE
+ );
+ //----
+ cs = cfg->addString(
+ "HTML_OUTPUT",
+ "The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a\n"
+ "relative path is entered the value of OUTPUT_DIRECTORY will be put in front of\n"
+ "it.The default directory is: html.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES."
+ );
+ cs->setDefaultValue("html");
+ cs->setWidgetType(ConfigString::Dir);
+ cs->addDependency("GENERATE_HTML");
+ //----
+ cs = cfg->addString(
+ "HTML_FILE_EXTENSION",
+ "The HTML_FILE_EXTENSION tag can be used to specify the file extension for each\n"
+ "generated HTML page (for example: .htm, .php, .asp).The default value is:\n"
+ ".html.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES."
+ );
+ cs->setDefaultValue(".html");
+ cs->addDependency("GENERATE_HTML");
+ //----
+ cs = cfg->addString(
+ "HTML_HEADER",
+ "The HTML_HEADER tag can be used to specify a user-defined HTML header file for\n"
+ "each generated HTML page. If the tag is left blank doxygen will generate a\n"
+ "standard header.\n"
+ "\n"
+ "To get valid HTML the header file that includes any scripts and style sheets\n"
+ "that doxygen needs, which is dependent on the configuration options used (e.g.\n"
+ "the setting GENERATE_TREEVIEW). It is highly recommended to start with a\n"
+ "default header using\n"
+ "doxygen -w html new_header.html new_footer.html new_stylesheet.css\n"
+ "YourConfigFile\n"
+ "and then modify the file new_header.html. See also section \"Doxygen usage\"\n"
+ "for information on how to generate the default header that doxygen normally\n"
+ "uses.\n"
+ "Note: The header is subject to change so you typically have to regenerate the\n"
+ "default header when upgrading to a newer version of doxygen. For a description\n"
+ "of the possible markers and block names see the documentation.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_HTML");
+ //----
+ cs = cfg->addString(
+ "HTML_FOOTER",
+ "The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each\n"
+ "generated HTML page. If the tag is left blank doxygen will generate a standard\n"
+ "footer. See HTML_HEADER for more information on how to generate a default\n"
+ "footer and what special commands can be used inside the footer. See also\n"
+ "section \"Doxygen usage\" for information on how to generate the default footer\n"
+ "that doxygen normally uses.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_HTML");
+ //----
+ cs = cfg->addString(
+ "HTML_STYLESHEET",
+ "The HTML_STYLESHEET tag can be used to specify a user-defined cascading style\n"
+ "sheet that is used by each HTML page. It can be used to fine-tune the look of\n"
+ "the HTML output. If left blank doxygen will generate a default style sheet.\n"
+ "See also section \"Doxygen usage\" for information on how to generate the style\n"
+ "sheet that doxygen normally uses.\n"
+ "Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as\n"
+ "it is more robust and this tag (HTML_STYLESHEET) will in the future become\n"
+ "obsolete.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_HTML");
+ //----
+ cs = cfg->addString(
+ "HTML_EXTRA_STYLESHEET",
+ "The HTML_EXTRA_STYLESHEET tag can be used to specify an additional user-\n"
+ "defined cascading style sheet that is included after the standard style sheets\n"
+ "created by doxygen. Using this option one can overrule certain style aspects.\n"
+ "This is preferred over using HTML_STYLESHEET since it does not replace the\n"
+ "standard style sheet and is therefor more robust against future updates.\n"
+ "Doxygen will copy the style sheet file to the output directory. For an example\n"
+ "see the documentation.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_HTML");
+ //----
+ cl = cfg->addList(
+ "HTML_EXTRA_FILES",
+ "The HTML_EXTRA_FILES tag can be used to specify one or more extra images or\n"
+ "other source files which should be copied to the HTML output directory. Note\n"
+ "that these files will be copied to the base HTML output directory. Use the\n"
+ "$relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these\n"
+ "files. In the HTML_STYLESHEET file, use the file name only. Also note that the\n"
+ "files will be copied as-is; there are no commands or markers available.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES."
+ );
+ cl->addDependency("GENERATE_HTML");
+ cl->setWidgetType(ConfigList::File);
+ //----
+ ci = cfg->addInt(
+ "HTML_COLORSTYLE_HUE",
+ "The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen\n"
+ "will adjust the colors in the stylesheet and background images according to\n"
+ "this color. Hue is specified as an angle on a colorwheel, see\n"
+ "http://en.wikipedia.org/wiki/Hue for more information. For instance the value\n"
+ "0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300\n"
+ "purple, and 360 is red again. The allowed range is 0 to 359. Minimum value: 0,\n"
+ "maximum value: 359, default value: 220.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ 0,359,220
+ );
+ ci->addDependency("GENERATE_HTML");
+ //----
+ ci = cfg->addInt(
+ "HTML_COLORSTYLE_SAT",
+ "The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors\n"
+ "in the HTML output. For a value of 0 the output will use grayscales only. A\n"
+ "value of 255 will produce the most vivid colors. Minimum value: 0, maximum\n"
+ "value: 255, default value: 100.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ 0,255,100
+ );
+ ci->addDependency("GENERATE_HTML");
+ //----
+ ci = cfg->addInt(
+ "HTML_COLORSTYLE_GAMMA",
+ "The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the\n"
+ "luminance component of the colors in the HTML output. Values below 100\n"
+ "gradually make the output lighter, whereas values above 100 make the output\n"
+ "darker. The value divided by 100 is the actual gamma applied, so 80 represents\n"
+ "a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not\n"
+ "change the gamma. Minimum value: 40, maximum value: 240, default value: 80.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ 40,240,80
+ );
+ ci->addDependency("GENERATE_HTML");
+ //----
+ cb = cfg->addBool(
+ "HTML_TIMESTAMP",
+ "If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML\n"
+ "page will contain the date and time when the page was generated. Setting this\n"
+ "to NO can help when comparing the output of multiple runs.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ TRUE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ cb = cfg->addBool(
+ "HTML_DYNAMIC_SECTIONS",
+ "If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML\n"
+ "documentation will contain sections that can be hidden and shown after the\n"
+ "page has loaded.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ ci = cfg->addInt(
+ "HTML_INDEX_NUM_ENTRIES",
+ "With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries\n"
+ "shown in the various tree structured indices initially; the user can expand\n"
+ "and collapse entries dynamically later on. Doxygen will expand the tree to\n"
+ "such a level that at most the specified number of entries are visible (unless\n"
+ "a fully collapsed tree already exceeds this amount). So setting the number of\n"
+ "entries 1 will produce a full collapsed tree by default. 0 is a special value\n"
+ "representing an infinite number of entries and will result in a full expanded\n"
+ "tree by default. Minimum value: 0, maximum value: 9999, default value: 100.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ 0,9999,100
+ );
+ ci->addDependency("GENERATE_HTML");
+ //----
+ cb = cfg->addBool(
+ "GENERATE_DOCSET",
+ "If the GENERATE_DOCSET tag is set to YES, additional index files will be\n"
+ "generated that can be used as input for Apple's Xcode 3 integrated development\n"
+ "environment (see: http://developer.apple.com/tools/xcode/), introduced with\n"
+ "OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a\n"
+ "Makefile in the HTML output directory. Running make will produce the docset in\n"
+ "that directory and running make install will install the docset in\n"
+ "~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at\n"
+ "startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html\n"
+ "for more information.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ cs = cfg->addString(
+ "DOCSET_FEEDNAME",
+ "This tag determines the name of the docset feed. A documentation feed provides\n"
+ "an umbrella under which multiple documentation sets from a single provider\n"
+ "(such as a company or product suite) can be grouped.The default value is:\n"
+ "Doxygen generated docs.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_DOCSET is set to YES."
+ );
+ cs->setDefaultValue("Doxygen generated docs");
+ cs->addDependency("GENERATE_DOCSET");
+ //----
+ cs = cfg->addString(
+ "DOCSET_BUNDLE_ID",
+ "This tag specifies a string that should uniquely identify the documentation\n"
+ "set bundle. This should be a reverse domain-name style string, e.g.\n"
+ "com.mycompany.MyDocSet. Doxygen will append .docset to the name.The default\n"
+ "value is: org.doxygen.Project.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_DOCSET is set to YES."
+ );
+ cs->setDefaultValue("org.doxygen.Project");
+ cs->addDependency("GENERATE_DOCSET");
+ //----
+ cs = cfg->addString(
+ "DOCSET_PUBLISHER_ID",
+ "The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify\n"
+ "the documentation publisher. This should be a reverse domain-name style\n"
+ "string, e.g. com.mycompany.MyDocSet.documentation.The default value is:\n"
+ "org.doxygen.Publisher.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_DOCSET is set to YES."
+ );
+ cs->setDefaultValue("org.doxygen.Publisher");
+ cs->addDependency("GENERATE_DOCSET");
+ //----
+ cs = cfg->addString(
+ "DOCSET_PUBLISHER_NAME",
+ "The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.The\n"
+ "default value is: Publisher.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_DOCSET is set to YES."
+ );
+ cs->setDefaultValue("Publisher");
+ cs->addDependency("GENERATE_DOCSET");
+ //----
+ cb = cfg->addBool(
+ "GENERATE_HTMLHELP",
+ "If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three\n"
+ "additional HTML index files: index.hhp, index.hhc, and index.hhk. The\n"
+ "index.hhp is a project file that can be read by Microsoft's HTML Help Workshop\n"
+ "(see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on\n"
+ "Windows.\n"
+ "\n"
+ "The HTML Help Workshop contains a compiler that can convert all HTML output\n"
+ "generated by doxygen into a single compiled HTML file (.chm). Compiled HTML\n"
+ "files are now used as the Windows 98 help format, and will replace the old\n"
+ "Windows help format (.hlp) on all Windows platforms in the future. Compressed\n"
+ "HTML files also contain an index, a table of contents, and you can search for\n"
+ "words in the documentation. The HTML workshop also contains a viewer for\n"
+ "compressed HTML files.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ cs = cfg->addString(
+ "CHM_FILE",
+ "The CHM_FILE tag can be used to specify the file name of the resulting .chm\n"
+ "file. You can add a path in front of the file if the result should not be\n"
+ "written to the html output directory.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTMLHELP is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_HTMLHELP");
+ //----
+ cs = cfg->addString(
+ "HHC_LOCATION",
+ "The HHC_LOCATION tag can be used to specify the location (absolute path\n"
+ "including file name) of the HTML help compiler ( hhc.exe). If non-empty\n"
+ "doxygen will try to run the HTML help compiler on the generated index.hhp.The\n"
+ "file has to be specified with full path.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTMLHELP is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_HTMLHELP");
+ //----
+ cb = cfg->addBool(
+ "GENERATE_CHI",
+ "The GENERATE_CHI flag controls if a separate .chi index file is generated (\n"
+ "YES) or that it should be included in the master .chm file ( NO).Default\n"
+ "value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTMLHELP is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTMLHELP");
+ //----
+ cs = cfg->addString(
+ "CHM_INDEX_ENCODING",
+ "The CHM_INDEX_ENCODING is used to encode HtmlHelp index ( hhk), content ( hhc)\n"
+ "and project file content.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTMLHELP is set to YES."
+ );
+ cs->addDependency("GENERATE_HTMLHELP");
+ //----
+ cb = cfg->addBool(
+ "BINARY_TOC",
+ "The BINARY_TOC flag controls whether a binary table of contents is generated (\n"
+ "YES) or a normal table of contents ( NO) in the .chm file.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTMLHELP is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTMLHELP");
+ //----
+ cb = cfg->addBool(
+ "TOC_EXPAND",
+ "The TOC_EXPAND flag can be set to YES to add extra items for group members to\n"
+ "the table of contents of the HTML help documentation and to the tree\n"
+ "view.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTMLHELP is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTMLHELP");
+ //----
+ cb = cfg->addBool(
+ "GENERATE_QHP",
+ "If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and\n"
+ "QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that\n"
+ "can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help\n"
+ "(.qch) of the generated HTML documentation.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ cs = cfg->addString(
+ "QCH_FILE",
+ "If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify\n"
+ "the file name of the resulting .qch file. The path specified is relative to\n"
+ "the HTML output folder.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_QHP is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_QHP");
+ //----
+ cs = cfg->addString(
+ "QHP_NAMESPACE",
+ "The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help\n"
+ "Project output. For more information please see Qt Help Project / Namespace\n"
+ "(see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).The\n"
+ "default value is: org.doxygen.Project.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_QHP is set to YES."
+ );
+ cs->setDefaultValue("org.doxygen.Project");
+ cs->addDependency("GENERATE_QHP");
+ //----
+ cs = cfg->addString(
+ "QHP_VIRTUAL_FOLDER",
+ "The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt\n"
+ "Help Project output. For more information please see Qt Help Project / Virtual\n"
+ "Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-\n"
+ "folders).The default value is: doc.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_QHP is set to YES."
+ );
+ cs->setDefaultValue("doc");
+ cs->addDependency("GENERATE_QHP");
+ //----
+ cs = cfg->addString(
+ "QHP_CUST_FILTER_NAME",
+ "If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom\n"
+ "filter to add. For more information please see Qt Help Project / Custom\n"
+ "Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-\n"
+ "filters).\n"
+ "\n"
+ "This tag requires that the tag GENERATE_QHP is set to YES."
+ );
+ cs->addDependency("GENERATE_QHP");
+ //----
+ cs = cfg->addString(
+ "QHP_CUST_FILTER_ATTRS",
+ "The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the\n"
+ "custom filter to add. For more information please see Qt Help Project / Custom\n"
+ "Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-\n"
+ "filters).\n"
+ "\n"
+ "This tag requires that the tag GENERATE_QHP is set to YES."
+ );
+ cs->addDependency("GENERATE_QHP");
+ //----
+ cs = cfg->addString(
+ "QHP_SECT_FILTER_ATTRS",
+ "The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this\n"
+ "project's filter section matches. Qt Help Project / Filter Attributes (see:\n"
+ "http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).\n"
+ "\n"
+ "This tag requires that the tag GENERATE_QHP is set to YES."
+ );
+ cs->addDependency("GENERATE_QHP");
+ //----
+ cs = cfg->addString(
+ "QHG_LOCATION",
+ "The QHG_LOCATION tag can be used to specify the location of Qt's\n"
+ "qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the\n"
+ "generated .qhp file.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_QHP is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_QHP");
+ //----
+ cb = cfg->addBool(
+ "GENERATE_ECLIPSEHELP",
+ "If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be\n"
+ "generated, together with the HTML files, they form an Eclipse help plugin. To\n"
+ "install this plugin and make it available under the help contents menu in\n"
+ "Eclipse, the contents of the directory containing the HTML and XML files needs\n"
+ "to be copied into the plugins directory of eclipse. The name of the directory\n"
+ "within the plugins directory should be the same as the ECLIPSE_DOC_ID value.\n"
+ "After copying Eclipse needs to be restarted before the help appears.Default\n"
+ "value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ cs = cfg->addString(
+ "ECLIPSE_DOC_ID",
+ "A unique identifier for the Eclipse help plugin. When installing the plugin\n"
+ "the directory name containing the HTML and XML files should also have this\n"
+ "name. Each documentation set should have its own identifier.The default value\n"
+ "is: org.doxygen.Project.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES."
+ );
+ cs->setDefaultValue("org.doxygen.Project");
+ cs->addDependency("GENERATE_ECLIPSEHELP");
+ //----
+ cb = cfg->addBool(
+ "DISABLE_INDEX",
+ "If you want full control over the layout of the generated HTML pages it might\n"
+ "be necessary to disable the index and replace it with your own. The\n"
+ "DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top\n"
+ "of each HTML page. A value of NO enables the index and the value YES disables\n"
+ "it. Since the tabs have the same information as the navigation tree you can\n"
+ "set this option to NO if you already set GENERATE_TREEVIEW to YES.Default\n"
+ "value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ cb = cfg->addBool(
+ "GENERATE_TREEVIEW",
+ "The GENERATE_TREEVIEW tag is used to specify whether a tree-like index\n"
+ "structure should be generated to display hierarchical information. If the tag\n"
+ "value is set to YES, a side panel will be generated containing a tree-like\n"
+ "index structure (just like the one that is generated for HTML Help). For this\n"
+ "to work a browser that supports JavaScript, DHTML, CSS and frames is required\n"
+ "(i.e. any modern browser). Windows users are probably better off using the\n"
+ "HTML help feature. Via custom stylesheets (see HTML_EXTRA_STYLESHEET) one can\n"
+ "further fine-tune the look of the index. As an example, the default style\n"
+ "sheet generated by doxygen has an example that shows how to put an image at\n"
+ "the root of the tree instead of the PROJECT_NAME. Since the tree basically has\n"
+ "the same information as the tab index you could consider to set DISABLE_INDEX\n"
+ "to NO when enabling this option.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ ci = cfg->addInt(
+ "ENUM_VALUES_PER_LINE",
+ "The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that\n"
+ "doxygen will group on one line in the generated HTML documentation.\n"
+ "\n"
+ "Note that a value of 0 will completely suppress the enum values from appearing\n"
+ "in the overview section. Minimum value: 0, maximum value: 20, default value:\n"
+ "4.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ 0,20,4
+ );
+ ci->addDependency("GENERATE_HTML");
+ //----
+ ci = cfg->addInt(
+ "TREEVIEW_WIDTH",
+ "If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used\n"
+ "to set the initial width (in pixels) of the frame in which the tree is shown.\n"
+ "Minimum value: 0, maximum value: 1500, default value: 250.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ 0,1500,250
+ );
+ ci->addDependency("GENERATE_HTML");
+ //----
+ cb = cfg->addBool(
+ "EXT_LINKS_IN_WINDOW",
+ "When the EXT_LINKS_IN_WINDOW option is set to YES doxygen will open links to\n"
+ "external symbols imported via tag files in a separate window.Default value:\n"
+ "NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ ci = cfg->addInt(
+ "FORMULA_FONTSIZE",
+ "Use this tag to change the font size of LaTeX formulas included as images in\n"
+ "the HTML documentation. When you change the font size after a successful\n"
+ "doxygen run you need to manually remove any form_*.png images from the HTML\n"
+ "output directory to force them to be regenerated. Minimum value: 8, maximum\n"
+ "value: 50, default value: 10.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ 8,50,10
+ );
+ ci->addDependency("GENERATE_HTML");
+ //----
+ cb = cfg->addBool(
+ "FORMULA_TRANSPARENT",
+ "Use the FORMULA_TRANPARENT tag to determine whether or not the images\n"
+ "generated for formulas are transparent PNGs. Transparent PNGs are not\n"
+ "supported properly for IE 6.0, but are supported on all modern browsers.\n"
+ "\n"
+ "Note that when changing this option you need to delete any form_*.png files in\n"
+ "the HTML output directory before the changes have effect.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ TRUE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ cb = cfg->addBool(
+ "USE_MATHJAX",
+ "Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see\n"
+ "http://www.mathjax.org) which uses client side Javascript for the rendering\n"
+ "instead of using prerendered bitmaps. Use this if you do not have LaTeX\n"
+ "installed or if you want to formulas look prettier in the HTML output. When\n"
+ "enabled you may also need to install MathJax separately and configure the path\n"
+ "to it using the MATHJAX_RELPATH option.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ ce = cfg->addEnum(
+ "MATHJAX_FORMAT",
+ "When MathJax is enabled you can set the default output format to be used for\n"
+ "the MathJax output. See the MathJax site (see:\n"
+ "http://docs.mathjax.org/en/latest/output.html) for more details.Possible\n"
+ "values are: HTML-CSS (which is slower, but has the best compatibility),\n"
+ "NativeMML (i.e. MathML) and SVG.\n"
+ "\n"
+ "The default value is: HTML-CSS.\n"
+ "\n"
+ "This tag requires that the tag USE_MATHJAX is set to YES.",
+ "HTML-CSS"
+ );
+ ce->addValue("HTML-CSS");
+ ce->addValue("NativeMML");
+ ce->addValue("SVG");
+ ce->addDependency("USE_MATHJAX");
+ //----
+ cs = cfg->addString(
+ "MATHJAX_RELPATH",
+ "When MathJax is enabled you need to specify the location relative to the HTML\n"
+ "output directory using the MATHJAX_RELPATH option. The destination directory\n"
+ "should contain the MathJax.js script. For instance, if the mathjax directory\n"
+ "is located at the same level as the HTML output directory, then\n"
+ "MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax\n"
+ "Content Delivery Network so you can quickly see the result without installing\n"
+ "MathJax. However, it is strongly recommended to install a local copy of\n"
+ "MathJax from http://www.mathjax.org before deployment.The default value is:\n"
+ "http://cdn.mathjax.org/mathjax/latest.\n"
+ "\n"
+ "This tag requires that the tag USE_MATHJAX is set to YES."
+ );
+ cs->setDefaultValue("http://cdn.mathjax.org/mathjax/latest");
+ cs->addDependency("USE_MATHJAX");
+ //----
+ cl = cfg->addList(
+ "MATHJAX_EXTENSIONS",
+ "The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax\n"
+ "extension names that should be enabled during MathJax rendering. For example\n"
+ "MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols\n"
+ "\n"
+ "This tag requires that the tag USE_MATHJAX is set to YES."
+ );
+ cl->addDependency("USE_MATHJAX");
+ //----
+ cs = cfg->addString(
+ "MATHJAX_CODEFILE",
+ "The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces\n"
+ "of code that will be used on startup of the MathJax code. See the MathJax site\n"
+ "(see: http://docs.mathjax.org/en/latest/output.html) for more details. For an\n"
+ "example see the documentation.\n"
+ "\n"
+ "This tag requires that the tag USE_MATHJAX is set to YES."
+ );
+ cs->addDependency("USE_MATHJAX");
+ //----
+ cb = cfg->addBool(
+ "SEARCHENGINE",
+ "When the SEARCHENGINE tag is enabled doxygen will generate a search box for\n"
+ "the HTML output. The underlying search engine uses javascript and DHTML and\n"
+ "should work on any modern browser. Note that when using HTML help\n"
+ "(GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)\n"
+ "there is already a search function so this one should typically be disabled.\n"
+ "For large projects the javascript based search engine can be slow, then\n"
+ "enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to\n"
+ "search using the keyboard; to jump to the search box use <access key> + S\n"
+ "(what the <access key> is depends on the OS and browser, but it is typically\n"
+ "<CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down\n"
+ "key> to jump into the search results window, the results can be navigated\n"
+ "using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel\n"
+ "the search. The filter options can be selected when the cursor is inside the\n"
+ "search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>\n"
+ "to select a filter and <Enter> or <escape> to activate or cancel the filter\n"
+ "option.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_HTML is set to YES.",
+ TRUE
+ );
+ cb->addDependency("GENERATE_HTML");
+ //----
+ cb = cfg->addBool(
+ "SERVER_BASED_SEARCH",
+ "When the SERVER_BASED_SEARCH tag is enabled the search engine will be\n"
+ "implemented using a web server instead of a web client using Javascript. There\n"
+ "are two flavours of web server based searching depending on the\n"
+ "EXTERNAL_SEARCH setting. When disabled, doxygen will generate a PHP script for\n"
+ "searching and an index file used by the script. When EXTERNAL_SEARCH is\n"
+ "enabled the indexing and searching needs to be provided by external tools. See\n"
+ "the section \"External Indexing and Searching\" for details.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag SEARCHENGINE is set to YES.",
+ FALSE
+ );
+ cb->addDependency("SEARCHENGINE");
+ //----
+ cb = cfg->addBool(
+ "EXTERNAL_SEARCH",
+ "When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP\n"
+ "script for searching. Instead the search results are written to an XML file\n"
+ "which needs to be processed by an external indexer. Doxygen will invoke an\n"
+ "external search engine pointed to by the SEARCHENGINE_URL option to obtain the\n"
+ "search results.\n"
+ "\n"
+ "Doxygen ships with an example indexer ( doxyindexer) and search engine\n"
+ "(doxysearch.cgi) which are based on the open source search engine library\n"
+ "Xapian (see: http://xapian.org/).\n"
+ "\n"
+ "See the section \"External Indexing and Searching\" for details.Default value:\n"
+ "NO.\n"
+ "\n"
+ "This tag requires that the tag SEARCHENGINE is set to YES.",
+ FALSE
+ );
+ cb->addDependency("SEARCHENGINE");
+ //----
+ cs = cfg->addString(
+ "SEARCHENGINE_URL",
+ "The SEARCHENGINE_URL should point to a search engine hosted by a web server\n"
+ "which will return the search results when EXTERNAL_SEARCH is enabled.\n"
+ "\n"
+ "Doxygen ships with an example indexer ( doxyindexer) and search engine\n"
+ "(doxysearch.cgi) which are based on the open source search engine library\n"
+ "Xapian (see: http://xapian.org/). See the section \"External Indexing and\n"
+ "Searching\" for details.\n"
+ "\n"
+ "This tag requires that the tag SEARCHENGINE is set to YES."
+ );
+ cs->addDependency("SEARCHENGINE");
+ //----
+ cs = cfg->addString(
+ "SEARCHDATA_FILE",
+ "When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed\n"
+ "search data is written to a file for indexing by an external tool. With the\n"
+ "SEARCHDATA_FILE tag the name of this file can be specified.The default file\n"
+ "is: searchdata.xml.\n"
+ "\n"
+ "This tag requires that the tag SEARCHENGINE is set to YES."
+ );
+ cs->setDefaultValue("searchdata.xml");
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("SEARCHENGINE");
+ //----
+ cs = cfg->addString(
+ "EXTERNAL_SEARCH_ID",
+ "When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the\n"
+ "EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is\n"
+ "useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple\n"
+ "projects and redirect the results back to the right project.\n"
+ "\n"
+ "This tag requires that the tag SEARCHENGINE is set to YES."
+ );
+ cs->addDependency("SEARCHENGINE");
+ //----
+ cl = cfg->addList(
+ "EXTRA_SEARCH_MAPPINGS",
+ "The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen\n"
+ "projects other than the one defined by this configuration file, but that are\n"
+ "all added to the same external search index. Each project needs to have a\n"
+ "unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of\n"
+ "to a relative location where the documentation can be found. The format is:\n"
+ "EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...\n"
+ "\n"
+ "This tag requires that the tag SEARCHENGINE is set to YES."
+ );
+ cl->addDependency("SEARCHENGINE");
+ //---------------------------------------------------------------------------
+ cfg->addInfo("LaTeX","Configuration options related to the LaTeX output");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "GENERATE_LATEX",
- "If the GENERATE_LATEX tag is set to YES (the default) Doxygen will\n"
- "generate Latex output.",
- TRUE
- );
- //----
- cs = cfg->addString(
- "LATEX_OUTPUT",
- "The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.\n"
- "If a relative path is entered the value of OUTPUT_DIRECTORY will be\n"
- "put in front of it. If left blank `latex' will be used as the default path."
- );
- cs->setDefaultValue("latex");
- cs->setWidgetType(ConfigString::Dir);
- cs->addDependency("GENERATE_LATEX");
- //----
- cs = cfg->addString(
- "LATEX_CMD_NAME",
- "The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be\n"
- "invoked. If left blank `latex' will be used as the default command name.\n"
- "Note that when enabling USE_PDFLATEX this option is only used for\n"
- "generating bitmaps for formulas in the HTML output, but not in the\n"
- "Makefile that is written to the output directory."
- );
- cs->setDefaultValue("latex");
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_LATEX");
- //----
- cs = cfg->addString(
- "MAKEINDEX_CMD_NAME",
- "The MAKEINDEX_CMD_NAME tag can be used to specify the command name to\n"
- "generate index for LaTeX. If left blank `makeindex' will be used as the\n"
- "default command name."
- );
- cs->setDefaultValue("makeindex");
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_LATEX");
- //----
- cb = cfg->addBool(
- "COMPACT_LATEX",
- "If the COMPACT_LATEX tag is set to YES Doxygen generates more compact\n"
- "LaTeX documents. This may be useful for small projects and may help to\n"
- "save some trees in general.",
- FALSE
- );
- cb->addDependency("GENERATE_LATEX");
- //----
- ce = cfg->addEnum(
- "PAPER_TYPE",
- "The PAPER_TYPE tag can be used to set the paper type that is used\n"
- "by the printer. Possible values are: a4, letter, legal and\n"
- "executive. If left blank a4 will be used.",
- "a4"
- );
- ce->addValue("a4");
- ce->addValue("letter");
- ce->addValue("legal");
- ce->addValue("executive");
- ce->addDependency("GENERATE_LATEX");
- //----
- cl = cfg->addList(
- "EXTRA_PACKAGES",
- "The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX\n"
- "packages that should be included in the LaTeX output."
- );
- cl->addDependency("GENERATE_LATEX");
- //----
- cs = cfg->addString(
- "LATEX_HEADER",
- "The LATEX_HEADER tag can be used to specify a personal LaTeX header for\n"
- "the generated latex document. The header should contain everything until\n"
- "the first chapter. If it is left blank doxygen will generate a\n"
- "standard header. Notice: only use this tag if you know what you are doing!"
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_LATEX");
- //----
- cs = cfg->addString(
- "LATEX_FOOTER",
- "The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for\n"
- "the generated latex document. The footer should contain everything after\n"
- "the last chapter. If it is left blank doxygen will generate a\n"
- "standard footer. Notice: only use this tag if you know what you are doing!"
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_LATEX");
- //----
- cl = cfg->addList(
- "LATEX_EXTRA_FILES",
- "The LATEX_EXTRA_FILES tag can be used to specify one or more extra images\n"
- "or other source files which should be copied to the LaTeX output directory.\n"
- "Note that the files will be copied as-is; there are no commands or markers\n"
- "available."
- );
- cl->addDependency("GENERATE_LATEX");
- cl->setWidgetType(ConfigList::File);
- //----
- cb = cfg->addBool(
- "PDF_HYPERLINKS",
- "If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated\n"
- "is prepared for conversion to pdf (using ps2pdf). The pdf file will\n"
- "contain links (just like the HTML output) instead of page references\n"
- "This makes the output suitable for online browsing using a pdf viewer.",
- TRUE
- );
- cb->addDependency("GENERATE_LATEX");
- //----
- cb = cfg->addBool(
- "USE_PDFLATEX",
- "If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of\n"
- "plain latex in the generated Makefile. Set this option to YES to get a\n"
- "higher quality PDF documentation.",
- TRUE
- );
- cb->addDependency("GENERATE_LATEX");
- //----
- cb = cfg->addBool(
- "LATEX_BATCHMODE",
- "If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\\\batchmode.\n"
- "command to the generated LaTeX files. This will instruct LaTeX to keep\n"
- "running if errors occur, instead of asking the user for help.\n"
- "This option is also used when generating formulas in HTML.",
- FALSE
- );
- cb->addDependency("GENERATE_LATEX");
- //----
- cb = cfg->addBool(
- "LATEX_HIDE_INDICES",
- "If LATEX_HIDE_INDICES is set to YES then doxygen will not\n"
- "include the index chapters (such as File Index, Compound Index, etc.)\n"
- "in the output.",
- FALSE
- );
- cb->addDependency("GENERATE_LATEX");
- //----
- cb = cfg->addBool(
- "LATEX_SOURCE_CODE",
- "If LATEX_SOURCE_CODE is set to YES then doxygen will include\n"
- "source code with syntax highlighting in the LaTeX output.\n"
- "Note that which sources are shown also depends on other settings\n"
- "such as SOURCE_BROWSER.",
- FALSE
- );
- cb->addDependency("GENERATE_LATEX");
- //----
- cs = cfg->addString(
- "LATEX_BIB_STYLE",
- "The LATEX_BIB_STYLE tag can be used to specify the style to use for the\n"
- "bibliography, e.g. plainnat, or ieeetr. The default style is \"plain\". See\n"
- "http://en.wikipedia.org/wiki/BibTeX for more info."
- );
- cs->setDefaultValue("plain");
- cs->addDependency("GENERATE_LATEX");
- //---------------------------------------------------------------------------
- cfg->addInfo("RTF","configuration options related to the RTF output");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "GENERATE_LATEX",
+ "If the GENERATE_LATEX tag is set to YES doxygen will generate LaTeX\n"
+ "output.Default value: YES.",
+ TRUE
+ );
+ //----
+ cs = cfg->addString(
+ "LATEX_OUTPUT",
+ "The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a\n"
+ "relative path is entered the value of OUTPUT_DIRECTORY will be put in front of\n"
+ "it.The default directory is: latex.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES."
+ );
+ cs->setDefaultValue("latex");
+ cs->setWidgetType(ConfigString::Dir);
+ cs->addDependency("GENERATE_LATEX");
+ //----
+ cs = cfg->addString(
+ "LATEX_CMD_NAME",
+ "The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be\n"
+ "invoked.\n"
+ "\n"
+ "Note that when enabling USE_PDFLATEX this option is only used for generating\n"
+ "bitmaps for formulas in the HTML output, but not in the Makefile that is\n"
+ "written to the output directory.The default file is: latex.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES."
+ );
+ cs->setDefaultValue("latex");
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_LATEX");
+ //----
+ cs = cfg->addString(
+ "MAKEINDEX_CMD_NAME",
+ "The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate\n"
+ "index for LaTeX.The default file is: makeindex.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES."
+ );
+ cs->setDefaultValue("makeindex");
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_LATEX");
+ //----
+ cb = cfg->addBool(
+ "COMPACT_LATEX",
+ "If the COMPACT_LATEX tag is set to YES doxygen generates more compact LaTeX\n"
+ "documents. This may be useful for small projects and may help to save some\n"
+ "trees in general.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_LATEX");
+ //----
+ ce = cfg->addEnum(
+ "PAPER_TYPE",
+ "The PAPER_TYPE tag can be used to set the paper type that is used by the\n"
+ "printer.Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches),\n"
+ "legal (8.5 x 14 inches) and executive (7.25 x 10.5 inches).\n"
+ "\n"
+ "The default value is: a4.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES.",
+ "a4"
+ );
+ ce->addValue("a4");
+ ce->addValue("letter");
+ ce->addValue("legal");
+ ce->addValue("executive");
+ ce->addDependency("GENERATE_LATEX");
+ //----
+ cl = cfg->addList(
+ "EXTRA_PACKAGES",
+ "The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names\n"
+ "that should be included in the LaTeX output. To get the times font for\n"
+ "instance you can specify\n"
+ "EXTRA_PACKAGES=times\n"
+ "If left blank no extra packages will be included.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES."
+ );
+ cl->addDependency("GENERATE_LATEX");
+ //----
+ cs = cfg->addString(
+ "LATEX_HEADER",
+ "The LATEX_HEADER tag can be used to specify a personal LaTeX header for the\n"
+ "generated LaTeX document. The header should contain everything until the first\n"
+ "chapter. If it is left blank doxygen will generate a standard header. See\n"
+ "section \"Doxygen usage\" for information on how to let doxygen write the\n"
+ "default header to a separate file.\n"
+ "\n"
+ "Note: Only use a user-defined header if you know what you are doing! The\n"
+ "following commands have a special meaning inside the header: $title,\n"
+ "$datetime, $date, $doxygenversion, $projectname, $projectnumber. Doxygen will\n"
+ "replace them by respectively the title of the page, the current date and time,\n"
+ "only the current date, the version number of doxygen, the project name (see\n"
+ "PROJECT_NAME), or the project number (see PROJECT_NUMBER).\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_LATEX");
+ //----
+ cs = cfg->addString(
+ "LATEX_FOOTER",
+ "The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the\n"
+ "generated LaTeX document. The footer should contain everything after the last\n"
+ "chapter. If it is left blank doxygen will generate a standard footer.\n"
+ "\n"
+ "Note: Only use a user-defined footer if you know what you are doing!\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_LATEX");
+ //----
+ cl = cfg->addList(
+ "LATEX_EXTRA_FILES",
+ "The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or\n"
+ "other source files which should be copied to the LATEX_OUTPUT output\n"
+ "directory. Note that the files will be copied as-is; there are no commands or\n"
+ "markers available.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES."
+ );
+ cl->addDependency("GENERATE_LATEX");
+ cl->setWidgetType(ConfigList::File);
+ //----
+ cb = cfg->addBool(
+ "PDF_HYPERLINKS",
+ "If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is\n"
+ "prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will\n"
+ "contain links (just like the HTML output) instead of page references. This\n"
+ "makes the output suitable for online browsing using a PDF viewer.Default\n"
+ "value: YES.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES.",
+ TRUE
+ );
+ cb->addDependency("GENERATE_LATEX");
+ //----
+ cb = cfg->addBool(
+ "USE_PDFLATEX",
+ "If the LATEX_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate\n"
+ "the PDF file directly from the LaTeX files. Set this option to YES to get a\n"
+ "higher quality PDF documentation.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES.",
+ TRUE
+ );
+ cb->addDependency("GENERATE_LATEX");
+ //----
+ cb = cfg->addBool(
+ "LATEX_BATCHMODE",
+ "If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode\n"
+ "command to the generated LaTeX files. This will instruct LaTeX to keep running\n"
+ "if errors occur, instead of asking the user for help. This option is also used\n"
+ "when generating formulas in HTML.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_LATEX");
+ //----
+ cb = cfg->addBool(
+ "LATEX_HIDE_INDICES",
+ "If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the\n"
+ "index chapters (such as File Index, Compound Index, etc.) in the\n"
+ "output.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_LATEX");
+ //----
+ cb = cfg->addBool(
+ "LATEX_SOURCE_CODE",
+ "If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source\n"
+ "code with syntax highlighting in the LaTeX output.\n"
+ "\n"
+ "Note that which sources are shown also depends on other settings such as\n"
+ "SOURCE_BROWSER.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_LATEX");
+ //----
+ cs = cfg->addString(
+ "LATEX_BIB_STYLE",
+ "The LATEX_BIB_STYLE tag can be used to specify the style to use for the\n"
+ "bibliography, e.g. plainnat, or ieeetr. See\n"
+ "http://en.wikipedia.org/wiki/BibTeX and \\cite for more info.The default value\n"
+ "is: plain.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_LATEX is set to YES."
+ );
+ cs->setDefaultValue("plain");
+ cs->addDependency("GENERATE_LATEX");
+ //---------------------------------------------------------------------------
+ cfg->addInfo("RTF","Configuration options related to the RTF output");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "GENERATE_RTF",
- "If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output\n"
- "The RTF output is optimized for Word 97 and may not look very pretty with\n"
- "other RTF readers or editors.",
- FALSE
- );
- //----
- cs = cfg->addString(
- "RTF_OUTPUT",
- "The RTF_OUTPUT tag is used to specify where the RTF docs will be put.\n"
- "If a relative path is entered the value of OUTPUT_DIRECTORY will be\n"
- "put in front of it. If left blank `rtf' will be used as the default path."
- );
- cs->setDefaultValue("rtf");
- cs->setWidgetType(ConfigString::Dir);
- cs->addDependency("GENERATE_RTF");
- //----
- cb = cfg->addBool(
- "COMPACT_RTF",
- "If the COMPACT_RTF tag is set to YES Doxygen generates more compact\n"
- "RTF documents. This may be useful for small projects and may help to\n"
- "save some trees in general.",
- FALSE
- );
- cb->addDependency("GENERATE_RTF");
- //----
- cb = cfg->addBool(
- "RTF_HYPERLINKS",
- "If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated\n"
- "will contain hyperlink fields. The RTF file will\n"
- "contain links (just like the HTML output) instead of page references.\n"
- "This makes the output suitable for online browsing using WORD or other\n"
- "programs which support those fields.\n"
- "Note: wordpad (write) and others do not support links.",
- FALSE
- );
- cb->addDependency("GENERATE_RTF");
- //----
- cs = cfg->addString(
- "RTF_STYLESHEET_FILE",
- "Load style sheet definitions from file. Syntax is similar to doxygen's\n"
- "config file, i.e. a series of assignments. You only have to provide\n"
- "replacements, missing definitions are set to their default value."
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_RTF");
- //----
- cs = cfg->addString(
- "RTF_EXTENSIONS_FILE",
- "Set optional variables used in the generation of an rtf document.\n"
- "Syntax is similar to doxygen's config file."
- );
- cs->setWidgetType(ConfigString::File);
- cs->addDependency("GENERATE_RTF");
- //---------------------------------------------------------------------------
- cfg->addInfo("Man","configuration options related to the man page output");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "GENERATE_RTF",
+ "If the GENERATE_RTF tag is set to YES doxygen will generate RTF output. The\n"
+ "RTF output is optimized for Word 97 and may not look too pretty with other RTF\n"
+ "readers/editors.Default value: NO.",
+ FALSE
+ );
+ //----
+ cs = cfg->addString(
+ "RTF_OUTPUT",
+ "The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a\n"
+ "relative path is entered the value of OUTPUT_DIRECTORY will be put in front of\n"
+ "it.The default directory is: rtf.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_RTF is set to YES."
+ );
+ cs->setDefaultValue("rtf");
+ cs->setWidgetType(ConfigString::Dir);
+ cs->addDependency("GENERATE_RTF");
+ //----
+ cb = cfg->addBool(
+ "COMPACT_RTF",
+ "If the COMPACT_RTF tag is set to YES doxygen generates more compact RTF\n"
+ "documents. This may be useful for small projects and may help to save some\n"
+ "trees in general.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_RTF is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_RTF");
+ //----
+ cb = cfg->addBool(
+ "RTF_HYPERLINKS",
+ "If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will\n"
+ "contain hyperlink fields. The RTF file will contain links (just like the HTML\n"
+ "output) instead of page references. This makes the output suitable for online\n"
+ "browsing using Word or some other Word compatible readers that support those\n"
+ "fields.\n"
+ "\n"
+ "Note: WordPad (write) and others do not support links.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_RTF is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_RTF");
+ //----
+ cs = cfg->addString(
+ "RTF_STYLESHEET_FILE",
+ "Load stylesheet definitions from file. Syntax is similar to doxygen's config\n"
+ "file, i.e. a series of assignments. You only have to provide replacements,\n"
+ "missing definitions are set to their default value.\n"
+ "\n"
+ "See also section \"Doxygen usage\" for information on how to generate the\n"
+ "default style sheet that doxygen normally uses.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_RTF is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_RTF");
+ //----
+ cs = cfg->addString(
+ "RTF_EXTENSIONS_FILE",
+ "Set optional variables used in the generation of an RTF document. Syntax is\n"
+ "similar to doxygen's config file. A template extensions file can be generated\n"
+ "using doxygen -e rtf extensionFile.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_RTF is set to YES."
+ );
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_RTF");
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Man","Configuration options related to the man page output");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "GENERATE_MAN",
- "If the GENERATE_MAN tag is set to YES (the default) Doxygen will\n"
- "generate man pages",
- FALSE
- );
- //----
- cs = cfg->addString(
- "MAN_OUTPUT",
- "The MAN_OUTPUT tag is used to specify where the man pages will be put.\n"
- "If a relative path is entered the value of OUTPUT_DIRECTORY will be\n"
- "put in front of it. If left blank `man' will be used as the default path."
- );
- cs->setDefaultValue("man");
- cs->setWidgetType(ConfigString::Dir);
- cs->addDependency("GENERATE_MAN");
- //----
- cs = cfg->addString(
- "MAN_EXTENSION",
- "The MAN_EXTENSION tag determines the extension that is added to\n"
- "the generated man pages (default is the subroutine's section .3)"
- );
- cs->setDefaultValue(".3");
- cs->addDependency("GENERATE_MAN");
- //----
- cb = cfg->addBool(
- "MAN_LINKS",
- "If the MAN_LINKS tag is set to YES and Doxygen generates man output,\n"
- "then it will generate one additional man file for each entity\n"
- "documented in the real man page(s). These additional files\n"
- "only source the real man page, but without them the man command\n"
- "would be unable to find the correct page. The default is NO.",
- FALSE
- );
- cb->addDependency("GENERATE_MAN");
- //---------------------------------------------------------------------------
- cfg->addInfo("XML","configuration options related to the XML output");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "GENERATE_MAN",
+ "If the GENERATE_MAN tag is set to YES doxygen will generate man pages for\n"
+ "classes and files.Default value: NO.",
+ FALSE
+ );
+ //----
+ cs = cfg->addString(
+ "MAN_OUTPUT",
+ "The MAN_OUTPUT tag is used to specify where the man pages will be put. If a\n"
+ "relative path is entered the value of OUTPUT_DIRECTORY will be put in front of\n"
+ "it. A directory man3 will be created inside the directory specified by\n"
+ "MAN_OUTPUT.The default directory is: man.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_MAN is set to YES."
+ );
+ cs->setDefaultValue("man");
+ cs->setWidgetType(ConfigString::Dir);
+ cs->addDependency("GENERATE_MAN");
+ //----
+ cs = cfg->addString(
+ "MAN_EXTENSION",
+ "The MAN_EXTENSION tag determines the extension that is added to the generated\n"
+ "man pages. In case the manual section does not start with a number, the number\n"
+ "3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is\n"
+ "optional.The default value is: .3.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_MAN is set to YES."
+ );
+ cs->setDefaultValue(".3");
+ cs->addDependency("GENERATE_MAN");
+ //----
+ cb = cfg->addBool(
+ "MAN_LINKS",
+ "If the MAN_LINKS tag is set to YES and doxygen generates man output, then it\n"
+ "will generate one additional man file for each entity documented in the real\n"
+ "man page(s). These additional files only source the real man page, but without\n"
+ "them the man command would be unable to find the correct page.Default value:\n"
+ "NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_MAN is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_MAN");
+ //---------------------------------------------------------------------------
+ cfg->addInfo("XML","Configuration options related to the XML output");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "GENERATE_XML",
- "If the GENERATE_XML tag is set to YES Doxygen will\n"
- "generate an XML file that captures the structure of\n"
- "the code including all documentation.",
- FALSE
- );
- //----
- cs = cfg->addString(
- "XML_OUTPUT",
- "The XML_OUTPUT tag is used to specify where the XML pages will be put.\n"
- "If a relative path is entered the value of OUTPUT_DIRECTORY will be\n"
- "put in front of it. If left blank `xml' will be used as the default path."
- );
- cs->setDefaultValue("xml");
- cs->setWidgetType(ConfigString::Dir);
- cs->addDependency("GENERATE_XML");
- //----
- cs = cfg->addString(
- "XML_SCHEMA",
- "The XML_SCHEMA tag can be used to specify an XML schema,\n"
- "which can be used by a validating XML parser to check the\n"
- "syntax of the XML files."
- );
- cs->addDependency("GENERATE_XML");
- //----
- cs = cfg->addString(
- "XML_DTD",
- "The XML_DTD tag can be used to specify an XML DTD,\n"
- "which can be used by a validating XML parser to check the\n"
- "syntax of the XML files."
- );
- cs->addDependency("GENERATE_XML");
- //----
- cb = cfg->addBool(
- "XML_PROGRAMLISTING",
- "If the XML_PROGRAMLISTING tag is set to YES Doxygen will\n"
- "dump the program listings (including syntax highlighting\n"
- "and cross-referencing information) to the XML output. Note that\n"
- "enabling this will significantly increase the size of the XML output.",
- TRUE
- );
- cb->addDependency("GENERATE_XML");
- //---------------------------------------------------------------------------
- cfg->addInfo("Docbook","configuration options related to the DOCBOOK output");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "GENERATE_XML",
+ "If the GENERATE_XML tag is set to YES doxygen will generate an XML file that\n"
+ "captures the structure of the code including all documentation.Default value:\n"
+ "NO.",
+ FALSE
+ );
+ //----
+ cs = cfg->addString(
+ "XML_OUTPUT",
+ "The XML_OUTPUT tag is used to specify where the XML pages will be put. If a\n"
+ "relative path is entered the value of OUTPUT_DIRECTORY will be put in front of\n"
+ "it.The default directory is: xml.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_XML is set to YES."
+ );
+ cs->setDefaultValue("xml");
+ cs->setWidgetType(ConfigString::Dir);
+ cs->addDependency("GENERATE_XML");
+ //----
+ cs = cfg->addString(
+ "XML_SCHEMA",
+ "The XML_SCHEMA tag can be used to specify a XML schema, which can be used by a\n"
+ "validating XML parser to check the syntax of the XML files.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_XML is set to YES."
+ );
+ cs->addDependency("GENERATE_XML");
+ //----
+ cs = cfg->addString(
+ "XML_DTD",
+ "The XML_DTD tag can be used to specify a XML DTD, which can be used by a\n"
+ "validating XML parser to check the syntax of the XML files.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_XML is set to YES."
+ );
+ cs->addDependency("GENERATE_XML");
+ //----
+ cb = cfg->addBool(
+ "XML_PROGRAMLISTING",
+ "If the XML_PROGRAMLISTING tag is set to YES doxygen will dump the program\n"
+ "listings (including syntax highlighting and cross-referencing information) to\n"
+ "the XML output. Note that enabling this will significantly increase the size\n"
+ "of the XML output.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_XML is set to YES.",
+ TRUE
+ );
+ cb->addDependency("GENERATE_XML");
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Docbook","Configuration options related to the DOCBOOK output");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "GENERATE_DOCBOOK",
- "If the GENERATE_DOCBOOK tag is set to YES Doxygen will generate DOCBOOK files\n"
- "that can be used to generate PDF.",
- FALSE
- );
- //----
- cs = cfg->addString(
- "DOCBOOK_OUTPUT",
- "The DOCBOOK_OUTPUT tag is used to specify where the DOCBOOK pages will be put.\n"
- "If a relative path is entered the value of OUTPUT_DIRECTORY will be put in\n"
- "front of it. If left blank docbook will be used as the default path."
- );
- cs->setDefaultValue("docbook");
- cs->setWidgetType(ConfigString::Dir);
- cs->addDependency("GENERATE_DOCBOOK");
- //---------------------------------------------------------------------------
- cfg->addInfo("DEF","configuration options for the AutoGen Definitions output");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "GENERATE_DOCBOOK",
+ "If the GENERATE_DOCBOOK tag is set to YES doxygen will generate Docbook files\n"
+ "that can be used to generate PDF.Default value: NO.",
+ FALSE
+ );
+ //----
+ cs = cfg->addString(
+ "DOCBOOK_OUTPUT",
+ "The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.\n"
+ "If a relative path is entered the value of OUTPUT_DIRECTORY will be put in\n"
+ "front of it.The default directory is: docbook.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_DOCBOOK is set to YES."
+ );
+ cs->setDefaultValue("docbook");
+ cs->setWidgetType(ConfigString::Dir);
+ cs->addDependency("GENERATE_DOCBOOK");
+ //---------------------------------------------------------------------------
+ cfg->addInfo("DEF","Configuration options for the AutoGen Definitions output");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "GENERATE_AUTOGEN_DEF",
- "If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will\n"
- "generate an AutoGen Definitions (see autogen.sf.net) file\n"
- "that captures the structure of the code including all\n"
- "documentation. Note that this feature is still experimental\n"
- "and incomplete at the moment.",
- FALSE
- );
- //---------------------------------------------------------------------------
- cfg->addInfo("PerlMod","configuration options related to the Perl module output");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "GENERATE_AUTOGEN_DEF",
+ "If the GENERATE_AUTOGEN_DEF tag is set to YES doxygen will generate an AutoGen\n"
+ "Definitions (see http://autogen.sf.net) file that captures the structure of\n"
+ "the code including all documentation. Note that this feature is still\n"
+ "experimental and incomplete at the moment.Default value: NO.",
+ FALSE
+ );
+ //---------------------------------------------------------------------------
+ cfg->addInfo("PerlMod","Configuration options related to the Perl module output");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "GENERATE_PERLMOD",
- "If the GENERATE_PERLMOD tag is set to YES Doxygen will\n"
- "generate a Perl module file that captures the structure of\n"
- "the code including all documentation. Note that this\n"
- "feature is still experimental and incomplete at the\n"
- "moment.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "PERLMOD_LATEX",
- "If the PERLMOD_LATEX tag is set to YES Doxygen will generate\n"
- "the necessary Makefile rules, Perl scripts and LaTeX code to be able\n"
- "to generate PDF and DVI output from the Perl module output.",
- FALSE
- );
- cb->addDependency("GENERATE_PERLMOD");
- //----
- cb = cfg->addBool(
- "PERLMOD_PRETTY",
- "If the PERLMOD_PRETTY tag is set to YES the Perl module output will be\n"
- "nicely formatted so it can be parsed by a human reader.\n"
- "This is useful\n"
- "if you want to understand what is going on.\n"
- "On the other hand, if this\n"
- "tag is set to NO the size of the Perl module output will be much smaller\n"
- "and Perl will parse it just the same.",
- TRUE
- );
- cb->addDependency("GENERATE_PERLMOD");
- //----
- cs = cfg->addString(
- "PERLMOD_MAKEVAR_PREFIX",
- "The names of the make variables in the generated doxyrules.make file\n"
- "are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.\n"
- "This is useful so different doxyrules.make files included by the same\n"
- "Makefile don't overwrite each other's variables."
- );
- cs->addDependency("GENERATE_PERLMOD");
- //---------------------------------------------------------------------------
- cfg->addInfo("Preprocessor","Configuration options related to the preprocessor");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "GENERATE_PERLMOD",
+ "If the GENERATE_PERLMOD tag is set to YES doxygen will generate a Perl module\n"
+ "file that captures the structure of the code including all documentation.\n"
+ "\n"
+ "Note that this feature is still experimental and incomplete at the\n"
+ "moment.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "PERLMOD_LATEX",
+ "If the PERLMOD_LATEX tag is set to YES doxygen will generate the necessary\n"
+ "Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI\n"
+ "output from the Perl module output.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_PERLMOD is set to YES.",
+ FALSE
+ );
+ cb->addDependency("GENERATE_PERLMOD");
+ //----
+ cb = cfg->addBool(
+ "PERLMOD_PRETTY",
+ "If the PERLMOD_PRETTY tag is set to YES the Perl module output will be nicely\n"
+ "formatted so it can be parsed by a human reader. This is useful if you want to\n"
+ "understand what is going on. On the other hand, if this tag is set to NO the\n"
+ "size of the Perl module output will be much smaller and Perl will parse it\n"
+ "just the same.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_PERLMOD is set to YES.",
+ TRUE
+ );
+ cb->addDependency("GENERATE_PERLMOD");
+ //----
+ cs = cfg->addString(
+ "PERLMOD_MAKEVAR_PREFIX",
+ "The names of the make variables in the generated doxyrules.make file are\n"
+ "prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful\n"
+ "so different doxyrules.make files included by the same Makefile don't\n"
+ "overwrite each other's variables.\n"
+ "\n"
+ "This tag requires that the tag GENERATE_PERLMOD is set to YES."
+ );
+ cs->addDependency("GENERATE_PERLMOD");
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Preprocessor","Configuration options related to the preprocessor");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "ENABLE_PREPROCESSING",
- "If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will\n"
- "evaluate all C-preprocessor directives found in the sources and include\n"
- "files.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "MACRO_EXPANSION",
- "If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro\n"
- "names in the source code. If set to NO (the default) only conditional\n"
- "compilation will be performed. Macro expansion can be done in a controlled\n"
- "way by setting EXPAND_ONLY_PREDEF to YES.",
- FALSE
- );
- cb->addDependency("ENABLE_PREPROCESSING");
- //----
- cb = cfg->addBool(
- "EXPAND_ONLY_PREDEF",
- "If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES\n"
- "then the macro expansion is limited to the macros specified with the\n"
- "PREDEFINED and EXPAND_AS_DEFINED tags.",
- FALSE
- );
- cb->addDependency("ENABLE_PREPROCESSING");
- //----
- cb = cfg->addBool(
- "SEARCH_INCLUDES",
- "If the SEARCH_INCLUDES tag is set to YES (the default) the includes files\n"
- "pointed to by INCLUDE_PATH will be searched when a #include is found.",
- TRUE
- );
- cb->addDependency("ENABLE_PREPROCESSING");
- //----
- cl = cfg->addList(
- "INCLUDE_PATH",
- "The INCLUDE_PATH tag can be used to specify one or more directories that\n"
- "contain include files that are not input files but should be processed by\n"
- "the preprocessor."
- );
- cl->addDependency("SEARCH_INCLUDES");
- cl->setWidgetType(ConfigList::Dir);
- //----
- cl = cfg->addList(
- "INCLUDE_FILE_PATTERNS",
- "You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard\n"
- "patterns (like *.h and *.hpp) to filter out the header-files in the\n"
- "directories. If left blank, the patterns specified with FILE_PATTERNS will\n"
- "be used."
- );
- cl->addDependency("ENABLE_PREPROCESSING");
- //----
- cl = cfg->addList(
- "PREDEFINED",
- "The PREDEFINED tag can be used to specify one or more macro names that\n"
- "are defined before the preprocessor is started (similar to the -D option of\n"
- "gcc). The argument of the tag is a list of macros of the form: name\n"
- "or name=definition (no spaces). If the definition and the = are\n"
- "omitted =1 is assumed. To prevent a macro definition from being\n"
- "undefined via #undef or recursively expanded use the := operator\n"
- "instead of the = operator."
- );
- cl->addDependency("ENABLE_PREPROCESSING");
- //----
- cl = cfg->addList(
- "EXPAND_AS_DEFINED",
- "If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then\n"
- "this tag can be used to specify a list of macro names that should be expanded.\n"
- "The macro definition that is found in the sources will be used.\n"
- "Use the PREDEFINED tag if you want to use a different macro definition that\n"
- "overrules the definition found in the source code."
- );
- cl->addDependency("ENABLE_PREPROCESSING");
- //----
- cb = cfg->addBool(
- "SKIP_FUNCTION_MACROS",
- "If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then\n"
- "doxygen's preprocessor will remove all references to function-like macros\n"
- "that are alone on a line, have an all uppercase name, and do not end with a\n"
- "semicolon, because these will confuse the parser if not removed.",
- TRUE
- );
- cb->addDependency("ENABLE_PREPROCESSING");
- //---------------------------------------------------------------------------
- cfg->addInfo("External","Configuration::additions related to external references");
- //---------------------------------------------------------------------------
+ //----
+ cb = cfg->addBool(
+ "ENABLE_PREPROCESSING",
+ "If the ENABLE_PREPROCESSING tag is set to YES doxygen will evaluate all\n"
+ "C-preprocessor directives found in the sources and include files.Default\n"
+ "value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "MACRO_EXPANSION",
+ "If the MACRO_EXPANSION tag is set to YES doxygen will expand all macro names\n"
+ "in the source code. If set to NO only conditional compilation will be\n"
+ "performed. Macro expansion can be done in a controlled way by setting\n"
+ "EXPAND_ONLY_PREDEF to YES.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag ENABLE_PREPROCESSING is set to YES.",
+ FALSE
+ );
+ cb->addDependency("ENABLE_PREPROCESSING");
+ //----
+ cb = cfg->addBool(
+ "EXPAND_ONLY_PREDEF",
+ "If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then\n"
+ "the macro expansion is limited to the macros specified with the PREDEFINED and\n"
+ "EXPAND_AS_DEFINED tags.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag ENABLE_PREPROCESSING is set to YES.",
+ FALSE
+ );
+ cb->addDependency("ENABLE_PREPROCESSING");
+ //----
+ cb = cfg->addBool(
+ "SEARCH_INCLUDES",
+ "If the SEARCH_INCLUDES tag is set to YES the includes files in the\n"
+ "INCLUDE_PATH will be searched if a #include is found.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag ENABLE_PREPROCESSING is set to YES.",
+ TRUE
+ );
+ cb->addDependency("ENABLE_PREPROCESSING");
+ //----
+ cl = cfg->addList(
+ "INCLUDE_PATH",
+ "The INCLUDE_PATH tag can be used to specify one or more directories that\n"
+ "contain include files that are not input files but should be processed by the\n"
+ "preprocessor.\n"
+ "\n"
+ "This tag requires that the tag SEARCH_INCLUDES is set to YES."
+ );
+ cl->addDependency("SEARCH_INCLUDES");
+ cl->setWidgetType(ConfigList::Dir);
+ //----
+ cl = cfg->addList(
+ "INCLUDE_FILE_PATTERNS",
+ "You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard\n"
+ "patterns (like *.h and *.hpp) to filter out the header-files in the\n"
+ "directories. If left blank, the patterns specified with FILE_PATTERNS will be\n"
+ "used.\n"
+ "\n"
+ "This tag requires that the tag ENABLE_PREPROCESSING is set to YES."
+ );
+ cl->addDependency("ENABLE_PREPROCESSING");
+ //----
+ cl = cfg->addList(
+ "PREDEFINED",
+ "The PREDEFINED tag can be used to specify one or more macro names that are\n"
+ "defined before the preprocessor is started (similar to the -D option of e.g.\n"
+ "gcc). The argument of the tag is a list of macros of the form: name or\n"
+ "name=definition (no spaces). If the definition and the \"=\" are omitted, \"=1\"\n"
+ "is assumed. To prevent a macro definition from being undefined via #undef or\n"
+ "recursively expanded use the := operator instead of the = operator.\n"
+ "\n"
+ "This tag requires that the tag ENABLE_PREPROCESSING is set to YES."
+ );
+ cl->addDependency("ENABLE_PREPROCESSING");
+ //----
+ cl = cfg->addList(
+ "EXPAND_AS_DEFINED",
+ "If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this\n"
+ "tag can be used to specify a list of macro names that should be expanded. The\n"
+ "macro definition that is found in the sources will be used. Use the PREDEFINED\n"
+ "tag if you want to use a different macro definition that overrules the\n"
+ "definition found in the source code.\n"
+ "\n"
+ "This tag requires that the tag ENABLE_PREPROCESSING is set to YES."
+ );
+ cl->addDependency("ENABLE_PREPROCESSING");
+ //----
+ cb = cfg->addBool(
+ "SKIP_FUNCTION_MACROS",
+ "If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will\n"
+ "remove all refrences to function-like macros that are alone on a line, have an\n"
+ "all uppercase name, and do not end with a semicolon. Such function macros are\n"
+ "typically used for boiler-plate code, and will confuse the parser if not\n"
+ "removed.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag ENABLE_PREPROCESSING is set to YES.",
+ TRUE
+ );
+ cb->addDependency("ENABLE_PREPROCESSING");
+ //---------------------------------------------------------------------------
+ cfg->addInfo("External","Configuration options related to external references");
+ //---------------------------------------------------------------------------
- //----
- cl = cfg->addList(
- "TAGFILES",
- "The TAGFILES option can be used to specify one or more tagfiles. For each\n"
- "tag file the location of the external documentation should be added. The\n"
- "format of a tag file without this location is as follows:\n"
- "\n"
- "TAGFILES = file1 file2 ...\n"
- "Adding location for the tag files is done as follows:\n"
- "\n"
- "TAGFILES = file1=loc1 \"file2 = loc2\" ...\n"
- "where \"loc1\" and \"loc2\" can be relative or absolute paths\n"
- "or URLs. Note that each tag file must have a unique name (where the name does\n"
- "NOT include the path). If a tag file is not located in the directory in which\n"
- "doxygen is run, you must also specify the path to the tagfile here."
- );
- cl->setWidgetType(ConfigList::File);
- //----
- cs = cfg->addString(
- "GENERATE_TAGFILE",
- "When a file name is specified after GENERATE_TAGFILE, doxygen will create\n"
- "a tag file that is based on the input files it reads."
- );
- cs->setWidgetType(ConfigString::File);
- //----
- cb = cfg->addBool(
- "ALLEXTERNALS",
- "If the ALLEXTERNALS tag is set to YES all external classes will be listed\n"
- "in the class index. If set to NO only the inherited external classes\n"
- "will be listed.",
- FALSE
- );
- //----
- cb = cfg->addBool(
- "EXTERNAL_GROUPS",
- "If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed\n"
- "in the modules index. If set to NO, only the current project's groups will\n"
- "be listed.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "EXTERNAL_PAGES",
- "If the EXTERNAL_PAGES tag is set to YES all external pages will be listed\n"
- "in the related pages index. If set to NO, only the current project's\n"
- "pages will be listed.",
- TRUE
- );
- //----
- cs = cfg->addString(
- "PERL_PATH",
- "The PERL_PATH should be the absolute path and name of the perl script\n"
- "interpreter (i.e. the result of `which perl')."
- );
- cs->setDefaultValue("/usr/bin/perl");
- cs->setWidgetType(ConfigString::Dir);
- //---------------------------------------------------------------------------
- cfg->addInfo("Dot","Configuration options related to the dot tool");
- //---------------------------------------------------------------------------
+ //----
+ cl = cfg->addList(
+ "TAGFILES",
+ "The TAGFILES tag can be used to specify one or more tag files. For each tag\n"
+ "file the location of the external documentation should be added. The format of\n"
+ "a tag file without this location is as follows:\n"
+ "TAGFILES = file1 file2 ...\n"
+ "Adding location for the tag files is done as follows:\n"
+ "TAGFILES = file1=loc1 \"file2 = loc2\" ...\n"
+ "where loc1 and loc2 can be relative or absolute paths or URLs. See the\n"
+ "section \"Linking to external documentation\" for more information about the use\n"
+ "of tag files.\n"
+ "Note: Each tag file must have an unique name (where the name does NOT include\n"
+ "the path). If a tag file is not located in the directory in which doxygen is\n"
+ "run, you must also specify the path to the tagfile here."
+ );
+ cl->setWidgetType(ConfigList::File);
+ //----
+ cs = cfg->addString(
+ "GENERATE_TAGFILE",
+ "When a file name is specified after GENERATE_TAGFILE, doxygen will create a\n"
+ "tag file that is based on the input files it reads. See section \"Linking to\n"
+ "external documentation\" for more information about the usage of tag files."
+ );
+ cs->setWidgetType(ConfigString::File);
+ //----
+ cb = cfg->addBool(
+ "ALLEXTERNALS",
+ "If the ALLEXTERNALS tag is set to YES all external class will be listed in the\n"
+ "class index. If set to NO only the inherited external classes will be\n"
+ "listed.Default value: NO.",
+ FALSE
+ );
+ //----
+ cb = cfg->addBool(
+ "EXTERNAL_GROUPS",
+ "If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed in\n"
+ "the modules index. If set to NO, only the current project's groups will be\n"
+ "listed.Default value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "EXTERNAL_PAGES",
+ "If the EXTERNAL_PAGES tag is set to YES all external pages will be listed in\n"
+ "the related pages index. If set to NO, only the current project's pages will\n"
+ "be listed.Default value: YES.",
+ TRUE
+ );
+ //----
+ cs = cfg->addString(
+ "PERL_PATH",
+ "The PERL_PATH should be the absolute path and name of the perl script\n"
+ "interpreter (i.e. the result of 'which perl').The default file (with absolute\n"
+ "path) is: /usr/bin/perl."
+ );
+ cs->setDefaultValue("/usr/bin/perl");
+ cs->setWidgetType(ConfigString::File);
+ //---------------------------------------------------------------------------
+ cfg->addInfo("Dot","Configuration options related to the dot tool");
+ //---------------------------------------------------------------------------
- //----
- cb = cfg->addBool(
- "CLASS_DIAGRAMS",
- "If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will\n"
- "generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base\n"
- "or super classes. Setting the tag to NO turns the diagrams off. Note that\n"
- "this option also works with HAVE_DOT disabled, but it is recommended to\n"
- "install and use dot, since it yields more powerful graphs.",
- TRUE
- );
- //----
- cs = cfg->addString(
- "MSCGEN_PATH",
- "You can define message sequence charts within doxygen comments using the \\msc\n"
- "command. Doxygen will then run the mscgen tool (see\n"
- "http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the\n"
- "documentation. The MSCGEN_PATH tag allows you to specify the directory where\n"
- "the mscgen tool resides. If left empty the tool is assumed to be found in the\n"
- "default search path."
- );
- //----
- cb = cfg->addBool(
- "HIDE_UNDOC_RELATIONS",
- "If set to YES, the inheritance and collaboration graphs will hide\n"
- "inheritance and usage relations if the target is undocumented\n"
- "or is not a class.",
- TRUE
- );
- //----
- cb = cfg->addBool(
- "HAVE_DOT",
- "If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is\n"
- "available from the path. This tool is part of Graphviz, a graph visualization\n"
- "toolkit from AT&T and Lucent Bell Labs. The other options in this section\n"
- "have no effect if this option is set to NO (the default)",
- FALSE
- );
- //----
- ci = cfg->addInt(
- "DOT_NUM_THREADS",
- "The DOT_NUM_THREADS specifies the number of dot invocations doxygen is\n"
- "allowed to run in parallel. When set to 0 (the default) doxygen will\n"
- "base this on the number of processors available in the system. You can set it\n"
- "explicitly to a value larger than 0 to get control over the balance\n"
- "between CPU load and processing speed.",
- 0,32,0
- );
- ci->addDependency("HAVE_DOT");
- //----
- cs = cfg->addString(
- "DOT_FONTNAME",
- "By default doxygen will use the Helvetica font for all dot files that\n"
- "doxygen generates. When you want a differently looking font you can specify\n"
- "the font name using DOT_FONTNAME. You need to make sure dot is able to find\n"
- "the font, which can be done by putting it in a standard location or by setting\n"
- "the DOTFONTPATH environment variable or by setting DOT_FONTPATH to the\n"
- "directory containing the font."
- );
- cs->setDefaultValue("Helvetica");
- cs->addDependency("HAVE_DOT");
- //----
- ci = cfg->addInt(
- "DOT_FONTSIZE",
- "The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.\n"
- "The default size is 10pt.",
- 4,24,10
- );
- ci->addDependency("HAVE_DOT");
- //----
- cs = cfg->addString(
- "DOT_FONTPATH",
- "By default doxygen will tell dot to use the Helvetica font.\n"
- "If you specify a different font using DOT_FONTNAME you can use DOT_FONTPATH to\n"
- "set the path where dot can find it."
- );
- cs->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "CLASS_GRAPH",
- "If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen\n"
- "will generate a graph for each documented class showing the direct and\n"
- "indirect inheritance relations. Setting this tag to YES will force the\n"
- "CLASS_DIAGRAMS tag to NO.",
- TRUE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "COLLABORATION_GRAPH",
- "If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen\n"
- "will generate a graph for each documented class showing the direct and\n"
- "indirect implementation dependencies (inheritance, containment, and\n"
- "class references variables) of the class with other documented classes.",
- TRUE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "GROUP_GRAPHS",
- "If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen\n"
- "will generate a graph for groups, showing the direct groups dependencies",
- TRUE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "UML_LOOK",
- "If the UML_LOOK tag is set to YES doxygen will generate inheritance and\n"
- "collaboration diagrams in a style similar to the OMG's Unified Modeling\n"
- "Language.",
- FALSE
- );
- cb->addDependency("HAVE_DOT");
- //----
- ci = cfg->addInt(
- "UML_LIMIT_NUM_FIELDS",
- "If the UML_LOOK tag is enabled, the fields and methods are shown inside\n"
- "the class node. If there are many fields or methods and many nodes the\n"
- "graph may become too big to be useful. The UML_LIMIT_NUM_FIELDS\n"
- "threshold limits the number of items for each type to make the size more\n"
- "manageable. Set this to 0 for no limit. Note that the threshold may be\n"
- "exceeded by 50% before the limit is enforced.",
- 0,100,10
- );
- ci->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "TEMPLATE_RELATIONS",
- "If set to YES, the inheritance and collaboration graphs will show the\n"
- "relations between templates and their instances.",
- FALSE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "INCLUDE_GRAPH",
- "If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT\n"
- "tags are set to YES then doxygen will generate a graph for each documented\n"
- "file showing the direct and indirect include dependencies of the file with\n"
- "other documented files.",
- TRUE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "INCLUDED_BY_GRAPH",
- "If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and\n"
- "HAVE_DOT tags are set to YES then doxygen will generate a graph for each\n"
- "documented header file showing the documented files that directly or\n"
- "indirectly include this file.",
- TRUE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "CALL_GRAPH",
- "If the CALL_GRAPH and HAVE_DOT options are set to YES then\n"
- "doxygen will generate a call dependency graph for every global function\n"
- "or class method. Note that enabling this option will significantly increase\n"
- "the time of a run. So in most cases it will be better to enable call graphs\n"
- "for selected functions only using the \\callgraph command.",
- FALSE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "CALLER_GRAPH",
- "If the CALLER_GRAPH and HAVE_DOT tags are set to YES then\n"
- "doxygen will generate a caller dependency graph for every global function\n"
- "or class method. Note that enabling this option will significantly increase\n"
- "the time of a run. So in most cases it will be better to enable caller\n"
- "graphs for selected functions only using the \\callergraph command.",
- FALSE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "GRAPHICAL_HIERARCHY",
- "If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen\n"
- "will generate a graphical hierarchy of all classes instead of a textual one.",
- TRUE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "DIRECTORY_GRAPH",
- "If the DIRECTORY_GRAPH and HAVE_DOT tags are set to YES\n"
- "then doxygen will show the dependencies a directory has on other directories\n"
- "in a graphical way. The dependency relations are determined by the #include\n"
- "relations between the files in the directories.",
- TRUE
- );
- cb->addDependency("HAVE_DOT");
- //----
- ce = cfg->addEnum(
- "DOT_IMAGE_FORMAT",
- "The DOT_IMAGE_FORMAT tag can be used to set the image format of the images\n"
- "generated by dot. Possible values are svg, png, jpg, or gif.\n"
- "If left blank png will be used. If you choose svg you need to set\n"
- "HTML_FILE_EXTENSION to xhtml in order to make the SVG files\n"
- "visible in IE 9+ (other browsers do not have this requirement).",
- "png"
- );
- ce->addValue("png");
- ce->addValue("jpg");
- ce->addValue("gif");
- ce->addValue("svg");
- ce->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "INTERACTIVE_SVG",
- "If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to\n"
- "enable generation of interactive SVG images that allow zooming and panning.\n"
- "Note that this requires a modern browser other than Internet Explorer.\n"
- "Tested and working are Firefox, Chrome, Safari, and Opera. For IE 9+ you\n"
- "need to set HTML_FILE_EXTENSION to xhtml in order to make the SVG files\n"
- "visible. Older versions of IE do not have SVG support.",
- FALSE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cs = cfg->addString(
- "DOT_PATH",
- "The tag DOT_PATH can be used to specify the path where the dot tool can be\n"
- "found. If left blank, it is assumed the dot tool can be found in the path."
- );
- cs->setWidgetType(ConfigString::Dir);
- cs->addDependency("HAVE_DOT");
- //----
- cl = cfg->addList(
- "DOTFILE_DIRS",
- "The DOTFILE_DIRS tag can be used to specify one or more directories that\n"
- "contain dot files that are included in the documentation (see the\n"
- "\\dotfile command)."
- );
- cl->addDependency("HAVE_DOT");
- cl->setWidgetType(ConfigList::Dir);
- //----
- cl = cfg->addList(
- "MSCFILE_DIRS",
- "The MSCFILE_DIRS tag can be used to specify one or more directories that\n"
- "contain msc files that are included in the documentation (see the\n"
- "\\mscfile command)."
- );
- cl->setWidgetType(ConfigList::Dir);
- //----
- ci = cfg->addInt(
- "DOT_GRAPH_MAX_NODES",
- "The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of\n"
- "nodes that will be shown in the graph. If the number of nodes in a graph\n"
- "becomes larger than this value, doxygen will truncate the graph, which is\n"
- "visualized by representing a node as a red box. Note that doxygen if the\n"
- "number of direct children of the root node in a graph is already larger than\n"
- "DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note\n"
- "that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.",
- 0,10000,50
- );
- ci->addDependency("HAVE_DOT");
- //----
- ci = cfg->addInt(
- "MAX_DOT_GRAPH_DEPTH",
- "The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the\n"
- "graphs generated by dot. A depth value of 3 means that only nodes reachable\n"
- "from the root by following a path via at most 3 edges will be shown. Nodes\n"
- "that lay further from the root node will be omitted. Note that setting this\n"
- "option to 1 or 2 may greatly reduce the computation time needed for large\n"
- "code bases. Also note that the size of a graph can be further restricted by\n"
- "DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.",
- 0,1000,0
- );
- ci->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "DOT_TRANSPARENT",
- "Set the DOT_TRANSPARENT tag to YES to generate images with a transparent\n"
- "background. This is disabled by default, because dot on Windows does not\n"
- "seem to support this out of the box. Warning: Depending on the platform used,\n"
- "enabling this option may lead to badly anti-aliased labels on the edges of\n"
- "a graph (i.e. they become hard to read).",
- FALSE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "DOT_MULTI_TARGETS",
- "Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output\n"
- "files in one run (i.e. multiple -o and -T options on the command line). This\n"
- "makes dot run faster, but since only newer versions of dot (>1.8.10)\n"
- "support this, this feature is disabled by default.",
- FALSE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "GENERATE_LEGEND",
- "If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will\n"
- "generate a legend page explaining the meaning of the various boxes and\n"
- "arrows in the dot generated graphs.",
- TRUE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cb = cfg->addBool(
- "DOT_CLEANUP",
- "If the DOT_CLEANUP tag is set to YES (the default) Doxygen will\n"
- "remove the intermediate dot files that are used to generate\n"
- "the various graphs.",
- TRUE
- );
- cb->addDependency("HAVE_DOT");
- //----
- cfg->addObsolete("USE_WINDOWS_ENCODING");
- //----
- cfg->addObsolete("DETAILS_AT_TOP");
- //----
- cfg->addObsolete("QTHELP_FILE");
- //----
- cfg->addObsolete("QTHELP_CONFIG");
- //----
- cfg->addObsolete("DOXYGEN2QTHELP_LOC");
- //----
- cfg->addObsolete("MAX_DOT_GRAPH_WIDTH");
- //----
- cfg->addObsolete("MAX_DOT_GRAPH_HEIGHT");
- //----
- cfg->addObsolete("CGI_NAME");
- //----
- cfg->addObsolete("CGI_URL");
- //----
- cfg->addObsolete("DOC_URL");
- //----
- cfg->addObsolete("DOC_ABSPATH");
- //----
- cfg->addObsolete("BIN_ABSPATH");
- //----
- cfg->addObsolete("EXT_DOC_PATHS");
- //----
- cfg->addObsolete("USE_INLINE_TREES");
- //----
- cfg->addObsolete("SHOW_DIRECTORIES");
- //----
- cfg->addObsolete("HTML_ALIGN_MEMBERS");
- //----
- cfg->addObsolete("SYMBOL_CACHE_SIZE");
+ //----
+ cb = cfg->addBool(
+ "CLASS_DIAGRAMS",
+ "If the CLASS_DIAGRAMS tag is set to YES doxygen will generate a class diagram\n"
+ "(in HTML and LaTeX) for classes with base or super classes. Setting the tag to\n"
+ "NO turns the diagrams off. Note that this option also works with HAVE_DOT\n"
+ "disabled, but it is recommended to install and use dot, since it yields more\n"
+ "powerful graphs.Default value: YES.",
+ TRUE
+ );
+ //----
+ cs = cfg->addString(
+ "MSCGEN_PATH",
+ "You can define message sequence charts within doxygen comments using the \\msc\n"
+ "command. Doxygen will then run the mscgen tool (see:\n"
+ "http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the\n"
+ "documentation. The MSCGEN_PATH tag allows you to specify the directory where\n"
+ "the mscgen tool resides. If left empty the tool is assumed to be found in the\n"
+ "default search path."
+ );
+ cs->setWidgetType(ConfigString::Dir);
+ //----
+ cb = cfg->addBool(
+ "HIDE_UNDOC_RELATIONS",
+ "If set to YES, the inheritance and collaboration graphs will hide inheritance\n"
+ "and usage relations if the target is undocumented or is not a class.Default\n"
+ "value: YES.",
+ TRUE
+ );
+ //----
+ cb = cfg->addBool(
+ "HAVE_DOT",
+ "If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is\n"
+ "available from the path. This tool is part of Graphviz (see:\n"
+ "http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent\n"
+ "Bell Labs. The other options in this section have no effect if this option is\n"
+ "set to NODefault value: NO.",
+ FALSE
+ );
+ //----
+ ci = cfg->addInt(
+ "DOT_NUM_THREADS",
+ "The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed\n"
+ "to run in parallel. When set to 0 doxygen will base this on the number of\n"
+ "processors available in the system. You can set it explicitly to a value\n"
+ "larger than 0 to get control over the balance between CPU load and processing\n"
+ "speed. Minimum value: 0, maximum value: 32, default value: 0.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ 0,32,0
+ );
+ ci->addDependency("HAVE_DOT");
+ //----
+ cs = cfg->addString(
+ "DOT_FONTNAME",
+ "When you want a differently looking font n the dot files that doxygen\n"
+ "generates you can specify the font name using DOT_FONTNAME. You need to make\n"
+ "sure dot is able to find the font, which can be done by putting it in a\n"
+ "standard location or by setting the DOTFONTPATH environment variable or by\n"
+ "setting DOT_FONTPATH to the directory containing the font.The default value\n"
+ "is: Helvetica.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES."
+ );
+ cs->setDefaultValue("Helvetica");
+ cs->addDependency("HAVE_DOT");
+ //----
+ ci = cfg->addInt(
+ "DOT_FONTSIZE",
+ "The DOT_FONTSIZE tag can be used to set the size (in points) of the font of\n"
+ "dot graphs. Minimum value: 4, maximum value: 24, default value: 10.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ 4,24,10
+ );
+ ci->addDependency("HAVE_DOT");
+ //----
+ cs = cfg->addString(
+ "DOT_FONTPATH",
+ "By default doxygen will tell dot to use the default font as specified with\n"
+ "DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set\n"
+ "the path where dot can find it using this tag.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES."
+ );
+ cs->setWidgetType(ConfigString::Dir);
+ cs->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "CLASS_GRAPH",
+ "If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for\n"
+ "each documented class showing the direct and indirect inheritance relations.\n"
+ "Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.Default value:\n"
+ "YES.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ TRUE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "COLLABORATION_GRAPH",
+ "If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a\n"
+ "graph for each documented class showing the direct and indirect implementation\n"
+ "dependencies (inheritance, containment, and class references variables) of the\n"
+ "class with other documented classes.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ TRUE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "GROUP_GRAPHS",
+ "If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for\n"
+ "groups, showing the direct groups dependencies.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ TRUE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "UML_LOOK",
+ "If the UML_LOOK tag is set to YES doxygen will generate inheritance and\n"
+ "collaboration diagrams in a style similar to the OMG's Unified Modeling\n"
+ "Language.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ FALSE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ ci = cfg->addInt(
+ "UML_LIMIT_NUM_FIELDS",
+ "If the UML_LOOK tag is enabled, the fields and methods are shown inside the\n"
+ "class node. If there are many fields or methods and many nodes the graph may\n"
+ "become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the\n"
+ "number of items for each type to make the size more manageable. Set this to 0\n"
+ "for no limit. Note that the threshold may be exceeded by 50% before the limit\n"
+ "is enforced. So when you set the threshold to 10, up to 15 fields may appear,\n"
+ "but if the number exceeds 15, the total amount of fields shown is limited to\n"
+ "10. Minimum value: 0, maximum value: 100, default value: 10.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ 0,100,10
+ );
+ ci->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "TEMPLATE_RELATIONS",
+ "If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and\n"
+ "collaboration graphs will show the relations between templates and their\n"
+ "instances.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ FALSE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "INCLUDE_GRAPH",
+ "If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to\n"
+ "YES then doxygen will generate a graph for each documented file showing the\n"
+ "direct and indirect include dependencies of the file with other documented\n"
+ "files.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ TRUE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "INCLUDED_BY_GRAPH",
+ "If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are\n"
+ "set to YES then doxygen will generate a graph for each documented file showing\n"
+ "the direct and indirect include dependencies of the file with other documented\n"
+ "files.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ TRUE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "CALL_GRAPH",
+ "If the CALL_GRAPH tag is set to YES then doxygen will generate a call\n"
+ "dependency graph for every global function or class method.\n"
+ "\n"
+ "Note that enabling this option will significantly increase the time of a run.\n"
+ "So in most cases it will be better to enable call graphs for selected\n"
+ "functions only using the \\callgraph command.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ FALSE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "CALLER_GRAPH",
+ "If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller\n"
+ "dependency graph for every global function or class method.\n"
+ "\n"
+ "Note that enabling this option will significantly increase the time of a run.\n"
+ "So in most cases it will be better to enable caller graphs for selected\n"
+ "functions only using the \\callergraph command.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ FALSE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "GRAPHICAL_HIERARCHY",
+ "If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical\n"
+ "hierarchy of all classes instead of a textual one.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ TRUE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "DIRECTORY_GRAPH",
+ "If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the\n"
+ "dependencies a directory has on other directories in a graphical way. The\n"
+ "dependency relations are determined by the #include relations between the\n"
+ "files in the directories.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ TRUE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ ce = cfg->addEnum(
+ "DOT_IMAGE_FORMAT",
+ "The DOT_IMAGE_FORMAT tag can be used to set the image format of the images\n"
+ "generated by dot.\n"
+ "Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order\n"
+ "to make the SVG files visible in IE 9+ (other browsers do not have this\n"
+ "requirement).Possible values are: png, jpg, gif and svg.\n"
+ "\n"
+ "The default value is: png.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ "png"
+ );
+ ce->addValue("png");
+ ce->addValue("jpg");
+ ce->addValue("gif");
+ ce->addValue("svg");
+ ce->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "INTERACTIVE_SVG",
+ "If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to\n"
+ "enable generation of interactive SVG images that allow zooming and panning.\n"
+ "\n"
+ "Note that this requires a modern browser other than Internet Explorer. Tested\n"
+ "and working are Firefox, Chrome, Safari, and Opera.\n"
+ "Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make\n"
+ "the SVG files visible. Older versions of IE do not have SVG support.Default\n"
+ "value: NO.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ FALSE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cs = cfg->addString(
+ "DOT_PATH",
+ "The DOT_PATH tag can be used to specify the path where the dot tool can be\n"
+ "found. If left blank, it is assumed the dot tool can be found in the path.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES."
+ );
+ cs->setWidgetType(ConfigString::Dir);
+ cs->addDependency("HAVE_DOT");
+ //----
+ cl = cfg->addList(
+ "DOTFILE_DIRS",
+ "The DOTFILE_DIRS tag can be used to specify one or more directories that\n"
+ "contain dot files that are included in the documentation (see the \\dotfile\n"
+ "command).\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES."
+ );
+ cl->addDependency("HAVE_DOT");
+ cl->setWidgetType(ConfigList::Dir);
+ //----
+ cl = cfg->addList(
+ "MSCFILE_DIRS",
+ "The MSCFILE_DIRS tag can be used to specify one or more directories that\n"
+ "contain msc files that are included in the documentation (see the \\mscfile\n"
+ "command)."
+ );
+ cl->setWidgetType(ConfigList::Dir);
+ //----
+ ci = cfg->addInt(
+ "DOT_GRAPH_MAX_NODES",
+ "The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes\n"
+ "that will be shown in the graph. If the number of nodes in a graph becomes\n"
+ "larger than this value, doxygen will truncate the graph, which is visualized\n"
+ "by representing a node as a red box. Note that doxygen if the number of direct\n"
+ "children of the root node in a graph is already larger than\n"
+ "DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that\n"
+ "the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. Minimum\n"
+ "value: 0, maximum value: 10000, default value: 50.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ 0,10000,50
+ );
+ ci->addDependency("HAVE_DOT");
+ //----
+ ci = cfg->addInt(
+ "MAX_DOT_GRAPH_DEPTH",
+ "The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs\n"
+ "generated by dot. A depth value of 3 means that only nodes reachable from the\n"
+ "root by following a path via at most 3 edges will be shown. Nodes that lay\n"
+ "further from the root node will be omitted. Note that setting this option to 1\n"
+ "or 2 may greatly reduce the computation time needed for large code bases. Also\n"
+ "note that the size of a graph can be further restricted by\n"
+ "DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. Minimum\n"
+ "value: 0, maximum value: 1000, default value: 0.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ 0,1000,0
+ );
+ ci->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "DOT_TRANSPARENT",
+ "Set the DOT_TRANSPARENT tag to YES to generate images with a transparent\n"
+ "background. This is disabled by default, because dot on Windows does not seem\n"
+ "to support this out of the box.\n"
+ "\n"
+ "Warning: Depending on the platform used, enabling this option may lead to\n"
+ "badly anti-aliased labels on the edges of a graph (i.e. they become hard to\n"
+ "read).Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ FALSE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "DOT_MULTI_TARGETS",
+ "Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output\n"
+ "files in one run (i.e. multiple -o and -T options on the command line). This\n"
+ "makes dot run faster, but since only newer versions of dot (>1.8.10) support\n"
+ "this, this feature is disabled by default.Default value: NO.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ FALSE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "GENERATE_LEGEND",
+ "If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page\n"
+ "explaining the meaning of the various boxes and arrows in the dot generated\n"
+ "graphs.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ TRUE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cb = cfg->addBool(
+ "DOT_CLEANUP",
+ "If the DOT_CLEANUP tag is set to YES doxygen will remove the intermediate dot\n"
+ "files that are used to generate the various graphs.Default value: YES.\n"
+ "\n"
+ "This tag requires that the tag HAVE_DOT is set to YES.",
+ TRUE
+ );
+ cb->addDependency("HAVE_DOT");
+ //----
+ cfg->addObsolete("USE_WINDOWS_ENCODING");
+ //----
+ cfg->addObsolete("DETAILS_AT_TOP");
+ //----
+ cfg->addObsolete("QTHELP_FILE");
+ //----
+ cfg->addObsolete("QTHELP_CONFIG");
+ //----
+ cfg->addObsolete("DOXYGEN2QTHELP_LOC");
+ //----
+ cfg->addObsolete("MAX_DOT_GRAPH_WIDTH");
+ //----
+ cfg->addObsolete("MAX_DOT_GRAPH_HEIGHT");
+ //----
+ cfg->addObsolete("CGI_NAME");
+ //----
+ cfg->addObsolete("CGI_URL");
+ //----
+ cfg->addObsolete("DOC_URL");
+ //----
+ cfg->addObsolete("DOC_ABSPATH");
+ //----
+ cfg->addObsolete("BIN_ABSPATH");
+ //----
+ cfg->addObsolete("EXT_DOC_PATHS");
+ //----
+ cfg->addObsolete("USE_INLINE_TREES");
+ //----
+ cfg->addObsolete("SHOW_DIRECTORIES");
+ //----
+ cfg->addObsolete("HTML_ALIGN_MEMBERS");
+ //----
+ cfg->addObsolete("SYMBOL_CACHE_SIZE");
}
diff --git a/src/configoptions.h b/src/configoptions.h
index 179d751..8b4fc22 100644
--- a/src/configoptions.h
+++ b/src/configoptions.h
@@ -1,8 +1,5 @@
/******************************************************************************
*
- *
- *
- *
* Copyright (C) 1997-2013 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
diff --git a/src/doxygen.cpp b/src/doxygen.cpp
index 15f1a35..39596bc 100644
--- a/src/doxygen.cpp
+++ b/src/doxygen.cpp
@@ -176,7 +176,6 @@ static QDict<FileDef> g_usingDeclarations(1009); // used classes
static FileStorage *g_storage = 0;
static bool g_successfulRun = FALSE;
static bool g_dumpSymbolMap = FALSE;
-static bool g_dumpConfigAsXML = FALSE;
void clearAll()
{
@@ -9757,18 +9756,6 @@ static void dumpSymbolMap()
}
//----------------------------------------------------------------------------
-
-void dumpConfigAsXML()
-{
- QFile f("config.xml");
- if (f.open(IO_WriteOnly))
- {
- FTextStream t(&f);
- Config::instance()->writeXML(t);
- }
-}
-
-//----------------------------------------------------------------------------
// print the usage of doxygen
static void usage(const char *name)
@@ -10184,9 +10171,6 @@ void readConfiguration(int argc, char **argv)
case 'm':
g_dumpSymbolMap = TRUE;
break;
- case 'x':
- g_dumpConfigAsXML = TRUE;
- break;
case '-':
if (qstrcmp(&argv[optind][2],"help")==0)
{
@@ -10222,17 +10206,7 @@ void readConfiguration(int argc, char **argv)
if (genConfig)
{
- if (g_dumpConfigAsXML)
- {
- checkConfiguration();
- generateConfigFile(configName,shortList);
- dumpConfigAsXML();
- exit(0);
- }
- else
- {
- generateConfigFile(configName,shortList);
- }
+ generateConfigFile(configName,shortList);
cleanUpDoxygen();
exit(0);
}
diff --git a/src/libdoxycfg.t.in b/src/libdoxycfg.t.in
index 4f885a7..270d090 100644
--- a/src/libdoxycfg.t.in
+++ b/src/libdoxycfg.t.in
@@ -47,6 +47,6 @@ sub GenerateDep {
#$ GenerateDep("config.cpp","config.l");
$(LEX) -PconfigYY -t config.l >config.cpp
-configoptions.cpp: config.xml
- python configgen.py config.xml >configoptions.cpp
+configoptions.cpp: config.xml configgen.py
+ python configgen.py -cpp config.xml >configoptions.cpp