Tutoriel: Documenter un code avec Doxygen

Introduction à Doxygen

    A l'instar de Javadoc, Doxygen est un lgociel libre de documentation de code possédant des capacités de génération de documentation à partir du code source d'un programme. Pour cela il tient compte de la syntaxe et de la structure du langage du programme ainsi que des commentaires associés à condition que ceux-ci soient écrit dans un format adapté. C'est cette manière de commenter que nous allons étudier dans cet article.
    La génération de documentation peut être faite à partir de code dans les langages suivants: C, C++, Java, Objective C, Python, IDL, VHDL et dans une certaine mesure PHP, C# et D. Le résultat final est une documentation complète générée en HTML (compressé ou non), LaTeX, RTF, PostScript, PDF avec hyperliens, et XML.
 
Les logiciels nécessaires à cette génération sont:
    - Doxygen, pour la génération de documentation au format HTML, LaTex, PostScript et XML...
                Installation sous windows:
                   télécharger la dernière version et puis lancer doxygen-xxx-setup.exe
                Installation sous Linux:
                   sudo apt-get install doxygen doxygen-gui
 
    - Graphviz, pour la génération de graphes (graphes d'appel, de dépendances, ...).
                Installation sous windows:
                   télécharger la dernière version et puis lancer graphviz-xxx.msi
                Installation sous Linux:
                   sudo apt-get install graphviz
 
    - MikTex pour la génération de documentation au format pdf avec hyperliens.
                Installation sous windows:
                   télécharger la dernière version et puis lancer basic-miktex-xxx.exe
 
    - HTML WorkShop, pour la génération de documentation au format HTML compressé.
                Installation sous windows:
                   télécharger la dernière version et puis lancer htmlhelp.exe

Commenter son code avec Doxygen

Généralités dans les commentaires

    Afin de différencier dans un fichier les commentaires à l'intention de Doxygen de ceux qui ne sont pas à prendre en compte, Doxygen possède sa propre norme de documentation, ou plutôt ses propres normes puiqu'il vous permet le choix entre l'une ou l'autre de ses différentes formes suivantes:
                     /**
                      * Ceci est un commentaire multiligne compris par Doxygen.
                      * C'est cette convention que nous utiliserons par la suite....
                      */
 
                     /*!
                      * ... Remarquez toutefois que suivant votre propre goût,
                      * vous pouvez utilisez celle-ci.....
                      */
 
                     //!
                     //! ... ou celle-là. L'important comme souligné dans l'article précédent de ce dossier,
                     //! c'est de concerver la même convention tout au long de votre programme....
                     //!
 
                     ///
                     /// ... Toutes ces formes de commentaires multilignes
                     /// peuvent toutefois être utilisez de façon monoligne...
                     ///
 
                     int iValeur = 5; /** ... et ce même après une ligne de code. */
 
                     /* En revanche, les formes de commentaires conventionnelles */
                     // ne seront pas pris en compte par Doxygen.

Listes des attributs

    Afin de préciser et de donner du sens aux commentaires, chaque information essentielle dispose d'une balise pour en préciser la nature. Une balise peut s'écrire \balise ou @balise. Par la suite, nous utiliserons la convention \balise.
Voici la liste des balises Doxygen les plus courantes (par ordre alphabétique):
    \a           Utiliser pour faire ressortir un paramètre dans sa description.
                      ex:   /** ...les coordonnées \a x et \a y du point.... */
                             donne 
                             ...les coordonnées x et y du point....
    \author  {liste d'auteur}    
                   Utiliser pour indiquer l'auteur du fichier ou de la fonction, structure ou de la chose décrite.
                       ex:   /** \author Miroslav */
    \b           Utiliser pour mettre en gras un mot dans une description; équivalent à mot en HTML.
                      ex:   /** ...il est \b important que.... */   donne   ...il est important que....
    \brief     Utiliser pour créer un résumé de description.
                      ex:    /**
                                 * \brief Ici le résumé de la description...
                                 *...qui peut prendre plusieurs lignes (mais rester bref)
                                 *
                                 * Ici la description complète...
                                 */
    \bug       Utiliser pour indiquer un bug dans une fonction ou un morceau de programme.
                      ex:   /** \bug La probabilité calculée dépasse parfois 1. */
    \class [] []    
                  Utiliser pour décrire une classe. Le premier paramètre est obligatoire, les suivants optionnels.
                  Attention toutefois à ce que les paramètres soit corrects, la casse est prise en compte.
                      ex:   /** \class Voiture voiture.h "inc/voiture.h" */
                             class Voiture { };
    \date     Utiliser pour indiquer la date de création de la partie commentée.
                     ex:    /**  \date 7 juin 1954 */
    \def       Utiliser pour indiquer un commentaire pour une macro #define.
                     ex:   /**  \def  MAX(x,y)  */
    \e          Utiliser pour emphasier un mot dans une phrase. Equivalent à la balise HTML em.
                     ex:   /** ....ceci constitue un \e vraiment bon exemple.... */  
                            donne 
                            ...ceci constitue un vraiment bon exemple...
    \enum     Uiliser pour introduire la description d'une énumération de type enum.
                                     ex:   /** \enum COULEUR */
    \file        Utiliser pour décrire un fichier.
                                L'attribut doit être exact et fourni avec l'extension.
                                     ex:   /** \file mon_fichier.c */
    \fn                       Utiliser pour introduire la description d'une fonction. 
                                Peut-être omis si la description est placée immédiatement
                                sous la déclaration de la fonction et sans saut de ligne.
                                     ex:   /** \fn Cette fonction calcul le..... */
    \namespace    Utiliser pour introduire la description d'un espace de nommage.
                                          L'attribut doit être exact.
                                              ex:    /** \namespace maths */
    \param {description}
                  Utiliser pour lister et décrire les paramètres d'une fonction.
                  Le nom doit être exact et la description optionnelle peut-être multiligne.
                  Peut être suivi de [in], [out] ou [in,ou] pour indiquer si les paramètres sont input-output.
                      ex:   /** Cette fonction copie les \a n premiers caractères d'une chaîne dans une autre.
                               * \param[out]   dst   la chaîne de destination
                               * \param[in]     src    la chaîne à copier
                               * \param          n      le nombre de caractère à copier
                               */
                               char *strncpy (char *dst, const char *src, size_t n);
    \return {description}
                  Utiliser pour décrire le paramètre renvoyé par une fonction. La description peut-être multiligne.
                       ex:  il suffit d'ajouter à l'exemple précédent la ligne:
                              * \return       renvoit la chaîne de caractère contenu dans src.
    \struct [] []    

                   Utiliser pour décrire une structure. Le premier paramètre est obligatoire, les suivants optionnels.
                   Attention toutefois à ce que les paramètres soit corrects, la casse est prise en compte.
                       ex:   /** \struct Pixel pixel.h "inc/pixel.h" */
                               struct Pixel{ };
    \todo {description}
                   Utiliser pour indiquer ce qu'il reste à faire. La description peut être multiligne.
                        ex:   /**
                                 * \todo  Finir l'implémentation des accesseurs de la classe...
                                 *              ...et encore détails nécessitant plusieurs lignes
                                 */
    \typedef      Utiliser pour introduire la description d'un typedef.
                            ex:  /**  \typedef  Voiture: la classe voiture  */
    \union [] []    

                        Utiliser pour décrire une union. Le premier paramètre est obligatoire, les suivants optionnels.
                        Attention toutefois à ce que les paramètres soit corrects, la casse est prise en compte.
                            ex:   /** \union Couleurs couleurs.h "inc/couleurs.h" */
                                    union Couleurs{ };
    \version      Utiliser pour définir la version d'un fichier.
                            ex:  /** \version 1.0beta */
    \@ \& \\ \< \~ \# \% ...
                         Utiliser pour insérer le caractère correspondant dans une description.
                             ex:   /** Applique aux attributs \#1 et \#2 parsé en XML.
                                       *{cf fichier \~.tmp; en cas de problème contacter l'@auteur}  */
                                    donne
                                    Applique aux attributs #1 et #2 parsé en XML.
                                    {cf fichier ~.tmp  en cas de problème contacter l'@uteur}
 
Le lecteur est évidement invité à consulter la liste complète de toutes les balises Doxygen pour documenter au mieux son projet.

Commenter un fichier

    Voici un exemple de commentaire d'en-tête de fichier s'appliquant au fichier module_modeleVoiture.c .  L'ordre des balises n'a pas d'importance.
/**
 * \file          module_modeleVoiture.c
 * \author    Miroslav
 * \version   1.0
 * \date       12 Novembre 2009
 * \brief       Définit les modèles de voiture et leur particularités.
 *
 * \details    Cette classe surcharge les accesseurs standards du module_voiture pour
 *                  convenir aux spécificités des différents modèles possibles.
 */
La documentation résultante après analyse simple (pas de graphe d'appel ni de dépendance) par Doxygen:
exemple de documentation résultant du traitement Doxygen

Commenter une fonction ou une méthode

    Voici un exemple de commentaire de fonction ou de méthode.  L'ordre des balises n'a pas d'importance mais les balises \param ne peuvent être omises.
/**
 * \brief       Calcule la distance entre deux points
 * \details    La distance entre les \a point1 et \a point2 est calculée par l'intermédiaire
 *                  des coordonnées des points. (cf #Point)
 * \param    point1         Point 1 pour le calcul de distance.
 * \param    point2         Point 2 pour le calcul de distance.
 * \return    Un \e float représentant la distance calculée.
 */
La documentation résultante après analyse simple (pas de graphe d'appel ni de dépendance) par Doxygen:
exemple de documentation de fonction résultant du traitement par Doxygen

Commenter une structure ou une union

    Voici un exemple de commentaire de structure ou d'union.  L'ordre des balises n'a pas d'importance. Comme vous le remarquerez, nous introduisons ici l'opération < permettant d'insérer un commentaire pour un membre de la structure ou de l'union.
/**
 * \brief      Couleur possible pour un Point.
 * \details   La table de correspondance de couleurs est disponible en modification par les accesseurs.
 */
typedef enum
{
   COLOR_BLUE,               /*!< Couleur bleu (0,0,255)               */
   COLOR_DARK_RED,      /*!< Couleur rouge sombre (64,0,0)  */
   COLOR_OLIVE              /*!< Couleur olive (51,51,0)               */
}
Color;
La documentation résultante après analyse simple par Doxygen:
exemple de documentation d'énumération résultant du traitement par Doxygen

Générer la documentation Doxygen

Doxygen est installé? Votre code est entièrement documenté? Il ne reste plus qu'à générer votre documentation. Pour cela lancer doxywizard.exe depuis windows ou la commande doxywizard depuis linux.
 
Etape 1: Entrer un chemin vers un répertoire de travail.
Etape 2: Remplir les 4 parties de l'assistant Wizard de Doxygen. Outre le mode Wizard, vous remarquerez que le logiciel propose le mode Expert. L'onglet Run sert à lancer la génération de la documentation une fois que la configuration est correctement effectuée, soit par l'onglet Wizard soit par l'onglet Expert.

Présentation générale de l'interface graphique de Doxygen

Utilisation de l'assistant

Voyons comment remplir les quatres parties de l'onglet Wizard:
 
Projet:
   Cette partie est très simple à remplir et les différentes options ne méritent pas de long commentaire. Elle sert à fournir les informations générales nécessaires à la génération de la documentation.
Project name:       Remplir le nom du projet.
Project version:    La version du projet.
Source code directory:   Le répertoire contenant le code source à analyser et documenter.
Scan recursively:  En cochant cette case, l'analyse du répertoire source se fera de façon récursive.
                               Les sources contenus dans les sous-répertoires seront alors analysée.
Destination directory:    Le répertoire dans lequel sera crée la documentation.
 
Mode:
    La partie Mode spécifie les options des sources à analyser ainsi que la méthode d'analyse.
Documented entities only:  Seules les entités (fonctions, méthodes, fichiers, structures...) documentées seront analysées et placées dans la documentation résultante.
All Entities:   Toutes les entités présentent dans le source seront analysées et documentées. Cette option ne peut pas générer du texte de documentation à votre place mais permet en revanche d'inclure toutes les entités dans les structures avec des liens entre elles pour une relecture plus aisée.
Include cross-referenced: Les fichiers sources seront insérés dans la documentation avec une coloration syntaxique appropriée et des liens vers les documentations précises.
Select programming language to optimize the result for: Ces options spéciales permettent de choisir la présentation de la documentation résultante la mieux adaptées au langage de votre source.
 
Output:
    Cette partie spécifie les options de génération de la documentation, notamment le format de sortie.
    - HTML : générer une documentation au format HTML
    - Plain HTML : HTML pur
    - with frame and navigation tree : Ajoute une navigation facilitée par une présentation arborescente.
    - compressed HTML : Format des documentations Windows (.chm)
    - with search function : ajoute une barre de recherche dans la documentation.
                                          Attention: ne fonctionne que sur un serveur interprétant le PHP.
- Latex : générer une documentation LaTex
    - intermediaire format for :
           Propose trois options de sorties au format LaTex adaptées pour un post-traitement de conversion de la documentation au format PDF avec hyperliens, PDF pur ou PostScript.
- Man Pages : générer une documentation au format ManPages: format des documentations Linux.
- RTF :  générer une documentation au format RTF (Rich Text Format).
- XML : générer une documentation au format XML.
 
Diagrams:
     Cette partie permet de configurer la création de diagramme dans la documentation. 
- no diagrams: Pas de création de diagramme.
- built-in class diagram generator: Créer la documentation par défaut.
- use GraphViz: Permet la création de diagram supplémentaires insérés dans la documentation.
    Les diagrammes sont des schémas graphiques représentant des situations données. Les différents diagrammes proposées sont nombreux:
- Créer une représentation des relations directes et indirectes entre les classes.
- Montre les relations d'interdépendance des classes et structures.
   (ex: un membre de classe A est du type classe B )
- Créer les diagrammes représentant la hiérarchie des classes.
- Créer les graphes de dépendances des fonctions.
- Créer les graphes des fonctions dont dépendent directement et indirectement les fonctions documentées.
- Créer les graphes d'appel direct et indirect des fonctions.
- Créer les graphes des fonctions appelées directement et indirectement par les fonctions documentées.
 
Quand toutes les options sont configurées, la génération se lance tout simplement en cliquant sur Run Doxygen dans l'onglet Run.
La struture du dossier de documentation résultante sera la suivante:
Hiérarchie de la documentation résultante de Doxygen
 
Vous trouverez => ici <= un exemple de documentation effectué avec Doxygen. Il s'agit de la traduction effectuée par AxiomCafe de la documentation du noyau ChibiOS v1.0

Utilisation du mode expert

Afin de faciliter l'usage du mode Expert, il convient de compléter entièrement le mode Wizard puis de passer en mode Expert avant d'utiliser le Run. Nous n'allons cependant ici présenter que quelques une des fonctions intéressantes du mode Expert. Nous ne reprendrons de plus que les paramètres supplémentaires par rapport au mode Wizard.
Présentation générale de l'interface Doxygen en mode expert
Project :
    - DOXYFILE_ENCODING :     Permet de forcer l'encodage des fichiers de la documentation Doxygen.
    - OUTPUT_LANGUAGE :        Permet de choisir la langue de la documentation générée.
    - BRIEF_MEMBER_DESC :     Permet d'afficher (ou non) la description courte dans la liste des fonctions/structures/fichiers/classes/....
                                                   Cette description est placée en début de fichier avant la description détaillée.
    - REPEAT_BRIEF :                 Permet d'afficher (ou non) la description courte en haut de la description détaillée dans les fichiers.
    - SHORT_NAME :                   Permet de générer des noms de fichiers courts pour la documentation. 
                                                   Certains systèmes d'exploitation ne supportent pas les noms longs.
Build :
    - EXTRACT_PRIVATE :          Permet d'afficher la documentation pour les fonctions/méthodes/membres ayant le qualificateur private.
    - EXTRACT_STATIC :            Permet d'afficher la documentation pour les fonctions/méthodes/membres ayant le qualificateur static.
    - SHOW_DIRECTORIES :     Permet d'afficher la hiérarchie des fichiers sources dans la documentation.
    - SORT_BRIEF_DOCS :        Permet d'afficher la documentation des fichiers, namespaces et fichiers extraits par ordre alphabétique.
                                                  Si non cochée, affiche la documentation par ordre de déclaration dans le code source.
Input :
    - INPUT_ENCODING :          Force la prise en compte de l'encodage des fichiers sources.
Source Browser :
    - INLINE_SOURCES :           Permet d'insérer le corps des fonctions/méthodes/structures/... extraites dans la documentation.
Index :
    - ALPHABETICAL_ORDER :  Permet d'afficher la documentation de toutes entités extraites par alphabétique.
                                                  Si non cochée, l'ordre dans la documentation est celle de définition dans les fichiers sources.
HTML :
    - HTML_HEADER :                 Permet de forcer le header des fichiers de la documentation. Si laissé vide, le header par défaut est utilisé.
    - HTML_FOOTER :                 Permet de forcer le footer des fichiers de la documentation. Si laissé vide, le footer par défaut est utilisé.
Dot :
    - UML_LOOK :                             Permet de forcer la génération des diagrammes d'héritage et de dépendance selon la norme UML.
    - DOT_IMAGE_FORMAT :           Permet de forcer le format d'encodage des images (png, jpeg ou gif).
    - DOT_GRAPH_MAX_NODES :   Permet de limiter le nombre maximum de noeuds d'un graphe.
                                                        Si le nombre de noeud dépasse cette valeur alors le graphe est tronqué.
    - MAX_DOT_GRAPH_WIDTH et MAX_DOT_GRAPH_HEIGHT: Permet de limiter la taille des graphes générés.
    - MAX_DOT_GRAPH_DEPTH :    Permet de limiter la profondeur de génération de noeuds d'un graphe.
                                                         Si la profondeur dépasse cette valeur alors le graphe est tronqué.
    - DOT_TRANSPARENT :              Permet de générer des graphes sur fond transparent. 
                                                         Attention, cette option ne semble pas supportée sous Windows.
Votre note : Aucun(e) Moyenne : 4.5 (37 votes)

Commentaires

Utilisateur non enregistré

Eosinophilia is a common manifestation of drug hypersensitivity and may be the only presenting sign. Coronary arterial calcification is detectable in the majority of asymptomatic men older than 55 years and women older than 65 years. https://osendarpvacuum.com/stmap_powo222.html?pantoprazole.cartia.clinda... Treatment of this patient may include surgical cyst removal, antiepileptic drugs, corticosteroids, and antihelminthic therapy. The most common drug-induced hematologic disorders include aplastic anemia, agranulocytosis, megaloblastic anemia, hemolytic anemia, and thrombocytopenia. https://osendarpvacuum.com/stmap_powo119.html?augmentin.ezetrol.redustat Data on toxicokinetics, the application of pharmacokinetic principles in the setting of overdose and toxicity, often are difficult to interpret and compare because the doses and times of ingestion are uncertain, the duration of sampling is inadequate, active metabolites may not be measured, protein binding typically is not assessed, and the severity of toxicity may vary dramatically. For drugs approved after 2010, renal drug dosing adjustments may also include recommendations using estimated glomerular filtration rate (eGFR) in addition to CLcr est. https://osendarpvacuum.com/stmap_powo192.html?chlorphen.sugar.apri Usual drug culprits include sulfonamides, penicillins, some anticonvulsants (hydantoins, carbamazepine, barbiturates, and lamotrigine), NSAIDs, and allopurinol. Patients receiving pharmacotherapy for iron chelation should be monitored for gastrointestinal and ocular toxicity, ototoxicity, renal and hepatic dysfunction, and complete blood counts in addition to markers of iron overload. https://osendarpvacuum.com/stmap_powo202.html?trevilor.cafergot.facicam Thus, it is no surprise that caring for persons with limited health literacy is associated with higher healthcare costs. Coronaviruses have the ability to adapt to new environments, become more transmissible, gain virulence due to high mutation, and recombination rates. https://osendarpvacuum.com/stmap_powo140.html?valette.glucotrol.diphenhy... The incidence rates of RCC vary more than 10-fold worldwide, with the highest incidence rates in Western and European countries and the lowest in Asia and Africa, which suggests that lifestyle and environment could be important factors underlying the development of RCC. All women undergo menopause, but every woman experiences it differently. One rearrangement is DR = –Km(DR/Css) + Vmax.

Utilisateur non enregistré

Which one of the following drugs may cause Loeffler syndrome? It accurately depicts the presence of gallstones within the gallbladder, helps define liver morphology, and serves as a first test to evaluate the absence or presence of biliary ductal dilation in a jaundiced patient (Fig. calan.trileptal.calcitriol Current strategies for safe medication use have not been effective for the general population and are likely less useful for persons with limited health literacy. Surgery is still used for patients with metastatic disease (stage IV) and may consist of surgical resection of the renal tumor, metastectomy (surgical removal of metastatic sites), or both. lialda.revia.lamisil ERCP is an important therapeutic procedure that combines endoscopy and fluoroscopic imaging techniques to evaluate and treat diseases of the pancreaticobiliary tree. As previously mentioned, optimal outcomes for methicillin-resistant Staphylococcus aureus (MRSA) infections are usually associated with AUC24/MIC ratios greater than 400, where MIC is for the causative organism. Urticaria and angioedema are simple eruptions that are caused by drugs in about 5% to 10% of cases. salbutamol.buspar.revia Each cycle doubles the amount of DNA originally present at the start of the cycle, thereby exponentially increasing the overall number of DNA copies. In addition, a given drug may increase or decrease the baseline value. During 2014, whole-bowel irrigation was used in 0.3% of 612,184 cases managed at a healthcare facility. domperidone.disulfiram.tadalafil One randomized controlled study has shown that an app can improve medication adherence in the elderly who tend to use less modern technology. For example, cobicisat, a CYP3A inhibitor that is used to enhance the response of several human immunodeficiency virus (HIV) regimens, has been associated with elevations in serum creatinine. eryc.caduet.probenecid In a national survey, 12.7% of older adults reported increased confusion or memory loss in the preceding 12 months. Both ethylenediamine tetraacetic acid (EDTA) and benzalkonium chloride, used as stabilizing and bacteriostatic agents, respectively, can produce bronchoconstriction. Some patients have had resolution with lowering of the dosage, and therapy has been reinstituted at lower doses without problems in others.

Utilisateur non enregistré

Serum sickness is a clinical syndrome resulting from the effects of soluble circulating immune complexes that form under conditions of antigen excess. In addition, oral contrast agents are routinely used to opacity the GI tract in CT, magnetic resonance imaging (MRI), CT and MRI enterography, and CT- and MRI- positron emission tomography. pletal.purim.keppra The phospholipids usually engorge the lysosomal bodies of the hepatocyte. One classic publication reported that 247 patients had osteomyelitis in a prominent American teaching hospital during a 4-year period. Several laboratory tests are available to diagnose B. depade.mometasone.keppra Radiation therapy may require several years for effective tumor shrinkage and reduction in serum prolactin concentrations and usually is used only in conjunction with surgery. This reduction in airflow may be caused by a decrease in the diameter of the airways (bronchospasm), a loss of their integrity (bronchomalacia), or a reduction in elastic recoil (emphysema) with a resulting decrease in driving pressure. The national news coverage also stimulated emergency providers to reflect on their triage protocols for returning travelers from Africa (ie, is this measles, malaria, or Ebola?), infection control procedures, and capabilities to manage rumors and misinformation. amlodipine.augmentin.ethionamide To prevent interference with skin testing, antihistamines should be discontinued at least 1 week before skin testing. Examples of these drugs include atropine, diazepam, digoxin, fentanyl, epinephrine, hydralazine, insulin, morphine, phenobarbital, and phenytoin. The consequences of electrolyte disorders can range from asymptomatic to life-threatening, requiring hospitalization and emergent treatment. vaseretic.paroxetine.ceftin However, due to concerns regarding phosphate-induced nephropathy, there has been a return to standard PEG-based solutions. However recent cases (12 people; 4 deaths) in seven Southwestern states from April to August of 2015 have garnered national attention. vibra.durolane.gris A common practice is to mix medications in applesauce, syrup, ice cream, or other vehicles just before administration to make the drugs palatable. Pulmonary infiltrates and eosinophilia syndrome occurs more frequently for naproxen compared with other NSAIDs and is noted to resolve rapidly after discontinuation of the offending agent. Many drug compounds are racemic mixtures of stereoisomers.

Utilisateur non enregistré

Numerous genes have been correlated with disease outcomes, and many of these have been found subsequently to influence response to pharmacologic disease management. The therapeutic range for phenytoin is usually 10 to 20 mg/L (40-79 Ојmol/L). The use of aspirin for prevention of traveler's thrombosis is not supported by the literature and should not be recommended for prophylaxis in travelers. albenza.allopurinol.divalproex The patient's clozapine level was 550 ng/mL (1.68 Ојmol/L 6 months ago. This includes patients with (a) a chronic debilitating illness, such as pulmonary, liver, or kidney disease; (b) older age and decreased functional capacity; (c) limited exercise capacity due to injury, arthritis, orthopedic problems, neurologic disorders, myopathic diseases, or peripheral vascular disease; (d) an acute coronary syndrome; (e) postoperative state; and (f) beta-blocker or other negative chronotropic agents that interfere with the subject's ability to achieve an adequate increase in heart rate in response to exercise. amoxycillin.doxycycline.tacrolimus The absence of leukocytosis also frequently can occur in the elderly and in severe cases of sepsis. Lavage with normal saline may remove iron tablet fragments and dissolved iron, but because the lumen of the tube is often smaller than some whole tablets, effective removal is unlikely. Lesions are clustered around the umbilicus and may spread to the extremities but sparing the face, palms, and soles. apcalis.septilin.optivar The cumulative dose above which the incidence of toxicity significantly increases is 450 to 500 units. Classified under CAM are a broad range of practices that are grouped under four categories: biologically based practices, energy medicine, manipulative and body-based practices, and mind-body medicine. These include the Poison Prevention Packaging Act (PPPA) of 1970, the evolution of regional poison control centers, the application of prompt first aid measures, improvements in overall critical care, development of less toxic product formulations, better clarity in the packaging and labeling of products, and public education on the risks and prevention of poisoning. ampicillin.betnovate.atorvastatin Use in acromegaly is considered off-label, and dosing is typically initiated at 0.5 mg twice weekly and increased as needed to 0.5 mg every other day. It is administered in a two-dose series given 28 days apart. ropinirole.minipress.ketotifen Eighty-three percent of the patients were aware of their diagnosis, but only 49% of their patients' physicians were aware. A retrospective study compared safety and efficacy between obese and normal-weight children who received methotrexate, teniposide, etoposide, and cytarabine for treatment of acute lymphoblastic leukemia. Newer regimens of high dose once-daily or extended-interval aminoglycoside administration have gained widespread acceptance for use in the clinical setting.

Utilisateur non enregistré

Which of the following preventative modalities has been shown to reduce asymptomatic clots when used appropriately and has minimal risk? While ОІ-blockers are currently indicated in all patients with heart failure, ADRB1 genotype may be useful in identifying patients who may derive lesser benefits from ОІ-blockers than others. Empiric antimicrobial therapy covering community acquired bacterial pathogens, based on local epidemiologic information, may be appropriate. pioglitazone.dutas.verapamil Patients with 5q- syndrome typically survive longer and have a lower risk for progression to AML than a similar IPSS risk patient. About 2% of patients experience thrombocytopenia with the first administration and 10% to 12% with subsequent administrations. Codeine and tramadol are converted by CYP2D6 to morphine and O-desmethyltramadol, respectively, and CYP2D6 PMs would experience little analgesic relief after taking these drugs. chlorphen.omnicef.claritin Isoniazid is metabolized by several pathways, acetylation being the major pathway. It is most frequently reported in children between ages 1 and 4 years and peak illness occurs in late summer. l-tryptophan.oretic.amnesteem It describes the "major" direction of QRS depolarization, which is typically toward the apex of the heart (ie, toward the left side of the chest and downward). Fortunately, severe side effects are rare, occurring in only 1 in 10,000 patients receiving these agents, and they usually are reversed with intravenous aminophylline, 75 to 125 mg. ketorolaco.actos.micronase A female patient whose religion embraces greater physical distance between women and men in social situations may not be comfortable working with a male healthcare provider. Clinical presentation is dependent on the time since ingestion, presence of risk factors, and the ingestion of other drugs. The posterior pituitary gland secretes two major hormones: oxytocin and vasopressin (antidiuretic hormone) (Table e77-1). cafeine.fluoxetin.silenor Furthermore, any signs or symptoms of a systemic or generalized reaction may require additional supportive therapies specific to the severity and type of signs and symptoms seen. Giardiasis can be prevented by good personal hygiene and by caution in food and drink consumption.

Utilisateur non enregistré

After drug doses and serum concentrations are entered into the computer, nonlinear least-squares regression programs adjust CL and VD until the sum of the squared error between actual (Cact) and computerestimated concentrations (Cest) is at a minimum . After the withdrawal of the drug, results of the Coombs test can remain positive for many months. Bevacizumab is a humanized monoclonal antibody that binds circulating VEGFA and inhibits the ligand from binding to the VEGFRs. https://uren.jv.nl/stmap_1xeh96.html?ketorolaco.zaditor.omnipred When evaluating drugs as a possible cause of drug-induced hematological disease, clinicians should use which approach? Disease-causing genes are replaced with the desired therapeutic genes; the viral genes that control delivery mechanisms are retained. https://uren.jv.nl/stmap_1xeh209.html?lioresal.claravis.lasix Two vaccine-preventable infections that should be assessed as part of pretravel consultation are measles and meningococcal infections. It is currently unknown if the drug binds initially to the T cell receptor or whether the drug binds first to the MHC molecule on the APC, thereby signaling T cell activation. https://uren.jv.nl/stmap_1xeh130.html?hydra.zetia.antacid Many drugs have been reported to cause fever with the most frequently implicated classes being the antimicrobials (eg, acyclovir, amphotericin B, ОІ-lactams, minocycline, rifampin, sulfonamides, and tetracycline), anticonvulsants (eg, carbamazepine and phenytoin), antiarrhythmics (eg, procainamide and quinidine), and other cardiac medications (eg, clofibrate, diltiazem, dobutamine, furosemide, heparin, methyldopa, and procainamide). The hair then should be rinsed thoroughly. The liver develops large, blood-filled lacunae (space or cavity) within the parenchyma. https://uren.jv.nl/stmap_1xeh85.html?eltroxin.nortriptyline.paroxetin Other risk factors for traveler's thrombosis include personal height less than 63 inches (160 cm) and height over 75 inches (190 cm) in individuals traveling by air. Aberrations in epigenetic regulator genes, spliceosome component pathways, DNA damage response genes, and genes regulating transcription factors have redefined the molecular landscape in MDS and several additional chromosomal abnormalities have been incorporated into prognostic models predicting survival and leukemic transformation. https://uren.jv.nl/stmap_1xeh82.html?trimox.starlix.differin Aplastic anemia can be divided into two broad categories, inherited and acquired. Four classes of histamine receptors (H1-H4) are present in varying degrees in organs and tissues. A heightened awareness of the impact of climate change and environmental transformations (ie, deforestation, modifying waterways, and urbanization), on the frequency of severe weather events and natural disasters as well as animal and human disease.

Utilisateur non enregistré

Most diarrheal and gastroenteritis episodes are caused by consumption of infectious (fecal) contaminated food or water. Other studies have likewise observed a link between impaired exercise/walking distance and negative long-term outcomes in patients with PAD. In a national survey, 12.7% of older adults reported increased confusion or memory loss in the preceding 12 months. https://bosmastichting.nl/stmap_5iat53.html?metoclopramide.duramed.dilantin If the drug was given extravascularly or has a significant distribution phase, the postdose concentration should be determined after absorption or distribution is finished. TLC should be measured anytime VC is reduced. Anxiety is an emotional state commonly caused by the perception of real or perceived danger that threatens the security of an individual. https://bosmastichting.nl/stmap_5iat130.html?diflucan.dafalgan.enalapril Known as the p-i concept, this pathway involves a ‘pharmacologic interaction of drugs with immune receptors that does not require the initial binding of the drug to a carrier protein or processing by APCs. Which of the following is incorrect regarding MIC testing? In addition, the injudicious administration of oxygen in patients with carbon dioxide retention can worsen ventilation-perfusion mismatching, further elevating pCO2 and thus producing apnea. https://bosmastichting.nl/stmap_5iat11.html?diovan.aripiprazole.aceon The Vitek system (bioMerieux, Durham, NC) uses small plastic reagent "cards" that contain 64 microwells for the testing of various antimicrobials or indicator chemicals. A study of frail veterans at hospital discharge reported that 44% of patients were taking one or more unnecessary medications, with 25% of patients starting the medication(s) during hospitalization. https://bosmastichting.nl/stmap_5iat176.html?ramipril.hoodia.aripiprazole It is also used as a preservative in parenteral dexamethasone, methylprednisolone, enoxaparin, midazolam, and multivitamin formulations. Many of these effects are related to capillary leak syndrome. https://bosmastichting.nl/stmap_5iat11.html?lumix.crixivan.calcium For example, patients with concomitant Raynaud phenomenon may benefit from calcium channel blockers while patients with documented CAD may receive a dual benefit by the selection of a β-blocker. Unfortunately, VTE prevention data in pregnancy are limited.

Utilisateur non enregistré

There is no accepted specific prehospital care for calcium channel blocker poisoning, except to summon an ambulance for symptomatic patients. In addition, pain signal transmission in the spinal cord is less precise, and descending inhibitory neurotransmitters are lacking. Skin testing with carboplatin has been described. https://webshop.kristas.nl/stmap_ghu049.html?zocor.ondansetron.tamsulosin Where pertussis is suspected, waiting for laboratory confirmation should not delay the treatment of patients and prophylaxis of close contacts who are high risk of the infection as well. Restarting the drug is not usually recommended. https://webshop.kristas.nl/stmap_ghu0172.html?diphenhydramine.escitalopr... Fever usually recurs on readministration of the causative agent. Patients not responding during this period may require aspiration of abscesses or exploratory laparotomy. https://webshop.kristas.nl/stmap_ghu0156.html?forzest.tenormin.robaxin The interviewer should note whether the patient is cooperative, mute, hostile, paranoid, guarded, or withdrawn. All aspirin-sensitive asthmatics fit the classic "aspirin-triad" picture. https://webshop.kristas.nl/stmap_ghu049.html?cozaar.axetil.volmax It is more commonly referred to by the acronym DRESS, although DHS is also used. Many of their predictions, including algae blooms (off the coast of Florida) and Ebola outbreaks (West Africa), have recently come true. The average Css over the dosage interval is the Css that would have occurred had the same dose been given as a continuous IV infusion (eg, 300 mg every 6 hours would produce an average Css equivalent to the actual Css produced by a continuous infusion administered at a rate of 50 mg/h). https://webshop.kristas.nl/stmap_ghu0139.html?benazepril.actonel.clozapine As such, the risk of a ‘cross reaction' between ACE inhibitors and ARBs is not clear. A vast array of laboratory tests are available to assist the clinician with this crucial but difficult clinical activity.

Utilisateur non enregistré

Identification with a particular group (eg, Hispanic) is the individual's ingroup. An example of this initial dosage scheme for the same case is provided to illustrate the use of extended-interval dosing. https://delytseoosterhaven.nl/stmap_oag132.html?sugar.ampicillin.hydra For the chapter in the Wells Handbook, please go to Chapter 32. Because of the risk of breakthrough allergic reactions, graded challenges should be performed in monitored settings. The resultant angiogram permits the study of cardiac structures in real time, in slow motion, or by single frame. https://delytseoosterhaven.nl/stmap_oag1161.html?vimax.lovastatin.minocy... A systemic review of databases in patients with aspirin-induced asthma included placebo-controlled and blinded clinical trials, No significant difference in respiratory symptoms with COX 2 was reported compared to placebo.(ref F) At this point, the package inserts of these agents state that they are contraindicated for aspirin-sensitive asthmatics as there are reports of cross-reactivity in extremely sensitive patients. Though no specific tool may be applicable to all patients, pharmacists may find explicit (criterion-based) or implicit (judgment-based) criteria helpful when evaluating medication regimens for potentially inappropriate medications (PIM). Research has been conducted in Mexican American populations with increasing studies in other racial, ethnic, and immigrant populations. https://delytseoosterhaven.nl/stmap_oag1154.html?cetirizin.atasol.sertra... This benefit was seen in both the patients who received prior therapy with sunitinib and cytokines. Individuals with asthma, by definition, have hyperresponsive airways. https://delytseoosterhaven.nl/stmap_oag166.html?ibilex.amlodipine.famcic... Patients experience defervescence as they enter the critical phase, which is characterized by some degree of plasma leakage. P-gp is present in many organs, including the GI tract, liver, and kidney. It is provided by an interdisciplinary team of healthcare professionals, including physicians, pharmacists, nurses, nurse practitioners, social workers, chaplains, and others. https://delytseoosterhaven.nl/stmap_oag121.html?xalatan.atarax.albuterol If the femoral approach is used, the patient remains at bed rest for 2 to 8 hours to minimize the chance of hemorrhage. Ample daily fluid intake and regular use of moisturizers are important for skin hydration.

Utilisateur non enregistré

Drug complications were the most common type of outcome attributed to negligence, accounting for 19% of these preventable adverse events. Lung toxicity from paraquat occurs following oral administration in humans and aerosol administration and inhalation in experimental animals. Other drugs, such as cotrimoxazole, phenytoin, and the barbiturates, have also been implicated in megaloblastic anemia. https://onlinemusicschool.nl/stmap_1h1m206.html?acet.floxin.lasuna International Society of Travel Medicine (ISTM) or the American Society of Tropical Medicine and Hygiene (ASTMH). Nonsynonymous SNPs usually are designated by the amino acids and codon involved. https://onlinemusicschool.nl/stmap_1h1m156.html?toprol-xl.forzest.aristo... As a consequence, there are "poor metabolizers" who have a defective mutant gene for the isozyme, cannot manufacture a fully functional isozyme, and therefore cannot metabolize the drug substrate very well. With the exception of two patients found to have preexisting anti-AAV1 neutralizing antibodies, gene transfer was associated with improved symptomatic, functional, and cardiac parameters. Rounding low serum creatinine values up to an arbitrary value of 1.0 mg/dL (88 Ојmol/L) resulted in CG values that significantly underestimated mClcr (44 vs 56 mL/minute <>.73 vs 0.93 mL/s], p less than 0.001) and uncorrected CG (p less than 0.001). https://onlinemusicschool.nl/stmap_1h1m172.html?aygestin.pyridostigmine.... On average, at a phenytoin dose of 300 mg daily, it takes approximately 5 to 7 days to achieve steady state; at a dose of 400 mg daily, it takes approximately 10 to 14 days to achieve steady state; and at a dose of 500 mg daily, it takes approximately 21 to 28 days to achieve steady state. Medication nonadherence has been implicated in approximately 4% to 11% of hospitalizations and 8% of emergency department visits. https://onlinemusicschool.nl/stmap_1h1m2.html?diovan.decadron.prevacid Twenty-two percent to 64% of travelers experience health problems while traveling. Some clinician-rated scales require a substantial time commitment to administer. Isolation of B. https://onlinemusicschool.nl/stmap_1h1m198.html?salmeterol.arestin.diabeta PD-1 is expressed on activated T cells, while PD-L1 is expressed on immune and tumor cells. The exact mechanism of the renal response to protein is unknown, but may be related to extrarenal factors such as glucagon, prostaglandins, and angiotensin II, or intrarenal mechanisms, such as alterations in tubular transport and tubuloglomerular feedback.