Dilib, module Explor, paramètres, langage C : Différence entre versions
De Wicri Outils
imported>Jacques Ducloy (Page créée avec « {{Dilib header|module=Explor}} Cette page décrit les fonctions relatives au paramétrage du module Explor de la bibliothèque Dilib. {{Début 2... ») |
imported>Jacques Ducloy |
||
(2 révisions intermédiaires par le même utilisateur non affichées) | |||
Ligne 14 : | Ligne 14 : | ||
}} | }} | ||
{{Fin 2 colonnes}} | {{Fin 2 colonnes}} | ||
+ | La manipulation des tables se fait à l'aide de l'[[Dilib, module Explor, interface Explor|interface Explor]]. | ||
+ | La manipulation des tables se fait à l'aide du fichier de déclaration <code>Explor.h</code> | ||
+ | <source lang="c"> | ||
+ | #include "Explor.h" | ||
+ | </source> | ||
+ | Celui ci donne notamment accès à la variable ExplorTableParam (de type [[Dilib, module StrDict, type StrDict|StrDict]]) qui pointe vers la table courante utilisée par un programme de génération. | ||
+ | <source lang="c"> | ||
+ | StrDict *ExplorTableParam; | ||
+ | </source> | ||
{{Wicri travaux|texte=page en cours de rédaction}} | {{Wicri travaux|texte=page en cours de rédaction}} | ||
+ | ===Accès sans héritage, <code>ExplorGetFromDict</code>=== | ||
+ | L'accès sans héritage se fait au travers de la fonction de base <code>'''ExplorGetFromDict'''</code> : | ||
+ | <source lang="c"> | ||
+ | char *ExplorGetFromDict(char *key); | ||
+ | </source> | ||
+ | Elle accepte en paramètre une clé complète et renvoie la valeur, exemple : | ||
+ | <source lang="c"> | ||
+ | SxmlNode mainListSteps; | ||
+ | mainListSteps=SxmlFromString(ExplorGetFromDict("Area/Main/steps")); | ||
+ | </source> | ||
+ | Pour faciliter l'écriture des appels un ensemble de fonctions dérivées a été introduit : | ||
+ | <source lang="c"> | ||
+ | char *ExplorGetFromDictK2(char *k1, char *k2); | ||
+ | char *ExplorGetFromDictK3(char *k1, char *k2, char *k3 ); | ||
+ | char *ExplorGetFromDictK4(char *k1, char *k2, char *k3, char *k4 ); | ||
+ | char *ExplorGetFromDictWithPrefix(char *prefix, char *code); | ||
+ | </source> | ||
+ | |||
+ | Ainsi : | ||
+ | <source lang="c"> | ||
+ | SxmlNode *mainListSteps; | ||
+ | mainListSteps=SxmlFromString(ExplorGetFromDict("Area/Main/steps")); | ||
+ | </source> | ||
+ | est équivalent à : | ||
+ | <source lang="c"> | ||
+ | SxmlNode *mainListSteps; | ||
+ | char *stream; | ||
+ | |||
+ | stream="Main"; | ||
+ | mainListSteps=SxmlFromString(ExplorGetFromDictK3("Area", stream, "steps")); | ||
+ | </source> | ||
+ | ===Accès avec héritage=== | ||
+ | <source lang="c"> | ||
+ | char *ExplorCascadeFromDictK3(char *k1, char *k2, char *key ); | ||
+ | char *ExplorCascadeFromDictK4(char *k1, char *k2, char *k3, char *key ); | ||
+ | char *ExplorCascadeFromDictK5(char *k1, char *k2, char *k3, char *k4, char *key ); | ||
+ | </source> |
Version actuelle datée du 15 octobre 2017 à 11:22
Module Explor |
Cette page décrit les fonctions relatives au paramétrage du module Explor de la bibliothèque Dilib.
Liste des modules Dilib
Module Explor
|
La manipulation des tables se fait à l'aide de l'interface Explor.
La manipulation des tables se fait à l'aide du fichier de déclaration Explor.h
#include "Explor.h"
Celui ci donne notamment accès à la variable ExplorTableParam (de type StrDict) qui pointe vers la table courante utilisée par un programme de génération.
StrDict *ExplorTableParam;
Accès sans héritage, ExplorGetFromDict
L'accès sans héritage se fait au travers de la fonction de base ExplorGetFromDict
:
char *ExplorGetFromDict(char *key);
Elle accepte en paramètre une clé complète et renvoie la valeur, exemple :
SxmlNode mainListSteps;
mainListSteps=SxmlFromString(ExplorGetFromDict("Area/Main/steps"));
Pour faciliter l'écriture des appels un ensemble de fonctions dérivées a été introduit :
char *ExplorGetFromDictK2(char *k1, char *k2);
char *ExplorGetFromDictK3(char *k1, char *k2, char *k3 );
char *ExplorGetFromDictK4(char *k1, char *k2, char *k3, char *k4 );
char *ExplorGetFromDictWithPrefix(char *prefix, char *code);
Ainsi :
SxmlNode *mainListSteps;
mainListSteps=SxmlFromString(ExplorGetFromDict("Area/Main/steps"));
est équivalent à :
SxmlNode *mainListSteps;
char *stream;
stream="Main";
mainListSteps=SxmlFromString(ExplorGetFromDictK3("Area", stream, "steps"));
Accès avec héritage
char *ExplorCascadeFromDictK3(char *k1, char *k2, char *key );
char *ExplorCascadeFromDictK4(char *k1, char *k2, char *k3, char *key );
char *ExplorCascadeFromDictK5(char *k1, char *k2, char *k3, char *k4, char *key );