]> granicus.if.org Git - graphviz/commitdiff
separate boolean logic defs from types.h and macros.h
authorellson <devnull@localhost>
Tue, 18 Oct 2005 18:30:15 +0000 (18:30 +0000)
committerellson <devnull@localhost>
Tue, 18 Oct 2005 18:30:15 +0000 (18:30 +0000)
23 files changed:
lib/common/Makefile.am
lib/common/Makefile.old
lib/common/geom.c
lib/common/geom.h
lib/common/macros.h
lib/common/postproc.c
lib/common/render.h
lib/common/renderprocs.h
lib/common/shapes.c
lib/common/types.h
lib/gvc/gvcint.h
lib/gvc/gvconfig.c
lib/gvc/gvcontext.c
lib/gvc/gvcproc.h
lib/gvc/gvdevice.c
lib/gvc/gvjobs.c
lib/gvc/gvlayout.c
lib/gvc/gvplugin.c
lib/gvc/gvrender.c
lib/gvc/gvtextlayout.c
lib/gvc/gvusershape.c
plugin/dot_layout/gvlayout_dot_layout.c
plugin/neato_layout/gvlayout_neato_layout.c

index 8a17068a46848a2d1e0f8cc21a2a2e2679fdeb41..252404787591775dab0736b10294dcc3e60e3186 100644 (file)
@@ -9,8 +9,9 @@ AM_CPPFLAGS = \
        -I$(top_srcdir)/lib/graph \
        -I$(top_srcdir)/lib/cdt  @GD_INCLUDES@ @EXPAT_INCLUDES@ @Z_INCLUDES@
 
-pkginclude_HEADERS = const.h globals.h htmllex.h htmltable.h macros.h \
-       pointset.h render.h renderprocs.h types.h utils.h colortbl.h geom.h
+pkginclude_HEADERS = logic.h geom.h const.h macros.h types.h globals.h \
+       htmllex.h htmltable.h pointset.h render.h renderprocs.h \
+       utils.h colortbl.h
 noinst_LTLIBRARIES = libcommon.la
 
 if !DISABLE_CODEGENS
index 2a8998ade785beca019d77fd96fb30ff441b830f..0aef2071fc720d5a62188a65e347cd4eb99ddffd 100644 (file)
@@ -19,7 +19,7 @@ DEFINES = -DHAVE_CONFIG_H
 AWKDIR = $(ROOT)/awk
 
 HDRS = colortbl.h const.h globals.h macros.h render.h \
-       renderprocs.h types.h utils.h geom.h
+       renderprocs.h types.h utils.h geom.h logic.h
 
 OBJS = args.o arrows.o gdusershape.o mapgen.o psgen.o svgusershape.o \
        colxlate.o globals.o mifgen.o psusershape.o timing.o \
index 4216305dc730305bbfaa9fdabc9f1c98a6c463d3..196167f2adb7503c20faf9f6b78bb276c9b3707c 100644 (file)
 /* geometric functions (e.g. on points and boxes) with application to, but
  * no specific dependance on graphs */
 
-#include <assert.h>
-#include <math.h>
 #include <stdio.h>
-
-#include "types.h"
-#include "macros.h"
-#include "const.h"
+#include "logic.h"
+#include "pathplan.h"
 #include "geom.h"
 
 point pointof(int x, int y)
@@ -355,84 +351,98 @@ int lineToBox(pointf p1, pointf p2, boxf b)
     return -1;
 }
 
