Doxygen - Manuel. Table des matières. Karine Zampieri, Stéphane Rivière, Béatrice Amerein-Soltner. Unisciel algoprog Version 19 septembre 2016

Documents pareils
LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Généralités. javadoc. Format des commentaires. Format des commentaires. Caractères spéciaux. Insérer du code

Tutoriel code::blocks

Introduction à Eclipse

Magento. Magento. Réussir son site e-commerce. Réussir son site e-commerce BLANCHARD. Préface de Sébastien L e p e r s

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

BIRT (Business Intelligence and Reporting Tools)

Formation : WEbMaster

Création d un fichier html depuis PowerPoint dimanche 11 mai 2008

wxwidgets dans un environnement Microsoft Windows

INTRODUCTION AU CMS MODX

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Un logiciel pour aller plus loin dans la gestion de vos espaces. Mémo technique

2 LES BASES DU HTML 19 Qu est-ce que le HTML? 20 De quand date le HTML? 20 Écrire son propre code HTML 22

Gestion Electronique de Document (ECM/GED)

VAMT 2.0. Activation de Windows 7 en collège

Guide d installation de MySQL

Censio Tutorial Sharepoint Cloud Connector exporter les données d un fichier plat dans Sharepoint Online. Version 1.

Introduction aux concepts d ez Publish

Manuel d utilisation du module Liste de cadeaux PRO par Alize Web

Sage 100 CRM - Guide de la Fusion Avancée Version 8. Mise à jour : 2015 version 8

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

Environnements de développement (intégrés)

ECLIPSE ET PDT (Php development tools)

EndNote Web. Quick Reference Card THOMSON SCIENTIFIC

Procédure d installation d AMESim 4.3.0

INSTALLATION DE WINDOWS 2000 SERVER POUR BCDI3. par. G.Haberer, A.Peuch, P.Saadé

Eclipse atelier Java

Introduction à Expression Web 2

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Création de maquette web

Connexions à un projet CVS via Eclipse en accès local et distant. 15 Mai 2007

Bureautique Initiation Excel-Powerpoint

COURS 5 Mettre son site en ligne! Exporter son site avec WordPress Duplicator Installer un logiciel FTP Faire le suivi des visites de son site avec

Once the installation is complete, you can delete the temporary Zip files..

MANUEL D UTILISATION ORBITVU EDITOR V.3

Vous pouvez à présent à reconfigurer votre messagerie en cliquant ici.

Installation d'un TSE (Terminal Serveur Edition)

FORMATION / CREATION DE SITE WEB / 4 JOURNEES Sessions Octobre 2006

WordPress Référencement naturel (SEO) Optimiser. son référencement. Daniel Roch. Préface d Olivier Andrieu

Validation de la création des groupes ABM et ajout de l utilisateur SASDEMO

Module pour la solution e-commerce Magento

Guide d installation de SugarCRM Open Source version 4.5.1

Imprimantes et partage réseau sous Samba avec authentification Active Directory

SUGARCRM Sugar Open Source Guide d Installation de French SugarCRM Open Source Version 4.2

Studio. HERITIER Emmanuelle PERSYN Elodie. SCHMUTZ Amandine SCHWEITZER Guillaume

Economies d énergie par GPO

KWISATZ_TUTO_module_magento novembre 2012 KWISATZ MODULE MAGENTO

creer votre site internet en html/css

TD/TP 1 Introduction au SDK d Android

Uniformiser la mise en forme du document. Accélère les mises à jour. Permets de générer des tables de matières automatiquement.

Calcul Scientifique avec 3

26 Centre de Sécurité et de

Guide de réalisation d une campagne marketing

Prise en main rapide

WEB page builder and server for SCADA applications usable from a WEB navigator

.. CSS. Damien Nouvel. Damien Nouvel (Inalco) CSS 1 / 15

HMTL. Exemple de fichier HTML. Structure d un document HTML. Exemple de fichier HTML. Balises HTML. IFT1147 Programmation Serveur Web avec PHP

Planifier les rapports d

Formation Webmaster : Création de site Web Initiation + Approfondissement

INFORMATIONS ET INSTALLATION DU THEME CENATA RESPONSIVE

INCORPORER EXCEL EN LIGNE DANS UN FICHIER CRÉÉ AVEC L ÉDITEUR DE TEXTE 15 avril 2015

Sommaire : Pourquoi créer un site web? Qu est-ce qu un site Web? Les différents types de sites. Quelles solutions peuvent être employées?

Inscription de votre site sur Google Configuration du sitemap et de Webmaster Tools pour PrestaBox

