doxygen文件配置
主要配置修改
整个程序配置分几个部分
- Project related configuration options
项目相关,包括:- 项目名
- 输出目录
- 输出语言
- 是否显示继承属性
- 是否对C、Java、Fortran等优化
- Build related configuration options
- 是否显示私有、静态变量
- 是否显示 include 文件
- 是否将文件中brief descriptions重新排序
- 显示文件
- 显示作用域
- Configuration options related to warning and progress messages
- Configuration options related to the input files
- 源文件位置
- 字符编码
- 图片位置
- Configuration options related to source browsing
- 是否显示源程序
- 忽略程序注释
- 是否显示调用、被调用相关函数
- Configuration options related to the alphabetical class index
- Configuration options related to the HTML output
- Configuration options related to the LaTeX output
- Configuration options related to the RTF output
- Configuration options related to the man page output
- Configuration options related to the XML output
- Configuration options related to the DOCBOOK output
- Configuration options for the AutoGen Definitions output
- Configuration options related to the Perl module output
- Configuration options related to the preprocessor
- Configuration options related to external references
- Configuration options related to the dot tool
运行使用
doxygen [Doxygen file]
注释
参考自Doxygen注释风格。
要点
若想要通过Doxygen生成漂亮的文档,有几个地方需要使用Doxygen支持的风格进行注释:
- 头文件
声明版权,描述文件实现功能,及文件版本信息; - 类、结构体定义
描述类或结构体实现的功能,同时也可以包含使用方法或注意事项的简要描述; - 类、结构体成员定义
在成员变量的上方进行简要描述; - 类成员函数、子例程函数定义
函数功能简要描述; - 函数的详细定义
函数实现位置处对函数的功能、参数的含义、返回值的含义、使用本函数需要注意的问题、本函数使用其他类或函数的说明等进行详细描述。
注释指令
常用doxygen变量
| 变量名 | 说明 |
|---|---|
| @file | 文件的批注说明 |
| @author | 作者的信息 |
| @brief | 用于class 或function的简易说明 |
| @param | 函数中参数的说明 |
| @return | 函数的返回情况 |
| @retval | 描述返回值类型 |
| @note | 注解 |
| @attention | 注意说明 |
| @warning | 警告 |
JavaDoc注释风格
在C风格注释块开始使用两个星号 *
/**
* ... 描述 ...
*/
简要描述
/** Brief description
* description continued
*
* Detailed description starts here.
*/
变量描述
/** Detailed description before the variable */
int m_Var;
使用CMake配置doxygen输出文件
在doc文件夹内添加doxygen配置文件Doxyfile.in,对应的CMakeLists.txt文件写为
find_package(Doxygen)
option(BUILD_DOCUMENTATION "Create and install the HTML based API documentation (requires Doxygen)" ${DOXYGEN_FOUND})
if(BUILD_DOCUMENTATION)
if(NOT DOXYGEN_FOUND)
message(FATAL_ERROR "Doxygen is needed to build the documentation.")
endif()
set(doxyfile_in ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in)
set(doxyfile ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
# copy the content from `Doxyfile.in` to `Doxyfile`, replace the @VAR@ variables
configure_file(${doxyfile_in} ${doxyfile} @ONLY)
add_custom_target(doc
COMMAND ${DOXYGEN_EXECUTABLE} ${doxyfile}
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
COMMENT "Generating API documentation with Doxygen"
VERBATIM)
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION share)
endif()
其中configure_file命令会按照Doxyfile.in文件内容新生成一个新的文件,参数@ONLY指定文件Doxyfile.in内@VAR@形式的参数会使用CMake变量进行替换。
以上文件全部配置完成后,使用命令make doc即可生成doxygen说明文档。
doxygen文件配置的更多相关文章
- Tomcat下conf下server.xml的文件配置信息
Tomcat下conf下server.xml的文件配置信息,基本上不用做任何修改就可以使用,修改的地方就是host区域的一些配置,此文件设置端口为80. 注意:Tomcat配置文件中(即server. ...
- H5+Mui文件配置 vue-resource基本使用方法
使用HBuilder空项目搭建h5原生开发框架需要的文件配置: *css:mui.min.css *fonts:mui.ttf mui-icon-extra.ttf *js:mui.js mui.mi ...
- django静态文件配置
开发环境配置 需要下面几个步骤 1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等 2. 确保settings.py中的INSTA ...
- 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap
上篇<深入浅出Mybatis系列(七)---mapper映射文件配置之insert.update.delete>介绍了insert.update.delete的用法,本篇将介绍select ...
- php 上传大文件配置upload_max_filesize和post_max_size选项
php 上传大文件配置upload_max_filesize和post_max_size选项 (2014-04-29 14:42:11) 转载▼ 标签: php.ini upload _files[f ...
- Android通过xml文件配置数据库
之前一段时间自己封装了两个数据库,一个是ORM数据库,另一个是事件流数据库,项目相应的地址如下: ORM数据库:https://github.com/wenjiang/SimpleAndroidORM ...
- gradle init.gradle的文件配置 使用
init.gradle文件在build开始之前执行,所以你可以在这个文件配置一些你想预先加载的操作例如配置build日志输出.配置你的机器信息,比如jdk安装目录,配置在build时必须个人信息,比如 ...
- Spring、Spring MVC、MyBatis整合文件配置详解
原文 http://www.cnblogs.com/wxisme/p/4924561.html 主题 MVC模式MyBatisSpring MVC 使用SSM框架做了几个小项目了,感觉还不错是时候总 ...
- 咱就入个门之NHibernate映射文件配置(二)
上一篇主要介绍了NHibernate映射文件的基础配置,这篇我们介绍下NHibernate的一对多及多对一配置(文中我直接使用双向关联,即一和多两端都配置,开发中可以只使用一端),同时略带介绍下NHi ...
随机推荐
- tomcat内存马原理解析及实现
内存马 简介 Webshell内存马,是在内存中写入恶意后门和木马并执行,达到远程控制Web服务器的一类内存马,其瞄准了企业的对外窗口:网站.应用.但传统的Webshell都是基于文件类型的,黑客 ...
- 【二食堂】Alpha- 发布声明
MarkTexting Alpha版本发布声明 今日我们的MarkTexting正式上线了! 功能介绍 我们实现了一个简单的文本标注生成知识图谱的网站,在Alpha阶段,我们实现的功能有: 登陆注册 ...
- [BUAA]起点 软工第一次作业-热身
项目 内容 这个作业属于哪个课程 2020计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 第一次作业-热身! 我在这个课程的目标是 了解软件开发,提高自己的工程能力和团队协作能力 这个作业在哪 ...
- CICD 流水线就该这么玩系列之一
今天给大家分享的是 DevOps 世界中非常流行的一个 GitOps 工具 - Argo CD.如果你还不知道什么是 GitOps,欢迎留言告诉我,根据热度,我会再写一篇详细讲解 GitOps 的文章 ...
- 并发编程从零开始(九)-ConcurrentSkipListMap&Set
并发编程从零开始(九)-ConcurrentSkipListMap&Set CAS知识点补充: 我们都知道在使用 CAS 也就是使用 compareAndSet(current,next)方法 ...
- 微服务(五)nacos配置管理
1 统一配置管理 1.1 nacos中添加配置文件 注意:项目的核心配置,需要热更新的配置才有放到nacos管理的必要.基本不会变更的一些配置还是保存在微服务本地比较好. 1.2 从微服务拉取配置 微 ...
- Spring Boot 2.5.0 重新设计的spring.sql.init 配置有何用?
前几天Spring Boot 2.5.0发布了,其中提到了关于Datasource初始化机制的调整,有读者私信想了解这方面做了什么调整.那么今天就要详细说说这个重新设计的配置内容,并结合实际情况说说我 ...
- 重学STM32---(九)之CAN通信(一)
目录 1.CAN 是什么 2.CAN 特点 3.错误状态的种类 4.总线拓扑 5.CAN 协议 1.CAN 是什么 CAN 是 Controller Area Network的缩写(以下称为 CA ...
- 20191310李烨龙Linux C语言编程基础
Linux C语言编程基础 任务详情 0. 基于Ubuntu或OpenEuler完成下面的任务(OpenEuler有加分) 1. 选择教材第二章的一节进行编程基础练习(2.10,2.11,2.12,2 ...
- H3C 三层交换基于IP限速
一.背景 目前百度爬虫爬取业务总是按照自己的性能进行抓取客户数据,从来不考虑客户端的网络承受能力,导致客户端网络带宽超出预算范围,因此在客户端方面针对百度的无限制抓取采取相应的策略. 二.解决方案: ...