wolffd@0: /* $Id: gvplugin_render.h,v 1.36 2009/06/03 01:10:53 ellson Exp $ $Revision: 1.36 $ */ wolffd@0: /* vim:set shiftwidth=4 ts=8: */ wolffd@0: wolffd@0: /********************************************************** wolffd@0: * This software is part of the graphviz package * wolffd@0: * http://www.graphviz.org/ * wolffd@0: * * wolffd@0: * Copyright (c) 1994-2004 AT&T Corp. * wolffd@0: * and is licensed under the * wolffd@0: * Common Public License, Version 1.0 * wolffd@0: * by AT&T Corp. * wolffd@0: * * wolffd@0: * Information and Software Systems Research * wolffd@0: * AT&T Research, Florham Park NJ * wolffd@0: **********************************************************/ wolffd@0: wolffd@0: #ifndef GVPLUGIN_RENDER_H wolffd@0: #define GVPLUGIN_RENDER_H wolffd@0: wolffd@0: #include "types.h" wolffd@0: #include "gvplugin.h" wolffd@0: #include "gvcjob.h" wolffd@0: wolffd@0: #ifdef __cplusplus wolffd@0: extern "C" { wolffd@0: #endif wolffd@0: wolffd@0: struct gvrender_engine_s { wolffd@0: void (*begin_job) (GVJ_t * job); wolffd@0: void (*end_job) (GVJ_t * job); wolffd@0: void (*begin_graph) (GVJ_t * job); wolffd@0: void (*end_graph) (GVJ_t * job); wolffd@0: void (*begin_layer) (GVJ_t * job, char *layername, wolffd@0: int layerNum, int numLayers); wolffd@0: void (*end_layer) (GVJ_t * job); wolffd@0: void (*begin_page) (GVJ_t * job); wolffd@0: void (*end_page) (GVJ_t * job); wolffd@0: void (*begin_cluster) (GVJ_t * job); wolffd@0: void (*end_cluster) (GVJ_t * job); wolffd@0: void (*begin_nodes) (GVJ_t * job); wolffd@0: void (*end_nodes) (GVJ_t * job); wolffd@0: void (*begin_edges) (GVJ_t * job); wolffd@0: void (*end_edges) (GVJ_t * job); wolffd@0: void (*begin_node) (GVJ_t * job); wolffd@0: void (*end_node) (GVJ_t * job); wolffd@0: void (*begin_edge) (GVJ_t * job); wolffd@0: void (*end_edge) (GVJ_t * job); wolffd@0: void (*begin_anchor) (GVJ_t * job, wolffd@0: char *href, char *tooltip, char *target, char *id); wolffd@0: void (*end_anchor) (GVJ_t * job); wolffd@0: void (*begin_label) (GVJ_t * job, label_type type); wolffd@0: void (*end_label) (GVJ_t * job); wolffd@0: void (*textpara) (GVJ_t * job, pointf p, textpara_t * str); wolffd@0: void (*resolve_color) (GVJ_t * job, gvcolor_t * color); wolffd@0: void (*ellipse) (GVJ_t * job, pointf * A, int filled); wolffd@0: void (*polygon) (GVJ_t * job, pointf * A, int n, int filled); wolffd@0: void (*beziercurve) (GVJ_t * job, pointf * A, int n, wolffd@0: int arrow_at_start, int arrow_at_end, int); wolffd@0: void (*polyline) (GVJ_t * job, pointf * A, int n); wolffd@0: void (*comment) (GVJ_t * job, char *comment); wolffd@0: void (*library_shape) (GVJ_t * job, char *name, pointf * A, int n, int filled); wolffd@0: }; wolffd@0: wolffd@0: #ifdef __cplusplus wolffd@0: } wolffd@0: #endif wolffd@0: #endif /* GVPLUGIN_RENDER_H */