Bernard Lecomte. Débuter avec HTML

MANUEL D INSTALLATION DES PRE REQUIS TECHNIQUES SALLE DES MARCHES V.7

Optimiser moteur recherche

LES GRANDES ETAPES DE CREATION D UN WEB DESIGN

Mode d Emploi. Résult Arc Logiciel de Gestion de Compétitions. Droits d utilisation Informations Générales. 1/. Présentation de Résult Arc

QCM Corrigé. Damien Palacio 1/5

Quelques outils pour le logiciel «Tuxpaint»

2 S I M 1 P H O N E G U I D E U T I L I S A T E U R. Guide d utilisation E-commerce / Prestashop

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Tutoriel sur Retina Network Security Scanner

WysiUpStudio. CMS professionnel. pour la création et la maintenance évolutive de sites et applications Internet V. 6.x

Guide d installation de L A TEX

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

La base de données XML exist. A. Belaïd

Module.NET 3 Les Assemblys.NET

mon site web via WordPress

Dans l Unité 3, nous avons parlé de la

FileMaker Server 11. Publication Web personnalisée avec XML et XSLT

Comment faire un Mailing A partir d une feuille Calc

Ingénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau

REQUEA. v PD 20 mars Mouvements d arrivée / départ de personnels Description produit

TIC. Réseau informatique. Historique - 1. Historique - 2. TC - IUT Montpellier Internet et le Web

Approche Contract First

MANUEL WORDPRESS. Objectif: Refonte d un site web sous Wordpress I PRE-REQUIS: 1 / Créer un backup (sauvegarde) du site:

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

pas à pas prise en main du logiciel Le Cloud d Orange - Transfert de fichiers sur PC et MAC Le Cloud

SARL DDLX Multimédia Place du général de Gaule Boisseron Tèl : support@ddlx.org. Agence Web. Design Prestashop personnalisé

Apprendre Java et C++ avec NetBeans

Logiciel : GLPI Version : SYNCRHONISATION DE GLPI AVEC ACTIVE DIRECTORY. Auteur : Claude SANTERO Config. : Windows 2003.

MODE D EMPLOI WORDPRESS

Gestion des références bibliographiques. Comment simplifier la gestion des références bibliographiques?

as Architecture des Systèmes d Information

Fiche aide pour votre messagerie Outlook, thunderbird, Gmail

HTML. Notions générales

Transcription:

Doxygen - Manuel Karine Zampieri, Stéphane Rivière, Béatrice Amerein-Soltner Unisciel algoprog Version 19 septembre 2016 Table des matières 1 Doxygen 3 2 Configuration Wizard 4 2.1 Onglet Project................................ 4 2.2 Onglet Mode................................. 5 2.3 Onglet Output................................ 6 2.4 Onglet Diagrams............................... 7 3 Analyse 9 4 Rendu HTML 10 4.1 Rendu HTML code source......................... 11 4.2 Rendu HTML index des entités...................... 12 4.3 Rendu HTML diagrammes......................... 13 5 Tags de documentation 14 5.1 Formats de documentation.......................... 14 5.2 Syntaxes des commandes........................... 15 5.3 Quelques commandes............................. 15 6 Configuration Expert 17 6.1 Onglet Expert>Project............................ 17 6.2 Onglet Expert>Build............................. 17 6.3 Onglet Expert>HTML............................ 17 6.4 Onglet Expert>Dot.............................. 18 1

Unisciel algoprog doxygen-manuel, September 19, 2016 2 Introduction Ce document présente les principales fonctionnalités de l outil de documentation Doxygen. Il est plus puissant que javadoc par l export natif dans de nombreux formats et la génération de diagrammes. Remarque Pour plus d informations sur les paramètres de configuration et les tags spécifiques de Doxygen, rendez-vous sur la documentation officielle.

Unisciel algoprog doxygen-manuel, September 19, 2016 3 1 Doxygen Principales caractéristiques Doxygen est un générateur de documentation : Pour C++, C, Java, Python, VHDL, PHP, C# et autres. Site officiel http://www.doxygen.org Il permet des sorties HTML, Latex, RTF et XML. C est un logiciel OpenSource Licence GNU GPL. Il est disponible sous les plateformes Linux, Mac OS, Windows. Doxywizard Interface graphique (Graphical User Interface), elle permet de configurer Doxygen et de lancer l analyse des programmes sources pour en produire une documentation. Il existe deux modes de configuration : Wizard Configuration de base Expert Configuration avancée pour les experts

