#endif
struct gvrender_engine_s {
- void (*begin_job) (GVC_t * gvc);
- void (*end_job) (GVC_t * gvc);
- void (*begin_graph) (GVC_t * gvc, char *graphname);
- void (*end_graph) (GVC_t * gvc);
- void (*begin_page) (GVC_t * gvc, char *pagename);
- void (*end_page) (GVC_t * gvc);
- void (*begin_layer) (GVC_t * gvc, char *layername);
- void (*end_layer) (GVC_t * gvc);
- void (*begin_cluster) (GVC_t * gvc, char *clustername, long id);
- void (*end_cluster) (GVC_t * gvc);
- void (*begin_nodes) (GVC_t * gvc);
- void (*end_nodes) (GVC_t * gvc);
- void (*begin_edges) (GVC_t * gvc);
- void (*end_edges) (GVC_t * gvc);
- void (*begin_node) (GVC_t * gvc, char *nodename, long id);
- void (*end_node) (GVC_t * gvc);
- void (*begin_edge) (GVC_t * gvc, char *tailname, boolean directed,
+ void (*begin_job) (gvrender_job_t * job);
+ void (*end_job) (gvrender_job_t * job);
+ void (*begin_graph) (gvrender_job_t * job, char *graphname);
+ void (*end_graph) (gvrender_job_t * job);
+ void (*begin_page) (gvrender_job_t * job, char *pagename);
+ void (*end_page) (gvrender_job_t * job);
+ void (*begin_layer) (gvrender_job_t * job, char *layername);
+ void (*end_layer) (gvrender_job_t * job);
+ void (*begin_cluster) (gvrender_job_t * job, char *clustername, long id);
+ void (*end_cluster) (gvrender_job_t * job);
+ void (*begin_nodes) (gvrender_job_t * job);
+ void (*end_nodes) (gvrender_job_t * job);
+ void (*begin_edges) (gvrender_job_t * job);
+ void (*end_edges) (gvrender_job_t * job);
+ void (*begin_node) (gvrender_job_t * job, char *nodename, long id);
+ void (*end_node) (gvrender_job_t * job);
+ void (*begin_edge) (gvrender_job_t * job, char *tailname, boolean directed,
char *headname, long id);
- void (*end_edge) (GVC_t * gvc);
- void (*begin_anchor) (GVC_t * gvc, char *href, char *tooltip,
+ void (*end_edge) (gvrender_job_t * job);
+ void (*begin_anchor) (gvrender_job_t * job, char *href, char *tooltip,
char *target);
- void (*end_anchor) (GVC_t * gvc);
- void (*textline) (GVC_t * gvc, pointf p, textline_t * str);
- void (*resolve_color) (GVC_t * gvc, color_t * color);
- void (*ellipse) (GVC_t * gvc, pointf * A, int filled);
- void (*polygon) (GVC_t * gvc, pointf * A, int n, int filled);
- void (*beziercurve) (GVC_t * gvc, pointf * A, int n,
+ void (*end_anchor) (gvrender_job_t * job);
+ void (*textline) (gvrender_job_t * job, pointf p, textline_t * str);
+ void (*resolve_color) (gvrender_job_t * job, color_t * color);
+ void (*ellipse) (gvrender_job_t * job, pointf * A, int filled);
+ void (*polygon) (gvrender_job_t * job, pointf * A, int n, int filled);
+ void (*beziercurve) (gvrender_job_t * job, pointf * A, int n,
int arrow_at_start, int arrow_at_end);
- void (*polyline) (GVC_t * gvc, pointf * A, int n);
- void (*comment) (GVC_t * gvc, char *comment);
- void (*user_shape) (GVC_t * gvc, char *name, pointf * A, int sides,
+ void (*polyline) (gvrender_job_t * job, pointf * A, int n);
+ void (*comment) (gvrender_job_t * job, char *comment);
+ void (*user_shape) (gvrender_job_t * job, char *name, pointf * A, int sides,
int filled);
};
job->focus.y = y;
if (gvre) {
if (gvre->begin_job)
- gvre->begin_job(gvc);
+ gvre->begin_job(job);
}
#ifndef DISABLE_CODEGENS
else {
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_job)
- gvre->end_job(gvc);
+ gvre->end_job(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
/* render specific init */
if (gvre->begin_graph)
- gvre->begin_graph(gvc, g->name);
+ gvre->begin_graph(job, g->name);
/* background color */
if (((str = agget(g, "bgcolor")) != 0) && str[0]) {
gvrender_resolve_color(job->render_features, str,
&(gvc->bgcolor));
if (gvre->resolve_color)
- gvre->resolve_color(gvc, &(gvc->bgcolor));
+ gvre->resolve_color(job, &(gvc->bgcolor));
}
/* init stack */
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_graph)
- gvre->end_graph(gvc);
+ gvre->end_graph(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
// gvc->offset = offset;
gvc->page_number = page.x + page.y * gvc->pages.x + 1;
if (gvre && gvre->begin_page)
- gvre->begin_page(gvc, gvc->g->name);
+ gvre->begin_page(job, gvc->g->name);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_page)
- gvre->end_page(gvc);
+ gvre->end_page(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvc->layer = layer;
gvc->nLayers = nLayers;
if (gvre && gvre->begin_layer)
- gvre->begin_layer(gvc, layername);
+ gvre->begin_layer(job, layername);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_layer)
- gvre->end_layer(gvc);
+ gvre->end_layer(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->begin_cluster)
- gvre->begin_cluster(gvc, sg->name, sg->meta_node->id);
+ gvre->begin_cluster(job, sg->name, sg->meta_node->id);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_cluster)
- gvre->end_cluster(gvc);
+ gvre->end_cluster(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->begin_nodes)
- gvre->begin_nodes(gvc);
+ gvre->begin_nodes(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_nodes)
- gvre->end_nodes(gvc);
+ gvre->end_nodes(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->begin_edges)
- gvre->begin_edges(gvc);
+ gvre->begin_edges(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_edges)
- gvre->end_edges(gvc);
+ gvre->end_edges(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->begin_node)
- gvre->begin_node(gvc, n->name, n->id);
+ gvre->begin_node(job, n->name, n->id);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_node)
- gvre->end_node(gvc);
+ gvre->end_node(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->begin_edge)
- gvre->begin_edge(gvc, e->tail->name,
+ gvre->begin_edge(job, e->tail->name,
e->tail->graph->root->kind & AGFLAG_DIRECTED,
e->head->name, e->id);
#ifndef DISABLE_CODEGENS
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_edge)
- gvre->end_edge(gvc);
+ gvre->end_edge(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->begin_anchor)
- gvre->begin_anchor(gvc, href, tooltip, target);
+ gvre->begin_anchor(job, href, tooltip, target);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
gvrender_engine_t *gvre = job->render_engine;
if (gvre && gvre->end_anchor)
- gvre->end_anchor(gvc);
+ gvre->end_anchor(job);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;
if (line->str && line->str[0]) {
if (gvre && gvre->textline) {
if (job->style->pen != PEN_NONE) {
- gvre->textline(gvc, gvrender_ptf(gvc, p), line);
+ gvre->textline(job, gvrender_ptf(gvc, p), line);
}
}
#ifndef DISABLE_CODEGENS
if (gvre) {
gvrender_resolve_color(job->render_features, name, color);
if (gvre->resolve_color)
- gvre->resolve_color(gvc, color);
+ gvre->resolve_color(job, color);
}
#ifndef DISABLE_CODEGENS
else {
if (gvre) {
gvrender_resolve_color(job->render_features, name, color);
if (gvre->resolve_color)
- gvre->resolve_color(gvc, color);
+ gvre->resolve_color(job, color);
}
#ifndef DISABLE_CODEGENS
else {
/* end hack */
for (i = 0; i < 2; i++)
AF[i] = gvrender_ptf(gvc, AF[i]);
- gvre->ellipse(gvc, AF, filled);
+ gvre->ellipse(job, AF, filled);
}
}
#ifndef DISABLE_CODEGENS
/* end hack */
for (i = 0; i < n; i++)
AF[i] = gvrender_pt(gvc, A[i]);
- gvre->polygon(gvc, AF, n, filled);
+ gvre->polygon(job, AF, n, filled);
}
}
#ifndef DISABLE_CODEGENS
AF2 = realloc(AF2, n * sizeof(pointf));
for (i = 0; i < n; i++)
AF2[i] = gvrender_ptf(gvc, AF[i]);
- gvre->beziercurve(gvc, AF2, n, arrow_at_start, arrow_at_end);
+ gvre->beziercurve(job, AF2, n, arrow_at_start, arrow_at_end);
}
}
#ifndef DISABLE_CODEGENS
AF = realloc(AF, n * sizeof(pointf));
for (i = 0; i < n; i++)
AF[i] = gvrender_pt(gvc, A[i]);
- gvre->polyline(gvc, AF, n);
+ gvre->polyline(job, AF, n);
}
}
#ifndef DISABLE_CODEGENS
if (gvre && gvre->comment) {
if (sym)
- gvre->comment(gvc, agxget(obj, sym->index));
+ gvre->comment(job, agxget(obj, sym->index));
}
#ifndef DISABLE_CODEGENS
else {
/* end hack */
if (gvre && gvre->user_shape)
- gvre->user_shape(gvc, name, AF, n, filled);
+ gvre->user_shape(job, name, AF, n, filled);
#ifndef DISABLE_CODEGENS
else {
codegen_t *cg = job->codegen;