wolffd@0
|
1 /* $Id: gvplugin_render.h,v 1.36 2009/06/03 01:10:53 ellson Exp $ $Revision: 1.36 $ */
|
wolffd@0
|
2 /* vim:set shiftwidth=4 ts=8: */
|
wolffd@0
|
3
|
wolffd@0
|
4 /**********************************************************
|
wolffd@0
|
5 * This software is part of the graphviz package *
|
wolffd@0
|
6 * http://www.graphviz.org/ *
|
wolffd@0
|
7 * *
|
wolffd@0
|
8 * Copyright (c) 1994-2004 AT&T Corp. *
|
wolffd@0
|
9 * and is licensed under the *
|
wolffd@0
|
10 * Common Public License, Version 1.0 *
|
wolffd@0
|
11 * by AT&T Corp. *
|
wolffd@0
|
12 * *
|
wolffd@0
|
13 * Information and Software Systems Research *
|
wolffd@0
|
14 * AT&T Research, Florham Park NJ *
|
wolffd@0
|
15 **********************************************************/
|
wolffd@0
|
16
|
wolffd@0
|
17 #ifndef GVPLUGIN_RENDER_H
|
wolffd@0
|
18 #define GVPLUGIN_RENDER_H
|
wolffd@0
|
19
|
wolffd@0
|
20 #include "types.h"
|
wolffd@0
|
21 #include "gvplugin.h"
|
wolffd@0
|
22 #include "gvcjob.h"
|
wolffd@0
|
23
|
wolffd@0
|
24 #ifdef __cplusplus
|
wolffd@0
|
25 extern "C" {
|
wolffd@0
|
26 #endif
|
wolffd@0
|
27
|
wolffd@0
|
28 struct gvrender_engine_s {
|
wolffd@0
|
29 void (*begin_job) (GVJ_t * job);
|
wolffd@0
|
30 void (*end_job) (GVJ_t * job);
|
wolffd@0
|
31 void (*begin_graph) (GVJ_t * job);
|
wolffd@0
|
32 void (*end_graph) (GVJ_t * job);
|
wolffd@0
|
33 void (*begin_layer) (GVJ_t * job, char *layername,
|
wolffd@0
|
34 int layerNum, int numLayers);
|
wolffd@0
|
35 void (*end_layer) (GVJ_t * job);
|
wolffd@0
|
36 void (*begin_page) (GVJ_t * job);
|
wolffd@0
|
37 void (*end_page) (GVJ_t * job);
|
wolffd@0
|
38 void (*begin_cluster) (GVJ_t * job);
|
wolffd@0
|
39 void (*end_cluster) (GVJ_t * job);
|
wolffd@0
|
40 void (*begin_nodes) (GVJ_t * job);
|
wolffd@0
|
41 void (*end_nodes) (GVJ_t * job);
|
wolffd@0
|
42 void (*begin_edges) (GVJ_t * job);
|
wolffd@0
|
43 void (*end_edges) (GVJ_t * job);
|
wolffd@0
|
44 void (*begin_node) (GVJ_t * job);
|
wolffd@0
|
45 void (*end_node) (GVJ_t * job);
|
wolffd@0
|
46 void (*begin_edge) (GVJ_t * job);
|
wolffd@0
|
47 void (*end_edge) (GVJ_t * job);
|
wolffd@0
|
48 void (*begin_anchor) (GVJ_t * job,
|
wolffd@0
|
49 char *href, char *tooltip, char *target, char *id);
|
wolffd@0
|
50 void (*end_anchor) (GVJ_t * job);
|
wolffd@0
|
51 void (*begin_label) (GVJ_t * job, label_type type);
|
wolffd@0
|
52 void (*end_label) (GVJ_t * job);
|
wolffd@0
|
53 void (*textpara) (GVJ_t * job, pointf p, textpara_t * str);
|
wolffd@0
|
54 void (*resolve_color) (GVJ_t * job, gvcolor_t * color);
|
wolffd@0
|
55 void (*ellipse) (GVJ_t * job, pointf * A, int filled);
|
wolffd@0
|
56 void (*polygon) (GVJ_t * job, pointf * A, int n, int filled);
|
wolffd@0
|
57 void (*beziercurve) (GVJ_t * job, pointf * A, int n,
|
wolffd@0
|
58 int arrow_at_start, int arrow_at_end, int);
|
wolffd@0
|
59 void (*polyline) (GVJ_t * job, pointf * A, int n);
|
wolffd@0
|
60 void (*comment) (GVJ_t * job, char *comment);
|
wolffd@0
|
61 void (*library_shape) (GVJ_t * job, char *name, pointf * A, int n, int filled);
|
wolffd@0
|
62 };
|
wolffd@0
|
63
|
wolffd@0
|
64 #ifdef __cplusplus
|
wolffd@0
|
65 }
|
wolffd@0
|
66 #endif
|
wolffd@0
|
67 #endif /* GVPLUGIN_RENDER_H */
|