Doxygen grouping

问题描述 投票:3回答:2

我对氧气中的页面和组有疑问。我有一个项目,在这里我将类等与@defgroup和@ingroup cmds分组。到目前为止,这很好。

现在,我想为带有降价页面的项目添加特殊文档。这些页面应显示在专用模块(组)中。我尝试使用@page和@subpage cmds创建页面。效果很好,但是页面在菜单中显示为空白。

因此,我尝试使用@ingroup将它们添加到组中。但这不起作用,正如我猜到的那样。是否可以将页面添加到模块(组)?

结果应如下所示:

Project
|-- Modules
| |-- "Module1"
| | |-- documentation page1 (from *.md file)
| | |-- class documentation
| |-- "Module2"
| | |-- documentation page2
| | |-- class documentation

希望您能帮助我!

documentation doxygen
2个回答
5
投票

在描述的情况下,我们为团体提供两种类型的文档:

  1. 源文件中的文档
  2. 来自降价文件的文档

并且我们需要为此组创建树结构。

例如,我们创建2个组:

  1. Main Application带有源代码中的文档
  2. Library和文档library.md
  3. 中的文档

Main Application组源代码(对于C ++)可能看起来像这样:

/** @defgroup app Main Application */

/** @addtogroup app
  * @brief Main application description.
  *
  * @{
  */

int main() { return 0; } //do nothing

/** @} */

MarkDown文件library.md包含简单文本:

Library File {#library}
============

Library Page Content from library.md.

现在定义结构,我们创建具有内容的mainpage.md文件:

Pages {#mainpage}
============

Content:

- @subpage library

@defgroup Library
@addtogroup Library
@copydoc library
@{
@}

@subpage标记在mainpage.md中,用于将所有页面从树隐藏到一个根项目(页面)。@defgroup标签为降价文档创建新的组。@copydoc标记将内容从库页面复制到库组。

在屏幕截图上,您可以看到结果结构:

“

注意,在这种情况下,Module Group名称和Page名称可能不同。您还可以使用@copydoc标签将MarkDown文件中的内容粘贴到源代码文档中。

参考:http://www.doxygen.nl/manual/grouping.html


0
投票

我已经使用@ {和@}命令完成了,它的工作原理如下-

/**  
 * @defgroup module_name Sample Module   
 * @{   
 *     @page page_name [Optional Page Heading]   
 *     here will be the texts for the page ...    
 * @}   
 */   

如果模块已在某些位置定义,则可能需要使用@addtogroup而不是@defgroup。

希望这会有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.