summaryrefslogtreecommitdiff
path: root/src/analysis/db/item-int.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/analysis/db/item-int.h')
-rw-r--r--src/analysis/db/item-int.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/analysis/db/item-int.h b/src/analysis/db/item-int.h
index 7b99f4a..12c69f3 100644
--- a/src/analysis/db/item-int.h
+++ b/src/analysis/db/item-int.h
@@ -32,6 +32,7 @@
#include "misc/rlestr.h"
+#include "../binary.h"
@@ -41,6 +42,9 @@ typedef bool (* recv_db_item_fc) (GDbItem *, int, int);
/* Exporte la définition d'une base d'éléments pour collection. */
typedef bool (* send_db_item_fc) (const GDbItem *, int, int);
+/* Exécute un élément de collection sur un binaire. */
+typedef bool (* run_item_fc) (GDbItem *, GLoadedBinary *);
+
/* Constitue les champs destinés à une insertion / modification. */
typedef bool (* prepare_db_statement) (const GDbItem *, bound_value **, size_t *);
@@ -63,6 +67,10 @@ struct _GDbItem
bool is_volatile; /* Pas besoin de sauvegarde ? */
+#ifdef DEBUG
+ bool applied; /* L'élément a été appliqué */
+#endif
+
};
/* Base d'un élément pour collection générique (classe) */
@@ -74,6 +82,8 @@ struct _GDbItemClass
recv_db_item_fc recv; /* Réception depuis le réseau */
send_db_item_fc send; /* Emission depuis le réseau */
+ run_item_fc apply; /* Application de l'élément */
+ run_item_fc cancel; /* Retrait de l'élément */
prepare_db_statement prepare_stmt; /* Préparation d'une requête */
load_db_item_fc load; /* Chargement à partir d'une BD*/