Difference between revisions of "Doxygen"

From PaparazziUAV
Jump to navigation Jump to search
(add info on doxygen backport for precise and make dox)
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
[http://www.doxygen.org Doxygen] is a documentation system that also extracts information from the source files directly.
[http://www.doxygen.org Doxygen] is a documentation system that also extracts information from the source files directly.


'''Daily generated docs for the development and stable branches can be found on [http://paparazzi.github.io/docs paparazzi.github.io/docs].'''
'''Daily generated docs for the development and stable branches can be found on [http://docs.paparazziuav.org docs.paparazziuav.org].'''


== Generating Doxygen Code Documentation yourself ==
== Generating Doxygen Code Documentation yourself ==
Line 31: Line 31:
== Doxygen Style ==
== Doxygen Style ==


The [http://paparazzi.github.com/docs/latest/styledoxygen.html Paparazzi Doxygen style guide] is of course written in doxygen as well ;-)
The [http://docs.paparazziuav.org/latest/styledoxygen.html Paparazzi Doxygen style guide] is of course written in doxygen as well ;-)


Please [http://www.stack.nl/~dimitri/doxygen/docblocks.html document the code using doxygen comments] instead of normal comments where appropriate.
Please [http://www.stack.nl/~dimitri/doxygen/docblocks.html document the code using doxygen comments] instead of normal comments where appropriate.

Latest revision as of 09:52, 22 November 2013

Doxygen is a documentation system that also extracts information from the source files directly.

Daily generated docs for the development and stable branches can be found on docs.paparazziuav.org.

Generating Doxygen Code Documentation yourself

A way to look at the includes and dependencies is to use the graphs generated with doxygen. After installing Paparazzi, install Doxygen:

For Ubuntu precise a backport of doxygen_1.8.4 is available in the ppa:flixr/backports:

sudo add-apt-repository ppa:flixr/backports
sudo apt-get update
sudo apt-get install doxygen graphviz

run the documentation generation from the paparazzi/ directory (will generate module descriptions and run doxygen):

make dox

Prior to paparazzi_version v5.1_devel-234-gb1eb25e run doxygen manually from the paparazzi/ directory:

doxygen

Now Doxygen will have generated html documentation (open this with any web browser) in your paparazzi/docs/generated/html folder.

The main documentation page is:

paparazzi/doc/generated/html/index.html

This is a sample of a Doxygen Graph: Include dependency graph for autopilot.h

Doxygen Style

The Paparazzi Doxygen style guide is of course written in doxygen as well ;-)

Please document the code using doxygen comments instead of normal comments where appropriate.

See the Doxygen Manual for more details.

File

/**
 * @file subsystems/nav.h
 * Navigation library.
 *
 * This collection of macros and functions is used by the C code generated
 * from the XML flight plan.
 */

Function

/**
 * A brief one line description.
 *
 * Detailed description
 * May span multiple lines or paragraphs as needed
 *
 * @param  Description of method's or function's input parameter
 * @param  ...
 * @return Description of the return value
 */
int function(int parameter)
{
    printf("Parameter: %d", parameter);

    return 0;
}