====== Doxygen ======
* slouží ke generování programátorské dokumentace.
* skládá se z
* doxygen - konzolová aplikace
* doxywizard - GUI frontend pro doxygen
* generování dokumentace se řídí konfiguračním souborem
==== Instalace ====
* nainstalování binárek
apt-get install doxygen doxygen-gui
* spuštění průvodce (GUI)
doxywizard
* nebo vygenerovat konfigurační soubor ručně
doxygen -g mydoxy.cfg
==== Základní úprava konfiguračního souboru ====
* nastavit základní info o projektu
PROJECT_NAME = "My Proj"
PROJECT_NUMBER = "1.0"
* nastavit výstupní adresář
OUTPUT_DIRECTORY = "doc"
* nastavit cestu ke zdrojovým souborům
INPUT = "src"
* vybrat si výstupní formát HTML, tex, xml, ...
==== Doxygen komentáře zdrojových kódů ====
* aby se vygenerovala dokumentace k souboru, musí obsahovat doxygen hlavičku (nebo v cfg zapnout volbu extractall0
* komentáře na které má doxygen reagovat se identifikují pomocí:
* %%/**%% - víceřádkový, JavaDoc styl
* %%/*!%% - víceřádkový, Qt styl
* %%///%% - jednořádkový
* %%//!%% - jednořádkový
=== Hlavička ===
* na začátku zdrojáku lze specifikovat uvnitř komentáře následující klíčové slova
* (lze psát \slovo (doporučeno vedoucím DP) i @slovo používané v javě)
* @file - identifikuje, že se jedná o komentář k celému souboru
* @brief - krátký popis
* @date
* @note
* @author
/*!
* \file asusutility.c
* \brief Asus infosvr daemon tester
* \author Jan Bariencik <143248@mail.muni.cz>
* \date 2010
* \note tested on: Asus WL-500gP V2 (3.0.3.5)
*
* Utility for demonstratig infosvr daemon vulnerability running on
* Asus wireless router.
*/
=== Funkce ===
* @brief Description of the function
* @brief directive, leave a blank line and add a detailed description of what the function does. Also add the following optional
* @param[in] parameter Description of parameter constraints etc.
* @return Description of the return value.
* @todo Description of something to be done to improve the code.
/*!
* \brief receive and process packet until expected type get
* \param con connection context
* \param type expected type
*/
void
recvfromPKG(conn_pkg_t * con, int type)
=== Proměnné a struktury ===
==== Main page ====
* kromě automaticky generované dokumentace podporuje doxygen i extra dokumentaci přes .dox soubory