Unisciel algoprog doxygen-manuel, September 19, 2016 4 2 Configuration Wizard La configuration de base est constituée des onglets : Project Informations générales sur le projet Mode Mode d analyse Output Type de documentation à générer Diagrams Diagrammes à générer 2.1 Onglet Project Cet onglet défini le projet. Project Name Nom du projet logiciel Project version or id (facultatif) Numéro de version du logiciel Source code directory Localisation des sources Scan recursively Analyse récursive des sous-dossiers Destination directory Localisation de la documentation à générer

Unisciel algoprog doxygen-manuel, September 19, 2016 5 2.2 Onglet Mode Ce deuxième onglet détermine le détail du contenu. Documented entities only Choix d inclure seulement les entités (classe, méthode, fonction...) possédant des parties de documentation All entities Choix de référencer tout le code, y compris les parties private, static, etc. Include cross-referenced... Ajout de liens hypertextes entre toutes les entités liées Select programming language... Choix du langage des sources

Unisciel algoprog doxygen-manuel, September 19, 2016 6 2.3 Onglet Output Ce troisième onglet permet le choix du type de sortie de la documentation. Plusieurs formats sont supportés : HTML, LaTeX, Man pages (pages de manuels, Linux), RTF (Rich Text Format) ou XML. Format HTML Il permet plusieurs types de présentations : Plain HTML Documentation HTML sans frame With frames... HTML avec frame et arbres de navigation dans un menu Prepare for compresses HTML HTML compressé pour génération ultérieure en fichier d aide Windows With search function Inclusion d une zone de recherche (nécessite PHP)

Unisciel algoprog doxygen-manuel, September 19, 2016 7 2.4 Onglet Diagrams Ce dernier onglet permet le choix des graphiques. No diagrams Pas de diagramme Use build-in class... Diagrammes de classe générés par Doxygen Use dot tool from... Multitude de diagrammes (de classe, de collaboration, de dépendance, d appel...) générés par le programme externe GraphViz (voir la documentation Doxygen pour l installation)

Unisciel algoprog doxygen-manuel, September 19, 2016 8 Options GraphViz Le générateur crée un graphique : Class diagrams Pour les classes (et structures en C) Collaboration diagrams Les relations directes et indirectes de classes Include dependency graphs Dépendances entre les fichiers Included by... Dépendances entre chaque fichier et fichiers inclus Overall Class hierarchy Hiérarchie d une classe Call graphs Pour chaque fonction/procédure (appel direct ou indirect) (*). (*) Cette option n est utilisable que si vous cochez la case Include cross-reference... dans le deuxième onglet.

Unisciel algoprog doxygen-manuel, September 19, 2016 9 3 Analyse L analyse des codes sources : Se lance en cliquant sur le bouton Run doxygen (onglet Run). Le détail des opérations effectuées par Doxygen apparaît dans la zone de texte. Lorsque la génération de la documentation a été réalisée, Doxygen affiche : *** Doxygen has finished

Unisciel algoprog doxygen-manuel, September 19, 2016 10 4 Rendu HTML La documentation HTML produite par Doxygen se trouve dans le sous-répertoire html/ du répertoire de sortie spécifié dans la configuration. Il existe deux menus de navigation : Un à gauche dans une frame (option With frames...). Et un en haut. La documentation HTML des projets comporte les chapitres suivants : Main Page Page principale du projet avec son nom et le numéro de version Packages Liste des packages avec une courte description de chacun d eux Class Hierarchy Hiérarchie des classes Class List Liste alphabétique des classes et structures et interfaces avec une courte description File List Liste des fichiers avec une courte description et un lien vers leur code source colorisé et lignes numérotées Class Members Liste alphabétique des méthodes et variables du projet en correspondance avec leur classe

Unisciel algoprog doxygen-manuel, September 19, 2016 11 4.1 Rendu HTML code source Le code source des classes documentées est intégré à documentation. Des liens hypertextes sur chaque méthode, classe et attribut documenté pointe vers leur documentation respective. Les lignes de code sont numérotées et Doxygen intègre la coloration syntaxique. Exemple : Classe et structure Exemple : Méthodes et fonctions

Unisciel algoprog doxygen-manuel, September 19, 2016 12 4.2 Rendu HTML index des entités Le chapitre Class Members liste toutes les méthodes et attributs du projet par ordre alphabétique et par catégorie qui pointent vers leurs classes respectives. Exemple : Membres de fichier Exemple : Toutes les entités

Unisciel algoprog doxygen-manuel, September 19, 2016 13 4.3 Rendu HTML diagrammes La documentation de chaque classe est accompagnée d un diagramme d héritage et d interface. Chaque classe du diagramme comprend un lien hypertexte vers sa documentation. Exemple

