| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224 | /* f2c.h  --  Standard Fortran to C header file *//**  barf  [ba:rf]  2.  "He suggested using FORTRAN, and everybody barfed."	- From The Shogakukan DICTIONARY OF NEW ENGLISH (Second edition) */#ifndef F2C_INCLUDE#define F2C_INCLUDEtypedef long int integer;typedef unsigned long int uinteger;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 long int logical;typedef short int shortlogical;typedef char logical1;typedef char integer1;#ifdef INTEGER_STAR_8	/* Adjust for integer*8. */typedef long long longint;		/* system-dependent */typedef unsigned long long ulongint;	/* system-dependent */#define qbit_clear(a,b)	((a) & ~((ulongint)1 << (b)))#define qbit_set(a,b)	((a) |  ((ulongint)1 << (b)))#endif#define TRUE_ (1)#define FALSE_ (0)/* Extern is for use with -E */#ifndef Extern#define Extern extern#endif/* I/O stuff */#ifdef f2c_i2/* for -i2 */typedef short flag;typedef short ftnlen;typedef short ftnint;#elsetypedef long int flag;typedef long int ftnlen;typedef long int ftnint;#endif/*external read, write*/typedef struct{	flag cierr;	ftnint ciunit;	flag ciend;	char *cifmt;	ftnint cirec;} cilist;/*internal read, write*/typedef struct{	flag icierr;	char *iciunit;	flag iciend;	char *icifmt;	ftnint icirlen;	ftnint icirnum;} icilist;/*open*/typedef struct{	flag oerr;	ftnint ounit;	char *ofnm;	ftnlen ofnmlen;	char *osta;	char *oacc;	char *ofm;	ftnint orl;	char *oblnk;} olist;/*close*/typedef struct{	flag cerr;	ftnint cunit;	char *csta;} cllist;/*rewind, backspace, endfile*/typedef struct{	flag aerr;	ftnint aunit;} alist;/* inquire */typedef struct{	flag inerr;	ftnint inunit;	char *infile;	ftnlen infilen;	ftnint	*inex;	/*parameters in standard's order*/	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 voidunion Multitype {	/* for multiple entry points */	integer1 g;	shortint h;	integer i;	/* longint j; */	real r;	doublereal d;	complex c;	doublecomplex z;	};typedef union Multitype Multitype;/*typedef long int Long;*/	/* No longer used; formerly in Namelist */struct Vardesc {	/* for Namelist */	char *name;	char *addr;	ftnlen *dims;	int  type;	};typedef struct Vardesc Vardesc;struct Namelist {	char *name;	Vardesc **vars;	int nvars;	};typedef struct Namelist Namelist;#define abs(x) ((x) >= 0 ? (x) : -(x))#define dabs(x) (doublereal)abs(x)#define min(a,b) ((a) <= (b) ? (a) : (b))#define max(a,b) ((a) >= (b) ? (a) : (b))#define dmin(a,b) (doublereal)min(a,b)#define dmax(a,b) (doublereal)max(a,b)#define bit_test(a,b)	((a) >> (b) & 1)#define bit_clear(a,b)	((a) & ~((uinteger)1 << (b)))#define bit_set(a,b)	((a) |  ((uinteger)1 << (b)))/* procedure parameter types for -A and -C++ */#define F2C_proc_par_types 1#ifdef __cplusplustypedef int /* Unknown procedure type */ (*U_fp)(...);typedef shortint (*J_fp)(...);typedef integer (*I_fp)(...);typedef real (*R_fp)(...);typedef doublereal (*D_fp)(...), (*E_fp)(...);typedef /* Complex */ VOID (*C_fp)(...);typedef /* Double Complex */ VOID (*Z_fp)(...);typedef logical (*L_fp)(...);typedef shortlogical (*K_fp)(...);typedef /* Character */ VOID (*H_fp)(...);typedef /* Subroutine */ int (*S_fp)(...);#elsetypedef int /* Unknown procedure type */ (*U_fp)();typedef shortint (*J_fp)();typedef integer (*I_fp)();typedef real (*R_fp)();typedef doublereal (*D_fp)(), (*E_fp)();typedef /* Complex */ VOID (*C_fp)();typedef /* Double Complex */ VOID (*Z_fp)();typedef logical (*L_fp)();typedef shortlogical (*K_fp)();typedef /* Character */ VOID (*H_fp)();typedef /* Subroutine */ int (*S_fp)();#endif/* E_fp is for real functions when -R is not specified */typedef VOID C_f;	/* complex function */typedef VOID H_f;	/* character function */typedef VOID Z_f;	/* double complex function */typedef doublereal E_f;	/* real function with -R not specified *//* undef any lower-case symbols that your C compiler predefines, e.g.: */#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
 |