#ifndef GVCPROC_H
#define GVCPROC_H
-#define extern
-
/* these are intended to be private entry points - see gvc.h for the public ones */
/* configuration */
- extern char *gvconfig_libdir(GVC_t * gvc);
- extern void gvconfig(GVC_t * gvc, boolean rescan);
- extern char *gvhostname(void);
+ char *gvconfig_libdir(GVC_t * gvc);
+ void gvconfig(GVC_t * gvc, boolean rescan);
+ char *gvhostname(void);
/* plugins */
- extern boolean gvplugin_install(GVC_t * gvc, api_t api,
+ boolean gvplugin_install(GVC_t * gvc, api_t api,
const char *typestr, int quality, gvplugin_package_t *package,
gvplugin_installed_t * typeptr);
- extern gvplugin_available_t *gvplugin_load(GVC_t * gvc, api_t api, const char *type);
- extern gvplugin_library_t *gvplugin_library_load(GVC_t *gvc, char *path);
- extern api_t gvplugin_api(const char *str);
- extern char * gvplugin_api_name(api_t api);
- extern void gvplugin_write_status(GVC_t * gvc);
- extern char *gvplugin_list(GVC_t * gvc, api_t api, const char *str);
+ gvplugin_available_t *gvplugin_load(GVC_t * gvc, api_t api, const char *type);
+ gvplugin_library_t *gvplugin_library_load(GVC_t *gvc, char *path);
+ api_t gvplugin_api(const char *str);
+ char * gvplugin_api_name(api_t api);
+ void gvplugin_write_status(GVC_t * gvc);
+ char *gvplugin_list(GVC_t * gvc, api_t api, const char *str);
- extern Agraph_t * gvplugin_graph(GVC_t * gvc);
+ Agraph_t * gvplugin_graph(GVC_t * gvc);
/* job */
- extern void gvjobs_output_filename(GVC_t * gvc, const char *name);
- extern boolean gvjobs_output_langname(GVC_t * gvc, const char *name);
- extern GVJ_t *gvjobs_first(GVC_t * gvc);
- extern GVJ_t *gvjobs_next(GVC_t * gvc);
- extern void gvjobs_delete(GVC_t * gvc);
+ void gvjobs_output_filename(GVC_t * gvc, const char *name);
+ boolean gvjobs_output_langname(GVC_t * gvc, const char *name);
+ GVJ_t *gvjobs_first(GVC_t * gvc);
+ GVJ_t *gvjobs_next(GVC_t * gvc);
+ void gvjobs_delete(GVC_t * gvc);
/* emit */
- extern void gvemit_graph(GVC_t * gvc, graph_t * g);
+ void gvemit_graph(GVC_t * gvc, graph_t * g);
/* textlayout */
- extern int gvtextlayout_select(GVC_t * gvc);
- extern boolean gvtextlayout(GVC_t *gvc, textspan_t *span, char **fontpath);
+ int gvtextlayout_select(GVC_t * gvc);
+ boolean gvtextlayout(GVC_t *gvc, textspan_t *span, char **fontpath);
/* loadimage */
- extern void gvloadimage(GVJ_t *job, usershape_t *us, boxf b, boolean filled, const char *target);
+ void gvloadimage(GVJ_t *job, usershape_t *us, boxf b, boolean filled, const char *target);
/* usershapes */
- extern point gvusershape_size_dpi(usershape_t *us, pointf dpi);
- extern point gvusershape_size(graph_t *g, char *name);
- extern usershape_t *gvusershape_find(char *name);
+ point gvusershape_size_dpi(usershape_t *us, pointf dpi);
+ point gvusershape_size(graph_t *g, char *name);
+ usershape_t *gvusershape_find(char *name);
/* device */
- extern int gvdevice_initialize(GVJ_t * job);
- extern void gvdevice_format(GVJ_t * job);
- extern void gvdevice_finalize(GVJ_t * job);
+ int gvdevice_initialize(GVJ_t * job);
+ void gvdevice_format(GVJ_t * job);
+ void gvdevice_finalize(GVJ_t * job);
/* render */
- extern pointf gvrender_ptf(GVJ_t *job, pointf p);
- extern pointf* gvrender_ptf_A(GVJ_t *job, pointf *af, pointf *AF, int n);
-
- extern int gvrender_begin_job(GVJ_t * job);
- extern void gvrender_end_job(GVJ_t * job);
- extern int gvrender_select(GVJ_t * job, const char *lang);
- extern int gvrender_features(GVJ_t * job);
- extern void gvrender_begin_graph(GVJ_t * job, graph_t * g);
- extern void gvrender_end_graph(GVJ_t * job);
- extern void gvrender_begin_page(GVJ_t * job);
- extern void gvrender_end_page(GVJ_t * job);
- extern void gvrender_begin_layer(GVJ_t * job);
- extern void gvrender_end_layer(GVJ_t * job);
- extern void gvrender_begin_cluster(GVJ_t * job, graph_t * sg);
- extern void gvrender_end_cluster(GVJ_t * job, graph_t *g);
- extern void gvrender_begin_nodes(GVJ_t * job);
- extern void gvrender_end_nodes(GVJ_t * job);
- extern void gvrender_begin_edges(GVJ_t * job);
- extern void gvrender_end_edges(GVJ_t * job);
- extern void gvrender_begin_node(GVJ_t * job, node_t * n);
- extern void gvrender_end_node(GVJ_t * job);
- extern void gvrender_begin_edge(GVJ_t * job, edge_t * e);
- extern void gvrender_end_edge(GVJ_t * job);
- extern void gvrender_begin_anchor(GVJ_t * job,
+ pointf gvrender_ptf(GVJ_t *job, pointf p);
+ pointf* gvrender_ptf_A(GVJ_t *job, pointf *af, pointf *AF, int n);
+
+ int gvrender_begin_job(GVJ_t * job);
+ void gvrender_end_job(GVJ_t * job);
+ int gvrender_select(GVJ_t * job, const char *lang);
+ int gvrender_features(GVJ_t * job);
+ void gvrender_begin_graph(GVJ_t * job, graph_t * g);
+ void gvrender_end_graph(GVJ_t * job);
+ void gvrender_begin_page(GVJ_t * job);
+ void gvrender_end_page(GVJ_t * job);
+ void gvrender_begin_layer(GVJ_t * job);
+ void gvrender_end_layer(GVJ_t * job);
+ void gvrender_begin_cluster(GVJ_t * job, graph_t * sg);
+ void gvrender_end_cluster(GVJ_t * job, graph_t *g);
+ void gvrender_begin_nodes(GVJ_t * job);
+ void gvrender_end_nodes(GVJ_t * job);
+ void gvrender_begin_edges(GVJ_t * job);
+ void gvrender_end_edges(GVJ_t * job);
+ void gvrender_begin_node(GVJ_t * job, node_t * n);
+ void gvrender_end_node(GVJ_t * job);
+ void gvrender_begin_edge(GVJ_t * job, edge_t * e);
+ void gvrender_end_edge(GVJ_t * job);
+ void gvrender_begin_anchor(GVJ_t * job,
char *href, char *tooltip, char *target, char *id);
- extern void gvrender_end_anchor(GVJ_t * job);
- extern void gvrender_begin_label(GVJ_t * job, label_type type);
- extern void gvrender_end_label(GVJ_t * job);
- extern void gvrender_textspan(GVJ_t * job, pointf p, textspan_t * span);
- extern void gvrender_set_pencolor(GVJ_t * job, char *name);
- extern void gvrender_set_penwidth(GVJ_t * job, double penwidth);
- extern void gvrender_set_fillcolor(GVJ_t * job, char *name);
- extern void gvrender_set_gradient_vals (GVJ_t * job, char *stopcolor, int angle, float frac);
-
- extern void gvrender_set_style(GVJ_t * job, char **s);
- extern void gvrender_ellipse(GVJ_t * job, pointf * AF, int n, int filled);
- extern void gvrender_polygon(GVJ_t* job, pointf* af, int n, int filled);
- extern void gvrender_box(GVJ_t * job, boxf BF, int filled);
- extern void gvrender_beziercurve(GVJ_t * job, pointf * AF, int n,
+ void gvrender_end_anchor(GVJ_t * job);
+ void gvrender_begin_label(GVJ_t * job, label_type type);
+ void gvrender_end_label(GVJ_t * job);
+ void gvrender_textspan(GVJ_t * job, pointf p, textspan_t * span);
+ void gvrender_set_pencolor(GVJ_t * job, char *name);
+ void gvrender_set_penwidth(GVJ_t * job, double penwidth);
+ void gvrender_set_fillcolor(GVJ_t * job, char *name);
+ void gvrender_set_gradient_vals (GVJ_t * job, char *stopcolor, int angle, float frac);
+
+ void gvrender_set_style(GVJ_t * job, char **s);
+ void gvrender_ellipse(GVJ_t * job, pointf * AF, int n, int filled);
+ void gvrender_polygon(GVJ_t* job, pointf* af, int n, int filled);
+ void gvrender_box(GVJ_t * job, boxf BF, int filled);
+ void gvrender_beziercurve(GVJ_t * job, pointf * AF, int n,
int arrow_at_start, int arrow_at_end, boolean filled);
- extern void gvrender_polyline(GVJ_t * job, pointf * AF, int n);
- extern void gvrender_comment(GVJ_t * job, char *str);
- extern void gvrender_usershape(GVJ_t * job, char *name, pointf * AF, int n, boolean filled, char *imagescale, char *imagepos);
+ void gvrender_polyline(GVJ_t * job, pointf * AF, int n);
+ void gvrender_comment(GVJ_t * job, char *str);
+ void gvrender_usershape(GVJ_t * job, char *name, pointf * AF, int n, boolean filled, char *imagescale, char *imagepos);
/* layout */
- extern int gvlayout_select(GVC_t * gvc, const char *str);
- extern int gvFreeLayout(GVC_t * gvc, Agraph_t * g);
- extern int gvLayoutJobs(GVC_t * gvc, Agraph_t * g);
+ int gvlayout_select(GVC_t * gvc, const char *str);
+ int gvFreeLayout(GVC_t * gvc, Agraph_t * g);
+ int gvLayoutJobs(GVC_t * gvc, Agraph_t * g);
/* argvlist */
- extern gv_argvlist_t *gvNEWargvlist(void);
- extern void gv_argvlist_set_item(gv_argvlist_t *list, int index, char *item);
- extern void gv_argvlist_reset(gv_argvlist_t *list);
- extern void gv_argvlist_free(gv_argvlist_t *list);
-
-#undef extern
+ gv_argvlist_t *gvNEWargvlist(void);
+ void gv_argvlist_set_item(gv_argvlist_t *list, int index, char *item);
+ void gv_argvlist_reset(gv_argvlist_t *list);
+ void gv_argvlist_free(gv_argvlist_t *list);
#endif /* GVCPROC_H */