[BACK]Return to sfile.h CVS log [TXT][DIR] Up to [local] / OpenXM / src / hgm / mh / src

Annotation of OpenXM/src/hgm/mh/src/sfile.h, Revision 1.15

1.1       takayama    1: /*
1.15    ! takayama    2:    $OpenXM: OpenXM/src/hgm/mh/src/sfile.h,v 1.14 2014/03/20 09:37:16 takayama Exp $
1.1       takayama    3:  */
1.15    ! takayama    4: #include "oxprint.h"
1.1       takayama    5: struct SFILE {
                      6:   int byFile;
                      7:   char *s;
                      8:   int pt;
                      9:   int len;
                     10:   int limit;
                     11:   FILE *fp;
                     12:   int forRead;
1.2       takayama   13:   int copied;
1.1       takayama   14: };
1.3       takayama   15:
                     16: struct MH_RESULT {
                     17:   double x;
                     18:   double *y;
                     19:   int rank;
                     20:   struct SFILE **sfpp;  /* sfpp[0], ..., spff[size-1] */
                     21:   int size;
1.9       takayama   22:   char *message;
1.11      takayama   23:   int t_success;
                     24:   double series_error;
                     25:   double recommended_abserr;
1.3       takayama   26: };
1.10      takayama   27:
                     28: struct mh_token {
                     29:   int type;
                     30:   double dval;
                     31:   int ival;
                     32: };
1.1       takayama   33:
                     34: struct SFILE *mh_fopen(char *name, char *mode, int byFile);
                     35: char *mh_fgets(char *str,int size,struct SFILE *sfp);
                     36: int mh_fputs(char *s,struct SFILE *sfp);
                     37: int mh_fclose(struct SFILE *sfp);
1.2       takayama   38: int mh_outstr(char *str,int size,struct SFILE *sfp);
1.4       takayama   39: void *mh_malloc(int s);
                     40: int mh_free(void *p);
                     41: int mh_exit(int n);
1.7       takayama   42: void mh_check_intr(int interval);
1.8       takayama   43: void mh_error(char *s,int code);
1.10      takayama   44: struct mh_token mh_getoken(char s[],int smax,struct SFILE *sfp);
                     45: void mh_print_token(struct mh_token tk,char *s);
                     46: #define MH_TOKEN_EOF -1
                     47: #define MH_TOKEN_ID  1
                     48: #define MH_TOKEN_EQ  2
                     49: #define MH_TOKEN_DOUBLE 3
                     50: #define MH_TOKEN_INT 4
                     51:
1.3       takayama   52:
                     53: #define MH_SSIZE 1024
1.5       takayama   54: #define MH_RESET_EXIT 0x7fffffff
1.3       takayama   55:
1.12      takayama   56: #define myabs(x) ((x)<0?(-(x)):(x))
                     57: #define mymax(x,y) ((x)>(y)?(x):(y))
                     58: #define mymin(x,y) ((x)<(y)?(x):(y))
                     59:
1.3       takayama   60: /* prototypes in wmain.c */
                     61: struct MH_RESULT *mh_main(int argc,char *argv[]);
                     62: /* prototypes in rk.c*/
                     63: struct MH_RESULT mh_rkmain(double x0,double y0[],double xn);
1.6       takayama   64: /* prototype in jack-n.c */
                     65: struct MH_RESULT *jk_main(int argc,char *argv[]);
1.7       takayama   66:
1.13      takayama   67: /* Significant digit control used both in wmain.c and jack-n.c */
                     68: #define M_ASSIGNED_SERIES_ERROR_DEFAULT 1e-5
1.14      takayama   69: #define MH_RELERR_DEFAULT (1e-10)

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>