]> granicus.if.org Git - graphviz/commitdiff
Combine identical initialization and termination functions, and
authorerg <devnull@localhost>
Sat, 19 Apr 2008 16:00:36 +0000 (16:00 +0000)
committererg <devnull@localhost>
Sat, 19 Apr 2008 16:00:36 +0000 (16:00 +0000)
put into common.

lib/fdpgen/fdpinit.c
lib/neatogen/neatoinit.c
lib/neatogen/neatoprocs.h
lib/twopigen/twopiinit.c

index 7858c0f83bf86177bac19d85d6a5c6f44368735a..ff98e199f01372a69c78abf66dd28fc89a46de9b 100644 (file)
@@ -110,34 +110,6 @@ void fdp_init_node_edge(graph_t * g)
 
 }
 
-static void fdp_cleanup_node(node_t * n)
-{
-    free(ND_pos(n));
-    if (ND_shape(n))
-       ND_shape(n)->fns->freefn(n);
-    free_label(ND_label(n));
-    memset(&(n->u), 0, sizeof(Agnodeinfo_t));
-}
-
-static void fdp_free_splines(edge_t * e)
-{
-    int i;
-    if (ED_spl(e)) {
-       for (i = 0; i < ED_spl(e)->size; i++)
-           free(ED_spl(e)->list[i].list);
-       free(ED_spl(e)->list);
-       free(ED_spl(e));
-    }
-    ED_spl(e) = NULL;
-}
-
-static void fdp_cleanup_edge(edge_t * e)
-{
-    fdp_free_splines(e);
-    free_label(ED_label(e));
-    memset(&(e->u), 0, sizeof(Agedgeinfo_t));
-}
-
 static void cleanup_subgs(graph_t * g)
 {
     graph_t *mg;
@@ -175,9 +147,9 @@ void fdp_cleanup(graph_t * g)
     free(ND_alg(n));
     for (; n; n = agnxtnode(g, n)) {
        for (e = agfstedge(g, n); e; e = agnxtedge(g, e, n)) {
-           fdp_cleanup_edge(e);
+           gv_cleanup_edge(e);
        }
-       fdp_cleanup_node(n);
+       gv_cleanup_node(n);
     }
     fdp_cleanup_graph(g);
 }
index 14121d9a0fafae41103cef3396e4f1db8205ac33..3eeb4facd373ae01c7ae505a53fe0966317ed58b 100644 (file)
@@ -43,20 +43,11 @@ static int Pack;            /* If >= 0, layout components separately and pack together
                                 */
 static char *cc_pfx = "_neato_cc";
 
-void neato_nodesize(node_t * n, boolean flip)
-{
-    int w;
-
-    w = ND_xsize(n) = POINTS(ND_width(n));
-    ND_lw_i(n) = ND_rw_i(n) = w / 2;
-    ND_ht_i(n) = ND_ysize(n) = POINTS(ND_height(n));
-}
-
 void neato_init_node(node_t * n)
 {
     common_init_node(n);
     ND_pos(n) = N_NEW(GD_ndim(n->graph), double);
-    neato_nodesize(n, GD_flip(n->graph));
+    gv_nodesize(n, GD_flip(n->graph));
 }
 
 void neato_init_edge(edge_t * e)
@@ -144,36 +135,7 @@ void neato_init_node_edge(graph_t * g)
     }
 }
 
-void neato_cleanup_node(node_t * n)
-{
-    if (ND_shape(n)) {
-       ND_shape(n)->fns->freefn(n);
-    }
-    free(ND_pos(n));
-    free_label(ND_label(n));
-    memset(&(n->u), 0, sizeof(Agnodeinfo_t));
-}
-
-void neato_free_splines(edge_t * e)
-{
-    int i;
-    if (ED_spl(e)) {
-       for (i = 0; i < ED_spl(e)->size; i++)
-           free(ED_spl(e)->list[i].list);
-       free(ED_spl(e)->list);
-       free(ED_spl(e));
-    }
-    ED_spl(e) = NULL;
-}
-
-void neato_cleanup_edge(edge_t * e)
-{
-    neato_free_splines(e);
-    free_label(ED_label(e));
-    memset(&(e->u), 0, sizeof(Agedgeinfo_t));
-}
-
-void neato_cleanup_graph(graph_t * g)
+static void neato_cleanup_graph(graph_t * g)
 {
     if (Nop || (Pack < 0))
        free_scan_graph(g);
@@ -187,9 +149,9 @@ void neato_cleanup(graph_t * g)
 
     for (n = agfstnode(g); n; n = agnxtnode(g, n)) {
        for (e = agfstout(g, n); e; e = agnxtout(g, e)) {
-           neato_cleanup_edge(e);
+           gv_cleanup_edge(e);
        }
-       neato_cleanup_node(n);
+       gv_cleanup_node(n);
     }
     neato_cleanup_graph(g);
 }
index e815645b3d242857f158a7dcdd83e7aac865de26..df0f5ae3f387c1799fb680169a4ee7c30b1675ac 100644 (file)
@@ -50,9 +50,6 @@ extern "C" {
     extern int init_nop(graph_t * g, int);
     extern void neato_nodesize(node_t * n, boolean flip);
     extern void neato_cleanup(graph_t * g);
-    extern void neato_cleanup_edge(edge_t * e);
-    extern void neato_cleanup_graph(graph_t * g);
-    extern void neato_cleanup_node(node_t * n);
     extern node_t *neato_dequeue(void);
     extern void neato_enqueue(node_t *);
     extern void neato_free_splines(edge_t * e);
index 80d024983ac0250533d4838c92b59d4768354733..0a345d8650dffa67a89ce2840ad956c129085ab2 100644 (file)
@@ -29,7 +29,7 @@ static void twopi_init_node(node_t * n)
 {
     common_init_node(n);
 
-    neato_nodesize(n, GD_flip(n->graph));
+    gv_nodesize(n, GD_flip(n->graph));
     ND_pos(n) = ALLOC(GD_ndim(n->graph), 0, double);
 }
 
@@ -128,33 +128,6 @@ void twopi_layout(Agraph_t * g)
 
 }
 
-static void twopi_cleanup_node(node_t * n)
-{
-    if (ND_shape(n))
-       ND_shape(n)->fns->freefn(n);
-    free_label(ND_label(n));
-    memset(&(n->u), 0, sizeof(Agnodeinfo_t));
-}
-
-static void twopi_free_splines(edge_t * e)
-{
-    int i;
-    if (ED_spl(e)) {
-       for (i = 0; i < ED_spl(e)->size; i++)
-           free(ED_spl(e)->list[i].list);
-       free(ED_spl(e)->list);
-       free(ED_spl(e));
-    }
-    ED_spl(e) = NULL;
-}
-
-static void twopi_cleanup_edge(edge_t * e)
-{
-    twopi_free_splines(e);
-    free_label(ED_label(e));
-    memset(&(e->u), 0, sizeof(Agedgeinfo_t));
-}
-
 static void twopi_cleanup_graph(graph_t * g)
 {
     free(GD_neato_nlist(g));
@@ -168,9 +141,9 @@ void twopi_cleanup(graph_t * g)
 
     for (n = agfstnode(g); n; n = agnxtnode(g, n)) {
        for (e = agfstout(g, n); e; e = agnxtout(g, e)) {
-           twopi_cleanup_edge(e);
+           gv_cleanup_edge(e);
        }
-       twopi_cleanup_node(n);
+       gv_cleanup_node(n);
     }
     twopi_cleanup_graph(g);
 }