我正在尝试将 SVG 添加到我的 doxygen 文档中。
第一次尝试是使用\image blabla.svg. 这有点工作......但是,SVG 包含另一个 png 参考,并且“内部”png 未显示。这在 Chrome 上有效,但即使在 Firefox 上也不起作用。
继续阅读,我发现我可以在标记上使用<embed>or 。<iframe>我不确定使用 doxygen 是否可以实现这一点。
如何在 doxygen 文档中使用 SVG?
我使用 Doxygen 为具有多个命名空间的大型 C++ API 生成参考指南。
命名空间名称添加到类文档页面中的每个变量或方法名称中。例如,对于诸如 之类的类MyNamespace::MyClass,Doxygen 会生成一个页面,其中每个方法的记录如下:
MyNameSpace::MyClass::MyEnum MyNameSpace::MyClass::getSomeType()
Run Code Online (Sandbox Code Playgroud)
我想减少混乱并有:
MyClass::MyEnum MyClass::getSomeType()
Run Code Online (Sandbox Code Playgroud)
有什么提示吗?
在一些 doxygen 文档中,我想显示 a 的内容#define,而不是标签本身。例如,在一个 C 文件中我有
#define REPEAT_N_TIMES 10
Run Code Online (Sandbox Code Playgroud)
现在我想在我的文档中显示:
该动作进行10次。
如果我使用\ref REPEAT_N_TIMES,它会显示:
该操作已执行 REPEAT_N_TIMES 次
有没有办法显示链接的内容,而不是链接本身,例如像\ValueOf(\ref REPEAT_N_TIMES)或\contentOf(\ref REPEAT_N_TIMES)?
更新:我的 Doxygen 的配置是:
// Configuration options related to the preprocessor
ENABLE_PREPROCESSING = YES
MACRO_EXPANSION = YES
EXPAND_ONLY_PREDEF = YES
SEARCH_INCLUDES = YES
INCLUDE_PATH =
INCLUDE_FILE_PATTERNS =
PREDEFINED = WXUNUSED()=
EXPAND_AS_DEFINED =
SKIP_FUNCTION_MACROS = YES
Run Code Online (Sandbox Code Playgroud)
该MACRO_EXPANSION设置似乎改变了宏的“细节”。但我没有找到选择宏名称或其内容的方法。使用该命令\ref似乎不是正确的方式:它指的是“某物”而不是“某物”的内容
是否有我可以使用的运算符或函数,可能类似于C,我可以在其中使用类似的东西\ref *something而不是\ref something?
看来 Eclipse 现在已经原生支持 Doxygen 了。转到 C/C++ -> 编辑器 -> 文档工具注释:Doxygen。
然而,它似乎只作用于自动生成的 /** */ 注释。
在我们的项目中,我们使用三斜杠 /// 来生成 doxygen 注释。
似乎没有办法在 Eclipse 中配置 Doxygen 注释生成。有小费吗?是否有我们可以更改的配置文件?某种方式来强制它。
我是第一次尝试使用 Doxygen。在运行 Doxygen 时,我收到大量以下形式的警告:
<code>.cxx:<行号>:警告:记录的函数“<function>::<function>”未声明或定义。
我不知道如何解决这个问题。我正在使用一个大型 C++ 包,并且在运行 Doxygen 时会出现数百次此类警告。
以下是更具体的信息:
警告示例:
Accept.cxx:14: warning: documented function `Accept::Accept' was not declared or defined.
Run Code Online (Sandbox Code Playgroud)
相应的示例代码部分:
#include "Analysis/Accept.h"
#include "Analysis/Cutflow.h"
#include "GlaNtp/GlaUtil/Steer/Steer.h"
#include <iostream>
Accept::Accept(unsigned int cutmask, unsigned int invertword, StringIntMap* CutTypeMap, Cutflow* analysis_cutflow): m_cutmask(cutmask), m_invertword(invertword),
m_cutword(0),m_cutword_set(false), m_CutTypeMap(CutTypeMap),
m_analysis_cutflow(analysis_cutflow){
// this is constructor
InitBitOrder();
}
Accept::~Accept(){}
void Accept::setCutWord(const unsigned int &cutword){
m_cutword_set = true;
m_cutword = cutword;
}
bool Accept::didBitPass(){
//std::cout << "Rick Evnt Pass: " << rickTestCutWord() << std::endl;
return testCutWord();
} …Run Code Online (Sandbox Code Playgroud) 我注意到新版本的 doxygen(我有 1.8.1.1)会生成类列表,其中嵌套是分层完成的,例如:
例如http://www.itk.org/Doxygen/html/annotated.html
我更想要旧样式的类列表:
例如http://trilinos.sandia.gov/packages/docs/r10.8/packages/tpetra/doc/html/annotated.html
doxyfile 中是否有一个设置可以让我获得旧样式?
我提出这个请求的理由是,我通常通过搜索“namespace::MyClass”来搜索我的 C++ 类。通常,即使是“::My”也能很快找到正确的类。在新风格中我不再知道该怎么做。
Context - 用于生成 RTF 文档的 C 代码的 Doxygen 工具。
在模块/组的文档中,即使没有为某些特定模块/组提供详细描述,我们也会获得标题“详细描述”。
在生成的 RTF 文档中,这看起来很难看。是否可以去掉这个空的详细描述部分?
我尝试过"ALWAYS_DETAILED_SEC = NO",但它不起作用。我不能这样做"HIDE_UNDOC_MEMBERS = YES",因为组/模块包含已记录的成员(结构、函数...)。
在哪里配置 doxygen 以使用 Ghostscript 的 64 位版本?默认情况下 doxygen 似乎调用 gswin32c.exe 而不是 gswin64c.exe。
谢谢。
Doxygen 文档应该放在包含防护之前还是之后?在名称空间之前或内部?
假设标头包含单个类 ( ) 的声明context,这就是我在这里记录的内容。
#ifndef CONTEXT_HPP
#define CONTEXT_HPP
#include <string>
/**
* The application context interface.
*/
namespace test {
class context { ... };
}
Run Code Online (Sandbox Code Playgroud) 我为 Arduino 维护了一个相当复杂的 makefile。这个 makefile 有很多可以由用户定制的变量。
我想自动执行为所有这些变量生成文档的任务。
我第一个想到的是Doxygen。经过一些研究,我发现 Doxygen不支持 makefile
那么记录 makefile 中可用的不同配置变量的最佳方法是什么?