2. Documenting source code with Doxygen
Doxygen, like Sphinx, is a tool for automatically generating documentation. Doxygen extracts information from specially-formatted comments within the code. When used for analysis, Doxygen uses its parse tree to generate diagrams and charts of the code structure. Doxygen can cross reference documentation and code, so that the reader of a document can easily refer to the actual code.
Programming languages supported by Doxygen include C, C++, C#, D, Fortran, IDL, Java, Objective-C Perl, PHP, Python, and VHDL. Other languages can be supported with additional code.