Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Function list on main page with doxygen

I'm sure this has already been asked somewhere but I can't seem to find it, so here it goes.

I am creating a program in C and using Doxygen to generate documentation. I am quite satisfied with the results, however the main page has no content. I would like to fill the main page with a list of all functions and structures used in the program in alphabetical order.

I do not know much about Doxygen, beyond the simple tutorial that I have used to get this far. It seems like a task that Doxygen would be able to do, but so far all I have found is instructions on how to create a custom main page.

Is it possible to use Doxygen to automatically generate a list of functions and structures on the main page?

like image 953
ZeroKelvinKeyboard Avatar asked Jun 04 '15 06:06

ZeroKelvinKeyboard


1 Answers

Doxygen doesn't really offer a lot from the configuration point of view. You can use, together with Doxygen and doxyrest, a tool called Sphinx.

Basically, you'll be able to generate XML using Doxygen. Doxyrest is going to convert the XML output into .rst files, while Sphinx will work with the final result (it only handles .rst, that's why you'll need to use an intermediate tool like doxyrest).

Sphinx is going to generate beautiful HTML pages that are easy to read and, more important, to configure.

Information on how to combine these three tools and use them together can be found on this page: https://vovkos.github.io/doxyrest/manual/basic.html

A solution to your problem would be to group your functions using the \addtogroup Doxygen command (add all functions to the same group), and then, using Sphinx, select the newly created group page to be your index/landing page. This can be done by editing some lines in Sphinx's conf.py.

like image 96
Mario Mateaș Avatar answered Oct 09 '22 12:10

Mario Mateaș