From 607611ba11f26785b2ade4e1a46303bb669946d7 Mon Sep 17 00:00:00 2001 From: alegrand Date: Mon, 27 Mar 2006 14:27:50 +0000 Subject: [PATCH] handle directed graphs in graphviz export git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@1993 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- src/xbt/graph.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/xbt/graph.c b/src/xbt/graph.c index f5ed770471..370a03c30d 100644 --- a/src/xbt/graph.c +++ b/src/xbt/graph.c @@ -462,19 +462,24 @@ void xbt_graph_export_graphviz(xbt_graph_t g, const char *filename, file=fopen(filename,"w"); xbt_assert1(file, "Failed to open %s \n",filename); - fprintf(file,"graph test {\n"); + if(g->directed) fprintf(file,"digraph test {\n"); + else fprintf(file,"graph test {\n"); + fprintf(file," graph [overlap=scale]\n"); fprintf(file," node [shape=box, style=filled]\n"); fprintf(file," node [width=.3, height=.3, style=filled, color=skyblue]\n\n"); xbt_dynar_foreach(g->nodes, cursor, node) { - fprintf(file," %p ", node); + fprintf(file," \"%p\" ", node); if((node_name)&&((name=node_name(node)))) fprintf(file,"[label=\"%s\"]",name); fprintf(file,";\n"); } xbt_dynar_foreach(g->edges, cursor, edge) { - fprintf(file," %p -- %p",edge->src, edge->dst); + if(g->directed) + fprintf(file," \"%p\" -> \"%p\"",edge->src, edge->dst); + else + fprintf(file," \"%p\" -- \"%p\"",edge->src, edge->dst); if((edge_name)&&((name=edge_name(edge)))) fprintf(file,"[label=\"%s\"]",name); fprintf(file,";\n"); } -- 2.20.1