CND69Doxygen

(Difference between revisions)
(User View)
(User View)
Line 59: Line 59:
#
#
-
===Typical Workflow"
+
===Typical Workflow===
# User adds Doxygen commands to source files
# User adds Doxygen commands to source files
# He modifies the Doxygen project properties to suit he needs
# He modifies the Doxygen project properties to suit he needs

Revision as of 01:12, 16 January 2010

Contents

CND 69 Doxygen

Doxygen is a tool to convert your C++ comments into publishable HTML. It works by extracting commentary directly from the source with the help of a special Doxygen syntax.

Team

  • Dev: Thomas Preisler
  • Lead: Vladimir Voskresensky

Overview

  1. Support Doxygen at a similar level as Javadoc is supported by Java projects.
  2. Implement as plugin module using only public project SPIs/APIs.
  3. User builds and installs Doxygen application seperately. Doxygen is not distributed with NetBeans/CND.
  4. Integrate Doxygen with C/C++ managed projects in a similar fashion Javadoc is integrated with Java projects supporting project properties and a run action to generate the documentation files.
  5. No direct support for Doxygen for unmanaged projects
  6. Test and verify with Doxygen 1.6.2 available here http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc


Questions:

  1. Is 2) possible?

User View

Project Logical View

No changes.

Project Physical View

Default output to project dist folder

Project
  dist
    Debug
      GNU-MacOS
        doxygen
          html
          man
          richtext
          xml
          latex

Make Target

Makefiles will have a new make target called doxygen so the Doxygen files can be generated from the command line.

Actions

Managed projects will be have a new action called Generate Doxygen. It will run doxygen on the project files with the specified parameter and generate the output files in the "dist" folder.


Questions:

  1. ...

Project Properties

Many aspects of the generated doxygen files can be controlled by a set of configuration specific project properties. No details yet, but a good start is the settings from the Doxygen GUI frontend MacOS wizard from below. Not all properties are neccessary. Things like file suffixes are controlled by other properties. Here is a list of some of the more important ones:

Project Name
Project Version
Output Directory
Output (HTML, LaTeX, Man, Rich Text, XML)
Diagrams

Perhaps also a catch-all blank text field to specify any doxygen option similar to the Add Additional Options compilers and linker have. It is TBD exactly which properties will be directly supported by the GUI.

Questions:

Typical Workflow

  1. User adds Doxygen commands to source files
  2. He modifies the Doxygen project properties to suit he needs
  3. He runs the "Generate Doxygen" action from the project context menu
  4. He picks up the documentation in dist/.../doxygen

Doxygen GUI frontend (Mac)

File:doxygen1.jpg File:doxygen2.jpg File:doxygen3.jpg File:doxygen4.jpg File:doxygen5.jpg File:doxygen6.jpg

Resources

IZ:

https://netbeans.org/bugzilla/show_bug.cgi?id=178882

Tutorial:

http://www.stack.nl/~dimitri/doxygen/starting.html

http://www-scf.usc.edu/~peterchd/doxygen/

http://class.ee.iastate.edu/cpre288/lectures_files/Doxygen%20Tutorial.pdf

Project:

http://sourceforge.net/projects/doxygen/

http://www.doxygen.org

http://www.stack.nl/~dimitri/doxygen/

Latest sources:

http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc

Schedule

Milestone Date Content
1 1/18/10 User View Ready
2 NB 6.9 M1 Release 2/24/10
3 3/05/10 Feature useful
4 NB 6.9 Feature Freeze 3/08/10 Feature complete
5 NB 6.9 Code Freeze 4/16/10 Done, all P1/2 bugs fixed.
Not logged in. Log in, Register

By use of this website, you agree to the NetBeans Policies and Terms of Use. © 2012, Oracle Corporation and/or its affiliates. Sponsored by Oracle logo