【发布时间】:2020-05-15 03:08:47
【问题描述】:
我正在开发免费软件项目 CCR,它允许气候和其他地球科学用户向 netCDF 添加其他压缩方法。见https://github.com/ccr/ccr。
我有一个 Fortran 文件,Doxygen 给了我以下警告:
/home/ed/noaa/ccr/fsrc/ccr.F90:19: warning: Member nc_def_var_bzip2(ncid, varid, level) (function) of class ccr::nc_def_var_bzip2 is not documented.
/home/ed/noaa/ccr/fsrc/ccr.F90:36: warning: Member nc_def_var_lz4(ncid, varid, level) (function) of class ccr::nc_def_var_lz4 is not documented.
/home/ed/noaa/ccr/fsrc/ccr.F90:27: warning: Member nc_inq_var_bzip2(ncid, varid, bzip2p, levelp) (function) of class ccr::nc_inq_var_bzip2 is not documented.
/home/ed/noaa/ccr/fsrc/ccr.F90:44: warning: Member nc_inq_var_lz4(ncid, varid, lz4p, levelp) (function) of class ccr::nc_inq_var_lz4 is not documented.
但我已经记录了这些功能。 doxygen 抱怨的行号是接口语句的一部分:
module ccr
!> Interface to initialization function.
interface
function nc_initialize_ccr() bind(c)
use iso_c_binding
end function nc_initialize_ccr
end interface
!> Interface to C function to set BZIP2 compression.
interface
function nc_def_var_bzip2(ncid, varid, level) bind(c)
use iso_c_binding
integer(C_INT), value :: ncid, varid, level
end function nc_def_var_bzip2
end interface
!> Interface to C function to inquire about BZIP2 compression.
interface
function nc_inq_var_bzip2(ncid, varid, bzip2p, levelp) bind(c)
use iso_c_binding
integer(C_INT), value :: ncid, varid
integer(C_INT), intent(inout):: bzip2p, levelp
end function nc_inq_var_bzip2
end interface
!> Interface to C function to set LZ4 compression.
interface
function nc_def_var_lz4(ncid, varid, level) bind(c)
use iso_c_binding
integer(C_INT), value :: ncid, varid, level
end function nc_def_var_lz4
end interface
!> Interface to C function to inquire about LZ4 compression.
interface
function nc_inq_var_lz4(ncid, varid, lz4p, levelp) bind(c)
use iso_c_binding
integer(C_INT), value :: ncid, varid
integer(C_INT), intent(inout):: lz4p, levelp
end function nc_inq_var_lz4
end interface
如何让 Doxygen 查看接口的文档?
【问题讨论】:
-
您是否尝试将 cmets 移动到接口块中?
-
Doxygen manual 的“其他地方的文档” 部分可能包含您正在寻找的答案。我没有尝试过,但解决方案可能就像在评论开头添加
\interface一样简单。 -
Doxygen 抱怨接口中定义的方法没有记录在案,在我看来接口已记录或者我错过了什么(也许添加一张图片并指出你错过了什么)。您使用的是哪个版本的 doxygen?