|
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef F2C_INCLUDE |
|
#define F2C_INCLUDE |
|
|
|
typedef int integer; |
|
typedef char *address; |
|
typedef short int shortint; |
|
typedef float real; |
|
typedef double doublereal; |
|
typedef struct { real r, i; } complex; |
|
typedef struct { doublereal r, i; } doublecomplex; |
|
typedef int logical; |
|
typedef short int shortlogical; |
|
typedef char logical1; |
|
typedef char integer1; |
|
|
|
#define TRUE_ (1) |
|
#define FALSE_ (0) |
|
|
|
|
|
#ifndef Extern |
|
#define Extern extern |
|
#endif |
|
|
|
|
|
|
|
#ifdef f2c_i2 |
|
|
|
typedef short flag; |
|
typedef short ftnlen; |
|
typedef short ftnint; |
|
#else |
|
typedef int flag; |
|
typedef int ftnlen; |
|
typedef int ftnint; |
|
#endif |
|
|
|
|
|
typedef struct |
|
{ flag cierr; |
|
ftnint ciunit; |
|
flag ciend; |
|
char *cifmt; |
|
ftnint cirec; |
|
} cilist; |
|
|
|
|
|
typedef struct |
|
{ flag icierr; |
|
char *iciunit; |
|
flag iciend; |
|
char *icifmt; |
|
ftnint icirlen; |
|
ftnint icirnum; |
|
} icilist; |
|
|
|
|
|
typedef struct |
|
{ flag oerr; |
|
ftnint ounit; |
|
char *ofnm; |
|
ftnlen ofnmlen; |
|
char *osta; |
|
char *oacc; |
|
char *ofm; |
|
ftnint orl; |
|
char *oblnk; |
|
} olist; |
|
|
|
|
|
typedef struct |
|
{ flag cerr; |
|
ftnint cunit; |
|
char *csta; |
|
} cllist; |
|
|
|
|
|
typedef struct |
|
{ flag aerr; |
|
ftnint aunit; |
|
} alist; |
|
|
|
|
|
typedef struct |
|
{ flag inerr; |
|
ftnint inunit; |
|
char *infile; |
|
ftnlen infilen; |
|
ftnint *inex; |
|
ftnint *inopen; |
|
ftnint *innum; |
|
ftnint *innamed; |
|
char *inname; |
|
ftnlen innamlen; |
|
char *inacc; |
|
ftnlen inacclen; |
|
char *inseq; |
|
ftnlen inseqlen; |
|
char *indir; |
|
ftnlen indirlen; |
|
char *infmt; |
|
ftnlen infmtlen; |
|
char *inform; |
|
ftnint informlen; |
|
char *inunf; |
|
ftnlen inunflen; |
|
ftnint *inrecl; |
|
ftnint *innrec; |
|
char *inblank; |
|
ftnlen inblanklen; |
|
} inlist; |
|
|
|
#define VOID void |
|
|
|
union Multitype { |
|
shortint h; |
|
integer i; |
|
real r; |
|
doublereal d; |
|
complex c; |
|
doublecomplex z; |
|
}; |
|
|
|
typedef union Multitype Multitype; |
|
|
|
typedef long Long; |
|
|
|
struct Vardesc { |
|
char *name; |
|
char *addr; |
|
ftnlen *dims; |
|
int type; |
|
}; |
|
typedef struct Vardesc Vardesc; |
|
|
|
struct Namelist { |
|
char *name; |
|
Vardesc **vars; |
|
int nvars; |
|
}; |
|
typedef struct Namelist Namelist; |
|
|
|
#ifndef abs |
|
#define abs(x) ((x) >= 0 ? (x) : -(x)) |
|
#endif |
|
#define dabs(x) (doublereal)abs(x) |
|
#ifndef min |
|
#define min(a,b) ((a) <= (b) ? (a) : (b)) |
|
#endif |
|
#ifndef max |
|
#define max(a,b) ((a) >= (b) ? (a) : (b)) |
|
#endif |
|
#define dmin(a,b) (doublereal)min(a,b) |
|
#define dmax(a,b) (doublereal)max(a,b) |
|
|
|
|
|
|
|
#define F2C_proc_par_types 1 |
|
#ifdef __cplusplus |
|
typedef int (*U_fp)(...); |
|
typedef shortint (*J_fp)(...); |
|
typedef integer (*I_fp)(...); |
|
typedef real (*R_fp)(...); |
|
typedef doublereal (*D_fp)(...), (*E_fp)(...); |
|
typedef VOID (*C_fp)(...); |
|
typedef VOID (*Z_fp)(...); |
|
typedef logical (*L_fp)(...); |
|
typedef shortlogical (*K_fp)(...); |
|
typedef VOID (*H_fp)(...); |
|
typedef int (*S_fp)(...); |
|
#else |
|
typedef int (*U_fp)(void); |
|
typedef shortint (*J_fp)(void); |
|
typedef integer (*I_fp)(void); |
|
typedef real (*R_fp)(void); |
|
typedef doublereal (*D_fp)(void), (*E_fp)(void); |
|
typedef VOID (*C_fp)(void); |
|
typedef VOID (*Z_fp)(void); |
|
typedef logical (*L_fp)(void); |
|
typedef shortlogical (*K_fp)(void); |
|
typedef VOID (*H_fp)(void); |
|
typedef int (*S_fp)(void); |
|
#endif |
|
|
|
typedef VOID C_f; |
|
typedef VOID H_f; |
|
typedef VOID Z_f; |
|
typedef doublereal E_f; |
|
|
|
|
|
|
|
#ifndef Skip_f2c_Undefs |
|
#undef cray |
|
#undef gcos |
|
#undef mc68010 |
|
#undef mc68020 |
|
#undef mips |
|
#undef pdp11 |
|
#undef sgi |
|
#undef sparc |
|
#undef sun |
|
#undef sun2 |
|
#undef sun3 |
|
#undef sun4 |
|
#undef u370 |
|
#undef u3b |
|
#undef u3b2 |
|
#undef u3b5 |
|
#undef unix |
|
#undef vax |
|
#endif |
|
#endif |
|
|