Main Page | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

gvrender.h

Go to the documentation of this file.
00001 /* $Id: gvrender.h,v 1.1 2005/04/09 03:38:19 roxo Exp $ $Revision: 1.1 $ */
00002 /* vim:set shiftwidth=4 ts=8: */
00003 
00004 /**********************************************************
00005 *      This software is part of the graphviz package      *
00006 *                http://www.graphviz.org/                 *
00007 *                                                         *
00008 *            Copyright (c) 1994-2004 AT&T Corp.           *
00009 *                and is licensed under the                *
00010 *            Common Public License, Version 1.0           *
00011 *                      by AT&T Corp.                      *
00012 *                                                         *
00013 *        Information and Software Systems Research        *
00014 *              AT&T Research, Florham Park NJ             *
00015 **********************************************************/
00016 
00017 
00018 /* This is the public header for the callers of libgvrender */
00019 
00020 #ifndef GVRENDER_H
00021 #define GVRENDER_H
00022 
00023 #include "gvrenderint.h"
00024 
00025 #ifdef __cplusplus
00026 extern "C" {
00027 #endif
00028 
00029 /* context */
00030 
00031     extern GVC_t *gvNEWcontext(char **info, char *user);
00032     extern void gvBindContext(GVC_t * gvc, graph_t * g);
00033     extern void gvFREEcontext(GVC_t * gvc);
00034 
00035 /* configuration */
00036 
00037     extern void gvconfig(GVC_t * gvc, char *config);
00038     extern boolean gvconfig_install_plugin(GVC_t * gvc, char *api,
00039                                            char *type, char *path,
00040                                            void *fn);
00041     extern gv_plugin_t *gvconfig_load_plugin(GVC_t * gvc, char *api,
00042                                              char *type);
00043     extern char *gvconfig_list_plugins(GVC_t * gvc, char *api);
00044 
00045 /* job */
00046 
00047     extern void gvrender_output_filename_job(GVC_t * gvc, char *name);
00048     extern void gvrender_output_langname_job(GVC_t * gvc, char *name);
00049     extern gvrender_job_t *gvrender_first_job(GVC_t * gvc);
00050     extern gvrender_job_t *gvrender_next_job(GVC_t * gvc);
00051     extern void gvrender_delete_jobs(GVC_t * gvc);
00052 
00053 /* lang */
00054 
00055     extern int gvlang_select(GVC_t * gvc, char *name, int warn);
00056     extern char *gvlang_name(int langID);
00057 
00058 /* render */
00059 
00060     extern int gvrender_features(GVC_t * gvc);
00061     extern void gvrender_reset(GVC_t * gvc);
00062     extern void gvrender_begin_job(GVC_t * gvc, char **lib, point pages);
00063     extern void gvrender_end_job(GVC_t * gvc);
00064     extern void gvrender_begin_graph(GVC_t * gvc, graph_t * g, box bb,
00065                                      point pb);
00066     extern void gvrender_end_graph(GVC_t * gvc);
00067     extern void gvrender_begin_page(GVC_t * gvc, point page, double scale,
00068                                     int rot, point offset);
00069     extern void gvrender_end_page(GVC_t * gvc);
00070     extern void gvrender_begin_layer(GVC_t * gvc, char *layerName, int n,
00071                                      int nLayers);
00072     extern void gvrender_end_layer(GVC_t * gvc);
00073     extern void gvrender_begin_cluster(GVC_t * gvc, graph_t * sg);
00074     extern void gvrender_end_cluster(GVC_t * gvc);
00075     extern void gvrender_begin_nodes(GVC_t * gvc);
00076     extern void gvrender_end_nodes(GVC_t * gvc);
00077     extern void gvrender_begin_edges(GVC_t * gvc);
00078     extern void gvrender_end_edges(GVC_t * gvc);
00079     extern void gvrender_begin_node(GVC_t * gvc, node_t * n);
00080     extern void gvrender_end_node(GVC_t * gvc);
00081     extern void gvrender_begin_edge(GVC_t * gvc, edge_t * e);
00082     extern void gvrender_end_edge(GVC_t * gvc);
00083     extern void gvrender_begin_context(GVC_t * gvc);
00084     extern void gvrender_end_context(GVC_t * gvc);
00085     extern void gvrender_begin_anchor(GVC_t * gvc, char *href,
00086                                       char *tooltip, char *target);
00087     extern void gvrender_end_anchor(GVC_t * gvc);
00088     extern void gvrender_set_font(GVC_t * gvc, char *fontname,
00089                                   double fontsize);
00090     extern void gvrender_textline(GVC_t * gvc, pointf p, textline_t * str);
00091     extern void gvrender_set_pencolor(GVC_t * gvc, char *name);
00092     extern void gvrender_set_fillcolor(GVC_t * gvc, char *name);
00093     extern void gvrender_set_style(GVC_t * gvc, char **s);
00094     extern void gvrender_ellipse(GVC_t * gvc, point p, int rx, int ry,
00095                                  int filled);
00096     extern void gvrender_polygon(GVC_t * gvc, point * A, int n,
00097                                  int filled);
00098     extern void gvrender_beziercurve(GVC_t * gvc, pointf * AF, int n,
00099                                      int arrow_at_start, int arrow_at_end);
00100     extern void gvrender_polyline(GVC_t * gvc, point * A, int n);
00101     extern void gvrender_comment(GVC_t * gvc, void *obj, attrsym_t * sym);
00102     extern void gvrender_user_shape(GVC_t * gvc, char *name, point * A,
00103                                     int sides, int filled);
00104 
00105 #ifdef __cplusplus
00106 }
00107 #endif
00108 #endif
Untitled Document Pesquisa Psi SourceForge.net Logo