home *** CD-ROM | disk | FTP | other *** search
- /********************
- # SCCS identification:
- ********************/
- /* @(#) wztools.h version: 1.1 date: 6/5/90";
- *--------------------------------------------------------------------------*/
-
-
- #ifndef numfuncs
- #define numfuncs 1
- #endif
-
- /* This is for OS/2 and Windows */
- #if defined(OS2) || defined(WN)
- #define LOADDS _loadds
- #define WZFUNC void FAR LOADDS
- #define WZMAINFUNC PROUT FAR LOADDS
- /* This is for other platforms */
- #else
- #define FAR
- #define LOADDS
- #define WZFUNC PROUT
- #define WZMAINFUNC PROUT
- #endif
-
- typedef struct _RELT /* Routine list element */
- {
- void (FAR LOADDS *pfunc)(struct _val *, struct _val *);
- char FAR *name; /* Routine name */
- short narg; /* Number of arguments */
- } RELT, FAR *PRELT;
-
- typedef struct _ROUT /* Routine list */
- {
- short nrout; /* Number of routines */
- void (FAR LOADDS *exitfunc)(void); /* Func pntr to exit routine */
- RELT relts[numfuncs]; /* Func pntr to routine */
- } ROUT, FAR *PROUT;
-
- /* flag values for arguments and returns */
- #define NUMERIC 0
- #define STRING 1
- #define ERR 2
-
- typedef struct _val
- {
- union
- {
- double numeric; /* numeric argument or return */
- unsigned char FAR *string; /* text argument or return */
- short err; /* error argument or return */
- unsigned long private[3]; /* private WingzB information */
- } val;
-
- short flag; /* type of argument or return */
- } VAL, FAR *PVAL;
-