From 66b23a9988a7fea680bc342a4f5d98eef1f0cf1b Mon Sep 17 00:00:00 2001 From: Jens Lody fedora@jenslody.de Date: Dec 31 2017 21:52:48 +0000 Subject: Remove unneeded files and patches from git.
---
diff --git a/arnold_schwarzenegger.jpg b/arnold_schwarzenegger.jpg deleted file mode 100644 index 4ea40a6..0000000 Binary files a/arnold_schwarzenegger.jpg and /dev/null differ diff --git a/codeblocks-16.01-astyle2.06-backport.patch b/codeblocks-16.01-astyle2.06-backport.patch deleted file mode 100644 index 3da16b6..0000000 --- a/codeblocks-16.01-astyle2.06-backport.patch +++ /dev/null @@ -1,355 +0,0 @@ -From: Jens Lody fedora@jenslody.de -Date: Tue, 14 Feb 2017 14:04:51 +0100 -Subject: Backport of changes for astyle 2.06 - -diff -Nru a/src/plugins/astyle/astyleconfigdlg.cpp b/src/plugins/astyle/astyleconfigdlg.cpp ---- a/src/plugins/astyle/astyleconfigdlg.cpp 2016-01-23 17:43:22.000000000 +0100 -+++ b/src/plugins/astyle/astyleconfigdlg.cpp 2017-02-14 13:23:37.904786473 +0100 -@@ -245,6 +245,20 @@ - XRCCTRL(*this, "rbGoogle", wxRadioButton)->SetValue(true); - break; - #undef AS_GOOGLE -+#define AS_MOZILLA "\ -+int Foo(bool isBar)\n\ -+{\n\ -+ if (isBar) {\n\ -+ bar();\n\ -+ return 1;\n\ -+ } else\n\ -+ return 0;\n\ -+}" -+ case aspsMozilla: -+ sample = _T(AS_MOZILLA); -+ XRCCTRL(*this, "rbMozilla", wxRadioButton)->SetValue(true); -+ break; -+#undef AS_MOZILLA - #define AS_PICO "\ - int Foo(bool isBar)\n\ - { if (isBar)\n\ -@@ -305,6 +319,8 @@ - SetStyle(asps1TBS); - else if (event.GetId() == XRCID("rbGoogle")) - SetStyle(aspsGoogle); -+ else if (event.GetId() == XRCID("rbMozilla")) -+ SetStyle(aspsMozilla); - else if (event.GetId() == XRCID("rbPico")) - SetStyle(aspsPico); - else if (event.GetId() == XRCID("rbLisp")) -@@ -362,6 +378,7 @@ - XRCCTRL(*this, "chkAttachInlines", wxCheckBox)->SetValue(cfg->ReadBool(_T("/attach_inlines"), false)); - - XRCCTRL(*this, "spnIndentation", wxSpinCtrl)->SetValue(cfg->ReadInt(_T("/indentation"), 4)); -+ XRCCTRL(*this, "spnContinuation", wxSpinCtrl)->SetValue(cfg->ReadInt(_T("/continuation"), 0)); - XRCCTRL(*this, "chkUseTab", wxCheckBox)->SetValue(cfg->ReadBool(_T("/use_tabs"), false)); - XRCCTRL(*this, "chkForceUseTabs", wxCheckBox)->SetValue(cfg->ReadBool(_T("/force_tabs"), false)); - XRCCTRL(*this, "chkIndentCase", wxCheckBox)->SetValue(cfg->ReadBool(_T("/indent_case"), false)); -@@ -383,7 +400,8 @@ - XRCCTRL(*this, "chkAddOneLineBrackets", wxCheckBox)->SetValue(cfg->ReadBool(_T("/add_one_line_brackets"), false)); - XRCCTRL(*this, "chkRemoveBrackets", wxCheckBox)->SetValue(cfg->ReadBool(_T("/remove_brackets"), false)); - XRCCTRL(*this, "chkKeepBlocks", wxCheckBox)->SetValue(cfg->ReadBool(_T("/keep_blocks"), false)); -- XRCCTRL(*this, "chkKeepComplex", wxCheckBox)->SetValue(cfg->ReadBool(_T("/keep_complex"), false)); -+ XRCCTRL(*this, "chkKeepHeaders", wxCheckBox)->SetValue(cfg->ReadBool(_T("/keep_headers"), false)); -+ XRCCTRL(*this, "chkKeepStatements", wxCheckBox)->SetValue(cfg->ReadBool(_T("/keep_statements"), false)); - XRCCTRL(*this, "chkConvertTabs", wxCheckBox)->SetValue(cfg->ReadBool(_T("/convert_tabs"), false)); - XRCCTRL(*this, "chkCloseTemplates", wxCheckBox)->SetValue(cfg->ReadBool(_T("/close_templates"), false)); - XRCCTRL(*this, "chkRemoveCommentPrefix", wxCheckBox)->SetValue(cfg->ReadBool(_T("/remove_comment_prefix"), false)); -@@ -392,17 +410,26 @@ - XRCCTRL(*this, "chkBreakAfterLogical", wxCheckBox)->SetValue(cfg->ReadBool(_T("/break_after_mode"), false)); - - if (XRCCTRL(*this, "chkBreakLines", wxCheckBox)->GetValue()) -+ { - XRCCTRL(*this, "txtMaxLineLength", wxTextCtrl)->Enable(); -+ XRCCTRL(*this, "chkBreakAfterLogical", wxCheckBox)->Enable(); -+ } - else -+ { - XRCCTRL(*this, "txtMaxLineLength", wxTextCtrl)->Disable(); -+ XRCCTRL(*this, "chkBreakAfterLogical", wxCheckBox)->Disable(); -+ } -+ - - XRCCTRL(*this, "chkBreakBlocks", wxCheckBox)->SetValue(cfg->ReadBool(_T("/break_blocks"), false)); - XRCCTRL(*this, "chkBreakBlocksAll", wxCheckBox)->SetValue(cfg->ReadBool(_T("/break_blocks_all"), false)); - XRCCTRL(*this, "chkPadOperators", wxCheckBox)->SetValue(cfg->ReadBool(_T("/pad_operators"), false)); -- XRCCTRL(*this, "chkPadParensOut", wxCheckBox)->SetValue(cfg->ReadBool(_T("/pad_parentheses_out"), false)); -- XRCCTRL(*this, "chkPadParensIn", wxCheckBox)->SetValue(cfg->ReadBool(_T("/pad_parentheses_in"), false)); -+ XRCCTRL(*this, "chkPadParenOut", wxCheckBox)->SetValue(cfg->ReadBool(_T("/pad_parentheses_out"), false)); -+ XRCCTRL(*this, "chkPadParenIn", wxCheckBox)->SetValue(cfg->ReadBool(_T("/pad_parentheses_in"), false)); -+ XRCCTRL(*this, "chkPadFirstParenOut", wxCheckBox)->SetValue(cfg->ReadBool(_T("/pad_first_paren_out"), false)); - XRCCTRL(*this, "chkPadHeader", wxCheckBox)->SetValue(cfg->ReadBool(_T("/pad_header"), false)); - XRCCTRL(*this, "chkUnpadParens", wxCheckBox)->SetValue(cfg->ReadBool(_T("/unpad_parentheses"), false)); -+ XRCCTRL(*this, "chkPadComma", wxCheckBox)->SetValue(cfg->ReadBool(_T("/pad_comma"), false)); - XRCCTRL(*this, "chkDelEmptyLine", wxCheckBox)->SetValue(cfg->ReadBool(_T("/delete_empty_lines"), false)); - XRCCTRL(*this, "chkFillEmptyLines", wxCheckBox)->SetValue(cfg->ReadBool(_T("/fill_empty_lines"), false)); - XRCCTRL(*this, "cmbPointerAlign", wxComboBox)->SetValue(cfg->Read(_T("/pointer_align"), _T("None"))); -@@ -455,6 +482,7 @@ - cfg->Write(_T("/attach_inlines"), XRCCTRL(*this, "chkAttachInlines", wxCheckBox)->GetValue()); - - cfg->Write(_T("/indentation"), XRCCTRL(*this, "spnIndentation", wxSpinCtrl)->GetValue()); -+ cfg->Write(_T("/continuation"), XRCCTRL(*this, "spnContinuation", wxSpinCtrl)->GetValue()); - cfg->Write(_T("/use_tabs"), XRCCTRL(*this, "chkUseTab", wxCheckBox)->GetValue()); - cfg->Write(_T("/force_tabs"), XRCCTRL(*this, "chkForceUseTabs", wxCheckBox)->GetValue()); - cfg->Write(_T("/indent_case"), XRCCTRL(*this, "chkIndentCase", wxCheckBox)->GetValue()); -@@ -465,7 +493,7 @@ - cfg->Write(_T("/indent_switches"), XRCCTRL(*this, "chkIndentSwitches", wxCheckBox)->GetValue()); - cfg->Write(_T("/indent_preproc_block"), XRCCTRL(*this, "chkIndentPreprocBlock", wxCheckBox)->GetValue()); - cfg->Write(_T("/indent_preproc_define"), XRCCTRL(*this, "chkIndentPreprocDefine", wxCheckBox)->GetValue()); -- cfg->Write(_T("/indent_preprocessor_cond"), XRCCTRL(*this, "chkIndentPreprocCond", wxCheckBox)->GetValue()); -+ cfg->Write(_T("/indent_preproc_cond"), XRCCTRL(*this, "chkIndentPreprocCond", wxCheckBox)->GetValue()); - cfg->Write(_T("/indent_col1_comments"), XRCCTRL(*this, "chkIndentCol1Comments", wxCheckBox)->GetValue()); - cfg->Write(_T("/min_conditional_indent"), XRCCTRL(*this, "spnMinConditionalEvent", wxSpinCtrl)->GetValue()); - cfg->Write(_T("/max_instatement_indent"), XRCCTRL(*this, "txtMaxInStatementIndent",wxTextCtrl)->GetValue()); -@@ -476,7 +504,8 @@ - cfg->Write(_T("/add_one_line_brackets"), XRCCTRL(*this, "chkAddOneLineBrackets", wxCheckBox)->GetValue()); - cfg->Write(_T("/remove_brackets"), XRCCTRL(*this, "chkRemoveBrackets", wxCheckBox)->GetValue()); - cfg->Write(_T("/keep_blocks"), XRCCTRL(*this, "chkKeepBlocks", wxCheckBox)->GetValue()); -- cfg->Write(_T("/keep_complex"), XRCCTRL(*this, "chkKeepComplex", wxCheckBox)->GetValue()); -+ cfg->Write(_T("/keep_headers"), XRCCTRL(*this, "chkKeepHeaders", wxCheckBox)->GetValue()); -+ cfg->Write(_T("/keep_statements"), XRCCTRL(*this, "chkKeepStatements", wxCheckBox)->GetValue()); - cfg->Write(_T("/convert_tabs"), XRCCTRL(*this, "chkConvertTabs", wxCheckBox)->GetValue()); - cfg->Write(_T("/close_templates"), XRCCTRL(*this, "chkCloseTemplates", wxCheckBox)->GetValue()); - cfg->Write(_T("/remove_comment_prefix"), XRCCTRL(*this, "chkRemoveCommentPrefix", wxCheckBox)->GetValue()); -@@ -487,10 +516,12 @@ - cfg->Write(_T("/break_blocks"), XRCCTRL(*this, "chkBreakBlocks", wxCheckBox)->GetValue()); - cfg->Write(_T("/break_blocks_all"), XRCCTRL(*this, "chkBreakBlocksAll", wxCheckBox)->GetValue()); - cfg->Write(_T("/pad_operators"), XRCCTRL(*this, "chkPadOperators", wxCheckBox)->GetValue()); -- cfg->Write(_T("/pad_parentheses_out"), XRCCTRL(*this, "chkPadParensOut", wxCheckBox)->GetValue()); -- cfg->Write(_T("/pad_parentheses_in"), XRCCTRL(*this, "chkPadParensIn", wxCheckBox)->GetValue()); -+ cfg->Write(_T("/pad_parentheses_out"), XRCCTRL(*this, "chkPadParenOut", wxCheckBox)->GetValue()); -+ cfg->Write(_T("/pad_parentheses_in"), XRCCTRL(*this, "chkPadParenIn", wxCheckBox)->GetValue()); -+ cfg->Write(_T("/pad_first_paren_out"), XRCCTRL(*this, "chkPadFirstParenOut", wxCheckBox)->GetValue()); - cfg->Write(_T("/pad_header"), XRCCTRL(*this, "chkPadHeader", wxCheckBox)->GetValue()); - cfg->Write(_T("/unpad_parentheses"), XRCCTRL(*this, "chkUnpadParens", wxCheckBox)->GetValue()); -+ cfg->Write(_T("/pad_comma"), XRCCTRL(*this, "chkPadComma", wxCheckBox)->GetValue()); - cfg->Write(_T("/delete_empty_lines"), XRCCTRL(*this, "chkDelEmptyLine", wxCheckBox)->GetValue()); - cfg->Write(_T("/fill_empty_lines"), XRCCTRL(*this, "chkFillEmptyLines", wxCheckBox)->GetValue()); - cfg->Write(_T("/pointer_align"), XRCCTRL(*this, "cmbPointerAlign", wxComboBox)->GetValue()); -diff -Nru a/src/plugins/astyle/astylepredefinedstyles.h b/src/plugins/astyle/astylepredefinedstyles.h ---- a/src/plugins/astyle/astylepredefinedstyles.h 2016-01-23 17:43:22.000000000 +0100 -+++ b/src/plugins/astyle/astylepredefinedstyles.h 2017-02-14 13:24:27.029238200 +0100 -@@ -20,6 +20,7 @@ - aspsHorstmann, - asps1TBS, - aspsGoogle, -+ aspsMozilla, - aspsPico, - aspsLisp, - aspsCustom -diff -Nru a/src/plugins/astyle/dlgformattersettings.cpp b/src/plugins/astyle/dlgformattersettings.cpp ---- a/src/plugins/astyle/dlgformattersettings.cpp 2016-01-23 17:43:22.000000000 +0100 -+++ b/src/plugins/astyle/dlgformattersettings.cpp 2017-02-14 13:24:58.326167038 +0100 -@@ -51,6 +51,8 @@ - formatter.setFormattingStyle(astyle::STYLE_1TBS); - else if (XRCCTRL(*m_dlg, "rbGoogle", wxRadioButton)->GetValue()) - formatter.setFormattingStyle(astyle::STYLE_GOOGLE); -+ else if (XRCCTRL(*m_dlg, "rbMozilla", wxRadioButton)->GetValue()) -+ formatter.setFormattingStyle(astyle::STYLE_MOZILLA); - else if (XRCCTRL(*m_dlg, "rbPico", wxRadioButton)->GetValue()) - formatter.setFormattingStyle(astyle::STYLE_PICO); - else if (XRCCTRL(*m_dlg, "rbLisp", wxRadioButton)->GetValue()) -@@ -63,12 +65,15 @@ - - bool value = XRCCTRL(*m_dlg, "chkForceUseTabs", wxCheckBox)->GetValue(); - int spaceNum = XRCCTRL(*m_dlg, "spnIndentation", wxSpinCtrl)->GetValue(); -- - if (XRCCTRL(*m_dlg, "chkUseTab", wxCheckBox)->GetValue()) - formatter.setTabIndentation(spaceNum, value); - else - formatter.setSpaceIndentation(spaceNum); - -+ int contNum = XRCCTRL(*m_dlg, "spnContinuation", wxSpinCtrl)->GetValue(); -+ if (contNum>0 && contNum<=4) -+ formatter.setContinuationIndentation(contNum); -+ - formatter.setCaseIndent(XRCCTRL(*m_dlg, "chkIndentCase", wxCheckBox)->GetValue()); - formatter.setClassIndent(XRCCTRL(*m_dlg, "chkIndentClasses", wxCheckBox)->GetValue()); - formatter.setLabelIndent(XRCCTRL(*m_dlg, "chkIndentLabels", wxCheckBox)->GetValue()); -@@ -89,7 +94,8 @@ - formatter.setAddOneLineBracketsMode(XRCCTRL(*m_dlg, "chkAddOneLineBrackets", wxCheckBox)->GetValue()); - formatter.setRemoveBracketsMode(XRCCTRL(*m_dlg, "chkRemoveBrackets", wxCheckBox)->GetValue()); - formatter.setBreakOneLineBlocksMode(!XRCCTRL(*m_dlg, "chkKeepBlocks", wxCheckBox)->GetValue()); -- formatter.setSingleStatementsMode(!XRCCTRL(*m_dlg, "chkKeepComplex", wxCheckBox)->GetValue()); -+ formatter.setBreakOneLineHeadersMode(!XRCCTRL(*m_dlg, "chkKeepHeaders", wxCheckBox)->GetValue()); -+ formatter.setBreakOneLineStatementsMode(!XRCCTRL(*m_dlg, "chkKeepStatements", wxCheckBox)->GetValue()); - formatter.setTabSpaceConversionMode(XRCCTRL(*m_dlg, "chkConvertTabs", wxCheckBox)->GetValue()); - formatter.setCloseTemplatesMode(XRCCTRL(*m_dlg, "chkCloseTemplates", wxCheckBox)->GetValue()); - formatter.setStripCommentPrefix(XRCCTRL(*m_dlg, "chkRemoveCommentPrefix", wxCheckBox)->GetValue()); -@@ -105,10 +111,12 @@ - formatter.setBreakBlocksMode(XRCCTRL(*m_dlg, "chkBreakBlocks", wxCheckBox)->GetValue()); - formatter.setBreakClosingHeaderBlocksMode(XRCCTRL(*m_dlg, "chkBreakBlocksAll", wxCheckBox)->GetValue()); - formatter.setOperatorPaddingMode(XRCCTRL(*m_dlg, "chkPadOperators", wxCheckBox)->GetValue()); -- formatter.setParensOutsidePaddingMode(XRCCTRL(*m_dlg, "chkPadParensOut", wxCheckBox)->GetValue()); -- formatter.setParensInsidePaddingMode(XRCCTRL(*m_dlg, "chkPadParensIn", wxCheckBox)->GetValue()); -+ formatter.setParensOutsidePaddingMode(XRCCTRL(*m_dlg, "chkPadParenOut", wxCheckBox)->GetValue()); -+ formatter.setParensInsidePaddingMode(XRCCTRL(*m_dlg, "chkPadParenIn", wxCheckBox)->GetValue()); -+ formatter.setParensFirstPaddingMode(XRCCTRL(*m_dlg, "chkPadFirstParenOut", wxCheckBox)->GetValue()); - formatter.setParensHeaderPaddingMode(XRCCTRL(*m_dlg, "chkPadHeader", wxCheckBox)->GetValue()); - formatter.setParensUnPaddingMode(XRCCTRL(*m_dlg, "chkUnpadParens", wxCheckBox)->GetValue()); -+ formatter.setCommaPaddingMode(XRCCTRL(*m_dlg, "chkPadComma", wxCheckBox)->GetValue()); - formatter.setDeleteEmptyLinesMode(XRCCTRL(*m_dlg, "chkDelEmptyLine", wxCheckBox)->GetValue()); - formatter.setEmptyLineFill(XRCCTRL(*m_dlg, "chkFillEmptyLines", wxCheckBox)->GetValue()); - -diff -Nru a/src/plugins/astyle/formattersettings.cpp b/src/plugins/astyle/formattersettings.cpp ---- a/src/plugins/astyle/formattersettings.cpp 2016-01-23 17:43:22.000000000 +0100 -+++ b/src/plugins/astyle/formattersettings.cpp 2017-02-14 13:25:30.889815288 +0100 -@@ -78,6 +78,10 @@ - formatter.setFormattingStyle(astyle::STYLE_GOOGLE); - break; - -+ case aspsMozilla: // Mozilla -+ formatter.setFormattingStyle(astyle::STYLE_MOZILLA); -+ break; -+ - case aspsPico: // Pico - formatter.setFormattingStyle(astyle::STYLE_PICO); - break; -@@ -102,6 +106,10 @@ - else - formatter.setSpaceIndentation(spaceNum); - -+ int contNum = cfg->ReadInt(_T("/continuation"), 0); -+ if (contNum>0 && contNum<=4) -+ formatter.setContinuationIndentation(contNum); -+ - formatter.setCaseIndent(cfg->ReadBool(_T("/indent_case"))); - formatter.setClassIndent(cfg->ReadBool(_T("/indent_classes"))); - formatter.setLabelIndent(cfg->ReadBool(_T("/indent_labels"))); -@@ -121,7 +129,8 @@ - formatter.setAddOneLineBracketsMode(cfg->ReadBool(_T("/add_one_line_brackets"))); - formatter.setRemoveBracketsMode(cfg->ReadBool(_T("/remove_brackets"))); - formatter.setBreakOneLineBlocksMode(!cfg->ReadBool(_T("/keep_blocks"))); -- formatter.setSingleStatementsMode(!cfg->ReadBool(_T("/keep_complex"))); -+ formatter.setBreakOneLineHeadersMode(!cfg->ReadBool(_T("/keep_headers"))); -+ formatter.setBreakOneLineStatementsMode(!cfg->ReadBool(_T("/keep_statements"))); - formatter.setTabSpaceConversionMode(cfg->ReadBool(_T("/convert_tabs"))); - formatter.setCloseTemplatesMode(cfg->ReadBool(_T("/close_templates"))); - formatter.setStripCommentPrefix(cfg->ReadBool(_T("/remove_comment_prefix"))); -@@ -139,8 +148,10 @@ - formatter.setOperatorPaddingMode(cfg->ReadBool(_T("/pad_operators"))); - formatter.setParensOutsidePaddingMode(cfg->ReadBool(_T("/pad_parentheses_out"))); - formatter.setParensInsidePaddingMode(cfg->ReadBool(_T("/pad_parentheses_in"))); -+ formatter.setParensFirstPaddingMode(cfg->ReadBool(_T("/pad_first_paren_out"))); - formatter.setParensHeaderPaddingMode(cfg->ReadBool(_T("/pad_header"))); - formatter.setParensUnPaddingMode(cfg->ReadBool(_T("/unpad_parentheses"))); -+ formatter.setCommaPaddingMode(cfg->ReadBool(_T("/pad_comma"))); - formatter.setDeleteEmptyLinesMode(cfg->ReadBool(_T("/delete_empty_lines"))); - formatter.setEmptyLineFill(cfg->ReadBool(_T("/fill_empty_lines"))); - -diff -Nru a/src/plugins/astyle/resources/configuration.xrc b/src/plugins/astyle/resources/configuration.xrc ---- a/src/plugins/astyle/resources/configuration.xrc 2016-01-23 17:43:22.000000000 +0100 -+++ b/src/plugins/astyle/resources/configuration.xrc 2017-02-14 13:22:06.261061943 +0100 -@@ -109,6 +109,13 @@ - <border>5</border> - </object> - <object class="sizeritem"> -+ <object class="wxRadioButton" name="rbMozilla"> -+ <label>Mozilla</label> -+ </object> -+ <flag>wxTOP|wxLEFT|wxRIGHT|wxALIGN_LEFT</flag> -+ <border>5</border> -+ </object> -+ <object class="sizeritem"> - <object class="wxRadioButton" name="rbPico"> - <label>Pico</label> - <tooltip>Pico style uses run-in brackets and attached closing brackets. Opening brackets are broken and allow run-in statements. The closing bracket is attached to the last line in the block. Switches are indented to allow a run-in to the opening switch block. The style implies keep-one-line-blocks and keep-one-line-statements. If add-brackets is used they will be added as one-line brackets. This style frequently is used with an indent of 2 spaces.</tooltip> -@@ -257,8 +264,29 @@ - <border>5</border> - </object> - <object class="sizeritem"> -+ <object class="wxBoxSizer"> -+ <object class="sizeritem"> -+ <object class="wxStaticText" name="ID_STATICTEXT7"> -+ <label>Continuation indent for line ending with '(' or assignment '='</label> -+ </object> -+ <flag>wxALIGN_CENTER_VERTICAL</flag> -+ <border>5</border> -+ </object> -+ <object class="sizeritem"> -+ <object class="wxSpinCtrl" name="spnContinuation"> -+ <value>0</value> -+ <max>4</max> -+ </object> -+ <flag>wxLEFT|wxALIGN_CENTER_VERTICAL</flag> -+ <border>5</border> -+ </object> -+ </object> -+ <flag>wxTOP|wxALIGN_LEFT</flag> -+ <border>5</border> -+ </object> -+ <object class="sizeritem"> - <object class="wxCheckBox" name="chkIndentCase"> -- <label>Indent case: statement in switches (commands under case:)</label> -+ <label>Indent case statement in switches (commands under case:)</label> - </object> - <flag>wxTOP|wxALIGN_LEFT</flag> - <border>5</border> -@@ -413,7 +441,7 @@ - </object> - <object class="sizeritem"> - <object class="wxCheckBox" name="chkRemoveBrackets"> -- <label>Remove brackets from conditional statements (ingle statement on a single line)</label> -+ <label>Remove brackets from conditional statements (single statement on a single line)</label> - </object> - <flag>wxTOP|wxALIGN_LEFT</flag> - <border>5</border> -@@ -426,8 +454,15 @@ - <border>5</border> - </object> - <object class="sizeritem"> -- <object class="wxCheckBox" name="chkKeepComplex"> -- <label>Don't break complex statements and multiple statements residing in a single line</label> -+ <object class="wxCheckBox" name="chkKeepHeaders"> -+ <label>Break one-line headers</label> -+ </object> -+ <flag>wxTOP|wxALIGN_LEFT</flag> -+ <border>5</border> -+ </object> -+ <object class="sizeritem"> -+ <object class="wxCheckBox" name="chkKeepStatements"> -+ <label>Break one-line statements</label> - </object> - <flag>wxTOP|wxALIGN_LEFT</flag> - <border>5</border> -@@ -529,15 +564,22 @@ - <border>5</border> - </object> - <object class="sizeritem"> -- <object class="wxCheckBox" name="chkPadParensOut"> -- <label>Insert space padding around parenthesies on the outside</label> -+ <object class="wxCheckBox" name="chkPadParenOut"> -+ <label>Insert space padding around parentheses on the outside</label> -+ </object> -+ <flag>wxTOP|wxALIGN_LEFT</flag> -+ <border>5</border> -+ </object> -+ <object class="sizeritem"> -+ <object class="wxCheckBox" name="chkPadParenIn"> -+ <label>Insert space padding around parentheses on the inside</label> - </object> - <flag>wxTOP|wxALIGN_LEFT</flag> - <border>5</border> - </object> - <object class="sizeritem"> -- <object class="wxCheckBox" name="chkPadParensIn"> -- <label>Insert space padding around parenthesies on the inside</label> -+ <object class="wxCheckBox" name="chkPadFirstParenOut"> -+ <label>Insert space padding around the first paren in a series on the outside only</label> - </object> - <flag>wxTOP|wxALIGN_LEFT</flag> - <border>5</border> -@@ -551,7 +593,14 @@ - </object> - <object class="sizeritem"> - <object class="wxCheckBox" name="chkUnpadParens"> -- <label>Remove extra space padding around parenthesis</label> -+ <label>Remove extra space padding around parentheses</label> -+ </object> -+ <flag>wxTOP|wxALIGN_LEFT</flag> -+ <border>5</border> -+ </object> -+ <object class="sizeritem"> -+ <object class="wxCheckBox" name="chkPadComma"> -+ <label>Insert space padding after commas (not needed if pad-operators is used)</label> - </object> - <flag>wxTOP|wxALIGN_LEFT</flag> - <border>5</border> diff --git a/codeblocks-16.01-gcc6.patch b/codeblocks-16.01-gcc6.patch deleted file mode 100644 index 4305e0b..0000000 --- a/codeblocks-16.01-gcc6.patch +++ /dev/null @@ -1,240 +0,0 @@ -From 70289a879f7a48a47dd0219cc5d3a9a1dee076a8 Mon Sep 17 00:00:00 2001 -From: Jens Lody jens@codeblocks.org -Date: Wed, 27 Jul 2016 02:09:07 +0200 -Subject: Workaround for gcc6 optimization bug. - - -diff --git a/configure.ac b/configure.ac -index 7f80a3f..f178ee2 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -276,6 +276,7 @@ esac - - CB_GCC_VERSION - AM_CONDITIONAL([HAVE_GCC48], [test $GCC_MAJOR_VERSION -gt 4 -o $GCC_MAJOR_VERSION -eq 4 -a $GCC_MINOR_VERSION -ge 8]) -+AM_CONDITIONAL([HAVE_GCC6], [test $GCC_MAJOR_VERSION -ge 6]) - - AC_MSG_CHECKING([for wxWidgets >= 2.9.0]) - AM_CONDITIONAL([HAVE_WX29], [test $wx_config_major_version -gt 2 -o $wx_config_major_version -eq 2 -a $wx_config_minor_version -ge 9]) -diff --git a/src/sdk/wxpropgrid/Makefile.am b/src/sdk/wxpropgrid/Makefile.am -index 2b1a107..f427fb4 100644 ---- a/src/sdk/wxpropgrid/Makefile.am -+++ b/src/sdk/wxpropgrid/Makefile.am -@@ -3,6 +3,10 @@ AM_CPPFLAGS = $(WX_CXXFLAGS) \ - -DEXPORT_LIB \ - -DwxPG_SUPPORT_TOOLTIPS - -+if HAVE_GCC6 -+AM_CPPFLAGS += -fno-delete-null-pointer-checks -+endif -+ - noinst_LTLIBRARIES = libwxpropgrid.la - - libwxpropgrid_la_SOURCES = ./src/advprops.cpp \ -From 6350b94c5379563ac2a861de8c2c197208782435 Mon Sep 17 00:00:00 2001 -From: jenslody jenslody@2a5c6006-c6dd-42ca-98ab-0921f2732cef -Date: Sun, 17 Apr 2016 21:31:25 +0000 -Subject: * Fix variable declarations, that conflict with internal - compiler-defines, so C::B is compilable with gcc6 . - -git-svn-id: https://svn.code.sf.net/p/codeblocks/code/trunk@10833 2a5c6006-c6dd-42ca-98ab-0921f2732cef - -diff --git a/src/include/prep.h b/src/include/prep.h -index 5843bb8..6397900 100644 ---- a/src/include/prep.h -+++ b/src/include/prep.h -@@ -102,9 +102,9 @@ template<typename T>inline void DeleteArray(T*& p){delete[] p; p = nullptr;} - platform::id - Value of type platform::identifier describing the target platform - -- platform::windows, platform::macosx, platform::linux -+ platform::windows, platform::macosx, platform::Linux - platform::freebsd, platform::netbsd, platform::openbsd -- platform::darwin, platform::solaris, platform::unix -+ platform::darwin, platform::solaris, platform::Unix - Boolean value that evaluates to true if the target platform is the same as the variable's name, false otherwise. - Using the platform booleans is equivalent to using platform::id, but results in nicer code. - -@@ -185,13 +185,13 @@ namespace platform - - const bool windows = (id == platform_windows); - const bool macosx = (id == platform_macosx); -- const bool linux = (id == platform_linux); -+ const bool Linux = (id == platform_linux); - const bool freebsd = (id == platform_freebsd); - const bool netbsd = (id == platform_netbsd); - const bool openbsd = (id == platform_openbsd); - const bool darwin = (id == platform_darwin); - const bool solaris = (id == platform_solaris); -- const bool unix = (linux | freebsd | netbsd | openbsd | darwin | solaris); -+ const bool Unix = (Linux | freebsd | netbsd | openbsd | darwin | solaris); - - const int bits = 8*sizeof(void*); - -diff --git a/src/plugins/compilergcc/compilergcc.cpp b/src/plugins/compilergcc/compilergcc.cpp -index 1c255b6..e8b8443 100644 ---- a/src/plugins/compilergcc/compilergcc.cpp -+++ b/src/plugins/compilergcc/compilergcc.cpp -@@ -871,7 +871,7 @@ void CompilerGCC::DoRegisterCompilers() - CompilerFactory::RegisterCompiler(new CompilerGDC); - CompilerFactory::RegisterCompiler(new CompilerGNUFortran); - CompilerFactory::RegisterCompiler(new CompilerG95); -- if (platform::windows || platform::linux || nonPlatComp) -+ if (platform::windows || platform::Linux || nonPlatComp) - CompilerFactory::RegisterCompiler(new CompilerGNUARM); - - // register pure XML compilers -@@ -925,7 +925,7 @@ void CompilerGCC::DoRegisterCompilers() - else if (test == wxT("macosx")) - val = platform::macosx; - else if (test == wxT("linux")) -- val = platform::linux; -+ val = platform::Linux; - else if (test == wxT("freebsd")) - val = platform::freebsd; - else if (test == wxT("netbsd")) -@@ -937,7 +937,7 @@ void CompilerGCC::DoRegisterCompilers() - else if (test == wxT("solaris")) - val = platform::solaris; - else if (test == wxT("unix")) -- val = platform::unix; -+ val = platform::Unix; - } - if (val) - CompilerFactory::RegisterCompiler( -diff --git a/src/plugins/contrib/lib_finder/processingdlg.cpp b/src/plugins/contrib/lib_finder/processingdlg.cpp -index 77ccfd2..03c93cf 100644 ---- a/src/plugins/contrib/lib_finder/processingdlg.cpp -+++ b/src/plugins/contrib/lib_finder/processingdlg.cpp -@@ -423,7 +423,7 @@ void ProcessingDlg::CheckFilter( - } - } - -- if ( platform::linux ) -+ if ( platform::Linux ) - { - if ( Platform==_T("lin") || Platform==_T("linux") ) - { -@@ -477,7 +477,7 @@ void ProcessingDlg::CheckFilter( - } - } - -- if ( platform::unix ) -+ if ( platform::Unix ) - { - if ( Platform==_T("unix") || Platform==_T("un*x") ) - { -diff --git a/src/plugins/projectsimporter/msvc10loader.cpp b/src/plugins/projectsimporter/msvc10loader.cpp -index 6a88e79..19f692b 100644 ---- a/src/plugins/projectsimporter/msvc10loader.cpp -+++ b/src/plugins/projectsimporter/msvc10loader.cpp -@@ -50,7 +50,7 @@ MSVC10Loader::MSVC10Loader(cbProject* project) : - //ctor - if (platform::windows) - m_PlatformName = _T("Win32"); -- else if (platform::linux) -+ else if (platform::Linux) - m_PlatformName = _T("Linux"); - else if (platform::macosx) - m_PlatformName = _T("MacOSX"); -diff --git a/src/plugins/projectsimporter/msvc7loader.cpp b/src/plugins/projectsimporter/msvc7loader.cpp -index 568357f..a2f56f8 100644 ---- a/src/plugins/projectsimporter/msvc7loader.cpp -+++ b/src/plugins/projectsimporter/msvc7loader.cpp -@@ -39,7 +39,7 @@ MSVC7Loader::MSVC7Loader(cbProject* project) - //ctor - if (platform::windows) - m_PlatformName = _T("Win32"); -- else if (platform::linux) -+ else if (platform::Linux) - m_PlatformName = _T("Linux"); - else if (platform::macosx) - m_PlatformName = _T("MacOSX"); -diff --git a/src/sdk/compileoptionsbase.cpp b/src/sdk/compileoptionsbase.cpp -index 20b7e77..700d39c 100644 ---- a/src/sdk/compileoptionsbase.cpp -+++ b/src/sdk/compileoptionsbase.cpp -@@ -64,7 +64,7 @@ bool CompileOptionsBase::SupportsCurrentPlatform() const - { - if(platform::windows) - return m_Platform & spWindows; -- if(platform::unix) -+ if(platform::Unix) - return m_Platform & spUnix; - if(platform::macosx) - return m_Platform & spMac; -diff --git a/src/sdk/compiler.cpp b/src/sdk/compiler.cpp -index 7b29618..45ed969 100644 ---- a/src/sdk/compiler.cpp -+++ b/src/sdk/compiler.cpp -@@ -1149,7 +1149,7 @@ bool Compiler::EvalXMLCondition(const wxXmlNode* node) - else if (test == wxT("macosx")) - val = platform::macosx; - else if (test == wxT("linux")) -- val = platform::linux; -+ val = platform::Linux; - else if (test == wxT("freebsd")) - val = platform::freebsd; - else if (test == wxT("netbsd")) -@@ -1161,7 +1161,7 @@ bool Compiler::EvalXMLCondition(const wxXmlNode* node) - else if (test == wxT("solaris")) - val = platform::solaris; - else if (test == wxT("unix")) -- val = platform::unix; -+ val = platform::Unix; - } - else if (node->GetAttribute(wxT("exec"), &test)) - { -diff --git a/src/sdk/compiletargetbase.cpp b/src/sdk/compiletargetbase.cpp -index 85f57ed..19c5647 100644 ---- a/src/sdk/compiletargetbase.cpp -+++ b/src/sdk/compiletargetbase.cpp -@@ -264,7 +264,7 @@ void CompileTargetBase::GenerateTargetFilename(wxString& filename) const - { - wxString prefix = wxEmptyString; - // On linux, "lib" is the common prefix for this platform -- if (platform::linux) -+ if (platform::Linux) - prefix = wxT("lib"); - // FIXME (Morten#5#): What about Mac (Windows is OK)?! - -diff --git a/src/sdk/configmanager.cpp b/src/sdk/configmanager.cpp -index 15a931e..4b6cbfc 100644 ---- a/src/sdk/configmanager.cpp -+++ b/src/sdk/configmanager.cpp -@@ -261,11 +261,11 @@ void CfgMgrBldr::SwitchTo(const wxString& fileName) - - if (platform::windows) - info.append(_T("\n\t Windows ")); -- if (platform::linux) -+ if (platform::Linux) - info.append(_T("\n\t Linux ")); - if (platform::macosx) - info.append(_T("\n\t Mac OS X ")); -- if (platform::unix) -+ if (platform::Unix) - info.append(_T("\n\t Unix ")); - - info.append(platform::unicode ? _T("Unicode ") : _T("ANSI ")); -diff --git a/src/sdk/editormanager.cpp b/src/sdk/editormanager.cpp -index 0a9ab0f..929ae82 100644 ---- a/src/sdk/editormanager.cpp -+++ b/src/sdk/editormanager.cpp -@@ -1845,7 +1845,7 @@ void EditorManager::CollectDefines(CodeBlocksEvent& event) - defines.Add(wxT("__WXOSX_MAC__")); - defines.Add(wxT("__APPLE__")); - } -- else if (platform::linux) -+ else if (platform::Linux) - { - defines.Add(wxT("LINUX")); - defines.Add(wxT("linux")); -@@ -1880,7 +1880,7 @@ void EditorManager::CollectDefines(CodeBlocksEvent& event) - defines.Add(wxT("__SUNOS__")); - defines.Add(wxT("__SOLARIS__")); - } -- if (platform::unix) -+ if (platform::Unix) - { - defines.Add(wxT("unix")); - defines.Add(wxT("__unix")); diff --git a/codeblocks-16.01-gcc7.patch b/codeblocks-16.01-gcc7.patch deleted file mode 100644 index 66630a8..0000000 --- a/codeblocks-16.01-gcc7.patch +++ /dev/null @@ -1,23 +0,0 @@ -From d62ca21c500383fbe23fbb88a6840bda5e679f8f Mon Sep 17 00:00:00 2001 -From: Jens Lody jens@codeblocks.org -Date: Fri, 10 Feb 2017 21:24:29 +0100 -Subject: Build fix for gcc 7. - - -diff --git a/src/include/scripting/sqplus/sqplus.h b/src/include/scripting/sqplus/sqplus.h -index 73f37b2..ae7d3c7 100644 ---- a/src/include/scripting/sqplus/sqplus.h -+++ b/src/include/scripting/sqplus/sqplus.h -@@ -154,10 +154,10 @@ struct ScriptStringVar : ScriptStringVarBase { - return safeStringCopy(s,_s.s,MaxLength); - } - bool operator == (const ScriptStringVar & _s) { -- return _strcmp(s,_s.s) == 0; -+ return strcmp(s,_s.s) == 0; - } - bool compareCaseInsensitive(const ScriptStringVar & _s) { -- return _stricmp(s,_s.s) == 0; -+ return strcasecmp(s,_s.s) == 0; - } - }; - diff --git a/codeblocks-16.01-opencv-wizard.patch b/codeblocks-16.01-opencv-wizard.patch deleted file mode 100644 index 40a6e39..0000000 --- a/codeblocks-16.01-opencv-wizard.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 7d05388ca497f5035103cfd3274681d7434cbed2 Mon Sep 17 00:00:00 2001 -From: Jens Lody jens@codeblocks.org -Date: Wed, 27 Jul 2016 01:00:18 +0200 -Subject: Replace file with problematic license with a file in the public - domain - (https://en.wikipedia.org/wiki/File:Arnold_Schwarzenegger_edit%28ws%29.jpg). - Backport of svn revisions 10858, 10859 and 10863. - - -diff --git a/src/plugins/scriptedwizard/resources/opencv/Makefile.am b/src/plugins/scriptedwizard/resources/opencv/Makefile.am -index 76096d8..6356c1d 100644 ---- a/src/plugins/scriptedwizard/resources/opencv/Makefile.am -+++ b/src/plugins/scriptedwizard/resources/opencv/Makefile.am -@@ -9,5 +9,5 @@ dist_pkgdata_DATA = logo.png \ - filesdir = $(pkgdatadir)/files - - dist_files_DATA = files/main.cpp \ -- files/lena.jpg -+ files/arnold_schwarzenegger.jpg - -diff --git a/src/plugins/scriptedwizard/resources/opencv/files/main.cpp b/src/plugins/scriptedwizard/resources/opencv/files/main.cpp -index 39e73a3..82fe762 100644 ---- a/src/plugins/scriptedwizard/resources/opencv/files/main.cpp -+++ b/src/plugins/scriptedwizard/resources/opencv/files/main.cpp -@@ -5,11 +5,11 @@ using namespace cv; - - int main(int argc, char *argv[]) - { -- Mat img = imread("lena.jpg", CV_LOAD_IMAGE_COLOR); -+ Mat img = imread("arnold_schwarzenegger.jpg", CV_LOAD_IMAGE_COLOR); - if(img.empty()) - return -1; -- namedWindow( "lena", CV_WINDOW_AUTOSIZE ); -- imshow("lena", img); -+ namedWindow("arnold_schwarzenegger", CV_WINDOW_AUTOSIZE ); -+ imshow("arnold_schwarzenegger", img); - waitKey(0); - return 0; - } diff --git a/codeblocks-16.01-source-exporter.patch b/codeblocks-16.01-source-exporter.patch deleted file mode 100644 index 40189d5..0000000 --- a/codeblocks-16.01-source-exporter.patch +++ /dev/null @@ -1,4511 +0,0 @@ -From 35947beedaef601c86ce131d1c6a6040083e0cee Mon Sep 17 00:00:00 2001 -From: Jens Lody jens@codeblocks.org -Date: Wed, 27 Jul 2016 01:02:31 +0200 -Subject: Updated wxPDFDoc library to recent GIT version to resolve licensing - issues. Backport of svn revision 10867. - - -diff --git a/src/plugins/contrib/source_exporter/wxPdfDocument/docs/Doxyfile b/src/plugins/contrib/source_exporter/wxPdfDocument/docs/Doxyfile -index 7bcf2bd..16e5092 100644 ---- a/src/plugins/contrib/source_exporter/wxPdfDocument/docs/Doxyfile -+++ b/src/plugins/contrib/source_exporter/wxPdfDocument/docs/Doxyfile -@@ -1,104 +1,122 @@ --# Doxyfile 1.8.1 -+# Doxyfile 1.8.10 - - # This file describes the settings to be used by the documentation system --# doxygen (www.doxygen.org) for a project -+# doxygen (www.doxygen.org) for a project. - # --# All text after a hash (#) is considered a comment and will be ignored -+# All text after a double hash (##) is considered a comment and is placed in -+# front of the TAG it is preceding. -+# -+# All text after a single hash (#) is considered a comment and will be ignored. - # The format is: --# TAG = value [value, ...] --# For lists items can also be appended using: --# TAG += value [value, ...] --# Values that contain spaces should be placed between quotes (" ") -+# TAG = value [value, ...] -+# For lists, items can also be appended using: -+# TAG += value [value, ...] -+# Values that contain spaces should be placed between quotes (" "). - - #--------------------------------------------------------------------------- - # Project related configuration options - #--------------------------------------------------------------------------- - --# This tag specifies the encoding used for all characters in the config file --# that follow. The default is UTF-8 which is also the encoding used for all --# text before the first occurrence of this tag. Doxygen uses libiconv (or the --# iconv built into libc) for the transcoding. See --# http://www.gnu.org/software/libiconv for the list of possible encodings. -+# 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. -+# The default value is: UTF-8. - - DOXYFILE_ENCODING = UTF-8 - --# 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. -+# The 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. -+# The default value is: My Project. - - PROJECT_NAME = wxPdfDocument - --# 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. -+# The PROJECT_NUMBER tag can be used to enter a project or revision number. This -+# could be handy for archiving the generated documentation or if some version -+# control system is used. - --PROJECT_NUMBER = 0.9.3 -+PROJECT_NUMBER = 0.9.5 - --# 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. -+# 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. - - PROJECT_BRIEF = - --# 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. -+# With the PROJECT_LOGO tag one can specify a logo or an 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. - - PROJECT_LOGO = - --# 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. -+# The 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. - - OUTPUT_DIRECTORY = ../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. -+# 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 causes -+# performance problems for the file system. -+# The default value is: NO. - - CREATE_SUBDIRS = NO - --# The OUTPUT_LANGUAGE tag is used to specify the language in which all --# documentation generated by doxygen is written. Doxygen will use this --# information to generate all constant output in the proper language. --# The default language is English, other supported languages are: --# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, --# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, --# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English --# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, --# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrillic, Slovak, --# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. -+# If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII -+# characters to appear in the names of generated files. If set to NO, non-ASCII -+# characters will be escaped, for example _xE3_x81_x84 will be used for Unicode -+# U+3044. -+# The default value is: NO. -+ -+ALLOW_UNICODE_NAMES = NO -+ -+# The OUTPUT_LANGUAGE tag is used to specify the language in which all -+# documentation generated by doxygen is written. Doxygen will use this -+# information to generate all constant output in the proper language. -+# Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese, -+# Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States), -+# Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian, -+# Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages), -+# Korean, Korean-en (Korean with English messages), Latvian, Lithuanian, -+# Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian, -+# Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish, -+# Ukrainian and Vietnamese. -+# The default value is: English. - - OUTPUT_LANGUAGE = English - --# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will --# include brief member descriptions after the members that are listed in --# the file and class documentation (similar to JavaDoc). --# Set to NO to disable this. -+# If the BRIEF_MEMBER_DESC tag is set to YES, 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. -+# The default value is: YES. - - BRIEF_MEMBER_DESC = YES - --# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend --# the brief description of a member or function before the detailed description. --# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the -+# If the REPEAT_BRIEF tag is set to YES, 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. -+# The default value is: YES. - - REPEAT_BRIEF = YES - --# This tag implements a quasi-intelligent brief description abbreviator --# that is used to form the text in various listings. Each string --# in this list, if found as the leading text of the brief description, will be --# stripped from the text and the result after processing the whole list, is --# used as the annotated text. Otherwise, the brief description is used as-is. --# If left blank, the following values are used ("$name" is automatically --# replaced with the name of the entity): "The $name class" "The $name widget" --# "The $name file" "is" "provides" "specifies" "contains" --# "represents" "a" "an" "the" -+# This tag implements a quasi-intelligent brief description abbreviator that is -+# used to form the text in various listings. Each string in this list, if found -+# as the leading text of the brief description, will be stripped from the text -+# and the result, after processing the whole list, is used as the annotated -+# text. Otherwise, the brief description is used as-is. If left blank, the -+# following values are used ($name is automatically replaced with the name of -+# the entity):The $name class, The $name widget, The $name file, is, provides, -+# specifies, contains, represents, a, an and the. - - ABBREVIATE_BRIEF = "The $name class" \ - "The $name widget" \ -@@ -112,247 +130,287 @@ ABBREVIATE_BRIEF = "The $name class" \ - an \ - the - --# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then --# Doxygen will generate a detailed section even if there is only a brief -+# 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. -+# The default value is: NO. - - ALWAYS_DETAILED_SEC = NO - --# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all --# inherited members of a class in the documentation of that class as if those --# members were ordinary class members. Constructors, destructors and assignment -+# 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. -+# The default value is: NO. - - INLINE_INHERITED_MEMB = NO - --# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full --# path before files name in the file list and in the header files. If set --# to NO the shortest path that makes the file name unique will be used. -+# If the FULL_PATH_NAMES tag is set to YES, 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 -+# The default value is: YES. - - FULL_PATH_NAMES = NO - --# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag --# can be used to strip a user-defined part of the path. Stripping is --# only done if one of the specified strings matches the left-hand part of --# the path. The tag can be used to show relative paths in the file list. --# If left blank the directory from which doxygen is run is used as the --# path to strip. -+# 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 can specify absolute paths here, but also relative paths, which -+# will be relative from the directory where doxygen is started. -+# This tag requires that the tag FULL_PATH_NAMES is set to YES. - - STRIP_FROM_PATH = - --# 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. -+# 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 list of include paths that are normally passed to the compiler -+# using the -I flag. - - STRIP_FROM_INC_PATH = - --# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter --# (but less readable) file names. This can be useful if your file system --# doesn't support long names like on DOS, Mac, or CD-ROM. -+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but -+# less readable) file names. This can be useful is your file systems doesn't -+# support long names like on DOS, Mac, or CD-ROM. -+# The default value is: NO. - - SHORT_NAMES = NO - --# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen --# will interpret the first line (until the first dot) of a JavaDoc-style --# comment as the brief description. If set to NO, the JavaDoc --# comments will behave just like regular Qt-style comments --# (thus requiring an explicit @brief command for a brief description.) -+# 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-style will behave just like regular Qt- -+# style comments (thus requiring an explicit @brief command for a brief -+# description.) -+# The default value is: NO. - - JAVADOC_AUTOBRIEF = NO - --# 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.) -+# 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 Qt-style will behave just like regular Qt-style comments (thus -+# requiring an explicit \brief command for a brief description.) -+# The default value is: NO. - - QT_AUTOBRIEF = NO - --# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen --# treat a multi-line C++ special comment block (i.e. a block of //! or /// --# comments) as a brief description. This used to be the default behaviour. --# The new default is to treat a multi-line C++ comment block as a detailed --# description. Set this tag to YES if you prefer the old behaviour instead. -+# 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 behavior. 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 behavior instead. -+# -+# Note that setting this tag to YES also means that rational rose comments are -+# not recognized any more. -+# The default value is: NO. - - MULTILINE_CPP_IS_BRIEF = NO - --# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented --# member inherits the documentation from any documented member that it --# re-implements. -+# If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the -+# documentation from any documented member that it re-implements. -+# The default value is: YES. - - INHERIT_DOCS = YES - --# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce --# a new page for each member. If set to NO, the documentation of a member will --# be part of the file/class/namespace that contains it. -+# 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. -+# The default value is: NO. - - SEPARATE_MEMBER_PAGES = NO - --# The TAB_SIZE tag can be used to set the number of spaces in a tab. --# Doxygen uses this value to replace tabs by spaces in code fragments. -+# 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. -+# Minimum value: 1, maximum value: 16, default value: 4. - - TAB_SIZE = 16 - --# This tag can be used to specify a number of aliases that acts --# as commands in the documentation. An alias has the form "name=value". --# For example adding "sideeffect=\par Side Effects:\n" will allow you to --# put the command \sideeffect (or @sideeffect) in the documentation, which --# will result in a user-defined paragraph with heading "Side Effects:". --# You can put \n's in the value part of an alias to insert newlines. -+# This tag can be used to specify a number of aliases that act as commands in -+# the documentation. An alias has the form: -+# name=value -+# For example adding -+# "sideeffect=@par Side Effects:\n" -+# will allow you to put the command \sideeffect (or @sideeffect) in the -+# documentation, which will result in a user-defined paragraph with heading -+# "Side Effects:". You can put \n's in the value part of an alias to insert -+# newlines. - - ALIASES = - --# This tag can be used to specify a number of word-keyword mappings (TCL only). --# A mapping has the form "name=value". For example adding --# "class=itcl::class" will allow you to use the command class in the --# itcl::class meaning. -+# This tag can be used to specify a number of word-keyword mappings (TCL only). -+# A mapping has the form "name=value". For example adding "class=itcl::class" -+# will allow you to use the command class in the itcl::class meaning. - - TCL_SUBST = - --# 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. -+# 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. -+# The default value is: NO. - - OPTIMIZE_OUTPUT_FOR_C = NO - --# 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. -+# Set the OPTIMIZE_OUTPUT_JAVA tag to 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. -+# The default value is: NO. - - OPTIMIZE_OUTPUT_JAVA = NO - --# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran --# sources only. Doxygen will then generate output that is more tailored for --# Fortran. -+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran -+# sources. Doxygen will then generate output that is tailored for Fortran. -+# The default value is: NO. - - OPTIMIZE_FOR_FORTRAN = NO - --# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL --# sources. Doxygen will then generate output that is tailored for --# VHDL. -+# 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. -+# The default value is: NO. - - OPTIMIZE_OUTPUT_VHDL = NO - --# 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. -+# 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, -+# C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: -+# FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: -+# Fortran. In the later case the parser tries to guess whether the code is fixed -+# or free formatted code, this is the default for Fortran type files), VHDL. 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: For files without extension you can use no_extension as a placeholder. -+# -+# Note that for custom extensions you also need to set FILE_PATTERNS otherwise -+# the files are not read by doxygen. - - EXTENSION_MAPPING = - --# 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. -+# If the 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. -+# The default value is: YES. - - MARKDOWN_SUPPORT = YES - --# 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 -+# 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 putting a % sign in front of the word or -+# globally by setting AUTOLINK_SUPPORT to NO. -+# The default value is: YES. -+ -+AUTOLINK_SUPPORT = YES -+ -+# 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); -+# versus func(std::string) {}). This also make the inheritance and collaboration - # diagrams that involve STL classes more complete and accurate. -+# The default value is: NO. - - BUILTIN_STL_SUPPORT = NO - --# If you use Microsoft's C++/CLI language, you should set this option to YES to -+# If you use Microsoft's C++/CLI language, you should set this option to YES to - # enable parsing support. -+# The default value is: NO. - - CPP_CLI_SUPPORT = NO - --# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. --# Doxygen will parse them like normal C++ but will assume all classes use public --# instead of private inheritance when no explicit protection keyword is present. -+# Set the SIP_SUPPORT tag to YES if your project consists of sip (see: -+# http://www.riverbankcomputing.co.uk/software/sip/intro) 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. -+# The default value is: NO. - - SIP_SUPPORT = NO - --# For Microsoft'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. -+# For Microsoft's IDL there are propget and propput attributes to indicate -+# getter and setter methods for a property. Setting this option to 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 NO. -+# The default value is: YES. - - IDL_PROPERTY_SUPPORT = YES - --# 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 -+# 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. -+# The default value is: NO. - - DISTRIBUTE_GROUP_DOC = NO - --# Set the SUBGROUPING tag to YES (the default) to allow class member groups of --# the same type (for instance a group of public functions) to be put as a --# subgroup of that type (e.g. under the Public Functions section). Set it to --# NO to prevent subgrouping. Alternatively, this can be done per class using --# the \nosubgrouping command. -+# If one adds a struct or class to a group and this option is enabled, then also -+# any nested class or struct is added to the same group. By default this option -+# is disabled and one has to add nested compounds explicitly via \ingroup. -+# The default value is: NO. -+ -+GROUP_NESTED_COMPOUNDS = NO -+ -+# Set the SUBGROUPING tag to 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 NO to prevent -+# subgrouping. Alternatively, this can be done per class using the -+# \nosubgrouping command. -+# The default value is: YES. - - SUBGROUPING = YES - --# 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). -+# 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). -+# -+# Note that this feature does not work in combination with -+# SEPARATE_MEMBER_PAGES. -+# The default value is: NO. - - INLINE_GROUPED_CLASSES = NO - --# When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and --# unions with only public data 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). -+# 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, structs, classes, and unions are shown on a separate page (for HTML and -+# Man pages) or section (for LaTeX and RTF). -+# The default value is: NO. - - INLINE_SIMPLE_STRUCTS = NO - --# 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 -+# When 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 -+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct -+# with name TypeT. When disabled the typedef will appear as a member of a file, -+# namespace, or class. And the struct will be named TypeS. This can typically be -+# useful for C code in case the coding convention dictates that all compound - # types are typedef'ed and only the typedef is referenced, never the tag name. -+# The default value is: NO. - - TYPEDEF_HIDES_STRUCT = NO - --# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to --# determine which symbols to keep in memory and which to flush to disk. --# When the cache is full, less often used symbols will be written to disk. --# For small to medium size projects (<1000 input files) the default value is --# probably good enough. For larger projects a too small cache size can cause --# doxygen to be busy swapping symbols to and from disk most of the time --# causing a significant performance penalty. --# If the system has enough physical memory increasing the cache will improve the --# performance by keeping more symbols in memory. Note that the value works on --# a logarithmic scale so increasing the size by one will roughly double the --# memory usage. The cache size is given by this formula: --# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, --# corresponding to a cache size of 2^16 = 65536 symbols. -- --SYMBOL_CACHE_SIZE = 0 -- --# Similar to the SYMBOL_CACHE_SIZE 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. -+# 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 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: 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. At the end of a run doxygen will report the cache usage and suggest -+# the optimal cache size from a speed point of view. -+# Minimum value: 0, maximum value: 9, default value: 0. - - LOOKUP_CACHE_SIZE = 0 - -@@ -360,328 +418,387 @@ LOOKUP_CACHE_SIZE = 0 - # Build related configuration options - #--------------------------------------------------------------------------- - --# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in --# documentation are documented, even if no documentation was available. --# Private class members and static file members will be hidden unless --# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES -+# 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. -+# Note: This will also disable the warnings about undocumented members that are -+# normally produced when WARNINGS is set to YES. -+# The default value is: NO. - - EXTRACT_ALL = YES - --# If the EXTRACT_PRIVATE tag is set to YES all private members of a class --# will be included in the documentation. -+# If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will -+# be included in the documentation. -+# The default value is: NO. - - EXTRACT_PRIVATE = NO - --# If the EXTRACT_PACKAGE tag is set to YES all members with package or internal -+# If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal - # scope will be included in the documentation. -+# The default value is: NO. - - EXTRACT_PACKAGE = NO - --# If the EXTRACT_STATIC tag is set to YES all static members of a file --# will be included in the documentation. -+# If the EXTRACT_STATIC tag is set to YES, all static members of a file will be -+# included in the documentation. -+# The default value is: NO. - - EXTRACT_STATIC = YES - --# 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. -+# 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. Does not have any effect -+# for Java sources. -+# The default value is: YES. - - EXTRACT_LOCAL_CLASSES = YES - --# This flag is only useful for Objective-C code. When set to YES local --# methods, which are defined in the implementation section but not in --# the interface are included in the documentation. --# If set to NO (the default) only methods in the interface are included. -+# This flag is only useful for Objective-C code. If 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, only methods in the interface are -+# included. -+# The default value is: NO. - - EXTRACT_LOCAL_METHODS = NO - --# If this flag is set to YES, the members of anonymous namespaces will be --# extracted and appear in the documentation as a namespace called --# 'anonymous_namespace{file}', where file will be replaced with the base --# name of the file that contains the anonymous namespace. By default --# anonymous namespaces are hidden. -+# If this flag is set to YES, the members of anonymous namespaces will be -+# extracted and appear in the documentation as a namespace called -+# 'anonymous_namespace{file}', where file will be replaced with the base name of -+# the file that contains the anonymous namespace. By default anonymous namespace -+# are hidden. -+# The default value is: NO. - - EXTRACT_ANON_NSPACES = NO - --# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all --# undocumented members of documented classes, files or namespaces. --# If set to NO (the default) these members will be included in the --# various overviews, but no documentation section is generated. --# This option has no effect if EXTRACT_ALL is enabled. -+# If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all -+# undocumented members inside documented classes or files. If set to NO 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. -+# The default value is: NO. - - HIDE_UNDOC_MEMBERS = NO - --# 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. -+# 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, these classes will be included in the various overviews. This option -+# has no effect if EXTRACT_ALL is enabled. -+# The default value is: NO. - - HIDE_UNDOC_CLASSES = NO - --# 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. -+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend -+# (class|struct|union) declarations. If set to NO, these declarations will be -+# included in the documentation. -+# The default value is: NO. - - HIDE_FRIEND_COMPOUNDS = NO - --# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any --# documentation blocks found inside the body of a function. --# If set to NO (the default) these blocks will be appended to the --# function's detailed documentation block. -+# 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, these -+# blocks will be appended to the function's detailed documentation block. -+# The default value is: NO. - - HIDE_IN_BODY_DOCS = NO - --# The INTERNAL_DOCS tag determines if documentation --# that is typed after a \internal command is included. If the tag is set --# to NO (the default) then the documentation will be excluded. --# Set it to YES to include the internal documentation. -+# The INTERNAL_DOCS tag determines if documentation that is typed after a -+# \internal command is included. If the tag is set to NO then the documentation -+# will be excluded. Set it to YES to include the internal documentation. -+# The default value is: NO. - - INTERNAL_DOCS = NO - --# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate --# file names in lower-case letters. If set to YES upper-case letters are also --# allowed. This is useful if you have classes or files whose names only differ --# in case and if your file system supports case sensitive file names. Windows -+# 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. -+# The default value is: system dependent. - - CASE_SENSE_NAMES = NO - --# 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. -+# If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with -+# their full class and namespace scopes in the documentation. If set to YES, the -+# scope will be hidden. -+# The default value is: NO. - - HIDE_SCOPE_NAMES = NO - --# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen --# will put a list of the files that are included by a file in the documentation --# of that file. -+# If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will -+# append additional text to a page's title, such as Class Reference. If set to -+# YES the compound reference will be hidden. -+# The default value is: NO. -+ -+HIDE_COMPOUND_REFERENCE= NO -+ -+# If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of -+# the files that are included by a file in the documentation of that file. -+# The default value is: YES. - - SHOW_INCLUDE_FILES = YES - --# 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. -+# If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each -+# grouped member an include statement to the documentation, telling the reader -+# which file to include in order to use the member. -+# The default value is: NO. -+ -+SHOW_GROUPED_MEMB_INC = NO -+ -+# 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. -+# The default value is: NO. - - FORCE_LOCAL_INCLUDES = NO - --# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] --# is inserted in the documentation for inline members. -+# If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the -+# documentation for inline members. -+# The default value is: YES. - - INLINE_INFO = YES - --# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen --# will sort the (detailed) documentation of file and class members --# alphabetically by member name. If set to NO the members will appear in --# declaration order. -+# If the SORT_MEMBER_DOCS tag is set to YES 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. -+# The default value is: YES. - - SORT_MEMBER_DOCS = YES - --# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the --# brief documentation of file, namespace and class members alphabetically --# by member name. If set to NO (the default) the members will appear in --# declaration order. -+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief -+# descriptions of file, namespace and class members alphabetically by member -+# name. If set to NO, the members will appear in declaration order. Note that -+# this will also influence the order of the classes in the class list. -+# The default value is: NO. - - SORT_BRIEF_DOCS = NO - --# 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. -+# 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 constructors will appear in the -+# respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS. -+# Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief -+# member documentation. -+# Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting -+# detailed member documentation. -+# The default value is: NO. - - SORT_MEMBERS_CTORS_1ST = NO - --# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the --# hierarchy of group names into alphabetical order. If set to NO (the default) --# the group names will appear in their defined order. -+# 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 group names will -+# appear in their defined order. -+# The default value is: NO. - - SORT_GROUP_NAMES = NO - --# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be --# sorted by fully-qualified names, including namespaces. If set to --# NO (the default), the class list will be sorted only by class name, --# not including the namespace part. --# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. --# Note: This option applies only to the class list, not to the --# alphabetical list. -+# 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 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. -+# The default value is: NO. - - SORT_BY_SCOPE_NAME = NO - --# 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. -+# 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. -+# The default value is: NO. - - STRICT_PROTO_MATCHING = NO - --# The GENERATE_TODOLIST tag can be used to enable (YES) or --# disable (NO) the todo list. This list is created by putting \todo --# commands in the documentation. -+# 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. -+# The default value is: YES. - - GENERATE_TODOLIST = YES - --# The GENERATE_TESTLIST tag can be used to enable (YES) or --# disable (NO) the test list. This list is created by putting \test --# commands in the documentation. -+# 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. -+# The default value is: YES. - - GENERATE_TESTLIST = YES - --# The GENERATE_BUGLIST tag can be used to enable (YES) or --# disable (NO) the bug list. This list is created by putting \bug --# commands in the documentation. -+# 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. -+# The default value is: YES. - - GENERATE_BUGLIST = YES - --# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or --# disable (NO) the deprecated list. This list is created by putting --# \deprecated commands in the documentation. -+# 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. -+# The default value is: YES. - - GENERATE_DEPRECATEDLIST= YES - --# The ENABLED_SECTIONS tag can be used to enable conditional --# documentation sections, marked by \if sectionname ... \endif. -+# The ENABLED_SECTIONS tag can be used to enable conditional documentation -+# sections, marked by \if <section_label> ... \endif and \cond <section_label> -+# ... \endcond blocks. - - ENABLED_SECTIONS = - --# 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. -+# The 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 \showinitializer or \hideinitializer command in the -+# documentation regardless of this setting. -+# Minimum value: 0, maximum value: 10000, default value: 30. - - MAX_INITIALIZER_LINES = 28 - --# 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 -+# 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. -+# The default value is: YES. - - SHOW_USED_FILES = YES - --# 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. -+# 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 value is: YES. - - SHOW_FILES = YES - --# 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. -+# 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 value is: YES. - - SHOW_NAMESPACES = YES - --# The FILE_VERSION_FILTER tag can be used to specify a program or script that --# doxygen should invoke to get the current version for each file (typically from --# the version control system). Doxygen will invoke the program by executing (via --# popen()) the command <command> <input-file>, where <command> is the value of --# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file --# provided by doxygen. Whatever the program writes to standard output --# is used as the file version. See the manual for examples. -+# The FILE_VERSION_FILTER tag can be used to specify a program or script that -+# doxygen should invoke to get the current version for each file (typically from -+# the version control system). Doxygen will invoke the program by executing (via -+# popen()) the command command input-file, where command is the value of the -+# FILE_VERSION_FILTER tag, and input-file is the name of an input file provided -+# by doxygen. Whatever the program writes to standard output is used as the file -+# version. For an example see the documentation. - - FILE_VERSION_FILTER = - --# 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. The 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 --# DoxygenLayout.xml will be used as the name of the layout file. -+# 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'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. -+# -+# Note that if you run doxygen from a directory containing a file called -+# DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE -+# tag is left empty. - - LAYOUT_FILE = - --# 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. -+# The CITE_BIB_FILES tag can be used to specify one or more bib files containing -+# the reference definitions. This must be a list of .bib files. The .bib -+# extension is automatically appended if omitted. This 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. See also \cite for info how to create references. - - CITE_BIB_FILES = - - #--------------------------------------------------------------------------- --# configuration options related to warning and progress messages -+# Configuration options related to warning and progress messages - #--------------------------------------------------------------------------- - --# The QUIET tag can be used to turn on/off the messages that are generated --# by doxygen. Possible values are YES and NO. If left blank NO is used. -+# The QUIET tag can be used to turn on/off the messages that are generated to -+# standard output by doxygen. If QUIET is set to YES this implies that the -+# messages are off. -+# The default value is: NO. - - QUIET = NO - --# The WARNINGS tag can be used to turn on/off the warning messages that are --# generated by doxygen. Possible values are YES and NO. If left blank --# NO is used. -+# The WARNINGS tag can be used to turn on/off the warning messages that are -+# generated to standard error (stderr) by doxygen. If WARNINGS is set to YES -+# this implies that the warnings are on. -+# -+# Tip: Turn warnings on while writing the documentation. -+# The default value is: YES. - - WARNINGS = YES - --# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings --# for undocumented members. If EXTRACT_ALL is set to YES then this flag will --# automatically be disabled. -+# If the WARN_IF_UNDOCUMENTED tag 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. -+# The default value is: YES. - - WARN_IF_UNDOCUMENTED = YES - --# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for --# potential errors in the documentation, such as not documenting some --# parameters in a documented function, or documenting parameters that --# don't exist or using markup commands wrongly. -+# If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for -+# potential errors in the documentation, such as not documenting some parameters -+# in a documented function, or documenting parameters that don't exist or using -+# markup commands wrongly. -+# The default value is: YES. - - WARN_IF_DOC_ERROR = YES - --# 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. -+# This 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, doxygen will only warn about wrong or incomplete -+# parameter documentation, but not about the absence of documentation. -+# The default value is: NO. - - WARN_NO_PARAMDOC = YES - --# 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) -+# 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) -+# The default value is: $file:$line: $text. - - WARN_FORMAT = "$file:$line: $text" - --# The WARN_LOGFILE tag can be used to specify a file to which warning --# and error messages should be written. If left blank the output is written --# to stderr. -+# 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 standard -+# error (stderr). - - WARN_LOGFILE = - - #--------------------------------------------------------------------------- --# configuration options related to the input files -+# Configuration options related to the input files - #--------------------------------------------------------------------------- - --# The INPUT tag can be used to specify the files and/or directories that contain --# documented source files. You may enter file names like "myfile.cpp" or --# directories like "/usr/src/myproject". Separate the files or directories --# with spaces. -+# The INPUT tag is used to specify the files and/or directories that contain -+# documented source files. You may enter file names like myfile.cpp or -+# directories like /usr/src/myproject. Separate the files or directories with -+# spaces. See also FILE_PATTERNS and EXTENSION_MAPPING -+# Note: If this tag is empty the current directory is searched. - - INPUT = ../include - --# 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. -+# 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 the libiconv -+# documentation (see: http://www.gnu.org/software/libiconv) for the list of -+# possible encodings. -+# The default value is: UTF-8. - - INPUT_ENCODING = UTF-8 - --# If the value of the INPUT tag contains directories, you can use the --# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp --# and *.h) to filter out the source-files in the directories. If left --# blank the following patterns are tested: --# *.c *.cc *.cxx *.cpp *.c++ *.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 -+# If the value of the INPUT tag contains directories, you can use the -+# FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and -+# *.h) to filter out the source-files in the directories. -+# -+# Note that for custom extensions or not directly supported extensions you also -+# need to set EXTENSION_MAPPING for the extension otherwise the files are not -+# read by doxygen. -+# -+# If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp, -+# *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h, -+# *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc, -+# *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd, -+# *.vhdl, *.ucf, *.qsf, *.as and *.js. - - FILE_PATTERNS = *.d \ - *.ii \ -@@ -702,781 +819,1169 @@ FILE_PATTERNS = *.d \ - *.mm \ - *.dox - --# 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. -+# The RECURSIVE tag can be used to specify whether or not subdirectories should -+# be searched for input files as well. -+# The default value is: NO. - - RECURSIVE = YES - --# 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 -+# 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. - - EXCLUDE = - --# 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 -+# 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. -+# The default value is: NO. - - EXCLUDE_SYMLINKS = NO - --# If the value of the INPUT tag contains directories, you can use the --# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude --# certain files from those directories. Note that the wildcards are matched --# against the file with absolute path, so to exclude all test directories --# for example use the pattern */test/* -+# If the value of the INPUT tag contains directories, you can use the -+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude -+# certain files from those directories. -+# -+# Note that the wildcards are matched against the file with absolute path, so to -+# exclude all test directories for example use the pattern */test/* - - EXCLUDE_PATTERNS = - --# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names --# (namespaces, classes, functions, etc.) that should be excluded from the --# output. The symbol name can be a fully qualified name, a word, or if the --# wildcard * is used, a substring. Examples: ANamespace, AClass, -+# 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 -+# -+# Note that the wildcards are matched against the file with absolute path, so to -+# exclude all test directories use the pattern */test/* - - EXCLUDE_SYMBOLS = - --# The EXAMPLE_PATH tag can be used to specify one or more files or --# directories that contain example code fragments that are included (see --# the \include command). -+# The EXAMPLE_PATH tag can be used to specify one or more files or directories -+# that contain example code fragments that are included (see the \include -+# command). - - EXAMPLE_PATH = - --# If the value of the EXAMPLE_PATH tag contains directories, you can use the --# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp --# and *.h) to filter out the source-files in the directories. If left --# blank all files are included. -+# If the value of the EXAMPLE_PATH tag contains directories, you can use the -+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and -+# *.h) to filter out the source-files in the directories. If left blank all -+# files are included. - - EXAMPLE_PATTERNS = * - --# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be --# searched for input files to be used with the \include or \dontinclude --# commands irrespective of the value of the RECURSIVE tag. --# Possible values are YES and NO. If left blank NO is used. -+# 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. -+# The default value is: NO. - - EXAMPLE_RECURSIVE = NO - --# The IMAGE_PATH tag can be used to specify one or more files or --# directories that contain image that are included in the documentation (see --# the \image command). -+# The 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 -+# \image command). - - IMAGE_PATH = - --# The INPUT_FILTER tag can be used to specify a program that doxygen should --# invoke to filter for each input file. Doxygen will invoke the filter program --# by executing (via popen()) the command <filter> <input-file>, where <filter> --# is the value of the INPUT_FILTER tag, and <input-file> is the name of an --# input file. Doxygen will then use the output that the filter program writes --# to standard output. If FILTER_PATTERNS is specified, this tag will be --# ignored. -+# The INPUT_FILTER tag can be used to specify a program that doxygen should -+# invoke to filter for each input file. Doxygen will invoke the filter program -+# by executing (via popen()) the command: -+# -+# <filter> <input-file> -+# -+# where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the -+# name of an input file. Doxygen will then use the output that the filter -+# program writes to standard output. If FILTER_PATTERNS is specified, this tag -+# will be ignored. -+# -+# 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. - - INPUT_FILTER = - --# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern --# basis. Doxygen will compare the file name with each pattern and apply the --# filter if there is a match. The filters are a list of the form: --# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further --# info on how filters are used. If FILTER_PATTERNS is empty or if --# non of the patterns match the file name, INPUT_FILTER is applied. -+# 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 information on how -+# filters are used. If the FILTER_PATTERNS tag is empty or if none of the -+# patterns match the file name, INPUT_FILTER is applied. - - FILTER_PATTERNS = - --# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using --# INPUT_FILTER) will be used to filter the input files when producing source --# files to browse (i.e. when SOURCE_BROWSER is set to YES). -+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using -+# INPUT_FILTER) will also be used to filter the input files that are used for -+# producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES). -+# The default value is: NO. - - FILTER_SOURCE_FILES = NO - --# 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. -+# 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 tag requires that the tag FILTER_SOURCE_FILES is set to YES. - - FILTER_SOURCE_PATTERNS = - -+# If the 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. -+ -+USE_MDFILE_AS_MAINPAGE = -+ - #--------------------------------------------------------------------------- --# configuration options related to source browsing -+# Configuration options related to source browsing - #--------------------------------------------------------------------------- - --# If the SOURCE_BROWSER tag is set to YES then a list of source files will --# be generated. Documented entities will be cross-referenced with these sources. --# Note: To get rid of all source code in the generated output, make sure also --# VERBATIM_HEADERS is set to NO. -+# 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 that -+# also VERBATIM_HEADERS is set to NO. -+# The default value is: NO. - - SOURCE_BROWSER = NO - --# Setting the INLINE_SOURCES tag to YES will include the body --# of functions and classes directly in the documentation. -+# Setting the INLINE_SOURCES tag to YES will include the body of functions, -+# classes and enums directly into the documentation. -+# The default value is: NO. - - INLINE_SOURCES = NO - --# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct --# doxygen to hide any special comment blocks from generated source code --# fragments. Normal C and C++ comments will always remain visible. -+# Setting the STRIP_CODE_COMMENTS tag to 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. -+# The default value is: YES. - - STRIP_CODE_COMMENTS = YES - --# If the REFERENCED_BY_RELATION tag is set to YES --# then for each documented function all documented --# functions referencing it will be listed. -+# If the REFERENCED_BY_RELATION tag is set to YES then for each documented -+# function all documented functions referencing it will be listed. -+# The default value is: NO. - - REFERENCED_BY_RELATION = NO - --# 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. -+# 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. -+# The default value is: NO. - - REFERENCES_RELATION = NO - --# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) --# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from --# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will --# link to the source code. Otherwise they will link to the documentation. -+# If the REFERENCES_LINK_SOURCE tag is set to YES 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. -+# The default value is: YES. - - REFERENCES_LINK_SOURCE = YES - --# If the USE_HTAGS tag is set to YES then the references to source code --# will point to the HTML generated by the htags(1) tool instead of doxygen --# built-in source browser. The htags tool is part of GNU's global source --# tagging system (see http://www.gnu.org/software/global/global.html). You --# will need version 4.8.6 or higher. -+# 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. -+# The default value is: YES. -+# This tag requires that the tag SOURCE_BROWSER is set to YES. -+ -+SOURCE_TOOLTIPS = YES -+ -+# If the USE_HTAGS tag is set to YES then the references to source code will -+# point to the HTML generated by the htags(1) tool instead of doxygen built-in -+# source browser. The htags tool is part of GNU's global source tagging system -+# (see http://www.gnu.org/software/global/global.html). You will need version -+# 4.8.6 or higher. -+# -+# To use it do the following: -+# - Install the latest version of global -+# - Enable SOURCE_BROWSER and USE_HTAGS in the config file -+# - Make sure the INPUT points to the root of the source tree -+# - Run doxygen as normal -+# -+# Doxygen will invoke htags (and that will in turn invoke gtags), so these -+# tools must be available from the command line (i.e. in the search path). -+# -+# The result: instead of the source browser generated by doxygen, the links to -+# source code will now point to the output of htags. -+# The default value is: NO. -+# This tag requires that the tag SOURCE_BROWSER is set to YES. - - USE_HTAGS = NO - --# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen --# will generate a verbatim copy of the header file for each class for --# which an include is specified. Set to NO to disable this. -+# If the VERBATIM_HEADERS tag is set the YES 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. -+# See also: Section \class. -+# The default value is: YES. - - VERBATIM_HEADERS = NO - -+# If the CLANG_ASSISTED_PARSING tag is set to YES then doxygen will use the -+# clang parser (see: http://clang.llvm.org/) for more accurate 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. -+# The default value is: NO. -+ -+CLANG_ASSISTED_PARSING = NO -+ -+# 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 INPUT and INCLUDE_PATH. -+# This tag requires that the tag CLANG_ASSISTED_PARSING is set to YES. -+ -+CLANG_OPTIONS = -+ - #--------------------------------------------------------------------------- --# configuration options related to the alphabetical class index -+# Configuration options related to the alphabetical class index - #--------------------------------------------------------------------------- - --# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index --# of all compounds will be generated. Enable this if the project --# contains a lot of classes, structs, unions or interfaces. -+# 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. -+# The default value is: YES. - - ALPHABETICAL_INDEX = YES - --# 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]) -+# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in -+# which the alphabetical index list will be split. -+# Minimum value: 1, maximum value: 20, default value: 5. -+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - - COLS_IN_ALPHA_INDEX = 5 - --# In case all classes in a project start with a common prefix, all --# classes will be put under the same header in the alphabetical index. --# The IGNORE_PREFIX tag can be used to specify one or more prefixes that --# should be ignored while generating the index headers. -+# 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 a prefix (or a list of prefixes) that should be ignored -+# while generating the index headers. -+# This tag requires that the tag ALPHABETICAL_INDEX is set to YES. - - IGNORE_PREFIX = - - #--------------------------------------------------------------------------- --# configuration options related to the HTML output -+# Configuration options related to the HTML output - #--------------------------------------------------------------------------- - --# If the GENERATE_HTML tag is set to YES (the default) Doxygen will --# generate HTML output. -+# If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output -+# The default value is: YES. - - GENERATE_HTML = YES - --# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. --# If a relative path is entered the value of OUTPUT_DIRECTORY will be --# put in front of it. If left blank `html' will be used as the default path. -+# 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. -+# The default directory is: html. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_OUTPUT = html - --# The HTML_FILE_EXTENSION tag can be used to specify the file extension for --# each generated HTML page (for example: .htm,.php,.asp). If it is left blank --# doxygen will generate files with .html extension. -+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for each -+# generated HTML page (for example: .htm, .php, .asp). -+# The default value is: .html. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_FILE_EXTENSION = .html - --# The HTML_HEADER tag can be used to specify a personal HTML header for --# each generated HTML page. If it is left blank doxygen will generate a --# standard header. 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! -+# The 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. -+# -+# 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 GENERATE_TREEVIEW). It is highly recommended to start with a -+# default header using -+# doxygen -w html new_header.html new_footer.html new_stylesheet.css -+# YourConfigFile -+# and then modify the file new_header.html. See also section "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. For a description -+# of the possible markers and block names see the documentation. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_HEADER = - --# The HTML_FOOTER tag can be used to specify a personal HTML footer for --# each generated HTML page. If it is left blank doxygen will generate a --# standard footer. -+# The 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 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 "Doxygen usage" for information on how to generate the default footer -+# that doxygen normally uses. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_FOOTER = - --# The HTML_STYLESHEET tag can be used to specify a user-defined cascading --# style sheet that is used by each HTML page. It can be used to --# fine-tune the look of the HTML output. If the tag is left blank doxygen --# will generate a default style sheet. Note that doxygen will try to copy --# the style sheet file to the HTML output directory, so don't put your own --# style sheet in the HTML output directory as well, or it will be erased! -+# 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. -+# See also section "Doxygen usage" for information on how to generate the style -+# sheet that doxygen normally uses. -+# Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as -+# it is more robust and this tag (HTML_STYLESHEET) will in the future become -+# obsolete. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_STYLESHEET = - --# 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. -+# The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined -+# cascading style sheets that are 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 therefore more robust against future updates. -+# Doxygen will copy the style sheet files to the output directory. -+# Note: The order of the extra style sheet files is of importance (e.g. the last -+# style sheet in the list overrules the setting of the previous ones in the -+# list). For an example see the documentation. -+# This tag requires that the tag GENERATE_HTML is set to YES. -+ -+HTML_EXTRA_STYLESHEET = -+ -+# 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. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_EXTRA_FILES = - --# 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. -+# 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. -+# Minimum value: 0, maximum value: 359, default value: 220. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_COLORSTYLE_HUE = 220 - --# 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. -+# 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. -+# Minimum value: 0, maximum value: 255, default value: 100. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_COLORSTYLE_SAT = 100 - --# 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. -+# 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. -+# Minimum value: 40, maximum value: 240, default value: 80. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_COLORSTYLE_GAMMA = 80 - --# 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. -+# 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 YES can help to show when doxygen was last run and thus if the -+# documentation is up to date. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_TIMESTAMP = YES - --# 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 -+# 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. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_DYNAMIC_SECTIONS = NO - --# 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. -+# 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. -+# Minimum value: 0, maximum value: 9999, default value: 100. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - HTML_INDEX_NUM_ENTRIES = 100 - --# If the GENERATE_DOCSET tag is set to YES, additional index files --# will be generated that can be used as input for Apple's Xcode 3 --# integrated development environment, introduced with OSX 10.5 (Leopard). --# To create a documentation set, doxygen will generate a Makefile in the --# HTML output directory. Running make will produce the docset in that --# directory and running "make install" will install the docset in --# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find --# it at startup. --# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html -+# If the GENERATE_DOCSET tag is set to YES, additional index files will be -+# generated that can be used as input for Apple's Xcode 3 integrated development -+# environment (see: http://developer.apple.com/tools/xcode/), introduced with -+# OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a -+# Makefile in the HTML output directory. Running make will produce the docset in -+# that directory and running make install will install the docset in -+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at -+# startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html - # for more information. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - GENERATE_DOCSET = NO - --# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the --# feed. A documentation feed provides an umbrella under which multiple --# documentation sets from a single provider (such as a company or product suite) --# can be grouped. -+# 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. -+# The default value is: Doxygen generated docs. -+# This tag requires that the tag GENERATE_DOCSET is set to YES. - - DOCSET_FEEDNAME = "Doxygen generated docs" - --# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that --# should uniquely identify the documentation set bundle. This should be a --# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen --# will append .docset to the name. -+# 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. -+# The default value is: org.doxygen.Project. -+# This tag requires that the tag GENERATE_DOCSET is set to YES. - - DOCSET_BUNDLE_ID = org.doxygen.Project - --# When GENERATE_PUBLISHER_ID tag specifies a string that should uniquely identify --# the documentation publisher. This should be a reverse domain-name style -+# The 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. com.mycompany.MyDocSet.documentation. -+# The default value is: org.doxygen.Publisher. -+# This tag requires that the tag GENERATE_DOCSET is set to YES. - - DOCSET_PUBLISHER_ID = org.doxygen.Publisher - --# The GENERATE_PUBLISHER_NAME tag identifies the documentation publisher. -+# The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher. -+# The default value is: Publisher. -+# This tag requires that the tag GENERATE_DOCSET is set to YES. - - DOCSET_PUBLISHER_NAME = Publisher - --# 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. -+# If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three -+# additional HTML index files: index.hhp, index.hhc, and index.hhk. The -+# index.hhp is a project file that can be read by Microsoft's HTML Help Workshop -+# (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on -+# Windows. -+# -+# 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. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - GENERATE_HTMLHELP = NO - --# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can --# be used to specify the file name of the resulting .chm file. You --# can add a path in front of the file if the result should not be -+# 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. -+# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - - CHM_FILE = - --# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can --# be used to specify the location (absolute path including file name) of --# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run --# the HTML help compiler on the generated index.hhp. -+# 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. -+# The file has to be specified with full path. -+# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - - HHC_LOCATION = - --# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag --# controls if a separate .chi index file is generated (YES) or that --# it should be included in the master .chm file (NO). -+# 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). -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - - GENERATE_CHI = NO - --# 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. -+# The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc) -+# and project file content. -+# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - - CHM_INDEX_ENCODING = - --# 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. -+# 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. Furthermore it -+# enables the Previous and Next buttons. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - - BINARY_TOC = NO - --# The TOC_EXPAND flag can be set to YES to add extra items for group members --# to the contents of the HTML help documentation and to the tree view. -+# The TOC_EXPAND flag can be set to YES to add extra items for group members to -+# the table of contents of the HTML help documentation and to the tree view. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTMLHELP is set to YES. - - TOC_EXPAND = NO - --# 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's qhelpgenerator to generate a --# Qt Compressed Help (.qch) of the generated HTML documentation. -+# 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's qhelpgenerator to generate a Qt Compressed Help -+# (.qch) of the generated HTML documentation. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - GENERATE_QHP = NO - --# 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. -+# 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. -+# This tag requires that the tag GENERATE_QHP is set to YES. - - QCH_FILE = - --# 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 -+# The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help -+# Project output. For more information please see Qt Help Project / Namespace -+# (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace). -+# The default value is: org.doxygen.Project. -+# This tag requires that the tag GENERATE_QHP is set to YES. - - QHP_NAMESPACE = org.doxygen.Project - --# 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 -+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt -+# Help Project output. For more information please see Qt Help Project / Virtual -+# Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual- -+# folders). -+# The default value is: doc. -+# This tag requires that the tag GENERATE_QHP is set to YES. - - QHP_VIRTUAL_FOLDER = doc - --# 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 -+# If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom -+# filter to add. For more information please see Qt Help Project / Custom -+# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -+# filters). -+# This tag requires that the tag GENERATE_QHP is set to YES. - - QHP_CUST_FILTER_NAME = - --# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the --# custom filter to add. For more information please see --# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters"> --# Qt Help Project / Custom Filters</a>. -+# The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the -+# custom filter to add. For more information please see Qt Help Project / Custom -+# Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom- -+# filters). -+# This tag requires that the tag GENERATE_QHP is set to YES. - - QHP_CUST_FILTER_ATTRS = - --# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this --# project's --# filter section matches. --# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes"> --# Qt Help Project / Filter Attributes</a>. -+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this -+# project's filter section matches. Qt Help Project / Filter Attributes (see: -+# http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes). -+# This tag requires that the tag GENERATE_QHP is set to YES. - - QHP_SECT_FILTER_ATTRS = - --# If the GENERATE_QHP tag is set to YES, the 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. -+# The 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. -+# This tag requires that the tag GENERATE_QHP is set to YES. - - QHG_LOCATION = - --# 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. -+# If the GENERATE_ECLIPSEHELP tag is set to 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 ECLIPSE_DOC_ID value. -+# After copying Eclipse needs to be restarted before the help appears. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - GENERATE_ECLIPSEHELP = NO - --# 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. -+# 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. -+# The default value is: org.doxygen.Project. -+# This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES. - - ECLIPSE_DOC_ID = org.doxygen.Project - --# 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. -+# 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 -+# DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top -+# of each HTML page. A value of NO enables the index and the value YES disables -+# it. Since the tabs in the index contain the same information as the navigation -+# tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - DISABLE_INDEX = NO - --# 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. -+# 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. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can -+# further 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 PROJECT_NAME. Since the tree basically has -+# the same information as the tab index, you could consider setting -+# DISABLE_INDEX to YES when enabling this option. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - GENERATE_TREEVIEW = NO - --# 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. -+# The 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. -+# -+# Note that a value of 0 will completely suppress the enum values from appearing -+# in the overview section. -+# Minimum value: 0, maximum value: 20, default value: 4. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - ENUM_VALUES_PER_LINE = 4 - --# 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. -+# 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. -+# Minimum value: 0, maximum value: 1500, default value: 250. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - TREEVIEW_WIDTH = 250 - --# 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. -+# If 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. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - EXT_LINKS_IN_WINDOW = NO - --# 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. -+# Use this tag to change the font size of LaTeX 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. -+# Minimum value: 8, maximum value: 50, default value: 10. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - FORMULA_FONTSIZE = 10 - --# 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. -+# 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 directory before the changes have effect. -+# The default value is: YES. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - FORMULA_TRANSPARENT = YES - --# 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. -+# 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 pre-rendered 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. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - USE_MATHJAX = NO - --# 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. -+# When MathJax is enabled you can set the default output format to be used for -+# the MathJax output. See the MathJax site (see: -+# http://docs.mathjax.org/en/latest/output.html) for more details. -+# Possible values are: HTML-CSS (which is slower, but has the best -+# compatibility), NativeMML (i.e. MathML) and SVG. -+# The default value is: HTML-CSS. -+# This tag requires that the tag USE_MATHJAX is set to YES. -+ -+MATHJAX_FORMAT = HTML-CSS -+ -+# 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. -+# The default value is: http://cdn.mathjax.org/mathjax/latest. -+# This tag requires that the tag USE_MATHJAX is set to YES. - - MATHJAX_RELPATH = http://www.mathjax.org/mathjax - --# The MATHJAX_EXTENSIONS tag can be used to specify one or MathJax extension --# names that should be enabled during MathJax rendering. -+# The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax -+# extension names that should be enabled during MathJax rendering. For example -+# MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols -+# This tag requires that the tag USE_MATHJAX is set to YES. - - MATHJAX_EXTENSIONS = - --# 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. -+# 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. See the MathJax site -+# (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an -+# example see the documentation. -+# This tag requires that the tag USE_MATHJAX is set to YES. -+ -+MATHJAX_CODEFILE = -+ -+# 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. It is possible to -+# search using the keyboard; to jump to the search box use <access key> + S -+# (what the <access key> is depends on the OS and browser, but it is typically -+# <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down -+# key> to jump into the search results window, the results can be navigated -+# using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel -+# the search. The filter options can be selected when the cursor is inside the -+# search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys> -+# to select a filter and <Enter> or <escape> to activate or cancel the filter -+# option. -+# The default value is: YES. -+# This tag requires that the tag GENERATE_HTML is set to YES. - - SEARCHENGINE = NO - --# When the SERVER_BASED_SEARCH tag is enabled the search engine will be --# implemented using a PHP enabled web server instead of at the web client --# using Javascript. Doxygen will generate the search PHP script and index --# file to put on the web server. The advantage of the server --# based approach is that it scales better to large projects and allows --# full text search. The disadvantages are that it is more difficult to setup --# and does not have live searching capabilities. -+# When the 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 flavors of web server based searching 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 enabled the indexing -+# and searching needs to be provided by external tools. See the section -+# "External Indexing and Searching" for details. -+# The default value is: NO. -+# This tag requires that the tag SEARCHENGINE is set to YES. - - SERVER_BASED_SEARCH = NO - -+# When 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 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: http://xapian.org/). -+# -+# See the section "External Indexing and Searching" for details. -+# The default value is: NO. -+# This tag requires that the tag SEARCHENGINE is set to YES. -+ -+EXTERNAL_SEARCH = NO -+ -+# The SEARCHENGINE_URL should point to a search engine hosted by a web server -+# which will return the search results when EXTERNAL_SEARCH is enabled. -+# -+# Doxygen ships with an example indexer (doxyindexer) and search engine -+# (doxysearch.cgi) which are based on the open source search engine library -+# Xapian (see: http://xapian.org/). See the section "External Indexing and -+# Searching" for details. -+# This tag requires that the tag SEARCHENGINE is set to YES. -+ -+SEARCHENGINE_URL = -+ -+# When SERVER_BASED_SEARCH and 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. -+# The default file is: searchdata.xml. -+# This tag requires that the tag SEARCHENGINE is set to YES. -+ -+SEARCHDATA_FILE = searchdata.xml -+ -+# 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. -+# This tag requires that the tag SEARCHENGINE is set to YES. -+ -+EXTERNAL_SEARCH_ID = -+ -+# 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 = tagname1=loc1 tagname2=loc2 ... -+# This tag requires that the tag SEARCHENGINE is set to YES. -+ -+EXTRA_SEARCH_MAPPINGS = -+ - #--------------------------------------------------------------------------- --# configuration options related to the LaTeX output -+# Configuration options related to the LaTeX output - #--------------------------------------------------------------------------- - --# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will --# generate Latex output. -+# If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output. -+# The default value is: YES. - - GENERATE_LATEX = NO - --# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. --# If a relative path is entered the value of OUTPUT_DIRECTORY will be --# put in front of it. If left blank `latex' will be used as the default path. -+# 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. -+# The default directory is: latex. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - LATEX_OUTPUT = latex - --# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be --# invoked. If left blank `latex' will be used as the default command name. --# 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. -+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be -+# invoked. -+# -+# 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. -+# The default file is: latex. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - LATEX_CMD_NAME = latex - --# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to --# generate index for LaTeX. If left blank `makeindex' will be used as the --# default command name. -+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate -+# index for LaTeX. -+# The default file is: makeindex. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - MAKEINDEX_CMD_NAME = makeindex - --# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact --# LaTeX documents. This may be useful for small projects and may help to --# save some trees in general. -+# 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. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - COMPACT_LATEX = NO - --# The PAPER_TYPE tag can be used to set the paper type that is used --# by the printer. Possible values are: a4, letter, legal and --# executive. If left blank a4wide will be used. -+# The PAPER_TYPE tag can be used to set the paper type that is used by the -+# printer. -+# Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x -+# 14 inches) and executive (7.25 x 10.5 inches). -+# The default value is: a4. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - PAPER_TYPE = a4wide - --# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX --# packages that should be included in the LaTeX output. -+# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names -+# that should be included in the LaTeX output. The package can be specified just -+# by its name or with the correct syntax as to be used with the LaTeX -+# \usepackage command. To get the times font for instance you can specify : -+# EXTRA_PACKAGES=times or EXTRA_PACKAGES={times} -+# To use the option intlimits with the amsmath package you can specify: -+# EXTRA_PACKAGES=[intlimits]{amsmath} -+# If left blank no extra packages will be included. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - EXTRA_PACKAGES = - --# 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! -+# 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. See -+# section "Doxygen usage" for information on how to let doxygen write the -+# default header to a separate file. -+# -+# Note: Only use a user-defined header if you know what you are doing! The -+# following commands have a special meaning inside the header: $title, -+# $datetime, $date, $doxygenversion, $projectname, $projectnumber, -+# $projectbrief, $projectlogo. Doxygen will replace $title with the empty -+# string, for the replacement values of the other commands the user is referred -+# to HTML_HEADER. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - LATEX_HEADER = - --# 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! -+# 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. See -+# LATEX_HEADER for more information on how to generate a default footer and what -+# special commands can be used inside the footer. -+# -+# Note: Only use a user-defined footer if you know what you are doing! -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - LATEX_FOOTER = - --# 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. -+# The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined -+# LaTeX style sheets that are included after the standard style sheets created -+# by doxygen. Using this option one can overrule certain style aspects. Doxygen -+# will copy the style sheet files to the output directory. -+# Note: The order of the extra style sheet files is of importance (e.g. the last -+# style sheet in the list overrules the setting of the previous ones in the -+# list). -+# This tag requires that the tag GENERATE_LATEX is set to YES. -+ -+LATEX_EXTRA_STYLESHEET = -+ -+# 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 output -+# directory. Note that the files will be copied as-is; there are no commands or -+# markers available. -+# This tag requires that the tag GENERATE_LATEX is set to YES. -+ -+LATEX_EXTRA_FILES = -+ -+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is -+# prepared for conversion to PDF (using ps2pdf or 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. -+# The default value is: YES. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - PDF_HYPERLINKS = NO - --# 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 -+# If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate -+# the PDF file directly from the LaTeX files. Set this option to YES, to get a - # higher quality PDF documentation. -+# The default value is: YES. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - USE_PDFLATEX = NO - --# 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. -+# 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. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - LATEX_BATCHMODE = NO - --# 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. -+# If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the -+# index chapters (such as File Index, Compound Index, etc.) in the output. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - LATEX_HIDE_INDICES = NO - --# 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. -+# If the LATEX_SOURCE_CODE tag 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. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - LATEX_SOURCE_CODE = NO - --# 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 "plain". See --# http://en.wikipedia.org/wiki/BibTeX for more info. -+# The LATEX_BIB_STYLE tag can be used to specify the style to use for the -+# bibliography, e.g. plainnat, or ieeetr. See -+# http://en.wikipedia.org/wiki/BibTeX and \cite for more info. -+# The default value is: plain. -+# This tag requires that the tag GENERATE_LATEX is set to YES. - - LATEX_BIB_STYLE = plain - - #--------------------------------------------------------------------------- --# configuration options related to the RTF output -+# Configuration options related to the RTF output - #--------------------------------------------------------------------------- - --# 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. -+# 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 too pretty with other RTF -+# readers/editors. -+# The default value is: NO. - - GENERATE_RTF = NO - --# 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' will be used as the default path. -+# 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. -+# The default directory is: rtf. -+# This tag requires that the tag GENERATE_RTF is set to YES. - - RTF_OUTPUT = rtf - --# 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. -+# 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. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_RTF is set to YES. - - COMPACT_RTF = NO - --# 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. -+# 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 some other Word compatible readers that support those -+# fields. -+# -+# Note: WordPad (write) and others do not support links. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_RTF is set to YES. - - RTF_HYPERLINKS = NO - --# Load style sheet 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. -+# 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. -+# -+# See also section "Doxygen usage" for information on how to generate the -+# default style sheet that doxygen normally uses. -+# This tag requires that the tag GENERATE_RTF is set to YES. - - RTF_STYLESHEET_FILE = - --# Set optional variables used in the generation of an rtf document. --# Syntax is similar to doxygen's config file. -+# 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 doxygen -e rtf extensionFile. -+# This tag requires that the tag GENERATE_RTF is set to YES. - - RTF_EXTENSIONS_FILE = - -+# If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code -+# with syntax highlighting in the RTF output. -+# -+# Note that which sources are shown also depends on other settings such as -+# SOURCE_BROWSER. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_RTF is set to YES. -+ -+RTF_SOURCE_CODE = NO -+ - #--------------------------------------------------------------------------- --# configuration options related to the man page output -+# Configuration options related to the man page output - #--------------------------------------------------------------------------- - --# If the GENERATE_MAN tag is set to YES (the default) Doxygen will --# generate man pages -+# If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for -+# classes and files. -+# The default value is: NO. - - GENERATE_MAN = NO - --# 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' will be used as the default path. -+# 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. A directory man3 will be created inside the directory specified by -+# MAN_OUTPUT. -+# The default directory is: man. -+# This tag requires that the tag GENERATE_MAN is set to YES. - - MAN_OUTPUT = man - --# The MAN_EXTENSION tag determines the extension that is added to --# the generated man pages (default is the subroutine's section .3) -+# The 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 MAN_EXTENSION tag is -+# optional. -+# The default value is: .3. -+# This tag requires that the tag GENERATE_MAN is set to YES. - - MAN_EXTENSION = .3 - --# 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. -+# The MAN_SUBDIR tag determines the name of the directory created within -+# MAN_OUTPUT in which the man pages are placed. If defaults to man followed by -+# MAN_EXTENSION with the initial . removed. -+# This tag requires that the tag GENERATE_MAN is set to YES. -+ -+MAN_SUBDIR = -+ -+# 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 value is: NO. -+# This tag requires that the tag GENERATE_MAN is set to YES. - - MAN_LINKS = NO - - #--------------------------------------------------------------------------- --# configuration options related to the XML output -+# Configuration options related to the XML output - #--------------------------------------------------------------------------- - --# 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. -+# 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. -+# The default value is: NO. - - GENERATE_XML = NO - --# 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' will be used as the default path. -+# 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. -+# The default directory is: xml. -+# This tag requires that the tag GENERATE_XML is set to YES. - - XML_OUTPUT = xml - --# 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. -+# 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. -+# The default value is: YES. -+# This tag requires that the tag GENERATE_XML is set to YES. - --XML_SCHEMA = -+XML_PROGRAMLISTING = YES - --# 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. -+#--------------------------------------------------------------------------- -+# Configuration options related to the DOCBOOK output -+#--------------------------------------------------------------------------- - --XML_DTD = -+# If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files -+# that can be used to generate PDF. -+# The default value is: NO. - --# 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. -+GENERATE_DOCBOOK = NO - --XML_PROGRAMLISTING = YES -+# 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. -+# The default directory is: docbook. -+# This tag requires that the tag GENERATE_DOCBOOK is set to YES. -+ -+DOCBOOK_OUTPUT = docbook -+ -+# If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the -+# program listings (including syntax highlighting and cross-referencing -+# information) to the DOCBOOK output. Note that enabling this will significantly -+# increase the size of the DOCBOOK output. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_DOCBOOK is set to YES. -+ -+DOCBOOK_PROGRAMLISTING = NO - - #--------------------------------------------------------------------------- --# configuration options for the AutoGen Definitions output -+# Configuration options for the AutoGen Definitions output - #--------------------------------------------------------------------------- - --# 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. -+# If the GENERATE_AUTOGEN_DEF tag is set to 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. -+# The default value is: NO. - - GENERATE_AUTOGEN_DEF = NO - - #--------------------------------------------------------------------------- --# configuration options related to the Perl module output -+# Configuration options related to the Perl module output - #--------------------------------------------------------------------------- - --# 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. -+# 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. -+# The default value is: NO. - - GENERATE_PERLMOD = NO - --# 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. -+# 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. -+# The default value is: NO. -+# This tag requires that the tag GENERATE_PERLMOD is set to YES. - - PERLMOD_LATEX = NO - --# 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. -+# 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. -+# The default value is: YES. -+# This tag requires that the tag GENERATE_PERLMOD is set to YES. - - PERLMOD_PRETTY = YES - --# 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't overwrite each other's variables. -+# 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't -+# overwrite each other's variables. -+# This tag requires that the tag GENERATE_PERLMOD is set to YES. - - PERLMOD_MAKEVAR_PREFIX = - -@@ -1484,104 +1989,129 @@ PERLMOD_MAKEVAR_PREFIX = - # Configuration options related to the preprocessor - #--------------------------------------------------------------------------- - --# 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. -+# If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all -+# C-preprocessor directives found in the sources and include files. -+# The default value is: YES. - - ENABLE_PREPROCESSING = YES - --# 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. -+# If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names -+# in the source code. If set to NO, only conditional compilation will be -+# performed. Macro expansion can be done in a controlled way by setting -+# EXPAND_ONLY_PREDEF to YES. -+# The default value is: NO. -+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. - - MACRO_EXPANSION = NO - --# 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. -+# 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. -+# The default value is: NO. -+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. - - EXPAND_ONLY_PREDEF = NO - --# 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. -+# If the SEARCH_INCLUDES tag is set to YES, the include files in the -+# INCLUDE_PATH will be searched if a #include is found. -+# The default value is: YES. -+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. - - SEARCH_INCLUDES = YES - --# 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. -+# 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. -+# This tag requires that the tag SEARCH_INCLUDES is set to YES. - - INCLUDE_PATH = - --# 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. -+# 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. -+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. - - INCLUDE_FILE_PATTERNS = - --# 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. -+# 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 e.g. -+# 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. -+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. - - PREDEFINED = wxUSE_UNICODE - --# 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. -+# 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. -+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. - - EXPAND_AS_DEFINED = - --# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then --# doxygen'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. -+# If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen'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. Such function macros -+# are typically used for boiler-plate code, and will confuse the parser if not -+# removed. -+# The default value is: YES. -+# This tag requires that the tag ENABLE_PREPROCESSING is set to YES. - - SKIP_FUNCTION_MACROS = YES - - #--------------------------------------------------------------------------- --# Configuration::additions related to external references -+# Configuration options related to external references - #--------------------------------------------------------------------------- - --# The TAGFILES option can be used to specify one or more tagfiles. 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: --# TAGFILES = file1 file2 ... --# Adding location for the tag files is done as follows: --# TAGFILES = file1=loc1 "file2 = loc2" ... --# where "loc1" and "loc2" 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. -+# The 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: -+# TAGFILES = file1 file2 ... -+# Adding location for the tag files is done as follows: -+# TAGFILES = file1=loc1 "file2 = loc2" ... -+# where loc1 and loc2 can be relative or absolute paths or URLs. See the -+# section "Linking to external documentation" for more information about the use -+# of tag files. -+# Note: 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. - - TAGFILES = - --# When a file name is specified after GENERATE_TAGFILE, doxygen will create --# a tag file that is based on the input files it reads. -+# When a file name is specified after GENERATE_TAGFILE, doxygen will create a -+# tag file that is based on the input files it reads. See section "Linking to -+# external documentation" for more information about the usage of tag files. - - GENERATE_TAGFILE = - --# 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. -+# If the ALLEXTERNALS tag is set to YES, all external class will be listed in -+# the class index. If set to NO, only the inherited external classes will be -+# listed. -+# The default value is: NO. - - ALLEXTERNALS = NO - --# 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's groups will --# be listed. -+# 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's groups will be -+# listed. -+# The default value is: YES. - - EXTERNAL_GROUPS = YES - --# The PERL_PATH should be the absolute path and name of the perl script --# interpreter (i.e. the result of `which perl'). -+# 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's pages will -+# be listed. -+# The default value is: YES. -+ -+EXTERNAL_PAGES = YES -+ -+# The PERL_PATH should be the absolute path and name of the perl script -+# interpreter (i.e. the result of 'which perl'). -+# The default file (with absolute path) is: /usr/bin/perl. - - PERL_PATH = /usr/bin/perl - -@@ -1589,222 +2119,312 @@ PERL_PATH = /usr/bin/perl - # Configuration options related to the dot tool - #--------------------------------------------------------------------------- - --# 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. -+# If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram -+# (in HTML 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. -+# The default value is: YES. - - CLASS_DIAGRAMS = YES - --# 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 -+# 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. - - MSCGEN_PATH = - --# 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. -+# You can include diagrams made with dia in doxygen documentation. Doxygen will -+# then run dia to produce the diagram and insert it in the documentation. The -+# DIA_PATH tag allows you to specify the directory where the dia binary resides. -+# If left empty dia is assumed to be found in the default search path. -+ -+DIA_PATH = -+ -+# 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. -+# The default value is: YES. - - HIDE_UNDOC_RELATIONS = YES - --# 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&T and Lucent Bell Labs. The other options in this section --# have no effect if this option is set to NO (the default) -+# 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 (see: -+# http://www.graphviz.org/), 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 NO -+# The default value is: NO. - - HAVE_DOT = NO - --# 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. -+# The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed -+# to run in parallel. When set to 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. -+# Minimum value: 0, maximum value: 32, default value: 0. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_NUM_THREADS = 0 - --# 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. -+# When you want a differently looking font in the dot files that doxygen -+# generates 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. -+# The default value is: Helvetica. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_FONTNAME = FreeSans - --# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. --# The default size is 10pt. -+# The DOT_FONTSIZE tag can be used to set the size (in points) of the font of -+# dot graphs. -+# Minimum value: 4, maximum value: 24, default value: 10. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_FONTSIZE = 10 - --# 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. -+# By default doxygen will tell dot to use the default font as specified with -+# DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set -+# the path where dot can find it using this tag. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_FONTPATH = - --# 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. -+# If the CLASS_GRAPH tag is 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. -+# The default value is: YES. -+# This tag requires that the tag HAVE_DOT is set to YES. - - CLASS_GRAPH = YES - --# 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. -+# If the COLLABORATION_GRAPH tag is 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. -+# The default value is: YES. -+# This tag requires that the tag HAVE_DOT is set to YES. - - COLLABORATION_GRAPH = YES - --# 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 -+# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for -+# groups, showing the direct groups dependencies. -+# The default value is: YES. -+# This tag requires that the tag HAVE_DOT is set to YES. - - GROUP_GRAPHS = YES - --# If the UML_LOOK tag is set to YES doxygen will generate inheritance and --# collaboration diagrams in a style similar to the OMG's Unified Modeling -+# If the UML_LOOK tag is set to YES, doxygen will generate inheritance and -+# collaboration diagrams in a style similar to the OMG's Unified Modeling - # Language. -+# The default value is: NO. -+# This tag requires that the tag HAVE_DOT is set to YES. - - UML_LOOK = NO - --# 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 --# managable. Set this to 0 for no limit. Note that the threshold may be --# exceeded by 50% before the limit is enforced. -+# 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. 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. -+# Minimum value: 0, maximum value: 100, default value: 10. -+# This tag requires that the tag HAVE_DOT is set to YES. - - UML_LIMIT_NUM_FIELDS = 10 - --# If set to YES, the inheritance and collaboration graphs will show the --# relations between templates and their instances. -+# If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and -+# collaboration graphs will show the relations between templates and their -+# instances. -+# The default value is: NO. -+# This tag requires that the tag HAVE_DOT is set to YES. - - TEMPLATE_RELATIONS = NO - --# 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. -+# If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES 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. -+# The default value is: YES. -+# This tag requires that the tag HAVE_DOT is set to YES. - - INCLUDE_GRAPH = YES - --# 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. -+# If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES 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. -+# The default value is: YES. -+# This tag requires that the tag HAVE_DOT is set to YES. - - INCLUDED_BY_GRAPH = YES - --# 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. -+# If the CALL_GRAPH tag is 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. Disabling a call graph can be -+# accomplished by means of the command \hidecallgraph. -+# The default value is: NO. -+# This tag requires that the tag HAVE_DOT is set to YES. - - CALL_GRAPH = NO - --# 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. -+# If the CALLER_GRAPH tag is 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. Disabling a caller graph can be -+# accomplished by means of the command \hidecallergraph. -+# The default value is: NO. -+# This tag requires that the tag HAVE_DOT is set to YES. - - CALLER_GRAPH = NO - --# 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. -+# If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical -+# hierarchy of all classes instead of a textual one. -+# The default value is: YES. -+# This tag requires that the tag HAVE_DOT is set to YES. - - GRAPHICAL_HIERARCHY = YES - --# 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. -+# If the DIRECTORY_GRAPH tag is 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. -+# The default value is: YES. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DIRECTORY_GRAPH = YES - --# 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). -+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images -+# generated by dot. For an explanation of the image formats see the section -+# output formats in the documentation of the dot tool (Graphviz (see: -+# http://www.graphviz.org/)). -+# Note: 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). -+# Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo, -+# png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and -+# png:gdiplus:gdiplus. -+# The default value is: png. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_IMAGE_FORMAT = png - --# 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. -+# 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. -+# Note: 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. -+# The default value is: NO. -+# This tag requires that the tag HAVE_DOT is set to YES. - - INTERACTIVE_SVG = NO - --# The tag DOT_PATH can be used to specify the path where the dot tool can be -+# The DOT_PATH tag 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. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_PATH = - --# 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). -+# 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). -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOTFILE_DIRS = - --# 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). -+# 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). - - MSCFILE_DIRS = - --# 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. -+# The DIAFILE_DIRS tag can be used to specify one or more directories that -+# contain dia files that are included in the documentation (see the \diafile -+# command). -+ -+DIAFILE_DIRS = -+ -+# When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the -+# path where java can find the plantuml.jar file. If left blank, it is assumed -+# PlantUML is not used or called during a preprocessing step. Doxygen will -+# generate a warning when it encounters a \startuml command in this case and -+# will not generate output for the diagram. -+ -+PLANTUML_JAR_PATH = -+ -+# When using plantuml, the specified paths are searched for files specified by -+# the !include statement in a plantuml block. -+ -+PLANTUML_INCLUDE_PATH = -+ -+# 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. -+# Minimum value: 0, maximum value: 10000, default value: 50. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_GRAPH_MAX_NODES = 50 - --# 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 -+# 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. -+# Minimum value: 0, maximum value: 1000, default value: 0. -+# This tag requires that the tag HAVE_DOT is set to YES. - - MAX_DOT_GRAPH_DEPTH = 1000 - --# 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). -+# 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). -+# The default value is: NO. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_TRANSPARENT = NO - --# 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 (>1.8.10) --# support this, this feature is disabled by default. -+# Set the DOT_MULTI_TARGETS tag to YES to 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 (>1.8.10) support -+# this, this feature is disabled by default. -+# The default value is: NO. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_MULTI_TARGETS = NO - --# 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. -+# If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page -+# explaining the meaning of the various boxes and arrows in the dot generated -+# graphs. -+# The default value is: YES. -+# This tag requires that the tag HAVE_DOT is set to YES. - - GENERATE_LEGEND = YES - --# 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. -+# If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot -+# files that are used to generate the various graphs. -+# The default value is: YES. -+# This tag requires that the tag HAVE_DOT is set to YES. - - DOT_CLEANUP = YES -diff --git a/src/plugins/contrib/source_exporter/wxPdfDocument/include/wx/pdfdocdef.h b/src/plugins/contrib/source_exporter/wxPdfDocument/include/wx/pdfdocdef.h -index 2b375e7..8a1856b 100644 ---- a/src/plugins/contrib/source_exporter/wxPdfDocument/include/wx/pdfdocdef.h -+++ b/src/plugins/contrib/source_exporter/wxPdfDocument/include/wx/pdfdocdef.h -@@ -404,10 +404,10 @@ found on the <a href="http://www.fpdf.org"><b>FPDF website</b></a> I would like - - Moritz Wagner (Transformation) - - Andreas Wuermser (Clipping, Gradients, Transformation) - --The wxPdfDocument encryption methods use the RSA Data Security, Inc. MD5 Message --Digest Algorithm (RSA Data Security license) and the Rijndael cipher implementation --of Szymon Stefanek (Public Domain). For detailed license information \see files --pdfencrypt.cpp and pdfrijndael.h. -+The wxPdfDocument encryption methods use the MD5 Message Digest -+Algorithm implementation of Alexander Peslyak (Public Domain) and -+the Rijndael cipher implementation of Szymon Stefanek (Public Domain). -+For detailed license information \see files pdfencrypt.cpp and pdfrijndael.h. - - */ - -diff --git a/src/plugins/contrib/source_exporter/wxPdfDocument/samples/minimal/transparency.cpp b/src/plugins/contrib/source_exporter/wxPdfDocument/samples/minimal/transparency.cpp -index ed5cc12..e1474f0 100644 ---- a/src/plugins/contrib/source_exporter/wxPdfDocument/samples/minimal/transparency.cpp -+++ b/src/plugins/contrib/source_exporter/wxPdfDocument/samples/minimal/transparency.cpp -@@ -69,14 +69,14 @@ transparency() - pdf.Rect(20, 20, 40, 40, wxPDF_STYLE_FILLDRAW); - - // draw jpeg image -- pdf.Image(wxT("lena.jpg"), 30, 30, 40); -+ pdf.Image(wxT("flower.jpg"), 30, 30, 40); - - // restore full opacity - pdf.SetAlpha(); - - // print name - pdf.SetFont(wxT("Helvetica"), wxT(""), 12); -- pdf.Text(46,68,wxT("Lena")); -+ pdf.Text(46,68,wxT("Flower")); - - pdf.SaveAsFile(wxT("transparency.pdf")); - } -diff --git a/src/plugins/contrib/source_exporter/wxPdfDocument/src/pdfdc29.inc b/src/plugins/contrib/source_exporter/wxPdfDocument/src/pdfdc29.inc -index b729255..413db86 100644 ---- a/src/plugins/contrib/source_exporter/wxPdfDocument/src/pdfdc29.inc -+++ b/src/plugins/contrib/source_exporter/wxPdfDocument/src/pdfdc29.inc -@@ -120,7 +120,7 @@ wxPdfDCImpl::wxPdfDCImpl(wxPdfDC* owner, const wxPrintData& data) - m_ok = true; - } - --wxPdfDCImpl::wxPdfDCImpl(wxPdfDC* owner, const wxString& file, int w, int h) -+wxPdfDCImpl::wxPdfDCImpl(wxPdfDC* owner, const wxString& file, int WXUNUSED(w), int WXUNUSED(h)) - : wxDCImpl(owner) - { - Init(); -diff --git a/src/plugins/contrib/source_exporter/wxPdfDocument/src/pdfencrypt.cpp b/src/plugins/contrib/source_exporter/wxPdfDocument/src/pdfencrypt.cpp -index e27e2b6..bc1cb6e 100644 ---- a/src/plugins/contrib/source_exporter/wxPdfDocument/src/pdfencrypt.cpp -+++ b/src/plugins/contrib/source_exporter/wxPdfDocument/src/pdfencrypt.cpp -@@ -6,35 +6,11 @@ - // Created: 2005-08-17 - // RCS-ID: $$ - // Copyright: (c) Ulrich Telle --// Licence: wxWindows licence + RSA Data Security license -+// Licence: wxWindows licence - /////////////////////////////////////////////////////////////////////////////// - - /// \file pdfencrypt.cpp Implementation of the wxPdfEncrypt class - --/* -- ********************************************************************** -- ** Copyright (C) 1990, RSA Data Security, Inc. All rights reserved. ** -- ** ** -- ** License to copy and use this software is granted provided that ** -- ** it is identified as the "RSA Data Security, Inc. MD5 Message ** -- ** Digest Algorithm" in all material mentioning or referencing this ** -- ** software or this function. ** -- ** ** -- ** License is also granted to make and use derivative works ** -- ** provided that such works are identified as "derived from the RSA ** -- ** Data Security, Inc. MD5 Message Digest Algorithm" in all ** -- ** material mentioning or referencing the derived work. ** -- ** ** -- ** RSA Data Security, Inc. makes no representations concerning ** -- ** either the merchantability of this software or the suitability ** -- ** of this software for any particular purpose. It is provided "as ** -- ** is" without express or implied warranty of any kind. ** -- ** ** -- ** These notices must be retained in any copies of any part of this ** -- ** documentation and/or software. ** -- ********************************************************************** -- */ -- - // For compilers that support precompilation, includes <wx.h>. - #include <wx/wxprec.h> - -@@ -53,306 +29,314 @@ - #include "wx/pdfrijndael.h" - #include "wx/pdfutility.h" - --// ---------------- --// MD5 by RSA --// ---------------- -+#define MD5_HASHBYTES 16 -+ -+/* -+ * This is an OpenSSL-compatible implementation of the RSA Data Security, Inc. -+ * MD5 Message-Digest Algorithm (RFC 1321). -+ * -+ * Homepage: -+ * http://openwall.info/wiki/people/solar/software/public-domain-source-code/md... -+ * -+ * Author: -+ * Alexander Peslyak, better known as Solar Designer <solar at openwall.com> -+ * -+ * This software was written by Alexander Peslyak in 2001. No copyright is -+ * claimed, and the software is hereby placed in the public domain. -+ * In case this attempt to disclaim copyright and place the software in the -+ * public domain is deemed null and void, then the software is -+ * Copyright (c) 2001 Alexander Peslyak and it is hereby released to the -+ * general public under the following terms: -+ * -+ * Redistribution and use in source and binary forms, with or without -+ * modification, are permitted. -+ * -+ * There's ABSOLUTELY NO WARRANTY, express or implied. -+ * -+ * (This is a heavily cut-down "BSD license".) -+ * -+ * This differs from Colin Plumb's older public domain implementation in that -+ * no exactly 32-bit integer data type is required (any 32-bit or wider -+ * unsigned integer data type will do), there's no compile-time endianness -+ * configuration, and the function prototypes match OpenSSL's. No code from -+ * Colin Plumb's implementation has been reused; this comment merely compares -+ * the properties of the two independent implementations. -+ * -+ * The primary goals of this implementation are portability and ease of use. -+ * It is meant to be fast, but not as fast as possible. Some known -+ * optimizations are not included to reduce source code size and avoid -+ * compile-time configuration. -+ */ - --// C headers for MD5 --#include <sys/types.h> - #include <string.h> --#include <stdio.h> --#include <stdlib.h> - --#define MD5_HASHBYTES 16 -+/* Any 32-bit or wider unsigned integer data type will do */ -+typedef unsigned int MD5_u32plus; - --/// Structure representing an MD5 context while ecrypting. (For internal use only) --typedef struct MD5Context --{ -- unsigned int buf[4]; -- unsigned int bits[2]; -- unsigned char in[64]; -+typedef struct { -+ MD5_u32plus lo, hi; -+ MD5_u32plus a, b, c, d; -+ unsigned char buffer[64]; -+ MD5_u32plus block[16]; - } MD5_CTX; - --static void MD5Init(MD5_CTX *context); --static void MD5Update(MD5_CTX *context, unsigned char const *buf, unsigned len); --static void MD5Final(unsigned char digest[MD5_HASHBYTES], MD5_CTX *context); --static void MD5Transform(unsigned int buf[4], unsigned int const in[16]); -- --#ifndef WORDS_BIGENDIAN --#define byteReverse(buf,len) /* Nothing */ --#else --static void byteReverse(unsigned char *buf, unsigned longs); -+static void MD5_Init(MD5_CTX *ctx); -+static void MD5_Update(MD5_CTX *ctx, const void *data, unsigned long size); -+static void MD5_Final(unsigned char *result, MD5_CTX *ctx); - - /* -- * Note: this code is harmless on little-endian machines. -+ * The basic MD5 functions. -+ * -+ * F and G are optimized compared to their RFC 1321 definitions for -+ * architectures that lack an AND-NOT instruction, just like in Colin Plumb's -+ * implementation. - */ --static void byteReverse(unsigned char *buf, unsigned longs) --{ -- static int littleEndian = -1; -- if (littleEndian < 0) -- { -- // Are we little or big endian? This method is from Harbison & Steele. -- union -- { -- long l; -- char c[sizeof(long)]; -- } u; -- u.l = 1; -- littleEndian = (u.c[0] == 1) ? 1 : 0; -- } -+#define F(x, y, z) ((z) ^ ((x) & ((y) ^ (z)))) -+#define G(x, y, z) ((y) ^ ((z) & ((x) ^ (y)))) -+#define H(x, y, z) (((x) ^ (y)) ^ (z)) -+#define H2(x, y, z) ((x) ^ ((y) ^ (z))) -+#define I(x, y, z) ((y) ^ ((x) | ~(z))) - -- if (littleEndian != 1) -- { -- unsigned int t; -- do -- { -- t = (unsigned int) ((unsigned) buf[3] << 8 | buf[2]) << 16 | -- ((unsigned) buf[1] << 8 | buf[0]); -- *(unsigned int *) buf = t; -- buf += 4; -- } -- while (--longs); -- } --} --#endif -- --#if 0 --static char* MD5End(MD5_CTX *, char *); -- --static char* MD5End(MD5_CTX *ctx, char *buf) --{ -- int i; -- unsigned char digest[MD5_HASHBYTES]; -- char hex[]="0123456789abcdef"; -+/* -+ * The MD5 transformation for all four rounds. -+ */ -+#define STEP(f, a, b, c, d, x, t, s) \ -+ (a) += f((b), (c), (d)) + (x) + (t); \ -+ (a) = (((a) << (s)) | (((a) & 0xffffffff) >> (32 - (s)))); \ -+ (a) += (b); - -- if (!buf) -- { -- buf = (char *)malloc(33); -- } -- -- if (!buf) -- { -- return 0; -- } -- -- MD5Final(digest,ctx); -- for (i=0;i<MD5_HASHBYTES;i++) -- { -- buf[i+i] = hex[digest[i] >> 4]; -- buf[i+i+1] = hex[digest[i] & 0x0f]; -- } -- buf[i+i] = '\0'; -- return buf; --} -+/* -+ * SET reads 4 input bytes in little-endian byte order and stores them -+ * in a properly aligned word in host byte order. -+ * -+ * The check for little-endian architectures that tolerate unaligned -+ * memory accesses is just an optimization. Nothing will break if it -+ * doesn't work. -+ */ -+#if defined(__i386__) || defined(__x86_64__) || defined(__vax__) -+#define SET(n) \ -+ (*(MD5_u32plus *)&ptr[(n) * 4]) -+#define GET(n) \ -+ SET(n) -+#else -+#define SET(n) \ -+ (ctx->block[(n)] = \ -+ (MD5_u32plus)ptr[(n) * 4] | \ -+ ((MD5_u32plus)ptr[(n) * 4 + 1] << 8) | \ -+ ((MD5_u32plus)ptr[(n) * 4 + 2] << 16) | \ -+ ((MD5_u32plus)ptr[(n) * 4 + 3] << 24)) -+#define GET(n) \ -+ (ctx->block[(n)]) - #endif - - /* -- * Final wrapup - pad to 64-byte boundary with the bit pattern -- * 1 0* (64-bit count of bits processed, MSB-first) -+ * This processes one or more 64-byte data blocks, but does NOT update -+ * the bit counters. There are no alignment requirements. - */ --static void MD5Final(unsigned char digest[16], MD5_CTX *ctx) -+static const void *body(MD5_CTX *ctx, const void *data, unsigned long size) - { -- unsigned count; -- unsigned char *p; -- -- /* Compute number of bytes mod 64 */ -- count = (ctx->bits[0] >> 3) & 0x3F; -- -- /* Set the first char of padding to 0x80. This is safe since there is -- always at least one byte free */ -- p = ctx->in + count; -- *p++ = 0x80; -- -- /* Bytes of padding needed to make 64 bytes */ -- count = 64 - 1 - count; -- -- /* Pad out to 56 mod 64 */ -- if (count < 8) -- { -- /* Two lots of padding: Pad the first block to 64 bytes */ -- memset(p, 0, count); -- byteReverse(ctx->in, 16); -- MD5Transform(ctx->buf, (unsigned int *) ctx->in); -- -- /* Now fill the next block with 56 bytes */ -- memset(ctx->in, 0, 56); -- } -- else -- { -- /* Pad block to 56 bytes */ -- memset(p, 0, count - 8); -- } -- byteReverse(ctx->in, 14); -- -- /* Append length in bits and transform */ -- ((unsigned int *) ctx->in)[14] = ctx->bits[0]; -- ((unsigned int *) ctx->in)[15] = ctx->bits[1]; -- -- MD5Transform(ctx->buf, (unsigned int *) ctx->in); -- byteReverse((unsigned char *) ctx->buf, 4); -- memcpy(digest, ctx->buf, 16); -- memset((char *) ctx, 0, sizeof(ctx)); /* In case it's sensitive */ -+ const unsigned char *ptr; -+ MD5_u32plus a, b, c, d; -+ MD5_u32plus saved_a, saved_b, saved_c, saved_d; -+ -+ ptr = (const unsigned char *)data; -+ -+ a = ctx->a; -+ b = ctx->b; -+ c = ctx->c; -+ d = ctx->d; -+ -+ do { -+ saved_a = a; -+ saved_b = b; -+ saved_c = c; -+ saved_d = d; -+ -+/* Round 1 */ -+ STEP(F, a, b, c, d, SET(0), 0xd76aa478, 7) -+ STEP(F, d, a, b, c, SET(1), 0xe8c7b756, 12) -+ STEP(F, c, d, a, b, SET(2), 0x242070db, 17) -+ STEP(F, b, c, d, a, SET(3), 0xc1bdceee, 22) -+ STEP(F, a, b, c, d, SET(4), 0xf57c0faf, 7) -+ STEP(F, d, a, b, c, SET(5), 0x4787c62a, 12) -+ STEP(F, c, d, a, b, SET(6), 0xa8304613, 17) -+ STEP(F, b, c, d, a, SET(7), 0xfd469501, 22) -+ STEP(F, a, b, c, d, SET(8), 0x698098d8, 7) -+ STEP(F, d, a, b, c, SET(9), 0x8b44f7af, 12) -+ STEP(F, c, d, a, b, SET(10), 0xffff5bb1, 17) -+ STEP(F, b, c, d, a, SET(11), 0x895cd7be, 22) -+ STEP(F, a, b, c, d, SET(12), 0x6b901122, 7) -+ STEP(F, d, a, b, c, SET(13), 0xfd987193, 12) -+ STEP(F, c, d, a, b, SET(14), 0xa679438e, 17) -+ STEP(F, b, c, d, a, SET(15), 0x49b40821, 22) -+ -+/* Round 2 */ -+ STEP(G, a, b, c, d, GET(1), 0xf61e2562, 5) -+ STEP(G, d, a, b, c, GET(6), 0xc040b340, 9) -+ STEP(G, c, d, a, b, GET(11), 0x265e5a51, 14) -+ STEP(G, b, c, d, a, GET(0), 0xe9b6c7aa, 20) -+ STEP(G, a, b, c, d, GET(5), 0xd62f105d, 5) -+ STEP(G, d, a, b, c, GET(10), 0x02441453, 9) -+ STEP(G, c, d, a, b, GET(15), 0xd8a1e681, 14) -+ STEP(G, b, c, d, a, GET(4), 0xe7d3fbc8, 20) -+ STEP(G, a, b, c, d, GET(9), 0x21e1cde6, 5) -+ STEP(G, d, a, b, c, GET(14), 0xc33707d6, 9) -+ STEP(G, c, d, a, b, GET(3), 0xf4d50d87, 14) -+ STEP(G, b, c, d, a, GET(8), 0x455a14ed, 20) -+ STEP(G, a, b, c, d, GET(13), 0xa9e3e905, 5) -+ STEP(G, d, a, b, c, GET(2), 0xfcefa3f8, 9) -+ STEP(G, c, d, a, b, GET(7), 0x676f02d9, 14) -+ STEP(G, b, c, d, a, GET(12), 0x8d2a4c8a, 20) -+ -+/* Round 3 */ -+ STEP(H, a, b, c, d, GET(5), 0xfffa3942, 4) -+ STEP(H2, d, a, b, c, GET(8), 0x8771f681, 11) -+ STEP(H, c, d, a, b, GET(11), 0x6d9d6122, 16) -+ STEP(H2, b, c, d, a, GET(14), 0xfde5380c, 23) -+ STEP(H, a, b, c, d, GET(1), 0xa4beea44, 4) -+ STEP(H2, d, a, b, c, GET(4), 0x4bdecfa9, 11) -+ STEP(H, c, d, a, b, GET(7), 0xf6bb4b60, 16) -+ STEP(H2, b, c, d, a, GET(10), 0xbebfbc70, 23) -+ STEP(H, a, b, c, d, GET(13), 0x289b7ec6, 4) -+ STEP(H2, d, a, b, c, GET(0), 0xeaa127fa, 11) -+ STEP(H, c, d, a, b, GET(3), 0xd4ef3085, 16) -+ STEP(H2, b, c, d, a, GET(6), 0x04881d05, 23) -+ STEP(H, a, b, c, d, GET(9), 0xd9d4d039, 4) -+ STEP(H2, d, a, b, c, GET(12), 0xe6db99e5, 11) -+ STEP(H, c, d, a, b, GET(15), 0x1fa27cf8, 16) -+ STEP(H2, b, c, d, a, GET(2), 0xc4ac5665, 23) -+ -+/* Round 4 */ -+ STEP(I, a, b, c, d, GET(0), 0xf4292244, 6) -+ STEP(I, d, a, b, c, GET(7), 0x432aff97, 10) -+ STEP(I, c, d, a, b, GET(14), 0xab9423a7, 15) -+ STEP(I, b, c, d, a, GET(5), 0xfc93a039, 21) -+ STEP(I, a, b, c, d, GET(12), 0x655b59c3, 6) -+ STEP(I, d, a, b, c, GET(3), 0x8f0ccc92, 10) -+ STEP(I, c, d, a, b, GET(10), 0xffeff47d, 15) -+ STEP(I, b, c, d, a, GET(1), 0x85845dd1, 21) -+ STEP(I, a, b, c, d, GET(8), 0x6fa87e4f, 6) -+ STEP(I, d, a, b, c, GET(15), 0xfe2ce6e0, 10) -+ STEP(I, c, d, a, b, GET(6), 0xa3014314, 15) -+ STEP(I, b, c, d, a, GET(13), 0x4e0811a1, 21) -+ STEP(I, a, b, c, d, GET(4), 0xf7537e82, 6) -+ STEP(I, d, a, b, c, GET(11), 0xbd3af235, 10) -+ STEP(I, c, d, a, b, GET(2), 0x2ad7d2bb, 15) -+ STEP(I, b, c, d, a, GET(9), 0xeb86d391, 21) -+ -+ a += saved_a; -+ b += saved_b; -+ c += saved_c; -+ d += saved_d; -+ -+ ptr += 64; -+ } while (size -= 64); -+ -+ ctx->a = a; -+ ctx->b = b; -+ ctx->c = c; -+ ctx->d = d; -+ -+ return ptr; - } - --static void MD5Init(MD5_CTX *ctx) -+void MD5_Init(MD5_CTX *ctx) - { -- ctx->buf[0] = 0x67452301; -- ctx->buf[1] = 0xefcdab89; -- ctx->buf[2] = 0x98badcfe; -- ctx->buf[3] = 0x10325476; -+ ctx->a = 0x67452301; -+ ctx->b = 0xefcdab89; -+ ctx->c = 0x98badcfe; -+ ctx->d = 0x10325476; - -- ctx->bits[0] = 0; -- ctx->bits[1] = 0; -+ ctx->lo = 0; -+ ctx->hi = 0; - } - --static void MD5Update(MD5_CTX *ctx, unsigned char const *buf, unsigned len) -+void MD5_Update(MD5_CTX *ctx, const void *data, unsigned long size) - { -- unsigned int t; -+ MD5_u32plus saved_lo; -+ unsigned long used, available; - -- /* Update bitcount */ -+ saved_lo = ctx->lo; -+ if ((ctx->lo = (saved_lo + size) & 0x1fffffff) < saved_lo) -+ ctx->hi++; -+ ctx->hi += size >> 29; - -- t = ctx->bits[0]; -- if ((ctx->bits[0] = t + ((unsigned int) len << 3)) < t) -- { -- ctx->bits[1]++; /* Carry from low to high */ -- } -- ctx->bits[1] += len >> 29; -- -- t = (t >> 3) & 0x3f; /* Bytes already in shsInfo->data */ -+ used = saved_lo & 0x3f; - -- /* Handle any leading odd-sized chunks */ -- -- if (t) -- { -- unsigned char *p = (unsigned char *) ctx->in + t; -+ if (used) { -+ available = 64 - used; - -- t = 64 - t; -- if (len < t) -- { -- memcpy(p, buf, len); -- return; -- } -- memcpy(p, buf, t); -- byteReverse(ctx->in, 16); -- MD5Transform(ctx->buf, (unsigned int *) ctx->in); -- buf += t; -- len -= t; -- } -- /* Process data in 64-byte chunks */ -+ if (size < available) { -+ memcpy(&ctx->buffer[used], data, size); -+ return; -+ } - -- while (len >= 64) -- { -- memcpy(ctx->in, buf, 64); -- byteReverse(ctx->in, 16); -- MD5Transform(ctx->buf, (unsigned int *) ctx->in); -- buf += 64; -- len -= 64; -- } -+ memcpy(&ctx->buffer[used], data, available); -+ data = (const unsigned char *)data + available; -+ size -= available; -+ body(ctx, ctx->buffer, 64); -+ } - -- /* Handle any remaining bytes of data. */ -+ if (size >= 64) { -+ data = body(ctx, data, size & ~(unsigned long)0x3f); -+ size &= 0x3f; -+ } - -- memcpy(ctx->in, buf, len); -+ memcpy(ctx->buffer, data, size); - } - -- --/* #define F1(x, y, z) (x & y | ~x & z) */ --#define F1(x, y, z) (z ^ (x & (y ^ z))) --#define F2(x, y, z) F1(z, x, y) --#define F3(x, y, z) (x ^ y ^ z) --#define F4(x, y, z) (y ^ (x | ~z)) -- --/* This is the central step in the MD5 algorithm. */ --#define MD5STEP(f, w, x, y, z, data, s) \ -- ( w += f(x, y, z) + data, w = w<<s | w>>(32-s), w += x ) -- --/* -- * The core of the MD5 algorithm, this alters an existing MD5 hash to -- * reflect the addition of 16 longwords of new data. MD5Update blocks -- * the data and converts bytes into longwords for this routine. -- */ --static void MD5Transform(unsigned int buf[4], unsigned int const in[16]) -+void MD5_Final(unsigned char *result, MD5_CTX *ctx) - { -- register unsigned int a, b, c, d; -- -- a = buf[0]; -- b = buf[1]; -- c = buf[2]; -- d = buf[3]; -- -- MD5STEP(F1, a, b, c, d, in[0] + 0xd76aa478, 7); -- MD5STEP(F1, d, a, b, c, in[1] + 0xe8c7b756, 12); -- MD5STEP(F1, c, d, a, b, in[2] + 0x242070db, 17); -- MD5STEP(F1, b, c, d, a, in[3] + 0xc1bdceee, 22); -- MD5STEP(F1, a, b, c, d, in[4] + 0xf57c0faf, 7); -- MD5STEP(F1, d, a, b, c, in[5] + 0x4787c62a, 12); -- MD5STEP(F1, c, d, a, b, in[6] + 0xa8304613, 17); -- MD5STEP(F1, b, c, d, a, in[7] + 0xfd469501, 22); -- MD5STEP(F1, a, b, c, d, in[8] + 0x698098d8, 7); -- MD5STEP(F1, d, a, b, c, in[9] + 0x8b44f7af, 12); -- MD5STEP(F1, c, d, a, b, in[10] + 0xffff5bb1, 17); -- MD5STEP(F1, b, c, d, a, in[11] + 0x895cd7be, 22); -- MD5STEP(F1, a, b, c, d, in[12] + 0x6b901122, 7); -- MD5STEP(F1, d, a, b, c, in[13] + 0xfd987193, 12); -- MD5STEP(F1, c, d, a, b, in[14] + 0xa679438e, 17); -- MD5STEP(F1, b, c, d, a, in[15] + 0x49b40821, 22); -- -- MD5STEP(F2, a, b, c, d, in[1] + 0xf61e2562, 5); -- MD5STEP(F2, d, a, b, c, in[6] + 0xc040b340, 9); -- MD5STEP(F2, c, d, a, b, in[11] + 0x265e5a51, 14); -- MD5STEP(F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20); -- MD5STEP(F2, a, b, c, d, in[5] + 0xd62f105d, 5); -- MD5STEP(F2, d, a, b, c, in[10] + 0x02441453, 9); -- MD5STEP(F2, c, d, a, b, in[15] + 0xd8a1e681, 14); -- MD5STEP(F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20); -- MD5STEP(F2, a, b, c, d, in[9] + 0x21e1cde6, 5); -- MD5STEP(F2, d, a, b, c, in[14] + 0xc33707d6, 9); -- MD5STEP(F2, c, d, a, b, in[3] + 0xf4d50d87, 14); -- MD5STEP(F2, b, c, d, a, in[8] + 0x455a14ed, 20); -- MD5STEP(F2, a, b, c, d, in[13] + 0xa9e3e905, 5); -- MD5STEP(F2, d, a, b, c, in[2] + 0xfcefa3f8, 9); -- MD5STEP(F2, c, d, a, b, in[7] + 0x676f02d9, 14); -- MD5STEP(F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20); -- -- MD5STEP(F3, a, b, c, d, in[5] + 0xfffa3942, 4); -- MD5STEP(F3, d, a, b, c, in[8] + 0x8771f681, 11); -- MD5STEP(F3, c, d, a, b, in[11] + 0x6d9d6122, 16); -- MD5STEP(F3, b, c, d, a, in[14] + 0xfde5380c, 23); -- MD5STEP(F3, a, b, c, d, in[1] + 0xa4beea44, 4); -- MD5STEP(F3, d, a, b, c, in[4] + 0x4bdecfa9, 11); -- MD5STEP(F3, c, d, a, b, in[7] + 0xf6bb4b60, 16); -- MD5STEP(F3, b, c, d, a, in[10] + 0xbebfbc70, 23); -- MD5STEP(F3, a, b, c, d, in[13] + 0x289b7ec6, 4); -- MD5STEP(F3, d, a, b, c, in[0] + 0xeaa127fa, 11); -- MD5STEP(F3, c, d, a, b, in[3] + 0xd4ef3085, 16); -- MD5STEP(F3, b, c, d, a, in[6] + 0x04881d05, 23); -- MD5STEP(F3, a, b, c, d, in[9] + 0xd9d4d039, 4); -- MD5STEP(F3, d, a, b, c, in[12] + 0xe6db99e5, 11); -- MD5STEP(F3, c, d, a, b, in[15] + 0x1fa27cf8, 16); -- MD5STEP(F3, b, c, d, a, in[2] + 0xc4ac5665, 23); -- -- MD5STEP(F4, a, b, c, d, in[0] + 0xf4292244, 6); -- MD5STEP(F4, d, a, b, c, in[7] + 0x432aff97, 10); -- MD5STEP(F4, c, d, a, b, in[14] + 0xab9423a7, 15); -- MD5STEP(F4, b, c, d, a, in[5] + 0xfc93a039, 21); -- MD5STEP(F4, a, b, c, d, in[12] + 0x655b59c3, 6); -- MD5STEP(F4, d, a, b, c, in[3] + 0x8f0ccc92, 10); -- MD5STEP(F4, c, d, a, b, in[10] + 0xffeff47d, 15); -- MD5STEP(F4, b, c, d, a, in[1] + 0x85845dd1, 21); -- MD5STEP(F4, a, b, c, d, in[8] + 0x6fa87e4f, 6); -- MD5STEP(F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10); -- MD5STEP(F4, c, d, a, b, in[6] + 0xa3014314, 15); -- MD5STEP(F4, b, c, d, a, in[13] + 0x4e0811a1, 21); -- MD5STEP(F4, a, b, c, d, in[4] + 0xf7537e82, 6); -- MD5STEP(F4, d, a, b, c, in[11] + 0xbd3af235, 10); -- MD5STEP(F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15); -- MD5STEP(F4, b, c, d, a, in[9] + 0xeb86d391, 21); -- -- buf[0] += a; -- buf[1] += b; -- buf[2] += c; -- buf[3] += d; -+ unsigned long used, available; -+ -+ used = ctx->lo & 0x3f; -+ -+ ctx->buffer[used++] = 0x80; -+ -+ available = 64 - used; -+ -+ if (available < 8) { -+ memset(&ctx->buffer[used], 0, available); -+ body(ctx, ctx->buffer, 64); -+ used = 0; -+ available = 64; -+ } -+ -+ memset(&ctx->buffer[used], 0, available - 8); -+ -+ ctx->lo <<= 3; -+ ctx->buffer[56] = ctx->lo; -+ ctx->buffer[57] = ctx->lo >> 8; -+ ctx->buffer[58] = ctx->lo >> 16; -+ ctx->buffer[59] = ctx->lo >> 24; -+ ctx->buffer[60] = ctx->hi; -+ ctx->buffer[61] = ctx->hi >> 8; -+ ctx->buffer[62] = ctx->hi >> 16; -+ ctx->buffer[63] = ctx->hi >> 24; -+ -+ body(ctx, ctx->buffer, 64); -+ -+ result[0] = ctx->a; -+ result[1] = ctx->a >> 8; -+ result[2] = ctx->a >> 16; -+ result[3] = ctx->a >> 24; -+ result[4] = ctx->b; -+ result[5] = ctx->b >> 8; -+ result[6] = ctx->b >> 16; -+ result[7] = ctx->b >> 24; -+ result[8] = ctx->c; -+ result[9] = ctx->c >> 8; -+ result[10] = ctx->c >> 16; -+ result[11] = ctx->c >> 24; -+ result[12] = ctx->d; -+ result[13] = ctx->d >> 8; -+ result[14] = ctx->d >> 16; -+ result[15] = ctx->d >> 24; -+ -+ memset(ctx, 0, sizeof(*ctx)); - }
scm-commits@lists.fedoraproject.org