Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Keep up with last dtd extensions.
[simgrid.git] / include / xbt / graph.h
index 2718e6e..a98a096 100644 (file)
@@ -40,24 +40,25 @@ xbt_dynar_t xbt_graph_get_nodes(xbt_graph_t g);
 xbt_dynar_t xbt_graph_get_edges(xbt_graph_t g);
 xbt_node_t xbt_graph_edge_get_source(xbt_edge_t e);
 xbt_node_t xbt_graph_edge_get_target(xbt_edge_t e);
-xbt_graph_t xbt_graph_read(const char *filename);
+xbt_graph_t xbt_graph_read(const char *filename,
+                          void *(node_label_and_data)(xbt_node_t, const char*, const char*),
+                          void *(edge_label_and_data)(xbt_edge_t, const char*, const char*)
+                          );
  
+void xbt_graph_export_graphviz(xbt_graph_t g, const char *filename,
+                              const char *(node_name)(xbt_node_t),
+                              const char *(edge_name)(xbt_edge_t));
+void xbt_graph_export_graphxml(xbt_graph_t g, const char *filename,
+                              const char *(node_name)(xbt_node_t),
+                              const char *(edge_name)(xbt_edge_t),
+                              const char *(node_data_print)(void *),
+                              const char *(edge_data_print)(void *));
 
 /* Not implemented yet ! */
-void xbt_export_graphviz(xbt_graph_t g, const char *filename,
-                        const char *(node_name)(xbt_node_t),
-                        const char *(edge_name)(xbt_edge_t)
-                        );
-
-void xbt_graph_export_surfxml(xbt_graph_t g,
-                             const char *filename,
-                             const char *(node_name)(xbt_node_t),
-                             const char *(edge_name)(xbt_edge_t)
-                             );
-
 /* void *xbt_graph_to_array(xbt_graph_t g);  */
 xbt_node_t* xbt_graph_shortest_paths(xbt_graph_t g);
 void xbt_graph_topological_sort(xbt_graph_t g);
+xbt_edge_t* xbt_graph_spanning_tree_prim(xbt_graph_t g);