Sphinx + Doxygen + Breathe:如何获得像 Google 的 Ceres Solver 那样的文档?

Sphinx + Doxygen + Breathe: How do I get a documentation like the one of Google's Ceres Solver?

我正在从事一个 C++ 项目,并且真的爱上了 Sphinx 文档构建系统。我设法设置了 Doxygen 和 Breathe 来生成 C++ 描述并将其提供给 Sphinx。

我不知道 Google 的 Ceres Solver 文档是如何完成的。例如,他们的 API reference 包含 class 名称,后跟大量文本,有时甚至包含前面 link 中所示的代码块示例。 有没有办法在源文件中编写 Doxygen 文档并实现这一点?

另一个例子是this class documentation,它有大约两页的文字。我以某种方式怀疑所有这些文本是否作为 Doxygen 注释位于源文件中。我感觉所有额外的文本都写在文档的重组文本源中,而在 c++ 源文件中什么也没有。但是那么使用doxygen和呼吸有什么意义...

或者问不同的问题,我应该在哪里放置有关代码的高级信息?我的意思是我可以在它们的来源中记录 class1class2,但是我需要在某个地方解释它们如何相互作用以及如何一起使用。在我看来,这就是 Ceres Solver 的文档做得很好的地方。

或者,您可以向我指出一个带有 Sphinx + Doxygen + Breathe 管道和开源文档的 C++ 项目。然后我可以自己看看如何做这些事情。不幸的是我不知道任何项目。

我错过了 Ceres 求解器的 github link。在那里可以找到文档的来源。我有点失望,因为完整的文档是在重组文本源文件中编写的,而不是在 c++ 代码中。基本上他们用 .. class:: className 引用 class 名称,然后为信息文本、示例代码块等添加 ReST markdown。"Modeling Non-linear Least Squares"

中给出了一个示例