Doxygen is a utility that extracts documentation from source files. It can generate HTML output and/or PDF output as well as a few other types. In addition to basic information gathered from non-comment portions of the source files (i.e. Function names, parameters, etc.), it attempts to pick up comments and place them in the documentation where appropriate. Doxygen is a tool that can generate project documentation in html, pdf or Latex from code comments formatted with Doxygen markup syntax. The generated documentation makes easier to navigate and understand the code as it may contain all public functions, classes, namespaces, enumerations, side notes and code examples. PDF output destination. Did you ever search for the PDF file, doxygen (or better the Makefile in latex) generates? I just added an option to doxygen, copying the refman.pdf to a location of your choice. (Hopefully it soon get’s merged and released). If you want to test it out?
- 2Installing Doxygen and helpers
Introduction
Doxygen is a utility that extracts documentation from source files. It can generate HTML output and/or PDF output as well as a few other types. In addition to basic information gathered from non-comment portions of the source files (i.e. function names, parameters, etc.), it attempts to pick up comments and place them in the documentation where appropriate. Additionally it recognizes a special format of comment in order to give a great deal of control over the generated documentation.
Installing Doxygen and helpers
In addition to Doxygen itself, you may want to install GraphViz because Doxygen can use its graph generator tool (dot) to include some nice dependency graphs in the output. You can skip installation of GraphViz, but you won't get the nice graphs.
Doxygen Generate Pdf Output
To generate PDF output from Doxygen, install the tetex package.
![Output Output](/uploads/1/1/8/2/118217905/824654584.png)
Debian Linux
If you're on a Debian Linux, you can install Doxygen and the dot graph generator (that Doxygen uses) like this:
Mac OS X MacPorts
If you're using Mac OS X and MacPorts, you can install Doxygen and the dot graph generator (that Doxygen uses) like this:
Cygwin / Windows
For Cygwin, run the Cygwin installer and install both Doxygen and GraphViz.
Running Doxygen
The Doxygen manual covers running Doxygen in some detail. Doxygen gets all of its configuration information from a config file,which has a seemingly endless list of options. For example, if you want to run Doxygen on only a couple of files (such as the ones you're editing -- to see if you got the Doxygen-specific comments right), you have to edit the configuration file before you run Doxygen.
WARNING: running Doxygen on a lot of files can take quite a while. This can be a very annoyingly large amount of time depending on how you've configured it and how many files are involved. It almost seems like the time to run goes up exponentially as the number of files being processed increases.
Using Doxygen
Doxygen manuals:
Source code comments
Everyone new to Doxygen should look at the Documenting the code section of the Doxygen manual. It explains the formatting of the special Doxygen comments and gives several examples.
The Linden Lab coding standard specifies using Doxygen comments in code.
Retrieved from 'https://wiki.secondlife.com/w/index.php?title=Using_Doxygen&oldid=309532'
Developer(s) | Dimitri van Heesch |
---|---|
Initial release | 26 October 1997; 23 years ago[1] |
Stable release | |
Repository | |
Written in | C++ |
Operating system | Cross-platform |
Type | Documentation generator |
License | GNU GPLv2 |
Website | www.doxygen.nl |
Doxygen (/ˈdɒksidʒən/DOK-see-jən)[3] is a documentation generator,[4][5][6][7] a tool for writing software reference documentation. The documentation is written within code, and is thus relatively easy to keep up to date. Doxygen can cross reference documentation and code, so that the reader of a document can easily refer to the actual code.
Doxygen is free software, released under the terms of the GNU General Public License version2 (GPLv2).
Design[edit]
Like Javadoc, Doxygen extracts documentation from source file comments. In addition to the Javadoc syntax, Doxygen supports the documentation tags used in the Qt toolkit and can generate output in HyperText Markup Language (HTML) as well as in Microsoft Compiled HTML Help (CHM), Rich Text Format (RTF), Portable Document Format (PDF), LaTeX, PostScript or man pages.
Uses[edit]
Programming languages supported by Doxygen include C,[8]C++, C#, D, Fortran, IDL, Java, Objective-C,[9]Perl,[10]PHP,[11]Python,[12][13] and VHDL.[14] Other languages can be supported with additional code.
Doxygen runs on most Unix-like systems, macOS, and Windows.
The first version of Doxygen borrowed code from an early version of DOC++, developed by Roland Wunderling and Malte Zöckler at Zuse Institute Berlin. Later, the Doxygen code was rewritten by Dimitri van Heesch.
Doxygen has built-in support to generate inheritance diagrams for C++ classes. For more advanced diagrams and graphs, Doxygen can use the 'dot' tool from Graphviz.[15]
Example code[edit]
The generic syntax of documentation comments is to start a comment with an extra asterisk after the leading comment delimiter '/*':
Many programmers like to mark the start of each line with space-asterisk-space, as follows, but that is not necessary.
Many programmers avoid using C-style comments and instead use C++ style single line comments. Doxygen accepts comments with additional slash as Doxygen comments.
The following illustrates how a C++ source file can be documented.
A screenshot of what the output would look like in HTML
Doxygen Image
An alternative approach for documenting parameters is shown below. It will produce the same documentation.
Richer markup is also possible. For instance, add equations using LaTeX commands:
Doxygen source and development[edit]
The Doxygen sources are currently hosted at GitHub, where the main developer, Dimitri van Heesch, contributes under the user name 'doxygen'.[16] Doxygen is written in C++, and comprises over 300,000 source lines of code. For lexical analysis, the standard tool Lex (or its replacement Flex) is run on over 35,000 lines of lex script. The parsing tool Yacc (or its replacement Bison) is also used, but only for minor tasks; the bulk of language parsing is done by native C++ code. The build process is based on CMake and also involves some Python scripts.
See also[edit]
References[edit]
Doxygen Pdf Output
- ^ANNOUNCE: doxygen 0.1Archived October 4, 2011, at the Wayback Machine, Announcing: the first release of Doxygen, a C++ documentation system. , From: Dimitri van Heesch, Date: Sun, 26 Oct 1997, Qt-interest Archive
- ^http://www.doxygen.nl/manual/changelog.html
- ^FAQ: How did doxygen get its name?
- ^Perkel, Jeffrey M. (2015-11-22). 'Get With the Program: DIY tips for adding coding to your analysis arsenal'. The Scientist (Journal). The Scientist.
- ^Sabin, Mihaela (2015-11-22). 'Doxygen'. OpenComputing (Wiki). University of New Hampshire. Archived from the original on 2015-11-23.
- ^'Doxygen'. Free Software Directory (Wiki). 2015-11-22.
- ^'Documentation'. Rosetta Code (Wiki). 2015-11-22.
- ^'Documentation: C'. Rosetta Code (Wiki). 2015-11-22.
- ^'Documentation: Objective-C'. Rosetta Code (Wiki). 2015-11-22.
- ^http://search.cpan.org/perldoc?Doxygen%3A%3AFilter%3A%3APerl
- ^http://www.doxygen.nl/manual/starting.html
- ^'Automatic Python API documentation generation tools'. python.org wiki (Wiki). 2015-11-22.
- ^https://pypi.python.org/pypi/doxypypy/
- ^http://www.doxygen.nl/manual/starting.html
- ^http://www.doxygen.nl/manual/diagrams.html
- ^https://github.com/doxygen/doxygen
External links[edit]
- Official website
How To Combine Pdfs Without Acrobat
Retrieved from 'https://en.wikipedia.org/w/index.php?title=Doxygen&oldid=1000066172'