合并氧气模块 [英] Merging doxygen modules

查看:46
本文介绍了合并氧气模块的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有很多针对doxygen的代码。为了提高性能,我正在尝试将其分解为模块,然后将结果合并到一组文档中。我以为标签文件可以解决这个问题,但是要么我配置错误,要么我误解了它的工作原理。

I have a large amount of code that I'm running doxygen against. To improve performance I'm trying to break it into modules and merge the result into one set of docs. I thought tag files would do the trick, but either I have it configured wrong or I'm misunderstanding how it works.

目录布局:

root +
     |-src+
     |    |-a
     |
     |-doc+
          |-a.dox
          |-main.dox
          |-main.md
          |-output+
                  |-a+
                  |  |-html
                  |-main+
                        |-html

a.dox生成输出并将标记文件放入root / doc / output

a.dox generates output and a tag file into root/doc/output

OUTPUT_DIRECTORY=output/a
GENERATE_TAGFILE = output/a/a.tag
INPUT=../src/a

main.dox仅输入具有主页标签的markdown文件,并引用其他项目标签文件。

main.dox just inputs the markdown file that has a mainpage tag and refers to the other projects tag file.

OUTPUT_DIRECTORY=output/main
INPUT = main.md
TAGFILES=output/a/a.tag=output/a/html




  1. 是否应合并或链接下的所有文档我在哪里可以浏览 a全局变量,模块,页面等?还是仅当我从 main内部显式交叉引用 a中的文档化实体时,才生成指向 a的链接?

  2. 如果这行得通,对在哪里的任何想法我的语法不正确?我尝试了各种方法来定义TAGFILES,输出目录是否相对于main.dox文件?到a.tag文件?还是到a / html目录? >
  1. Should this merge or link all the docs under main where I can browse 'a' globals, modules, pages, etc? Or does this only generate links to 'a' if I explicitly cross-reference a documented entity in 'a' from inside of 'main'?
  2. If this should work, any thoughts on where my syntax is incorrect? I've tried various ways to define TAGFILES, is the output directory relative to the main.dox file? To the a.tag file? Or to the a/html directory?
  3. If I'm off base an TAGFILES don't work this way, is there another way to merge sets of doxygen directories into one?

谢谢。

推荐答案

我建议您阅读本主题,了解我建议如何使用标记文件以及应适用的条件: https://stackoverflow.com/a/8247993/ 784672

I suggest you read this topic on how I recommend to use tag files and the conditions that should apply: https://stackoverflow.com/a/8247993/784672

要回答您的第一个问题:doxygen通常将各种索引文件合并在一起(这样就不会产生任何性能。获得)。尽管在某些情况下,您仍然可以通过将 ALLEXTERNALS 设置为 YES 来获得索引中的外部成员。

To answer your first question: doxygen will in general not merge the various index files together (then no performance would be gained). Although for a part you can still get external members in the index by setting ALLEXTERNALS to YES.

Doxygen将(自动)链接通过标签文件导入的其他来源的符号。因此,通常,您应该将代码分成或多或少的独立模块/组件/库,如果一个这样的模块依赖于另一个,请导入其标记文件,以便doxygen可以链接到另一个文档集。如果您运行doxygen两次(一次用于标记文件,一次用于文档),您也可以解决循环依赖项。

Doxygen will (auto)link symbols from other sources imported via a tag file. So in general you should divide your code into more or less self-contained modules/components/libraries, and if one such module depends on another, then import its tag file so that doxygen can link to the other documentation set. If you run doxygen twice (once for the tag file and once for the documentation) you can also resolve cyclic dependencies if you have them.

在我的情况下,我自定义索引页面,该页面具有指向所有模块的链接,并在每个链接到该索引的生成页面的菜单中进行了自定义输入(请参见 http://www.doxygen.nl/manual/customize.html#layout )如何将用户定义的条目添加到导航菜单/树中。

In my case I made a custom index page with links to all modules, and made a custom entry in the menu of each generated page that linked back to this index (see http://www.doxygen.nl/manual/customize.html#layout) how to add a user defined entry to the navigation menu/tree.

这篇关于合并氧气模块的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