diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2018-07-16 14:31:40 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2018-07-16 14:31:40 (GMT) |
commit | e0d03e3eddb9d240cc21ac1b7a7ade915fd17942 (patch) | |
tree | 9543a9d1330262239f3943b8459bde1429a35dbb /src/arch | |
parent | 7a009c76657478c9270acec0c2b236523bfd68eb (diff) |
Updated the move entry from database items.
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/vmpa.c | 47 | ||||
-rw-r--r-- | src/arch/vmpa.h | 13 |
2 files changed, 47 insertions, 13 deletions
diff --git a/src/arch/vmpa.c b/src/arch/vmpa.c index 7abb5de..8de2599 100644 --- a/src/arch/vmpa.c +++ b/src/arch/vmpa.c @@ -34,6 +34,9 @@ #include <i18n.h> +#include "../common/extstr.h" + + /* ---------------------- DEFINITION D'UNE POSITION EN MEMOIRE ---------------------- */ @@ -673,8 +676,46 @@ vmpa2t *string_to_vmpa_virt(const char *buffer) /****************************************************************************** * * -* Paramètres : addr = localisation dont la définition est à consulter. * -* base = tronc commun pour les champs de la base de données. * +* Paramètres : base = tronc commun pour les champs de la base de données. * +* * +* Description : Donne les éléments requis pour la construction d'une table. * +* * +* Retour : Partie de requête à insérer dans la requête globale. * +* * +* Remarques : - * +* * +******************************************************************************/ + +char *create_vmpa_db_table(const char *base) +{ + char *result; + + if (base != NULL) + { + result = strdup(base); + result = stradd(result, "_"); + } + else + result = NULL; + + result = stradd(result, "phys INTEGER, "); + + if (base != NULL) + { + result = stradd(result, base); + result = stradd(result, "_"); + } + + result = stradd(result, "virt INTEGER"); + + return result; + +} + + +/****************************************************************************** +* * +* Paramètres : base = tronc commun pour les champs de la base de données. * * values = tableau d'éléments à compléter. [OUT] * * count = nombre de descriptions renseignées. [OUT] * * * @@ -686,7 +727,7 @@ vmpa2t *string_to_vmpa_virt(const char *buffer) * * ******************************************************************************/ -bool setup_load_for_vmpa(const vmpa2t *addr, const char *base, bound_value **values, size_t *count) +bool setup_load_for_vmpa(const char *base, bound_value **values, size_t *count) { bound_value *value; /* Valeur à éditer / définir */ diff --git a/src/arch/vmpa.h b/src/arch/vmpa.h index a1c60dd..d2cc39b 100644 --- a/src/arch/vmpa.h +++ b/src/arch/vmpa.h @@ -142,18 +142,11 @@ vmpa2t *string_to_vmpa_phy(const char *); /* Transforme une chaîne de caractères en adresse virtuelle. */ vmpa2t *string_to_vmpa_virt(const char *); -/* Définition du tronc commun pour les créations SQLite */ - -#define SQLITE_SIMPLE_VMPA_CREATE \ - "phys INTEGER, " \ - "virt INTEGER" - -#define SQLITE_VMPA_CREATE(bn) \ - bn "_phys INTEGER, " \ - bn "_virt _INTEGER" +/* Donne les éléments requis pour la construction d'une table. */ +char *create_vmpa_db_table(const char *); /* Décrit les colonnes utiles à un chargement de données. */ -bool setup_load_for_vmpa(const vmpa2t *, const char *, bound_value **, size_t *); +bool setup_load_for_vmpa(const char *, bound_value **, size_t *); /* Charge les valeurs utiles pour une localisation. */ bool load_vmpa(vmpa2t *, const char *, const bound_value *, size_t); |