Graphviz  2.29.20120523.0446
lib/dotgen/dotprocs.h
Go to the documentation of this file.
00001 /* $Id$ $Revision$ */
00002 /* vim:set shiftwidth=4 ts=8: */
00003 
00004 /*************************************************************************
00005  * Copyright (c) 2011 AT&T Intellectual Property 
00006  * All rights reserved. This program and the accompanying materials
00007  * are made available under the terms of the Eclipse Public License v1.0
00008  * which accompanies this distribution, and is available at
00009  * http://www.eclipse.org/legal/epl-v10.html
00010  *
00011  * Contributors: See CVS logs. Details at http://www.graphviz.org/
00012  *************************************************************************/
00013 
00014 #ifndef DOTPROCS_H
00015 #define DOTPROCS_H
00016 
00017 #ifdef _BEGIN_EXTERNS_
00018 _BEGIN_EXTERNS_                 /* public data */
00019 #endif
00020 /* tabs at 8, or you're a sorry loser */
00021 #ifdef __cplusplus
00022 extern "C" {
00023 #endif
00024 
00025 #include "aspect.h"
00026 
00027     extern void acyclic(Agraph_t *);
00028     extern void allocate_ranks(Agraph_t *);
00029     extern void build_ranks(Agraph_t *, int);
00030     extern void build_skeleton(Agraph_t *, Agraph_t *);
00031     extern void class1(Agraph_t *);
00032     extern void class2(Agraph_t *);
00033     extern void decompose(Agraph_t *, int);
00034     extern void delete_fast_edge(Agedge_t *);
00035     extern void delete_fast_node(Agraph_t *, Agnode_t *);
00036     extern void delete_flat_edge(Agedge_t *);
00037     extern void dot_cleanup(graph_t * g);
00038     extern void dot_layout(Agraph_t * g);
00039     extern void dot_init_node_edge(graph_t * g);
00040     extern void dot_scan_ranks(graph_t * g);
00041     extern void expand_cluster(Agraph_t *);
00042     extern Agedge_t *fast_edge(Agedge_t *);
00043     extern void fast_node(Agraph_t *, Agnode_t *);
00044     extern void fast_nodeapp(Agnode_t *, Agnode_t *);
00045     extern Agedge_t *find_fast_edge(Agnode_t *, Agnode_t *);
00046     extern Agedge_t *find_flat_edge(Agnode_t *, Agnode_t *);
00047     extern void flat_edge(Agraph_t *, Agedge_t *);
00048     extern int flat_edges(Agraph_t *);
00049     extern void install_cluster(Agraph_t *, Agnode_t *, int, nodequeue *);
00050     extern void install_in_rank(Agraph_t *, Agnode_t *);
00051     extern int is_cluster(Agraph_t *);
00052     extern void dot_compoundEdges(Agraph_t *);
00053     extern Agedge_t *make_aux_edge(Agnode_t *, Agnode_t *, double, int);
00054     extern void mark_clusters(Agraph_t *);
00055     extern void mark_lowclusters(Agraph_t *);
00056     extern int mergeable(edge_t * e, edge_t * f);
00057     extern void merge_chain(Agraph_t *, Agedge_t *, Agedge_t *, int);
00058     extern void merge_oneway(Agedge_t *, Agedge_t *);
00059     extern int ncross(Agraph_t *);
00060     extern Agedge_t *new_virtual_edge(Agnode_t *, Agnode_t *, Agedge_t *);
00061     extern int nonconstraint_edge(Agedge_t *);
00062     extern void other_edge(Agedge_t *);
00063     extern void rank1(graph_t * g);
00064     extern int portcmp(port p0, port p1);
00065     extern int ports_eq(edge_t *, edge_t *);
00066     extern void rec_reset_vlists(Agraph_t *);
00067     extern void rec_save_vlists(Agraph_t *);
00068     extern void reverse_edge(Agedge_t *);
00069     extern void safe_other_edge(Agedge_t *);
00070     extern void save_vlist(Agraph_t *);
00071     extern void unmerge_oneway(Agedge_t *);
00072     extern Agedge_t *virtual_edge(Agnode_t *, Agnode_t *, Agedge_t *);
00073     extern Agnode_t *virtual_node(Agraph_t *);
00074     extern void virtual_weight(Agedge_t *);
00075     extern void zapinlist(elist *, Agedge_t *);
00076 
00077 #if defined(_BLD_dot) && defined(_DLL)
00078 #   define extern __EXPORT__
00079 #endif
00080     extern void dot_concentrate(Agraph_t *);
00081     extern void dot_mincross(Agraph_t *, int);
00082     extern void dot_position(Agraph_t *, aspect_t*);
00083     extern void dot_rank(Agraph_t *, aspect_t*);
00084     extern void dot_sameports(Agraph_t *);
00085     extern void dot_splines(Agraph_t *);
00086 #undef extern
00087 
00088 #ifdef _END_EXTERNS_
00089      _END_EXTERNS_
00090 #endif
00091 #ifdef __cplusplus
00092 }
00093 #endif
00094 #endif