API documentation generated with Doxygen and Graphiz...

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

API documentation generated with Doxygen and Graphiz...

Gilles Caulier-4
Yesterday, by IRC, Adrien Nicolas Bernhardt, a new developper witch work on a new Image Editor plugin, ask me how to generate the digiKam API documentation.

On the web site the link to KDE web site where is auto-generated the API-DOC is completly out of date :

<a href="http://developer.kde.org/documentation/library/3.5-api/extragear-graphics-apidocs/digikam/digikam/html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://developer.kde.org/documentation/library/3.5-api/extragear-graphics-apidocs/digikam/digikam/html

Today, i have played with Doxygen with is used to generate API documentation. I have set Doxygen to use Graphiz and provide UML diagrams. You can see examples here :

<a href="http://digikam3rdparty.free.fr/API_DOC/html/classDigikam_1_1DImg.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://digikam3rdparty.free.fr/API_DOC/html/classDigikam_1_1DImg.html

<a href="http://digikam3rdparty.free.fr/API_DOC/html/inherits.html" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://digikam3rdparty.free.fr/API_DOC/html/inherits.html

Not all diagrams are generated, because it take a while. Just to generate this documentation, my Double core PIV 1.6 Ghz have take around 90 mns...

The doxygen config file is on "project" sub-folder from svn. Just go to this forder and run doxygen as well... and take a coffee (:=)))

You can set more UML diagrams with Kdevelop witch have a config GUI for Doxygen. Just go to "Project/Project Options" menu entry and select "Doxgen" tag on the left. All advanced diagrams settings are in "Dot" tab from the top of config dialog...

Few days ago, Brian Remedios have posted a messages about UML diagrams generated with a proprietary program. I think than Doxygen + Graphiz are enough here, especially to forget proprietary programs to do it in opensource project (:=)))

I hope than it can help future contributors...

Gilles

_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel