如何在Doxygen中使用与安装选项交互的条件

时间:2013-02-06 14:31:44

标签: documentation doxygen

我在发布问题之前搜索了网站但找不到答案。

我的任务是为软件创建用户手册,其中包含不同类型硬件的安装选项。为了更清楚,用户选择硬件A,B或C等的安装。然后将启用某些功能,有些功能将被禁用。

用户手册基本上是一个文本文件(.txt),其中包含相关的Doxygen命令(addtogroup,defgroup,ref等)。

我试图找出如何自动将一些信息放在用户手册上,例如硬件A,如果安装选项A并排除硬件B的信息?

我搜索了Doxygen手册和包括这个在内的各种论坛,到目前为止,我提出了一个笨拙的想法,但这个想法并不起作用。

*** This is my manual.txt file. The following is the relevant piece. ***

/*! \defgroup info1 Scripts
    \ingroup manual
    Several  scripts are provided to help the user perform sophisticated tasks. 

\if \$(OPTION_SETUP)=OPTION1
    <ul>
    <li> \ref option1_related_section 
    <li> \ref option1_related_example_text 
    </ul>
\endif

\if \$(OPTION_SETUP)=OPTION2
    <ul>
    <li> \ref option2_related_section
    <li> \ref option2_related_example_text
    </ul>
\endif
*/

哪个不起作用。 我不是开发人员,我知道我错过了什么。

我看到\ if和\ cond只能用于节名。 但我无法弄清楚我如何使用条件来选择manual.txt上的文本(这是我们的用户手册,而不是开发人员),具体取决于安装选项。

Doxygen确实可以吗?

1 个答案:

答案 0 :(得分:2)

\ if和\ cond等只使用在ENABLED_SECTIONS中的Doxyfile中定义的变量(对于条件,您可以使用带&amp;&amp;,||和!的简单表达式)。所以你不能在那里使用'='表达式。 在您的情况下,您可以为选项A创建一个Doxyfiles,为选项B创建另一个Doxyfiles,请注意Doxyfiles可以通过include语句共享部分。在一个Doxyfile中,您将在ENABLED_SECTIONS和另一个OPTION2中定义OPTION1,if语句将读取\如果是OPTION1而另一个是\如果OPTION2