summaryrefslogtreecommitdiff
path: root/src/analysis/disass/disassembler.h
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2012-12-16 21:55:04 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2012-12-16 21:55:04 (GMT)
commit64e09a6c3e39785975b5322973ed83734cedb82e (patch)
treea87d29cca9d86ccd26676460282ddf59c4e9cb17 /src/analysis/disass/disassembler.h
parent2581d80875304c466e8930dbe67986ceb95752b2 (diff)
Reintroduced the delayed disassembling of binaries.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@304 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/analysis/disass/disassembler.h')
-rw-r--r--src/analysis/disass/disassembler.h31
1 files changed, 30 insertions, 1 deletions
diff --git a/src/analysis/disass/disassembler.h b/src/analysis/disass/disassembler.h
index 8cca194..b7c286c 100644
--- a/src/analysis/disass/disassembler.h
+++ b/src/analysis/disass/disassembler.h
@@ -30,8 +30,37 @@
+/* ------------------------ DESASSEMBLAGE DE BINAIRE DIFFERE ------------------------ */
+
+
+#define G_TYPE_DELAYED_DISASSEMBLY g_delayed_disassembly_get_type()
+#define G_DELAYED_DISASSEMBLY(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), g_delayed_disassembly_get_type(), GDelayedDisassembly))
+#define G_IS_DELAYED_DISASSEMBLY(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), g_delayed_disassembly_get_type()))
+#define G_DELAYED_DISASSEMBLY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), G_TYPE_DELAYED_DISASSEMBLY, GDelayedDisassemblyClass))
+#define G_IS_DELAYED_DISASSEMBLY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), G_TYPE_DELAYED_DISASSEMBLY))
+#define G_DELAYED_DISASSEMBLY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), G_TYPE_DELAYED_DISASSEMBLY, GDelayedDisassemblyClass))
+
+
+/* Ensembles binaires à désassembler (instance) */
+typedef struct _GDelayedDisassembly GDelayedDisassembly;
+
+/* Ensembles binaires à désassembler (classe) */
+typedef struct _GDelayedDisassemblyClass GDelayedDisassemblyClass;
+
+
+/* Indique le type défini pour les tâches de désassemblage différé. */
+GType g_delayed_disassembly_get_type(void);
+
+
+
+/* -------------------------- GESTION GLOBALE DE PROCEDURE -------------------------- */
+
+
+/* Acquitte la fin d'un désasemblage différé et complet. */
+typedef void (* disassembly_ack_fc) (GDelayedDisassembly *, GLoadedBinary *);
+
/* Procède à la décompilation des routines d'un fichier donné. */
-void disassemble_binary(GLoadedBinary *, GBinPart **parts, size_t parts_count, GArchInstruction **, GCodeBuffer **);
+void disassemble_binary(GLoadedBinary *, GBinPart **parts, size_t parts_count, GArchInstruction **, GCodeBuffer **, disassembly_ack_fc);