00001 00002 /*-------------------------------------------------------------------------*/ 00016 /*--------------------------------------------------------------------------*/ 00017 00018 /* 00019 $Id: gnuplot_i.h,v 1.11 2003/01/27 08:58:04 ndevilla Exp $ 00020 $Author: ndevilla $ 00021 $Date: 2003/01/27 08:58:04 $ 00022 $Revision: 1.11 $ 00023 */ 00024 00025 #ifndef _GNUPLOT_PIPES_H_ 00026 #define _GNUPLOT_PIPES_H_ 00027 00028 /*--------------------------------------------------------------------------- 00029 Includes 00030 ---------------------------------------------------------------------------*/ 00031 00032 #include <stdio.h> 00033 #include <stdlib.h> 00034 #include <string.h> 00035 #include <unistd.h> 00036 #include <stdarg.h> 00037 00038 00040 #define GP_MAX_TMP_FILES 64 00041 00042 #define GP_TMP_NAME_SIZE 512 00043 00044 00045 /*--------------------------------------------------------------------------- 00046 New Types 00047 ---------------------------------------------------------------------------*/ 00048 00049 /*-------------------------------------------------------------------------*/ 00062 /*-------------------------------------------------------------------------*/ 00063 00064 typedef struct _GNUPLOT_CTRL_ { 00066 FILE * gnucmd ; 00067 00069 int nplots ; 00071 char pstyle[32] ; 00072 00074 char to_delete[GP_MAX_TMP_FILES][GP_TMP_NAME_SIZE] ; 00076 int ntmp ; 00077 } gnuplot_ctrl ; 00078 00079 /*--------------------------------------------------------------------------- 00080 Function ANSI C prototypes 00081 ---------------------------------------------------------------------------*/ 00082 00083 00084 /*-------------------------------------------------------------------------*/ 00112 /*-------------------------------------------------------------------------*/ 00113 char * gnuplot_get_program_path(char * pname); 00114 00115 /*-------------------------------------------------------------------------*/ 00126 /*--------------------------------------------------------------------------*/ 00127 gnuplot_ctrl * gnuplot_init(void); 00128 00129 /*-------------------------------------------------------------------------*/ 00140 /*--------------------------------------------------------------------------*/ 00141 void gnuplot_close(gnuplot_ctrl * handle); 00142 00143 /*-------------------------------------------------------------------------*/ 00166 /*--------------------------------------------------------------------------*/ 00167 void gnuplot_cmd(gnuplot_ctrl * handle, char * cmd, ...); 00168 00169 /*-------------------------------------------------------------------------*/ 00189 /*--------------------------------------------------------------------------*/ 00190 void gnuplot_setstyle(gnuplot_ctrl * h, char * plot_style); 00191 00192 /*-------------------------------------------------------------------------*/ 00201 /*--------------------------------------------------------------------------*/ 00202 void gnuplot_set_xlabel(gnuplot_ctrl * h, char * label); 00203 00204 00205 /*-------------------------------------------------------------------------*/ 00214 /*--------------------------------------------------------------------------*/ 00215 void gnuplot_set_ylabel(gnuplot_ctrl * h, char * label); 00216 00217 /*-------------------------------------------------------------------------*/ 00226 /*--------------------------------------------------------------------------*/ 00227 void gnuplot_resetplot(gnuplot_ctrl * h); 00228 00229 00230 /*-------------------------------------------------------------------------*/ 00259 /*--------------------------------------------------------------------------*/ 00260 void gnuplot_plot_x(gnuplot_ctrl * handle, double * d, int n, char * title); 00261 00262 /*-------------------------------------------------------------------------*/ 00292 /*--------------------------------------------------------------------------*/ 00293 void gnuplot_plot_xy( 00294 gnuplot_ctrl * handle, 00295 double * x, 00296 double * y, 00297 int n, 00298 char * title 00299 ) ; 00300 00301 00302 /*-------------------------------------------------------------------------*/ 00321 /*--------------------------------------------------------------------------*/ 00322 void gnuplot_plot_once( 00323 char * title, 00324 char * style, 00325 char * label_x, 00326 char * label_y, 00327 double * x, 00328 double * y, 00329 int n 00330 ); 00331 00332 /*-------------------------------------------------------------------------*/ 00356 /*--------------------------------------------------------------------------*/ 00357 void gnuplot_plot_slope( 00358 gnuplot_ctrl * handle, 00359 double a, 00360 double b, 00361 char * title 00362 ) ; 00363 00364 /*-------------------------------------------------------------------------*/ 00387 /*--------------------------------------------------------------------------*/ 00388 void gnuplot_plot_equation(gnuplot_ctrl * h, char * equation, char * title) ; 00389 00390 #endif