Difference between revisions of "Doxygen"

From PaparazziUAV
Jump to navigation Jump to search
 
Line 11: Line 11:
=== File ===
=== File ===


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


=== Function ===
=== Function ===
  /**
  /**
   * \brief <A short one line description>
   * A brief one line description.
   *
   *
   * <Longer description>
   * Detailed description
   * <May span multiple lines or paragraphs as needed>
   * May span multiple lines or paragraphs as needed
   *
   *
   * \param  Description of method's or function's input parameter
   * @param  Description of method's or function's input parameter
   * \param  ...
   * @param  ...
   * \return Description of the return value
   * @return Description of the return value
   */
   */
  int function(int parameter)
  int function(int parameter)
Line 50: Line 51:


To look at a list of all of the files used by the airborne software:
To look at a list of all of the files used by the airborne software:
  paparazzi/html/docs/files.html
  paparazzi/doc/html/docs/files.html
The main_ap.c will also interest you.
The main_ap.c will also interest you.
  paparazzi/html/docs/main__ap_8c.html
  paparazzi/doc/html/docs/main__ap_8c.html


This is a sample of a Doxygen Graph:
This is a sample of a Doxygen Graph:

Revision as of 12:04, 19 January 2012

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

Current documentation generated from the master branch can be found under paparazzi.github.com/docs.

Doxygen Comments

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;
}


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:

sudo apt-get install doxygen graphviz

run the generation tool from the paparazzi/ directory:

doxygen

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

To look at a list of all of the files used by the airborne software:

paparazzi/doc/html/docs/files.html

The main_ap.c will also interest you.

paparazzi/doc/html/docs/main__ap_8c.html

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