Provided by: libmlv3-dev_3.1.0-1_amd64 bug

NAME

       MLV_xml.h - Ce fichier définit les prototypes des fonctions permettant de lire des
       fichiers xml.

SYNOPSIS

   Définitions de type
       typedef struct _MLV_Xml MLV_Xml
           Définit le type de donnée stockée au format xml dans la bibliothèque MLV.

   Énumérations
       enum MLV_Xml_error { MLV_XML_NONE, MLV_XML_THE_FIELD_DOESNT_EXIST,
           MLV_XML_THE_FIELD_IS_NOT_A_REAL, MLV_XML_THE_FIELD_IS_NOT_AN_INTEGER,
           MLV_XML_THE_FIELD_IS_TOO_BIG } Énumère les différents codes d'erreurs que l'on peut
           rencontrer lorsque l'ordinateur lit un document xml. "

   Fonctions
       MLV_Xml * MLV_load_xml (const char *xml_file_path)
           Charge en mémoire un fichier au format xml.
       void MLV_free_xml (MLV_Xml *xml_data)
           Libère la mémoire utilisée par les données du fichier xml.
       MLV_Xml_error MLV_get_string_value_from_xml (const MLV_Xml *xml_data, char **result, const
           char *xpath,...)
           Permet d'accéder à l'interieur d'un champs donné du fichier xml.
       MLV_Xml_error MLV_get_integer_value_from_xml (const MLV_Xml *xml_data, int *result, const
           char *xpath,...)
           Permet de récupérer l'entier d'un champs donné du fichier xml.
       MLV_Xml_error MLV_get_double_value_from_xml (const MLV_Xml *xml_data, double *result,
           const char *xpath,...)
           Permet de récupérer le reel d'un champs donné du fichier xml.
       MLV_Xml_error MLV_get_float_value_from_xml (const MLV_Xml *xml_data, float *result, const
           char *xpath,...)
           Permet de récupérer le réel d'un champs donné du fichier xml.
       int MLV_get_number_of_objects_from_xml (const MLV_Xml *xml_data, const char *xpath,...)
           Compte le nombre d'objets présents dans le fichier xml verifiant un certain nombre de
           critères passés en paramètre de la fonction.
       MLV_Xml * MLV_get_xml_object_of (const MLV_Xml *xml_data, const char *xpath,...)
           Permet de récupérer un noeud interne de l'arbre représentant le fichier XML.
       void MLV_print_xml (const MLV_Xml *xml_data)
           Écrit sur le terminal le contenu d'un fichier xml.

Description détaillée

       Ce fichier définit les prototypes des fonctions permettant de lire des fichiers xml.

       Auteur:
           Adrien Boussicault

           Marc Zipstein

       Les fichiers xml sont utilisés pour stocker les données nécessaires au fonctionnement d'un
       programme. Ils permettent de modifier facilement l'exécution du programme sans avoir à le
       modifier. En effet, ils sont lisibles par l'homme et par la machine en même temps. Ils
       constituent donc une interface pratique entre l'ordinateur et l'utilisateur.

Documentation du type de l'énumération

   enum MLV_Xml_error
       Énumère les différents codes d'erreurs que l'on peut rencontrer lorsque l'ordinateur lit
       un document xml.

       Valeurs énumérées

       MLV_XML_NONE
              Aucune erreur detectée.

       MLV_XML_THE_FIELD_DOESNT_EXIST
              Le champs n'existe pas dans le document xml.

       MLV_XML_THE_FIELD_IS_NOT_A_REAL
              Le champs ne contient pas une chaîne de caractères codant un reel.

       MLV_XML_THE_FIELD_IS_NOT_AN_INTEGER
              Le champs ne contient pas un chaîne de caractères codant un entier.

       MLV_XML_THE_FIELD_IS_TOO_BIG
              La chaîne code un réel/entier trop long pour être stocké dans la variable.

