Graphviz
13.0.0~dev.20241220.2304
Loading...
Searching...
No Matches
const.h
Go to the documentation of this file.
1
3
/*************************************************************************
4
* Copyright (c) 2011 AT&T Intellectual Property
5
* All rights reserved. This program and the accompanying materials
6
* are made available under the terms of the Eclipse Public License v1.0
7
* which accompanies this distribution, and is available at
8
* https://www.eclipse.org/legal/epl-v10.html
9
*
10
* Contributors: Details at https://graphviz.org
11
*************************************************************************/
12
13
#pragma once
14
15
#define LPAREN '('
16
#define RPAREN ')'
17
#define LBRACE '{'
18
#define RBRACE '}'
19
20
/* node,edge types */
21
#ifdef NORMAL
22
#undef NORMAL
23
#endif
24
#define NORMAL 0
/* an original input node */
25
#define VIRTUAL 1
/* virtual nodes in long edge chains */
26
#define SLACKNODE 2
/* encode edges in node position phase */
27
#define REVERSED 3
/* reverse of an original edge */
28
#define FLATORDER 4
/* for ordered edges */
29
#define CLUSTER_EDGE 5
/* for ranking clusters */
30
#define IGNORED 6
/* concentrated multi-edges */
31
32
/* collapsed node classifications */
33
#define NOCMD 0
/* default */
34
#define SAMERANK 1
/* place on same rank */
35
#define MINRANK 2
/* place on "least" rank */
36
#define SOURCERANK 3
/* strict version of MINRANK */
37
#define MAXRANK 4
/* place on "greatest" rank */
38
#define SINKRANK 5
/* strict version of MAXRANK */
39
#define LEAFSET 6
/* set of collapsed leaf nodes */
40
#define CLUSTER 7
/* set of clustered nodes */
41
42
/* type of cluster rank assignment */
43
#define LOCAL 100
44
#define GLOBAL 101
45
#define NOCLUST 102
46
47
/* default attributes */
48
#define DEFAULT_COLOR "black"
49
#define DEFAULT_ACTIVEPENCOLOR "#808080"
50
#define DEFAULT_ACTIVEFILLCOLOR "#fcfcfc"
51
#define DEFAULT_ACTIVEFONTCOLOR "black"
52
#define DEFAULT_SELECTEDPENCOLOR "#303030"
53
#define DEFAULT_SELECTEDFILLCOLOR "#e8e8e8"
54
#define DEFAULT_SELECTEDFONTCOLOR "black"
55
#define DEFAULT_DELETEDPENCOLOR "#e0e0e0"
56
#define DEFAULT_DELETEDFILLCOLOR "#f0f0f0"
57
#define DEFAULT_DELETEDFONTCOLOR "darkgrey"
58
#define DEFAULT_VISITEDPENCOLOR "#101010"
59
#define DEFAULT_VISITEDFILLCOLOR "#f8f8f8"
60
#define DEFAULT_VISITEDFONTCOLOR "black"
61
#define DEFAULT_FONTSIZE 14.0
62
#define DEFAULT_LABEL_FONTSIZE 11.0
/* for head/taillabel */
63
#define MIN_FONTSIZE 1.0
64
#if defined(__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__) || defined(__IPHONE_OS_VERSION_MIN_REQUIRED)
65
#define DEFAULT_FONTNAME "TimesNewRomanPSMT"
66
#else
67
#define DEFAULT_FONTNAME "Times-Roman"
68
#endif
69
#define DEFAULT_FILL "lightgrey"
70
#define LINESPACING 1.20
71
72
#define DEFAULT_NODEHEIGHT 0.5
73
#define MIN_NODEHEIGHT 0.02
74
#define DEFAULT_NODEWIDTH 0.75
75
#define MIN_NODEWIDTH 0.01
76
#define DEFAULT_NODESHAPE "ellipse"
77
#define DEFAULT_NODEPENWIDTH 1.0
78
#define MIN_NODEPENWIDTH 0.0
79
80
#define NODENAME_ESC "\\N"
81
82
#define DEFAULT_LAYERSEP ":\t "
83
#define DEFAULT_LAYERLISTSEP ","
84
85
#define DEFAULT_NODESEP 0.25
86
#define MIN_NODESEP 0.02
87
#define DEFAULT_RANKSEP 0.5
88
#define MIN_RANKSEP 0.02
89
90
91
/* default margin for paged formats such as PostScript - in points = 0.5in */
92
#define DEFAULT_PRINT_MARGIN 36
93
/* default margin for embedded formats such as PNG - in points */
94
#define DEFAULT_EMBED_MARGIN 0
95
/* default padding around graph - in points */
96
#define DEFAULT_GRAPH_PAD 4
97
98
#define SELF_EDGE_SIZE 18
99
#define MC_SCALE 256
/* for mincross */
100
101
#define PORT_LABEL_DISTANCE 10
102
#define PORT_LABEL_ANGLE -25
/* degrees; pos is CCW, neg is CW */
103
104
/* default polygon sample size for overlap removal and maps */
105
#define DFLT_SAMPLE 20
106
107
/* arrow types */
108
#define ARR_NONE 0
109
110
/* sides (e.g. of cluster margins) */
111
#define BOTTOM_IX 0
112
#define RIGHT_IX 1
113
#define TOP_IX 2
114
#define LEFT_IX 3
115
116
/* sides of boxes for SHAPE_path */
117
#define BOTTOM (1<<BOTTOM_IX)
118
#define RIGHT (1<<RIGHT_IX)
119
#define TOP (1<<TOP_IX)
120
#define LEFT (1<<LEFT_IX)
121
122
#define CCW -1
/* counter clock-wise */
123
#define CW 1
/* clock-wise */
124
125
/* Obj types for renderers */
126
#define NONE 0
127
#define NODE 1
128
#define EDGE 2
129
#define CLST 3
130
131
/* output languages */
132
#define PCL 3
/* Printer Control Language */
133
#define MIF 4
/* Adobe FrameMaker */
134
#define PIC_format 5
/* symbol PIC is used by compilers for
135
Position Independent Code */
136
#define TK 15
/* TK canvas */
137
138
#define VTX 21
/* visual thought */
139
#define METAPOST 22
140
141
#define QPDF 30
/* Quartz paged PDF */
142
#define QEPDF 31
/* Quartz embedded PDF */
143
144
#define QBM_FIRST 100
/* first Quartz bitmap format, inclusive */
145
#define QBM_LAST 200
/* last Quartz bitmap format, exclusive */
146
147
#define GVRENDER_PLUGIN 300
/* a plugin supported language */
148
#define NO_SUPPORT 999
/* no support */
149
150
/* for clusters */
151
#define CL_BACK 10
/* cost of backward pointing edge */
152
#define CL_OFFSET 8
/* margin of cluster box in PS points */
153
#ifndef _WIN32
154
#define CL_CROSS 1000
/* cost of cluster skeleton edge crossing */
155
#else
156
#define CL_CROSS 100
/* avoid 16 bit overflow */
157
#endif
158
159
/* edge types */
160
#define REGULAREDGE 1
161
#define FLATEDGE 2
162
#define SELFWPEDGE 4
163
#define SELFNPEDGE 8
164
#define SELFEDGE 8
165
#define EDGETYPEMASK 15
/* the OR of the above */
166
167
/* for neato */
168
#define Spring_coeff 1.0
169
#define MYHUGE (1.0e+37)
170
#define MAXDIM 10
171
172
/* drawing phases */
173
#define GVBEGIN 0
174
#define GVSPLINES 1
175
176
/* existence of labels */
177
#define EDGE_LABEL (1 << 0)
178
#define HEAD_LABEL (1 << 1)
179
#define TAIL_LABEL (1 << 2)
180
#define GRAPH_LABEL (1 << 3)
181
#define NODE_XLABEL (1 << 4)
182
#define EDGE_XLABEL (1 << 5)
183
184
/* type of graph label: GD_label_pos */
185
#define LABEL_AT_BOTTOM 0
186
#define LABEL_AT_TOP 1
187
#define LABEL_AT_LEFT 2
188
#define LABEL_AT_RIGHT 4
189
190
/* values specifying rankdir */
191
#define RANKDIR_TB 0
192
#define RANKDIR_LR 1
193
#define RANKDIR_BT 2
194
#define RANKDIR_RL 3
195
196
/* allowed charsets */
197
#define CHAR_UTF8 0
198
#define CHAR_LATIN1 1
199
#define CHAR_BIG5 2
200
202
enum
{
203
DOGEAR
= 1,
204
TAB
= 2,
205
FOLDER
= 3,
206
BOX3D
= 4,
207
COMPONENT
= 5,
208
PROMOTER
= 6,
209
CDS
= 7,
210
TERMINATOR
= 8,
211
UTR
= 9,
212
PRIMERSITE
= 10,
213
RESTRICTIONSITE
= 11,
214
FIVEPOVERHANG
= 12,
215
THREEPOVERHANG
= 13,
216
NOVERHANG
= 14,
217
ASSEMBLY
= 15,
218
SIGNATURE
= 16,
219
INSULATOR
= 17,
220
RIBOSITE
= 18,
221
RNASTAB
= 19,
222
PROTEASESITE
= 20,
223
PROTEINSTAB
= 21,
224
RPROMOTER
= 22,
225
RARROW
= 23,
226
LARROW
= 24,
227
LPROMOTER
= 25,
228
CYLINDER
= 26,
229
};
230
231
/* fill types */
232
#define FILL 1
233
#define GRADIENT 2
234
#define RGRADIENT 3
235
#define NO_POLY 4
/* bit flag: if set, do fill only */
236
237
/* label types */
238
#define LT_NONE (0 << 1)
239
#define LT_HTML (1 << 1)
240
#define LT_RECD (2 << 1)
241
242
/* Flags stored in GD_flags
243
* Bit(s): 0 unused
244
* 1-3 EDGETYPE_
245
* 4 NEW_RANK
246
*/
247
248
/* edge types */
249
#define EDGETYPE_NONE (0 << 1)
250
#define EDGETYPE_LINE (1 << 1)
251
#define EDGETYPE_CURVED (2 << 1)
252
#define EDGETYPE_PLINE (3 << 1)
253
#define EDGETYPE_ORTHO (4 << 1)
254
#define EDGETYPE_SPLINE (5 << 1)
255
#define EDGETYPE_COMPOUND (6 << 1)
256
257
/* New ranking is used */
258
#define NEW_RANK (1 << 4)
259
/******/
260
261
/* user-specified node position: ND_pinned */
262
#define P_SET 1
/* position supplied by user */
263
#define P_FIX 2
/* position fixed during topological layout */
264
#define P_PIN 3
/* position fixed */
265
266
#define GAP 4
/* whitespace in POINTS around labels and between peripheries */
267
268
/* fontsize at which text is omitted entirely */
269
#define FONTSIZE_MUCH_TOO_SMALL 0.15
270
/* fontsize at which text is rendered by a simple line */
271
#define FONTSIZE_TOO_SMALL 1.5
LARROW
@ LARROW
Definition
const.h:225
LPROMOTER
@ LPROMOTER
Definition
const.h:226
NOVERHANG
@ NOVERHANG
Definition
const.h:215
FIVEPOVERHANG
@ FIVEPOVERHANG
Definition
const.h:213
UTR
@ UTR
Definition
const.h:210
SIGNATURE
@ SIGNATURE
Definition
const.h:217
ASSEMBLY
@ ASSEMBLY
Definition
const.h:216
BOX3D
@ BOX3D
Definition
const.h:205
RPROMOTER
@ RPROMOTER
Definition
const.h:223
PRIMERSITE
@ PRIMERSITE
Definition
const.h:211
PROTEINSTAB
@ PROTEINSTAB
Definition
const.h:222
TERMINATOR
@ TERMINATOR
Definition
const.h:209
CYLINDER
@ CYLINDER
Definition
const.h:227
TAB
@ TAB
Definition
const.h:203
INSULATOR
@ INSULATOR
Definition
const.h:218
RARROW
@ RARROW
Definition
const.h:224
COMPONENT
@ COMPONENT
Definition
const.h:206
THREEPOVERHANG
@ THREEPOVERHANG
Definition
const.h:214
PROTEASESITE
@ PROTEASESITE
Definition
const.h:221
CDS
@ CDS
Definition
const.h:208
DOGEAR
@ DOGEAR
Definition
const.h:202
RIBOSITE
@ RIBOSITE
Definition
const.h:219
FOLDER
@ FOLDER
Definition
const.h:204
RESTRICTIONSITE
@ RESTRICTIONSITE
Definition
const.h:212
PROMOTER
@ PROMOTER
Definition
const.h:207
RNASTAB
@ RNASTAB
Definition
const.h:220
lib
common
const.h
Generated by
1.9.8