1 /* GNUPLOT - plot.h */ 2 3 /*[ 4 * Copyright 1986 - 1993, 1998, 2004 Thomas Williams, Colin Kelley 5 * 6 * Permission to use, copy, and distribute this software and its 7 * documentation for any purpose with or without fee is hereby granted, 8 * provided that the above copyright notice appear in all copies and 9 * that both that copyright notice and this permission notice appear 10 * in supporting documentation. 11 * 12 * Permission to modify the software is granted, but not the right to 13 * distribute the complete modified source code. Modifications are to 14 * be distributed as patches to the released version. Permission to 15 * distribute binaries produced by compiling modified sources is granted, 16 * provided you 17 * 1. distribute the corresponding source modifications from the 18 * released version in the form of a patch file along with the binaries, 19 * 2. add special version identification to distinguish your version 20 * in addition to the base release version number, 21 * 3. provide your name and address as the primary contact for the 22 * support of your modified version, and 23 * 4. retain our contact information in regard to use of the base 24 * software. 25 * Permission to distribute the released version of the source code along 26 * with corresponding source modifications in the form of a patch file is 27 * granted with same provisions 2 through 4 for binary distributions. 28 * 29 * This software is provided "as is" without express or implied warranty 30 * to the extent permitted by applicable law. 31 ]*/ 32 33 #ifndef GNUPLOT_PLOT_H 34 # define GNUPLOT_PLOT_H 35 36 /* #if... / #include / #define collection: */ 37 38 #include "syscfg.h" 39 #include "gp_types.h" 40 41 /* Type definitions */ 42 43 /* Variables of plot.c needed by other modules: */ 44 45 extern TBOOLEAN interactive; 46 extern TBOOLEAN noinputfiles; 47 extern TBOOLEAN persist_cl; 48 extern TBOOLEAN slow_font_startup; 49 50 extern const char *user_shell; 51 52 extern TBOOLEAN ctrlc_flag; 53 extern TBOOLEAN terminate_flag; 54 55 #ifdef OS2 56 extern TBOOLEAN CallFromRexx; 57 #endif 58 59 /* Prototypes of functions exported by plot.c */ 60 61 #if defined(__GNUC__) 62 void bail_to_command_line(void) __attribute__((noreturn)); 63 #else 64 void bail_to_command_line(void); 65 #endif 66 67 void init_constants(void); 68 void init_session(void); 69 70 #if defined(_WIN32) 71 int gnu_main(int argc, char **argv); 72 #endif 73 74 void interrupt_setup(void); 75 void gp_expand_tilde(char **); 76 void get_user_env(void); 77 78 #ifdef LINUXVGA 79 void drop_privilege(void); 80 void take_privilege(void); 81 #endif /* LINUXVGA */ 82 83 #ifdef OS2 84 int ExecuteMacro(char *, int); 85 #endif 86 87 void restrict_popen(void); 88 89 #ifdef GNUPLOT_HISTORY 90 void cancel_history(void); 91 #else 92 #define cancel_history() {} 93 #endif 94 95 #if defined(MSDOS) || defined(OS2) 96 /* retrieve path relative to gnuplot executable */ 97 char * RelativePathToGnuplot(const char * path); 98 #endif 99 100 #endif /* GNUPLOT_PLOT_H */ 101