Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Initial revision
[simgrid.git] / examples / alnem / alnem_builder.c
diff --git a/examples/alnem/alnem_builder.c b/examples/alnem/alnem_builder.c
new file mode 100644 (file)
index 0000000..3077cb6
--- /dev/null
@@ -0,0 +1,38 @@
+/* $Id$ */
+
+/* ALNeM builder. Take an interference matrix as argument,                  */
+/*  and reconstruct the corresponding graph itself                          */
+
+/* Authors: Martin Quinson                                                  */
+/* Copyright (C) 2003 the OURAGAN project.                                  */
+
+/* This program is free software; you can redistribute it and/or modify it
+   under the terms of the license (GNU LGPL) which comes with this package. */
+
+
+#include <stdio.h>
+#include <stdlib.h>
+
+#include <tbx_graph.h> /* alvin's graph toolbox (+ reconstruction algorithm) */
+
+int main(int argc,char *argv[]) {
+  TBX_Graph_t graph; /* a dummy graph containing all hosts */
+  TBX_FIFO_t host_fifo;
+  TBX_InterfTable_t interf; /* the measured interferences */
+  TBX_Graph_t builded_graph; /* the graph builded from the interferences */
+
+  if (argc != 2) {
+    fprintf(stderr,"alnem_builder: USAGE:\n");
+    fprintf(stderr,"  alnem_builder interference_file\n");
+    exit (1);
+  }
+
+  if (TBX_Graph_interferenceTableRead (argv[1],&graph,&interf,&host_fifo)) {
+    fprintf(stderr,"Can't read the interference data, aborting\n");
+    exit (1);
+  }
+
+  builded_graph = TBX_Graph_exploreInterference(interf);
+  TBX_Graph_exportToGraphViz(builded_graph, "toto.dot");
+  return 0;
+}