我有两个 C++ 项目 A 和 B;依赖关系只是 B 到 A。
B --> A
Run Code Online (Sandbox Code Playgroud)
我想分别在 A 和 B 上分别运行 Doxygen,但仍然让我可以从 B 文档中交叉引用 A。(也就是说,当我浏览 B 文档时,如果 B 中使用了来自 A 的任何类,我可以直接链接到 A 文档)。
——
[回复来自 0x4b 的答案:] 如果我将“CREATE_SUBDIRS”设置为 YES 并使用标签文件的相对路径,Doxygen 会以某种方式做出错误的链接引用。
我确实遵循了这个例子。
<root>
+- proj
| +- html HTML output directory for proj
| +- d1
| | +- d2
| | .... (*.html)
| |
| ...(*.html)
| +- src sources for proj
+- ext1
| +- html HTML output directory for ext1 …Run Code Online (Sandbox Code Playgroud) 我想<script>xxx</script>在生成的 index.html 中引入一些 javascript 内容,以便将 reddit 和 facebook“喜欢”按钮添加到我的项目主页。有没有办法使用 Doxygen 自动完成此操作?
谢谢,
设置跳转
我想在doxygen文档中包含一个外部点图-在中\mainpage My Personal Index Page。我将如何处理?
我将其包含为附加的png还是可以让doxygen自己生成图表?
对于给定的方法(例如 Settings.cpp getSettingByName()),我想获得调用图的文本表示。我听说 doxygen 可以生成调用图的图像,我对文本输出更感兴趣。
例如,如果我给它“Settings.cpp getMethodByName”它会返回:
Settings.cpp getSettingByName();
SettingsWrapper.cpp getMaximumSpeed();
ECU.cpp monitorSpeed();
Operate.cpp runECU();
Main.cpp run();
CruiseControl.cpp accelerate();
Operate.cpp runCruiseControl();
Main.cpp run();
Radio.cpp playApplauseThroughSpeakers();
Operate.cpp runStereo();
Main.cpp run();
Run Code Online (Sandbox Code Playgroud)
这可能吗?
非常感谢,菲德尔
附:不要害怕代码,这只是一个例子。
例如,在我的函数中
//starting code with doxygen documentation
/** The main function. I will now try to document variables within this main function*/
int main()
{
int arr[]; /** \brief an integer array*/
.....
return 0;
}
//end of code
Run Code Online (Sandbox Code Playgroud)
但是,当我在配置文件中将“HIDE_IN_BODY_DOCS”变量设置为“NO”的情况下使用 Doxygen 时,这不会为此局部变量执行特定文档。相反,它只需要该位并将其与函数文档一起打印,就好像它是函数中的任何其他注释行一样
如何使用 Doxygen 记录此类局部变量?
我使用 Doxygen 和 Dot 来创建 Java 项目的 UML 图。当我运行 Doxygen 时,它会创建许多特定类的 .png uml 文件,而不是一个“大”UML 图表,其中显示了所有类 + 成员函数等。
有没有可能产生这个?如果是,如何?
我正在使用 doxygen 为我的 C++ 项目生成 html。Doxygen 生成一个文件列表页面,但没有列出的头文件链接到它们的文档页面。例如,在http://rbdl.bitbucket.org/files.html的文件列表中,所有 header.h 文件都链接到它们的文件参考文档页面。我列出的文件没有链接。
如何让我生成的 doxygen 文件列表页面也有链接的标题?
如果将指针传递给只读函数,则该指针是 IN 参数。
如果一个指针被传递给一个只读函数,但是这个函数创建了一个指针的副本,以便在只读操作的模块相关函数中访问它,这个指针仍然是 IN。
如果函数仍然使用指针作为只读,但其他模块相关函数使用指针进行写操作,那么指针是什么?一个 IN 参数,但没有 const?输入/输出参数?
我的意思的例子:
class SteeringWheel {
public: float rotation;
public: SteeringWheel(void) {
this->rotation = 0.f;
}
};
class Car {
private: SteeringWheel *steeringWheel;
public:
/**
* @param[?] steeringWheel Is the steering wheel in or in/out?
*/
Car (SteeringWheel *steeringWheel) {
this->steeringWheel = steeringWheel;
}
/**
* @param[in] degree Steering amount in degrees.
*/
void steer(float degree)
{
this->steeringWheel->rotation += degree;
}
};
int main(int argc, char **argv)
{
SteeringWheel steeringWheel();
/* car() uses …Run Code Online (Sandbox Code Playgroud) 我无法通过 Meson 的配置运行 Doxygen。
这是中的相关代码meson.build:
doxygen = find_program('doxygen')
...
run_target('docs', command : 'doxygen ' + meson.source_root() + '/Doxyfile')
Run Code Online (Sandbox Code Playgroud)
成功找到了 doxygen 可执行文件:
找到程序 doxygen:是 (/usr/bin/doxygen)
但是,当启动时,我收到此错误消息:
[0/1] 运行外部命令文档。
无法执行命令“doxygen /home/project/Doxyfile”。文件未找到。
失败:介子文档
从命令行手动运行它可以工作:
/usr/bin/doxygen /home/project/Doxyfile
doxygen /home/project/Doxyfile
Run Code Online (Sandbox Code Playgroud)
我的meson.build配置有什么问题?
我有一个带有模板化函数的类。该函数是专门化/实例化的,因此可以在 cpp 中定义。Doxygen 给了我一个关于模板实例化的错误。
例如,我的.h:
namespace LP
{
namespace LF
{
class FileReader
{
public:
template <class T> void Read( T *aValue );
size_t Read( uint8_t *aBuffer, size_t aSizeToRead );
};
}
}
Run Code Online (Sandbox Code Playgroud)
还有我的 cpp:
/// Valid doxygen function doc
template<class T>
void
LP::LF::FileReader::Read( T *aValue )
{
Read( reinterpret_cast<uint8_t *>( aValue ), sizeof( T ) );
}
//Template specialisation so it can be defined in the cpp file
template void LP::LF::FileReader::Read<uint8_t>( uint8_t * );
template void LP::LF::FileReader::Read<uint16_t>( uint16_t * …Run Code Online (Sandbox Code Playgroud) doxygen ×10
c++ ×6
call-graph ×1
dot ×1
hierarchy ×1
inout ×1
java ×1
javascript ×1
meson-build ×1
methods ×1
uml ×1