Documentation of classes and methods

Documentation for all classes, methods, and members is generated automatically by the industry-standard Doxygen library.

Before trying to make changes to the application, we recommend reading through this wiki first. Once you've done that, the Doxygen documentation will provide much more detailed information on how the GUI works.

Installing Doxygen

If you want to view the developer documentation, you'll have to install Doxygen.

  • On Ubuntu and related Linux distros, you can use `sudo apt-get install doxygen` (note that graphviz may be a dependency)
  • On Mac OS X, we recommend using MacPorts, e.g. `sudo port install doxygen`
  • On Windows, download and run the installer from the Doxygen download page.

Using Doxygen

Once you have Doxygen installed, usage could not be simpler. In a terminal with your current directory set to `GUI/Source`, make a directory called `Docs`. Then, simply type `doxygen Doxyfile` at the prompt. This will pull all documentation comments from the header files and convert them to HTML. The docs can be viewed by opening the `GUI/Source/Docs/html/index.html` file in a web browser.

Each header file has a section after the "includes" that looks like this (note the two asterisks after the first slash):

Brief description of class goes here.
Longer description of class goes here.
@see AnotherClass, YetAnotherClass

Doxygen will convert this into the class description. Explanations of each method appear immediately before that method is declared, and look something like this:

/** This is what this method does in brief.
More details about the method's behavior.

Once again, these are automatically discovered by Doxygen and pulled into the documentation.

Configuring Doxygen

All the configuration information is contained in the Doxyfile. The extensive comments in the Doxyfile explain what each of the options does.

You may also want to update DoxygenMainPage.h, which determines the content of the index page of the documentation.