-/* flip_ptf:
- * Transform point =>
- *  LR - rotate ccw by 90
- *  BT - reflect across x axis
- *  RL - TB o LR
- */
-point flip_pt(point p, int rankdir)
+point ccwrotatep(point p, int ccwrot)
 {
     int x = p.x, y = p.y;
-    switch (rankdir) {
-    case RANKDIR_TB:
+    switch (ccwrot) {
+    case 0:
        break;
-    case RANKDIR_LR:
+    case 90:
        p.x = -y;
        p.y = x;
        break;
-    case RANKDIR_BT:
+    case 180:
        p.x = x;
        p.y = -y;
        break;
-    case RANKDIR_RL:
+    case 270:
        p.x = y;
        p.y = x;
        break;
+    default:
+       fprintf(stderr,"unsupported ccw rotation: %d degrees\n", ccwrot);
     }
     return p;
 }
 
-/* flip_ptf:
- * flip_pt for pointf type.
- */
-pointf flip_ptf(pointf p, int rankdir)
+pointf ccwrotatepf(pointf p, int ccwrot)
 {
     double x = p.x, y = p.y;
-    switch (rankdir) {
-    case RANKDIR_TB:
+    switch (ccwrot) {
+    case 0:
        break;
-    case RANKDIR_LR:
+    case 90:
        p.x = -y;
        p.y = x;
        break;
-    case RANKDIR_BT:
+    case 180:
        p.x = x;
        p.y = -y;
        break;
-    case RANKDIR_RL:
+    case 270:
        p.x = y;
        p.y = x;
        break;
+    default:
+       fprintf(stderr,"unsupported ccw rotation: %d degrees\n", ccwrot);
     }
     return p;
 }
 
-/* invflip_pt:
- * Transform point =>
- *  LR - rotate cw by 90
- *  BT - reflect across x axis
- *  RL - TB o LR
- * Note that flip and invflip only differ on LR
- */
-point invflip_pt(point p, int rankdir)
+point cwrotatep(point p, int cwrot)
 {
     int x = p.x, y = p.y;
-    switch (rankdir) {
-    case RANKDIR_TB:
+    switch (cwrot) {
+    case 0:
+       break;
+    case 90:
+       p.x = y;
+       p.y = -x;
+       break;
+    case 180:
+       p.x = x;
+       p.y = -y;
+       break;
+    case 270:
+       p.x = y;
+       p.y = x;
+       break;
+    default:
+       fprintf(stderr,"unsupported cw rotation: %d degrees\n", cwrot);
+    }
+    return p;
+}
+
+pointf cwrotatepf(pointf p, int cwrot)
+{
+    double x = p.x, y = p.y;
+    switch (cwrot) {
+    case 0:
        break;
-    case RANKDIR_LR:
+    case 90:
        p.x = y;
        p.y = -x;
        break;
-    case RANKDIR_BT:
+    case 180:
        p.x = x;
        p.y = -y;
        break;
-    case RANKDIR_RL:
+    case 270:
        p.x = y;
        p.y = x;
        break;
+    default:
+       fprintf(stderr,"unsupported cw rotation: %d degrees\n", cwrot);
     }
     return p;
 }
index 9d738c7bf9b1c2f518192931efdb5de47f02f019..e52f0f7290ef728a5a06de0e3f18423a6225b22b 100644 (file)
 /* geometric functions (e.g. on points and boxes) with application to, but
  * no specific dependance on graphs */
 
+#ifndef GV_GEOM_H
+#define GV_GEOM_H
+
+#include "pathplan.h"
+
 #ifdef __cplusplus
 extern "C" {
 #endif
+    
+typedef struct point { int x, y; } point;
+
+typedef Ppoint_t pointf;
+
+typedef struct box { point LL, UR; } box;
+
+typedef struct boxf { pointf LL, UR; } boxf;
+
+#ifdef MIN
+#undef MIN
+#endif
+#define MIN(a,b)       ((a)<(b)?(a):(b))
 
-    extern point pointof(int, int);
-    extern pointf cvt2ptf(point);
-    extern point cvt2pt(pointf);
-    extern point add_points(point, point);
-    extern pointf add_pointfs(pointf, pointf);
-    extern point sub_points(point, point);
-    extern pointf sub_pointfs(pointf, pointf);
-    extern point exch_xy(point p);
-    extern pointf exch_xyf(pointf p);
-
-    extern box boxof(int llx, int lly, int urx, int ury);
-    extern boxf boxfof(double llx, double lly, double urx, double ury);
-    extern box mkbox(point, point);
-    extern boxf mkboxf(pointf, pointf);
-    extern box box_bb(box, box);
-    extern boxf boxf_bb(boxf, boxf);
-    extern box box_intersect(box, box);
-    extern boxf boxf_intersect(boxf, boxf);
-    extern boolean box_overlap(box, box);
-    extern boolean boxf_overlap(boxf, boxf);
-    extern boolean box_contains(box, box);
-    extern boolean boxf_contains(boxf, boxf);
-    extern box flip_rec_box(box b, point p);
-
-    extern int lineToBox(pointf p1, pointf p2, boxf b);
-    extern double dist2(pointf p, pointf q);
-
-    extern point flip_pt(point p, int rankdir);
-    extern pointf flip_ptf(pointf p, int rankdir);
-    extern point invflip_pt(point p, int rankdir);
+#ifdef MAX
+#undef MAX
+#endif
+#define MAX(a,b)       ((a)>(b)?(a):(b))
+
+#ifdef ABS
+#undef ABS
+#endif
+#define ABS(a)         ((a) >= 0 ? (a) : -(a))
+
+#ifndef MAXINT
+#define        MAXINT          ((int)(~(unsigned)0 >> 1))
+#endif
+#ifndef MAXSHORT
+#define        MAXSHORT        (0x7fff)
+#endif
+#ifndef MAXDOUBLE
+#define MAXDOUBLE   1.7976931348623157e+308
+#endif
+#ifndef MAXFLOAT
+#define MAXFLOAT   ((float)3.40282347e+38)
+#endif
+
+#ifdef BETWEEN
+#undef BETWEEN
+#endif
+#define BETWEEN(a,b,c) (((a) <= (b)) && ((b) <= (c)))
+
+/* true if point p is inside box b */
+#define INSIDE(p,b)    (BETWEEN((b).LL.x,(p).x,(b).UR.x) && BETWEEN((b).LL.y,(p).y,(b).UR.y))
+/* true if boxes b0 and b1 overlap */
+#define OVERLAP(b0,b1) (((b0).UR.x >= (b1).LL.x) && ((b1).UR.x >= (b0).LL.x) && ((b0).UR.y >= (b1).LL.y) && ((b1).UR.y >= (b0).LL.y))
+/* true if box b0 completely contains b1*/
+#define CONTAINS(b0,b1)        (((b0).UR.x >= (b1).UR.x) && ((b0).UR.y >= (b1).UR.y) && ((b0).LL.x <= (b1).LL.x) && ((b0).LL.y <= (b1).LL.y))
+
+/* expand box b as needed to enclose point p */
+#define EXPANDBP(b, p) (b.LL.x = MIN(b.LL.x, p.x), b.LL.y = MIN(b.LL.y, p.y), b.UR.x = MAX(b.UR.x, p.x), b.UR.y = MAX(b.UR.y, p.y))
+/* expand box b0 as needed to enclose box b1 */
+#define EXPANDBB(b0, b1) (b0.LL.x = MIN(b0.LL.x, b1.LL.x), b0.LL.y = MIN(b0.LL.y, b1.LL.y), b0.UR.x = MAX(b0.UR.x, b1.UR.x), b0.UR.y = MAX(b0.UR.y, b1.UR.y))
+
+#define ROUND(f)        ((f>=0)?(int)(f + .5):(int)(f - .5))
+#define RADIANS(deg)   ((deg)/180.0 * PI)
+#define DEGREES(rad)   ((rad)/PI * 180.0)
+
+#define SQR(v) ((v) * (v))
+#define DIST2(p1,p2) (SQR((p1.x) - (p2.x))) + (SQR((p1.y) - (p2.y)))
+#define DIST(p1,p2) (sqrt(DIST2((p1),(p2))))
+
+#define POINTS_PER_INCH        72
+#define POINTS(f_inch) (ROUND((f_inch)*POINTS_PER_INCH))
+#define PS2INCH(ps)            ((ps)/(double)POINTS_PER_INCH)
+
+#define P2PF(p, pf) (pf.x = p.x, pf.y = p.y)
+#define PF2P(pf, p) (p.x = ROUND (pf.x), p.y = ROUND (pf.y))
+#define B2BF(b, bf) (bf.LL.x = b.LL.x, bf.LL.y = b.LL.y, bf.UR.x = b.UR.x, bf.UR.y = b.UR.y)
+#define BF2B(bf, b) (b.LL.x = ROUND (bf.LL.x), b.LL.y = ROUND (bf.LL.y), b.UR.x = ROUND (bf.UR.x), b.UR.y = ROUND (bf.UR.y))
+
+extern point pointof(int, int);
+extern pointf cvt2ptf(point);
+extern point cvt2pt(pointf);
+extern point add_points(point, point);
+extern pointf add_pointfs(pointf, pointf);
+extern point sub_points(point, point);
+extern pointf sub_pointfs(pointf, pointf);
+extern point exch_xy(point p);
+extern pointf exch_xyf(pointf p);
+
+extern box boxof(int llx, int lly, int urx, int ury);
+extern boxf boxfof(double llx, double lly, double urx, double ury);
+extern box mkbox(point, point);
+extern boxf mkboxf(pointf, pointf);
+extern box box_bb(box, box);
+extern boxf boxf_bb(boxf, boxf);
+extern box box_intersect(box, box);
+extern boxf boxf_intersect(boxf, boxf);
+extern boolean box_overlap(box, box);
+extern boolean boxf_overlap(boxf, boxf);
+extern boolean box_contains(box, box);
+extern boolean boxf_contains(boxf, boxf);
+extern box flip_rec_box(box b, point p);
+
+extern int lineToBox(pointf p1, pointf p2, boxf b);
+extern double dist2(pointf p, pointf q);
+
+extern point ccwrotatep(point p, int ccwrot);
+extern pointf ccwrotatepf(pointf p, int ccwrot);
+extern point cwrotatep(point p, int cwrot);
+extern pointf cwrotatepf(pointf p, int cwrot);
 
 #ifdef __cplusplus
 }
 #endif
+
+#endif
index 55defae057ea4cfd62d46be6f05a25caeb69adfd..62015731dc8382af8b7ce4f94f35263d3ac203ac 100644 (file)
 #ifndef GV_MACROS_H
 #define GV_MACROS_H
 
-#define NOT(v)         (!(v))
-#ifndef FALSE
-#define        FALSE           0
-#endif
-#ifndef TRUE
-#define TRUE           NOT(FALSE)
-#endif
-
-#ifndef NOTUSED
-#define NOTUSED(var)      (void) var
-#endif
-
-#ifndef NULL
-#define NULL (void *)0
-#endif
-
-#ifndef NIL
-#define NIL(type)       ((type)0)
-#endif
-
 #ifdef DMALLOC
 #define NEW(t)          (t*)calloc(1,sizeof(t))
 #define N_NEW(n,t)      (t*)calloc((n),sizeof(t))
 #define ZALLOC(size,ptr,type,osize) (ptr? (type*)zrealloc(ptr,size,sizeof(type),osize):(type*)zmalloc((size)*sizeof(type)))
 #endif
 
-#ifdef MIN
-#undef MIN
-#endif
-#define MIN(a,b)       ((a)<(b)?(a):(b))
-
-#ifdef MAX
-#undef MAX
-#endif
-#define MAX(a,b)       ((a)>(b)?(a):(b))
-
-#ifdef ABS
-#undef ABS
-#endif
-#define ABS(a)         ((a) >= 0 ? (a) : -(a))
-
-#ifndef MAXINT
-#define        MAXINT          ((int)(~(unsigned)0 >> 1))
-#endif
-#ifndef MAXSHORT
-#define        MAXSHORT        (0x7fff)
-#endif
-#ifndef MAXDOUBLE
-#define MAXDOUBLE   1.7976931348623157e+308
-#endif
-#ifndef MAXFLOAT
-#define MAXFLOAT   ((float)3.40282347e+38)
-#endif
-
-#ifdef BETWEEN
-#undef BETWEEN
-#endif
-#define BETWEEN(a,b,c) (((a) <= (b)) && ((b) <= (c)))
-
-/* true if point p is inside box b */
-#define INSIDE(p,b)    (BETWEEN((b).LL.x,(p).x,(b).UR.x) && BETWEEN((b).LL.y,(p).y,(b).UR.y))
-/* true if boxes b0 and b1 overlap */
-#define OVERLAP(b0,b1) (((b0).UR.x >= (b1).LL.x) && ((b1).UR.x >= (b0).LL.x) && ((b0).UR.y >= (b1).LL.y) && ((b1).UR.y >= (b0).LL.y))
-/* true if box b0 completely contains b1*/
-#define CONTAINS(b0,b1)        (((b0).UR.x >= (b1).UR.x) && ((b0).UR.y >= (b1).UR.y) && ((b0).LL.x <= (b1).LL.x) && ((b0).LL.y <= (b1).LL.y))
-
-/* expand box b as needed to enclose point p */
-#define EXPANDBP(b, p) (b.LL.x = MIN(b.LL.x, p.x), b.LL.y = MIN(b.LL.y, p.y), b.UR.x = MAX(b.UR.x, p.x), b.UR.y = MAX(b.UR.y, p.y))
-/* expand box b0 as needed to enclose box b1 */
-#define EXPANDBB(b0, b1) (b0.LL.x = MIN(b0.LL.x, b1.LL.x), b0.LL.y = MIN(b0.LL.y, b1.LL.y), b0.UR.x = MAX(b0.UR.x, b1.UR.x), b0.UR.y = MAX(b0.UR.y, b1.UR.y))
-
-#define ROUND(f)        ((f>=0)?(int)(f + .5):(int)(f - .5))
-#define RADIANS(deg)   ((deg)/180.0 * PI)
-#define DEGREES(rad)   ((rad)/PI * 180.0)
-
-#define SQR(v) ((v) * (v))
-#define DIST2(p1,p2) (SQR((p1.x) - (p2.x))) + (SQR((p1.y) - (p2.y)))
-#define DIST(p1,p2) (sqrt(DIST2((p1),(p2))))
-
-#define POINTS_PER_INCH        72
-#define POINTS(f_inch) (ROUND((f_inch)*POINTS_PER_INCH))
-#define PS2INCH(ps)            ((ps)/(double)POINTS_PER_INCH)
-
 #define isPinned(n)     (ND_pinned(n) == P_PIN)
 #define hasPos(n)       (ND_pinned(n) > 0)
 #define isFixed(n)      (ND_pinned(n) > P_SET)
 #define streq(a,b)             (*(a)==*(b)&&!strcmp(a,b))
 #endif
 
-#define P2PF(p, pf) (pf.x = p.x, pf.y = p.y)
-#define PF2P(pf, p) (p.x = ROUND (pf.x), p.y = ROUND (pf.y))
-#define B2BF(b, bf) (bf.LL.x = b.LL.x, bf.LL.y = b.LL.y, bf.UR.x = b.UR.x, bf.UR.y = b.UR.y)
-#define BF2B(bf, b) (b.LL.x = ROUND (bf.LL.x), b.LL.y = ROUND (bf.LL.y), b.UR.x = ROUND (bf.UR.x), b.UR.y = ROUND (bf.UR.y))
-
 #define XPAD(d) ((d).x += 4*GAP)
 #define YPAD(d) ((d).y += 2*GAP)
 #define PAD(d)  {XPAD(d); YPAD(d);}
index 4df06af9cf4af118a163c97b5c8a5b6e8e74c92b..5bb962ebea0fa27e278c753bd4710c707b7f0f41 100644 (file)
@@ -86,7 +86,7 @@ static void place_flip_graph_label(graph_t * g);
 
 point map_point(point p)
 {
-    p = flip_pt(p, Rankdir);
+    p = ccwrotatep(p, Rankdir*90);
     p.x -= Offset.x;
     p.y -= Offset.y;
     return p;
index 1f5add85c195faabd2d9ff423d4f10bbfde20603..f4ead6837f34d4dd5332c3696b7f886d85884679 100644 (file)
@@ -49,6 +49,9 @@
 #include <string.h>
 #endif
 
+#include "logic.h"
+#include "pathplan.h"
+#include "geom.h"
 #include "macros.h"
 #include "const.h"
 #include "types.h"
index e17c9933ac5889146666f592cd3132b7b1535fea..7252e284f7a51d5d578ca56eace2ebbe5ac945a2 100644 (file)
@@ -79,6 +79,7 @@ extern "C" {
     extern splines *getsplinepoints(edge_t * e);
     extern void global_def(char *,
                           Agsym_t * (*fun) (Agraph_t *, char *, char *));
+    extern int gvRenderJobs (GVC_t * gvc, graph_t * g);
     extern point image_size(graph_t * g, char *shapefile);
     extern boolean isPolygon(node_t *);
     extern char *strdup_and_subst_graph(char *str, Agraph_t * g);
index 3be317abd3a34071c9a93c018fc333c5d2fc0258..a3912eeed4a9bc9aab44ae30e3223da365a733d0 100644 (file)
@@ -780,7 +780,7 @@ static boolean poly_inside(inside_t * inside_context, pointf p)
     box *bp = inside_context->s.bp;
     node_t *n = inside_context->s.n;
 
-    P = flip_ptf(p, GD_rankdir(n->graph));
+    P = ccwrotatepf(p, 90*GD_rankdir(n->graph));
 
     /* Quick test if port rectangle is target */
     if (bp) {
@@ -1127,7 +1127,7 @@ compassPort(node_t* n, box* bp, port* pp, char* compass, int sides, inside_t* ic
            break;
        }
     }
-    p = invflip_pt(p, GD_rankdir(n->graph));
+    p = cwrotatep(p, 90*GD_rankdir(n->graph));
     pp->side = invflip_side(side, GD_rankdir(n->graph));
     pp->bp = bp;
     pp->p = p;
@@ -1755,7 +1755,7 @@ record_inside(inside_t * inside_context, pointf p)
     box bbox;
 
     /* convert point to node coordinate system */
-    p = flip_ptf(p, GD_rankdir(n->graph));
+    p = ccwrotatepf(p, 90*GD_rankdir(n->graph));
 
     if (bp == NULL) {
        fld0 = (field_t *) ND_shape_info(n);
@@ -1930,7 +1930,7 @@ static boolean epsf_inside(inside_t * inside_context, pointf p)
     double x2;
     node_t *n = inside_context->s.n;
 
-    P = flip_ptf(p, GD_rankdir(n->graph));
+    P = ccwrotatepf(p, 90*GD_rankdir(n->graph));
     x2 = ND_ht_i(n) / 2;
     return ((P.y >= -x2) && (P.y <= x2) && (P.x >= -ND_lw_i(n))
            && (P.x <= ND_rw_i(n)));
index 4d61c207237ff6a41b90beb54e2a5a066ba0014e..db52d96548c7fd0e01d9789715d98ee34be77371 100644 (file)
 #ifndef GV_TYPES_H
 #define GV_TYPES_H
 
-#include "pathplan.h"
-
 #ifdef __cplusplus
 extern "C" {
 #endif
 
-    typedef unsigned char boolean;
-
     typedef int (*qsort_cmpf) (const void *, const void *);
     typedef int (*bsearch_cmpf) (const void *, const void *);
 
@@ -43,20 +39,6 @@ extern "C" {
 
     typedef struct htmllabel_t htmllabel_t;
 
-    typedef struct point {
-       int x, y;
-    } point;
-
-    typedef Ppoint_t pointf;
-
-    typedef struct box {
-       point LL, UR;
-    } box;
-
-    typedef struct boxf {
-       pointf LL, UR;
-    } boxf;
-
     typedef union inside_t {
        struct {
            pointf* p;
index 8f0d2f0dc37ec17a6aee4ea2dec88a601c805289..bed55245e8b621cda70e0c8166315f428ec77e51 100644 (file)
 extern "C" {
 #endif
 
-#ifndef FALSE
-#define FALSE 0
-#define TRUE (! FALSE)
-#endif
-
 #define ARRAY_SIZE(A) (sizeof(A)/sizeof(A[0]))
 
     typedef enum { PEN_NONE, PEN_DASHED, PEN_DOTTED, PEN_SOLID } pen_type;
index dc67d804796208d8be421551340a93379c285f29..2d5631a4a1c43ea17f4ac04874fa24518c584aa5 100644 (file)
 #include       <glob.h>
 #endif
 
-#include        "types.h"
+#include        "logic.h"
+#include        "pathplan.h"
+#include        "geom.h"
 #include        "macros.h"
 #include        "const.h"
+#include        "types.h"
 #include        "graph.h"
 #include       "gvplugin.h"
 #include       "gvcint.h"
index a5d6bb93a68261415152759fbff9533b5d37a5ce..e5ce0c843981b13b0861bc40f75e8f84a586addb 100644 (file)
 #include        <stdio.h>
 #include        <stdlib.h>
 
-#include       "types.h"
+#include       "logic.h"
+#include       "pathplan.h"
+#include       "geom.h"
 #include       "macros.h"
+#include       "types.h"
 #include       "graph.h"
 #include        "gvplugin.h"
 #include        "gvcint.h"
index 00c6c860010b8a0db7e9fcd62dff2424e87e3cb5..cdc476d010ef306a1b5718568565c7d32994b36e 100644 (file)
@@ -125,6 +125,8 @@ extern "C" {
 /* layout */
 
     extern int gvlayout_select(GVC_t * gvc, char *str);
+    extern int gvFreeLayout(GVC_t * gvc, graph_t * g);
+    extern int gvLayoutJobs(GVC_t * gvc, graph_t * g);
 
 #ifdef __cplusplus
 }
index e898ac44702e619a9326fa3d68f8042527104fe3..fc88f04da78689cee3b2be49dd90089f330ceedc 100644 (file)
@@ -27,6 +27,9 @@
 #include <stdio.h>
 #include <string.h>
 
+#include "logic.h"
+#include "pathplan.h"
+#include "geom.h"
 #include "const.h"
 #include "types.h"
 #include "macros.h"
index c92d51f07e0613b1e48a0b0402df651901a7fd06..1237b9b6590ac06f85644d4bb9ac2e3b03b90404 100644 (file)
@@ -21,6 +21,9 @@
 #include       <stdio.h>
 #include       <stdlib.h>
 
+#include       "logic.h"
+#include       "pathplan.h"
+#include       "geom.h"
 #include       "types.h"
 #include        "gvplugin.h"
 #include        "gvcint.h"
index 07bff434ca1c104884801bcfb4401737ce17281b..b3760f2690819027e195eae371fe2d820816f2d8 100644 (file)
@@ -25,6 +25,9 @@
 
 #include <stdio.h>
 
+#include "logic.h"
+#include "pathplan.h"
+#include "geom.h"
 #include "const.h"
 #include "types.h"
 #include "macros.h"
index 073cb21c44f6f5f3773c46aeb94e337a10248062..9ef0643935fbb5c9db928a523cc6f679b799f32f 100644 (file)
@@ -26,6 +26,9 @@
 #include       <ltdl.h>
 #endif
 
+#include        "logic.h"
+#include        "pathplan.h"
+#include        "geom.h"
 #include        "types.h"
 #include        "macros.h"
 #include        "graph.h"
index 2f3ee59d777d8a4b16eb154294dfb062f4db420b..522c04fb0d695200062c2da1ee39e5ed148e593e 100644 (file)
 #include <stdlib.h>
 #include <string.h>
 
+#include "logic.h"
+#include "pathplan.h"
+#include "geom.h"
 #include "const.h"
 #include "types.h"
 #include "macros.h"
+#include "geom.h"
 #include "globals.h"
 #include "graph.h"
 #include "cdt.h"
index 0972a362dd6d3f538955acc9f6f07e3803b86b92..246c4d495c01222e63b08c64de76050cbc5d2910 100644 (file)
@@ -24,6 +24,9 @@
 
 #include <stdio.h>
 
+#include "logic.h"
+#include "pathplan.h"
+#include "geom.h"
 #include "const.h"
 #include "types.h"
 #include "macros.h"
index a967f4e9ab3688fbae4de071ba4edd0de0f7f128..2c374d01aaf0d0efab76a365558f6d223c70a81a 100644 (file)
@@ -37,6 +37,9 @@
 
 #include <stdio.h>
 
+#include "logic.h"
+#include "pathplan.h"
+#include "geom.h"
 #include "const.h"
 #include "types.h"
 #include "macros.h"
index dd186ff8a00d1ac9e0e24ff731e287943ebf2792..dc6119ba446252969c2bb5c7474541639abab29a 100644 (file)
@@ -21,6 +21,9 @@
 
 #include <stdio.h>
 
+#include "logic.h"
+#include "pathplan.h"
+#include "geom.h"
 #include "macros.h"
 #include "const.h"
 #include "types.h"
index 7b7da8c926a62dbbf8a49faf3984540a1e4c2daa..7f98ee2b56cd05460eac479abda4c1004fb0d623 100644 (file)
@@ -26,6 +26,9 @@
 
 #include <stdio.h>
 
+#include "logic.h"
+#include "pathplan.h"
+#include "geom.h"
 #include "macros.h"
 #include "const.h"
 #include "types.h"