Graphviz  2.41.20170921.2350
info.h
Go to the documentation of this file.
1 /* $Id$ $Revision$ */
2 /* vim:set shiftwidth=4 ts=8: */
3 
4 /*************************************************************************
5  * Copyright (c) 2011 AT&T Intellectual Property
6  * All rights reserved. This program and the accompanying materials
7  * are made available under the terms of the Eclipse Public License v1.0
8  * which accompanies this distribution, and is available at
9  * http://www.eclipse.org/legal/epl-v10.html
10  *
11  * Contributors: See CVS logs. Details at http://www.graphviz.org/
12  *************************************************************************/
13 
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
17 
18 
19 #ifndef INFO_H
20 #define INFO_H
21 
22 #include "voronoi.h"
23 #include "poly.h"
24 
25  typedef struct ptitem { /* Point list */
26  struct ptitem *next;
28  } PtItem;
29 
30  typedef struct { /* Info concerning site */
31  Agnode_t *node; /* libgraph node */
32  Site site; /* site used by voronoi code */
33  int overlaps; /* true if node overlaps other nodes */
34  Poly poly; /* polygon at node */
35  PtItem *verts; /* sorted list of vertices of */
36  /* voronoi polygon */
37  } Info_t;
38 
39  extern Info_t *nodeInfo; /* Array of node info */
40 
41  extern void infoinit(void);
42  /* Insert vertex into sorted list */
43  extern void addVertex(Site *, double, double);
44 #endif
45 
46 #ifdef __cplusplus
47 }
48 #endif
Site site
Definition: info.h:32
Definition: poly.h:23
struct ptitem PtItem
Info_t * nodeInfo
Definition: info.c:20
Poly poly
Definition: info.h:34
Definition: site.h:26
int overlaps
Definition: info.h:33
void addVertex(Site *s, double x, double y)
Definition: info.c:161
Agnode_t * node
Definition: info.h:31
Definition: info.h:30
void infoinit()
Definition: info.c:23
struct ptitem * next
Definition: info.h:26
Definition: info.h:25
Point p
Definition: info.h:27
Definition: geometry.h:26
PtItem * verts
Definition: info.h:35