Difference between revisions of "Doxygen"

From PaparazziUAV
Jump to navigation Jump to search
(update docs url)
 
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;
}