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 /* this is to get the following win32 DLL junk to work. 15 * if ever tempted to remove this, first please read: 16 * http://joel.editthispage.com/stories/storyReader$47 17 */ 18 #ifndef GLOBALS_H 19 #define GLOBALS_H 20 21 #ifdef __cplusplus 22 extern "C" { 23 #endif 24 25 #ifndef __CYGWIN__ 26 #if defined(_BLD_dotneato) && defined(_DLL) 27 # define external __EXPORT__ 28 #endif 29 #if !defined(_BLD_dotneato) && defined(__IMPORT__) 30 # define external __IMPORT__ 31 #endif 32 #if defined(GVDLL) 33 #if !defined(_BLD_gvc) 34 #define extern __declspec(dllimport) 35 #else 36 #define extern __declspec(dllexport) 37 #endif 38 #endif 39 #endif 40 /*visual studio*/ 41 #ifdef _WIN32 42 #ifndef GVC_EXPORTS 43 #define extern __declspec(dllimport) 44 #endif 45 #endif 46 /*end visual studio*/ 47 48 #ifndef external 49 # define external extern 50 #endif 51 #ifndef EXTERN 52 #define EXTERN extern 53 #endif 54 55 EXTERN char *Version; 56 EXTERN char **Files; /* from command line */ 57 EXTERN const char **Lib; /* from command line */ 58 EXTERN char *CmdName; 59 EXTERN char *specificFlags; 60 EXTERN char *specificItems; 61 EXTERN char *Gvfilepath; /* Per-process path of files allowed in image attributes (also ps libs) */ 62 EXTERN char *Gvimagepath; /* Per-graph path of files allowed in image attributes (also ps libs) */ 63 64 EXTERN unsigned char Verbose; 65 EXTERN unsigned char Reduce; 66 EXTERN int MemTest; 67 EXTERN char *HTTPServerEnVar; 68 EXTERN char *Output_file_name; 69 EXTERN int graphviz_errors; 70 EXTERN int Nop; 71 EXTERN double PSinputscale; 72 EXTERN int Syntax_errors; 73 EXTERN int Show_cnt; 74 EXTERN char** Show_boxes; /* emit code for correct box coordinates */ 75 EXTERN int CL_type; /* NONE, LOCAL, GLOBAL */ 76 EXTERN unsigned char Concentrate; /* if parallel edges should be merged */ 77 EXTERN double Epsilon; /* defined in input_graph */ 78 EXTERN int MaxIter; 79 EXTERN int Ndim; 80 EXTERN int State; /* last finished phase */ 81 EXTERN int EdgeLabelsDone; /* true if edge labels have been positioned */ 82 EXTERN double Initial_dist; 83 EXTERN double Damping; 84 EXTERN int Y_invert; /* invert y in dot & plain output */ 85 EXTERN int GvExitOnUsage; /* gvParseArgs() should exit on usage or error */ 86 87 EXTERN Agsym_t 88 *G_activepencolor, *G_activefillcolor, 89 *G_selectedpencolor, *G_selectedfillcolor, 90 *G_visitedpencolor, *G_visitedfillcolor, 91 *G_deletedpencolor, *G_deletedfillcolor, 92 *G_ordering, *G_peripheries, *G_penwidth, 93 *G_gradientangle, *G_margin; 94 EXTERN Agsym_t 95 *N_height, *N_width, *N_shape, *N_color, *N_fillcolor, 96 *N_activepencolor, *N_activefillcolor, 97 *N_selectedpencolor, *N_selectedfillcolor, 98 *N_visitedpencolor, *N_visitedfillcolor, 99 *N_deletedpencolor, *N_deletedfillcolor, 100 *N_fontsize, *N_fontname, *N_fontcolor, *N_margin, 101 *N_label, *N_xlabel, *N_nojustify, *N_style, *N_showboxes, 102 *N_sides, *N_peripheries, *N_ordering, *N_orientation, 103 *N_skew, *N_distortion, *N_fixed, *N_imagescale, *N_imagepos, *N_layer, 104 *N_group, *N_comment, *N_vertices, *N_z, 105 *N_penwidth, *N_gradientangle; 106 EXTERN Agsym_t 107 *E_weight, *E_minlen, *E_color, *E_fillcolor, 108 *E_activepencolor, *E_activefillcolor, 109 *E_selectedpencolor, *E_selectedfillcolor, 110 *E_visitedpencolor, *E_visitedfillcolor, 111 *E_deletedpencolor, *E_deletedfillcolor, 112 *E_fontsize, *E_fontname, *E_fontcolor, 113 *E_label, *E_xlabel, *E_dir, *E_style, *E_decorate, 114 *E_showboxes, *E_arrowsz, *E_constr, *E_layer, 115 *E_comment, *E_label_float, 116 *E_samehead, *E_sametail, 117 *E_arrowhead, *E_arrowtail, 118 *E_headlabel, *E_taillabel, 119 *E_labelfontsize, *E_labelfontname, *E_labelfontcolor, 120 *E_labeldistance, *E_labelangle, 121 *E_tailclip, *E_headclip, 122 *E_penwidth; 123 124 extern struct fdpParms_s* fdp_parms; 125 126 #undef external 127 #undef EXTERN 128 #ifdef extern 129 #undef extern 130 #endif 131 132 #ifdef __cplusplus 133 } 134 #endif 135 #endif 136