主要配置修改

整个程序配置分几个部分

  1. Project related configuration options

    项目相关,包括:

    • 项目名
    • 输出目录
    • 输出语言
    • 是否显示继承属性
    • 是否对C、Java、Fortran等优化
  2. Build related configuration options
    • 是否显示私有、静态变量
    • 是否显示 include 文件
    • 是否将文件中brief descriptions重新排序
    • 显示文件
    • 显示作用域
  3. Configuration options related to warning and progress messages
  4. Configuration options related to the input files
    • 源文件位置
    • 字符编码
    • 图片位置
  5. Configuration options related to source browsing
    • 是否显示源程序
    • 忽略程序注释
    • 是否显示调用、被调用相关函数
  6. Configuration options related to the alphabetical class index
  7. Configuration options related to the HTML output
  8. Configuration options related to the LaTeX output
  9. Configuration options related to the RTF output
  10. Configuration options related to the man page output
  11. Configuration options related to the XML output
  12. Configuration options related to the DOCBOOK output
  13. Configuration options for the AutoGen Definitions output
  14. Configuration options related to the Perl module output
  15. Configuration options related to the preprocessor
  16. Configuration options related to external references
  17. Configuration options related to the dot tool

运行使用

doxygen [Doxygen file]

注释

参考自Doxygen注释风格

要点

若想要通过Doxygen生成漂亮的文档,有几个地方需要使用Doxygen支持的风格进行注释:

  1. 头文件

    声明版权,描述文件实现功能,及文件版本信息;
  2. 类、结构体定义

    描述类或结构体实现的功能,同时也可以包含使用方法或注意事项的简要描述;
  3. 类、结构体成员定义

    在成员变量的上方进行简要描述;
  4. 类成员函数、子例程函数定义

    函数功能简要描述;
  5. 函数的详细定义

    函数实现位置处对函数的功能、参数的含义、返回值的含义、使用本函数需要注意的问题、本函数使用其他类或函数的说明等进行详细描述。

注释指令

常用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文件配置的更多相关文章

  1. Tomcat下conf下server.xml的文件配置信息

    Tomcat下conf下server.xml的文件配置信息,基本上不用做任何修改就可以使用,修改的地方就是host区域的一些配置,此文件设置端口为80. 注意:Tomcat配置文件中(即server. ...

  2. H5+Mui文件配置 vue-resource基本使用方法

    使用HBuilder空项目搭建h5原生开发框架需要的文件配置: *css:mui.min.css *fonts:mui.ttf mui-icon-extra.ttf *js:mui.js mui.mi ...

  3. django静态文件配置

    开发环境配置 需要下面几个步骤 1. 在app目录下创建static目录,将静态文件和相关文件夹放到此目录下,如your_app/static/img等 2. 确保settings.py中的INSTA ...

  4. 深入浅出Mybatis系列(八)---mapper映射文件配置之select、resultMap

    上篇<深入浅出Mybatis系列(七)---mapper映射文件配置之insert.update.delete>介绍了insert.update.delete的用法,本篇将介绍select ...

  5. 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 ...

  6. Android通过xml文件配置数据库

    之前一段时间自己封装了两个数据库,一个是ORM数据库,另一个是事件流数据库,项目相应的地址如下: ORM数据库:https://github.com/wenjiang/SimpleAndroidORM ...

  7. gradle init.gradle的文件配置 使用

    init.gradle文件在build开始之前执行,所以你可以在这个文件配置一些你想预先加载的操作例如配置build日志输出.配置你的机器信息,比如jdk安装目录,配置在build时必须个人信息,比如 ...

  8. Spring、Spring MVC、MyBatis整合文件配置详解

    原文  http://www.cnblogs.com/wxisme/p/4924561.html 主题 MVC模式MyBatisSpring MVC 使用SSM框架做了几个小项目了,感觉还不错是时候总 ...

  9. 咱就入个门之NHibernate映射文件配置(二)

    上一篇主要介绍了NHibernate映射文件的基础配置,这篇我们介绍下NHibernate的一对多及多对一配置(文中我直接使用双向关联,即一和多两端都配置,开发中可以只使用一端),同时略带介绍下NHi ...

随机推荐

  1. tomcat内存马原理解析及实现

    内存马 简介 ​ Webshell内存马,是在内存中写入恶意后门和木马并执行,达到远程控制Web服务器的一类内存马,其瞄准了企业的对外窗口:网站.应用.但传统的Webshell都是基于文件类型的,黑客 ...

  2. 【二食堂】Alpha- 发布声明

    MarkTexting Alpha版本发布声明 今日我们的MarkTexting正式上线了! 功能介绍 我们实现了一个简单的文本标注生成知识图谱的网站,在Alpha阶段,我们实现的功能有: 登陆注册 ...

  3. [BUAA]起点 软工第一次作业-热身

    项目 内容 这个作业属于哪个课程 2020计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 第一次作业-热身! 我在这个课程的目标是 了解软件开发,提高自己的工程能力和团队协作能力 这个作业在哪 ...

  4. CICD 流水线就该这么玩系列之一

    今天给大家分享的是 DevOps 世界中非常流行的一个 GitOps 工具 - Argo CD.如果你还不知道什么是 GitOps,欢迎留言告诉我,根据热度,我会再写一篇详细讲解 GitOps 的文章 ...

  5. 并发编程从零开始(九)-ConcurrentSkipListMap&Set

    并发编程从零开始(九)-ConcurrentSkipListMap&Set CAS知识点补充: 我们都知道在使用 CAS 也就是使用 compareAndSet(current,next)方法 ...

  6. 微服务(五)nacos配置管理

    1 统一配置管理 1.1 nacos中添加配置文件 注意:项目的核心配置,需要热更新的配置才有放到nacos管理的必要.基本不会变更的一些配置还是保存在微服务本地比较好. 1.2 从微服务拉取配置 微 ...

  7. Spring Boot 2.5.0 重新设计的spring.sql.init 配置有何用?

    前几天Spring Boot 2.5.0发布了,其中提到了关于Datasource初始化机制的调整,有读者私信想了解这方面做了什么调整.那么今天就要详细说说这个重新设计的配置内容,并结合实际情况说说我 ...

  8. 重学STM32---(九)之CAN通信(一)

    目录 1.CAN 是什么 2.CAN 特点 3.错误状态的种类 4.总线拓扑 5.CAN 协议 1.CAN 是什么   CAN 是 Controller Area Network的缩写(以下称为 CA ...

  9. 20191310李烨龙Linux C语言编程基础

    Linux C语言编程基础 任务详情 0. 基于Ubuntu或OpenEuler完成下面的任务(OpenEuler有加分) 1. 选择教材第二章的一节进行编程基础练习(2.10,2.11,2.12,2 ...

  10. H3C 三层交换基于IP限速

    一.背景 目前百度爬虫爬取业务总是按照自己的性能进行抓取客户数据,从来不考虑客户端的网络承受能力,导致客户端网络带宽超出预算范围,因此在客户端方面针对百度的无限制抓取采取相应的策略. 二.解决方案: ...