I am seeing the same issue. From everything that I know about doxygen the documentation should be produced for the functions as long as the @file annotation is found in the file. Or, the EXTRACT_ALL tag is set to yes. The files do have that annotation and the tag is set to yes. I don't know why the documentation is not being produced. In the API section of the output.
I am using doxygen v1.8.13 which version are you using sometimes issues like this are bugs in a particular release. George -----Original Message----- From: iotivity-dev-bounces at lists.iotivity.org [mailto:[email protected]] On Behalf Of Mats Wichmann Sent: Wednesday, April 5, 2017 7:27 AM To: IoTivity Developer List <iotivity-dev at lists.iotivity.org> Subject: [dev] still trying to figure out API docs I'm not quite sure what doxygen is doing here, before I spend too much more time digging I'm wondering if someone else knows. The C-API docs are at: https://api-docs.iotivity.org/latest-c If you navigate down the left side to API Reference -> Class Members -> Functions you get to this page (note: this snapshot is from before the flag to "generate for C code" was turned on so a build today would not name it "Class Members", but everything else about this looks the same): https://api-docs.iotivity.org/latest-c/functions_func.html That's kind of a surprise, you would conclude from this that the full API consists only of these functions: DeleteContext() deleteResourceFromRD() Instance() PublishContext() publishResourceToRD() RDClient() The API functions *are* available if you browse to the individual header files, for example to cainterface.h: https://api-docs.iotivity.org/latest-c/cainterface_8h.html where we see a whole bunch of functions documented. Further, the things in the list of "functions" are not functions in the C API... the ones it's picking up come from this header: resource/csdk/resource-directory/include/RDClient.h resource/csdk/resource-directory/include is in the list of directories in the Doxyfile, but it looks like this file should be getting excluded. I guess I don't understand why the csdk directory contains ANY non-C SDK files, but perhaps that's a different question, about code structuring. further, the things in that header are not all doxy-marked up, so I'm not quite sure why doxygen is picking them up: publishResourceToRD and deleteResourceFromRD are, but the others are not, though they are either public methods or structs. again, maybe that's a different story, I haven't looked at how doxygen treats C++ components as I'm just chasing the C API at the moment. So let's distill this slightly rambling question down to a few: 1. okay to exclude RDClient.h from the C-API list? 2. how do we control the presentation so it lets you actually find the interfaces in the API? 3. why are there lots of not C-API files in resource/csdk? === Note to 2: here's an organization that sort of works for me - the Apache Portable Runtime library, which presents a module-level view (I think we don't use modules, aka @defgroup and @addtogroup, at all): https://apr.apache.org/docs/apr/1.5/modules.html and then if you follow one of the threads: https://apr.apache.org/docs/apr/1.5/group__apr__thread__proc.html _______________________________________________ iotivity-dev mailing list iotivity-dev at lists.iotivity.org https://lists.iotivity.org/mailman/listinfo/iotivity-dev
