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>