Unisciel algoprog doxygen-manuel, September 19, 2016 14 5 Tags de documentation 5.1 Formats de documentation Diverses combinaisons sont possibles pour créer des blocs de documentation. Format Javadoc /**... texte... */ Format Qt /*!... texte... */ Format C/C++ /// ///... texte... /// Format C/C++ (bis) //! //!... texte... //!

Unisciel algoprog doxygen-manuel, September 19, 2016 15 5.2 Syntaxes des commandes Le bloc de documentation se met au début du programme ou avant une procédure ou fonction. Doxygen reconnaît le nom de la routine et génère sa documentation (nom, liens, etc.) Format Javadoc /** @commande */... code source... Format Latex /** \commande */... code source... 5.3 Quelques commandes Commandes de programme @file... @author... @date... @version... @todo... // fichier source ou d en-tête // les auteurs // la date // la version // Les A faire Ordre des balises Il n a que très peu d importance mais cela a un impact sur l ordre de génération du paragraphe et donc de l affichage.

Unisciel algoprog doxygen-manuel, September 19, 2016 16 Commandes de fonctions et procédures description... // description du bloc qui suit @brief... // courte description @param[in,out] nom -... // description du paramètre @return... // résultat d une fonction @pre... // préconditions @post... // postconditions @exception... // synonyme de throws @throws // exception @test... // descriptif du test @attention // les attentions @note // une note (= remarque) @bug // bug(s) description locale! @internal // pour documentation interne @see // voir @deprecated // deprécié Commandes de types @struct nom [header-file] @enum nom @union nom [header-file] @class nom [header-file] @namespace nom // description d une structure // énumération de constantes // description d une union // description d une classe // description d un espace de nom

Unisciel algoprog doxygen-manuel, September 19, 2016 17 6 Configuration Expert Cette section détaille quelques options pour peaufiner les réglages et la présentation générale de la documentation. 6.1 Onglet Expert>Project OUTPUT LANGUAGE Langue de génération (Par défaut l Anglais). USE WINDOWS ENCODING Permet de forcer l encodage des caractères par celui utilisé par Windows si la case est cochée, sinon c est un encodage de type Unix/- Linux qui est utilisé. BRIEF MEMBER DESC Permet d afficher ou non la description courte dans la liste des fonctions/énumérations/structures/classes/etc. liste qui se trouve en haut de page donc avant la partie détaillée de la documentation. REPEAT BRIEF Permet d afficher ou non la description courte dans la partie détaillée de la documentation. Cette option et la précédente sont conjointement liées car si vous désactivez ces deux options, la description courte sera quand même affichée dans la section détaillée de la documentation. DETAILS AT TOP Cochée, cette option affiche la description détaillée du fichier en haut de la page. 6.2 Onglet Expert>Build EXTRACT PRIVATE (C++ et autres langages orientés objet) Permet de faire afficher la documentation des fonctions/méthodes et autres membres ayant le qualificateur private. EXTRACT STATIC Permet de faire afficher la documentation des fonctions/structures/etc. ayant le qualificateur static. SORT MEMBER DOCS Cochée, cette option permet de trier les descriptions détaillées par ordre alphabétique. Sinon l ordre est celui de leur déclaration dans le code source. EXTRACT ALL Même effet que d activer l option All entities dans les options Wizard. 6.3 Onglet Expert>HTML HTML HEADER Personnalise l en-tête des documentations. HTML FOOTER Personnalise le pied des pages des documentations. HTML STYLESHEET Précise le fichier CSS (le design). HTML OUTPUT Redéfinit le nom du dossier de générations (par défaut html/). HTML FILE EXTENSION Type de l extension. DISABLE INDEX Permet de ne pas afficher l index en haut de chaque page HTML de la documentation.

Unisciel algoprog doxygen-manuel, September 19, 2016 18 6.4 Onglet Expert>Dot UML LOOK Permet de générer des diagrammes dans le style UML. DOT IMAGE FORMAT Permet de choisir le format d images (png, jpg, gif). DOT PATH Chemin du logiciel GraphViz (par défaut, référencé dans la variable PATH). MAX DOT GRAPH WIDTH Permet de changer la largeur/régler maximale d un graphe. MAX DOT GRAPH HEIGHT La hauteur maximale d un graphe. MAX DOT GRAPH DEPTH La profondeur maximale d un graphe. DOT TRANSPARENT Permet de rendre le fond des images transparent (utile lorsque l on personnalise l aspect général de la documentation).