我正在为自由软件项目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 看到接口的文档?
\interface
一样简单。 - PetrH