====== 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