Documentation des fonctions

   void MLV_free_xml (MLV_Xml * xml_data)
       Libère la mémoire utilisée par les données du fichier xml.

       Paramètres:
           xml_data Les données xml a supprimer.

       Exemples:
           advanced/10_read_xml_file.c.

   MLV_Xml_error MLV_get_double_value_from_xml (const MLV_Xml * xml_data, double * result, const
       char * xpath,  ...)
       Permet de récupérer le reel d'un champs donné du fichier xml. Tout comme la fonction
       MLV_get_string_value_from_xml(), cette fonction peut contenir un nombre variable de
       paramètres. Pour plus d'informations, veuillez lire la documentation de la fonction
       MLV_get_string_value_from_xml().

       Paramètres:
           xml_data Les données xml.
           result Un pointeur vers un réel dans lequel le résultat de la fonction sera
           enregistré.
           xpath Le chemin d'accès.

       Renvoie:
           renvoie un code d'erreur (voir MLV_Xml_error) si la fonction n'a pas reussie à
           extraire la donnée souhaitée du document xml.

       Exemples:
           advanced/10_read_xml_file.c.

   MLV_Xml_error MLV_get_float_value_from_xml (const MLV_Xml * xml_data, float * result, const
       char * xpath,  ...)
       Permet de récupérer le réel d'un champs donné du fichier xml. Tout comme la fonction
       MLV_get_string_value_from_xml(), cette fonction peut contenir un nombre variable de
       paramètres. Pour plus d'informations, veuillez lire la documentation de la fonction
       MLV_get_string_value_from_xml().

       Paramètres:
           xml_data Les données xml.
           result Un pointeur vers un réel dans lequel le résultat de la fonction sera
           enregistré.
           xpath Le chemin d'accès.

       Renvoie:
           renvoie un code d'erreur (voir MLV_Xml_error) si la fonction n'a pas reussie à
           extraire la donnée souhaitée du document xml.

   MLV_Xml_error MLV_get_integer_value_from_xml (const MLV_Xml * xml_data, int * result, const
       char * xpath,  ...)
       Permet de récupérer l'entier d'un champs donné du fichier xml. Tout comme la fonction
       MLV_get_string_value_from_xml(), cette fonction peut contenir un nombre variable de
       paramètres. Pour plus d'informations, veuillez lire la documentation de la fonction
       MLV_get_string_value_from_xml().

       Paramètres:
           xml_data Les données xml.
           result Un pointeur vers un entier dans lequel le résultat de la fonction sera
           enregistré.
           xpath Le chemin d'accès.

       Renvoie:
           renvoie un code d'erreur si la fonction n'a pa reussie à extraire la donnée souhaitée
           du document xml.

       Exemples:
           advanced/10_read_xml_file.c.

   int MLV_get_number_of_objects_from_xml (const MLV_Xml * xml_data, const char * xpath,  ...)
       Compte le nombre d'objets présents dans le fichier xml verifiant un certain nombre de
       critères passés en paramètre de la fonction.

       Paramètres:
           xml_data Les données xml.
           xpath Le chemin d'accès.
           ... Les paramètres de la fonction.

       Renvoie:
           Cette fonction renvoie le nombre d'objet ayant pour chemin d'accès 'xpath'.

       Exemples:
           advanced/10_read_xml_file.c.

   MLV_Xml_error MLV_get_string_value_from_xml (const MLV_Xml * xml_data, char ** result, const
       char * xpath,  ...)
       Permet d'accéder à l'interieur d'un champs donné du fichier xml. Cette fonction peut
       contenir un nombre variable de paramètres. Comme avec la fonction printf les paramètres
       suplémentaires, situées après le paramètre xpath, permettent de construire des requêtes
       xpath évolué.

       Par exemple,

       int id_batiment = 2;
       char * type_salle = "informatique"
       int id_salle = 4;
       char* nom_salle;
       MLV_get_string_value_from_xml(
               xml_data, &(nom_salle),
            "/batiment[%d]/salle[type=%s][%d]/nom",
            id_batiment, type_salle, id_salle
       )
       free( nom_salle ); // on oublie pas de libérer la mémoire après avoir
                          // utilisé nom_salle

       permet de recupérer le contenu du champs 'nom' situé dans la 4eme salle informatique du
       2eme batiment.

       Attention: Il ne faut pas oublier de libérer la mémoire associée au champs result.

       Paramètres:
           xml_data Les données xml.
           result Un pointeur vers une addresse vide qui contiendra l'addresse de la chaîne de
           caractères correspondant au résultat de la fonction.
           xpath Le chemin d'accès.

       Renvoie:
           renvoie un code d'erreur si la fonction n'a pa reussie à extraire la donnée souhaitée
           du document xml.

       Exemples:
           advanced/10_read_xml_file.c.

   MLV_Xml* MLV_get_xml_object_of (const MLV_Xml * xml_data, const char * xpath,  ...)
       Permet de récupérer un noeud interne de l'arbre représentant le fichier XML. Cette
       fonction n'est pas encore implémentée.

       Paramètres:
           xml_data Les données xml.
           xpath Le chemin d'accès.
           ... Les paramètres de la fonction.

       Renvoie:
           Un noeud interne de l'arbre XML.

   MLV_Xml* MLV_load_xml (const char * xml_file_path)
       Charge en mémoire un fichier au format xml. Cette fonction renvoi NULL, lorsque le fichier
       n'a pas pu être correctement chargé.

       Paramètres:
           xml_file_path Chemin d'accès du fichier xml.

       Renvoie:
           Le fichier xml lu, analysé et chargé.

       Exemples:
           advanced/10_read_xml_file.c.

   void MLV_print_xml (const MLV_Xml * xml_data)
       Écrit sur le terminal le contenu d'un fichier xml. Cette fonction n'est pas encore
       implémentée.

       Paramètres:
           xml_data Les données xml.
           ... Les paramètres de la fonction.

Auteur

       Généré automatiquement par Doxygen pour MLV-3.1.0 à partir du code source.