Questions tagged [doxygen]

Doxygen is a multilanguage documentation generation application for C++, C, Java, Objective-C, Python, IDL, Fortran, VHDL, PHP and C# that supports a wide variety of output formats including RTF, HTML, XML and PDF.

Doxygen is a documentation generation application written by Dimitri van Heesch that supports a wide variety of output formats including RTF, HTML, XML and PDF. It supports code in C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors), Fortran, VHDL, PHP, C#, and to some extent D. It is available for Linux, MacOS and Windows. The application is licenced under the GNU General Public License.

Features of Doxygen

  • Generate documentation in various formats including HTML, XML, LaTex, Man Pages, RTF and PDF.
  • Finegrained configuration possibilities to decide what parts of the code is included in the documentation.
  • Extract the code structure from documented or undocumented source files.
  • A number of different diagrams such as dependency graphs, inheritance diagrams and collaboration diagrams can be generated.
  • Additional documentation pages such as overview, howtos etc. can be included in the documentation structure.
  • Tight integration with the .dot graphic tool enables quick graphing utilities for state diagrams etc.

See Also

3108 questions
15
votes
2 answers

Grouping overloads in doxygen

In my library I have a lot of function overloads of the form: /// \brief Does thing. /// /// \details The thing that is done is very special. template void do_stuff(const T& t); /// \brief Does thing repeatedly. /// \copydetails…
pmr
  • 58,701
  • 10
  • 113
  • 156
15
votes
3 answers

Separate "internal" from "external" documentation in doxygen

I want to document a library with doxygen. The documentation will be read by two classes of people: Users, which are only interested in the external API and developers which want to see documentation for all functions/structures. I would like to use…
timos
  • 2,637
  • 18
  • 21
14
votes
1 answer

Does there exist a "wiki" for editing doxygen comments?

I'm working on a fairly big open source RTS game engine (Spring). I recently added a bunch of new C++ functions callable by Lua, and am wondering how to best document them, and at the same time also stimulate people to write/update documentation for…
Tobi
  • 78,067
  • 5
  • 32
  • 37
14
votes
1 answer

doxygen function parameter documentation (//!< vs @param)

If I use "after the member" documentation for function parameters, for example, use //!< after each parameter, instead of @param in the header, the "Parameters" section is always placed after "Return" in the generated output file. Is is possible to…
user313031
  • 261
  • 1
  • 3
  • 5
14
votes
2 answers

Visual Studio: Syntax highlighting for Doxygen-style C++ comments

I want enchanted syntax coloring in comments for C++ language in Visual Studio 2010. For example, I have the following code: /*! \sa testMeToo() \param a the first argument. \param s the second argument. */ int testMe(int a,const…
Jarlaxle
  • 871
  • 10
  • 18
14
votes
1 answer

How to make docset on Linux?

I use Zeal to lookup API documentation on Linux. It requires files to be in the Apple docset format. I have C++ code for which I can generate documentation using Doxygen. Doxygen can build a docset, but it requires the docsetutil program, which is…
Ashwin Nanjappa
  • 76,204
  • 83
  • 211
  • 292
14
votes
1 answer

Doxygen: How to embed images on main page for all output formats?

I am using Doxygen 1.8.6 on Ubuntu 14.04 to generate API documentation from C/C++ header files. I have a main page in markdown format (file mainpage.md) and want to embed an image (file logo.png) into that page. Currently, I have that working for…
Andreas Maier
  • 2,724
  • 1
  • 26
  • 30
14
votes
2 answers

"using namespace" for Doxygen comments

All classes of my library are defined within a namespace. When I create a mainpage for Doxygen I have to explicitly use this namespace within comments to make Doxygen generate links. I would like to use something like "using namespace" for the whole…
Stephan
  • 305
  • 2
  • 8
14
votes
1 answer

Javadoc documentation render in place. Can one see pretty-print documentation in IDE?

Is there a plugin to Eclipse (or Visual Studio) which renders javadoc (or doxygen) in place, i.e. there is a pretty print in code instead of displaying javadoc source as comment? By default it is possible just to fold method body. It could be…
user2622016
  • 6,060
  • 3
  • 32
  • 53
14
votes
1 answer

Excluding specific headers from dependency graphs

I am not sure whether this is to be a doxygen or a dot question, but here goes. In my project I have many files that need to include common headers such stdlib.h, stdint.h, and so on. When I ask doxygen to generate the dependency graphs for each of…
Thomas
  • 3,321
  • 1
  • 21
  • 44
14
votes
1 answer

Suppress doxygen warning for undocumented member function, but leave synopsis in place

I'm looking for a way to suppress doxygen warnings about undocumented member functions, but without using //! @cond and //! @endcond, so the member functions still appear in the synopsis of the class. Something like the following: class…
Michi Henning
  • 198
  • 1
  • 7
14
votes
2 answers

How to associate non-member functions with a class in Doxygen?

I'm sure there's some way to do this with the \defgroup, \addgroup and \@{ \@} tags, but after a couple of hours of trial and (obviously) error, I'm asking SO..... I have: class C { public: void foo () const; }; and I have some helper…
Eric H.
  • 2,566
  • 2
  • 23
  • 34
14
votes
3 answers

How can Doxygen exclude a C++ class?

I want to exclude a class from documentation in Doxygen. Usually these classes are in files named the same, but there are many times when they are included inside other class definitions. This is mainly for classes starting with "_" or…
Kristopher Ives
  • 281
  • 1
  • 2
  • 7
14
votes
2 answers

Generating Doxygen for C# projects with generic collections

I am using Doxygen and GraphViz Dot to generate some collaboration diagrams for a C# project. The problem is generic collections (like List<>) are not recognised by Doxygen. Does anyone have a solution to this? I found this comment that doesn't…
Bradley Marques
  • 502
  • 3
  • 22
13
votes
2 answers

Doxygen: Documenting overloaded functions

In case I have my documentation separate from my code, how do I help Doxygen distinguish between overloaded functions (what to use in the \fn field)? A single function would be documented like this: void func() { } /** \fn func \details…
Paul Manta
  • 30,618
  • 31
  • 128
  • 208