Graphviz 13.0.0~dev.20241220.2304
Loading...
Searching...
No Matches
gml2gv.h
Go to the documentation of this file.
1
6#include <stdio.h>
7#include <cgraph/cgraph.h>
8#include <cgraph/list.h>
9
10typedef struct {
11 unsigned short kind;
12 unsigned short sort;
13 char* name;
14 union {
15 char* value;
16 void *lp;
17 }u;
18} gmlattr;
19
20void free_attr(gmlattr *p);
21
23
24typedef struct {
25 char* id;
26 attrs_t attrlist;
27} gmlnode;
28
29void free_node(gmlnode *p);
30
32
33typedef struct {
34 char* source;
35 char* target;
36 attrs_t attrlist;
37} gmledge;
38
39void free_edge(gmledge *p);
40
42
43typedef struct gmlgraph {
46 attrs_t attrlist;
47 nodes_t nodelist;
48 edges_t edgelist;
49 void *graphlist;
51
52void free_graph(gmlgraph *p);
53
55
56extern int gmllex(void);
57extern void gmllexeof(void);
58extern void gmlerror(const char *);
59extern int gmlerrors(void);
60extern void initgmlscan (FILE*);
61extern Agraph_t* gml_to_gv (char*, FILE*, int, int*);
abstract graph C library, Cgraph API
int gmlerrors(void)
Definition gmlscan.l:133
void gmlerror(const char *)
Definition gmlscan.l:125
void free_attr(gmlattr *p)
Definition gmlparse.c:2194
void initgmlscan(FILE *)
Definition gmlscan.c:849
void free_graph(gmlgraph *p)
Definition gmlparse.c:117
void free_node(gmlnode *p)
Definition gmlparse.c:105
void free_edge(gmledge *p)
Definition gmlparse.c:111
Agraph_t * gml_to_gv(char *, FILE *, int, int *)
Definition gmlparse.c:2552
void gmllexeof(void)
Definition gmlscan.l:138
int gmllex(void)
#define DEFINE_LIST_WITH_DTOR(name, type, dtor)
Definition list.h:34
graph or subgraph
Definition cgraph.h:425
void * lp
actually an attrs_t *
Definition gml2gv.h:16
char * value
Definition gml2gv.h:15
unsigned short kind
Definition gml2gv.h:11
unsigned short sort
Definition gml2gv.h:12
char * name
Definition gml2gv.h:13
char * source
Definition gml2gv.h:34
attrs_t attrlist
Definition gml2gv.h:36
char * target
Definition gml2gv.h:35
int directed
Definition gml2gv.h:45
struct gmlgraph * parent
Definition gml2gv.h:44
void * graphlist
actually a graphs_t *
Definition gml2gv.h:49
nodes_t nodelist
Definition gml2gv.h:47
attrs_t attrlist
Definition gml2gv.h:46
edges_t edgelist
Definition gml2gv.h:48
attrs_t attrlist
Definition gml2gv.h:26
char * id
Definition gml2gv.h:25