home *** CD-ROM | disk | FTP | other *** search
- /* This header file contains all of the function prototypes and
- machine dependent defines */
-
- /* We need to know where the fonts are located, so set these. */
- #ifdef AMIGA
- #define SSTRKFONT "PLFONTS:plstnd.fnt"
- #define SFONTINDX "PLFONTS:plstnd.idx"
- #define SFONTLKUP "PLFONTS:plstnd.lkp"
- #define XSTRKFONT "PLFONTS:plxtnd.fnt"
- #define XFONTINDX "PLFONTS:plxtnd.idx"
- #define XFONTLKUP "PLFONTS:plxtnd.lkp"
- #endif
-
- /* plfontld.c is the only file that uses these defines. So if you
- move the fonts, just change these and recompile plfontld.c */
- #ifdef unix
- #define SSTRKFONT "/home/dukee2/amr/newplp/fonts/plstnd.fnt"
- #define SFONTINDX "/home/dukee2/amr/newplp/fonts/plstnd.idx"
- #define SFONTLKUP "/home/dukee2/amr/newplp/fonts/plstnd.lkp"
- #define XSTRKFONT "/home/dukee2/amr/newplp/fonts/plxtnd.fnt"
- #define XFONTINDX "/home/dukee2/amr/newplp/fonts/plxtnd.idx"
- #define XFONTLKUP "/home/dukee2/amr/newplp/fonts/plxtnd.lkp"
- #endif
-
- /* If PLDBL is defined all floating point variables will be of type double */
- #ifdef PLDBL
- typedef double PLFLT;
- #else
- typedef float PLFLT;
- #endif
-
- /* You'd better leave this as is. I haven't gotten around to seeing
- if things will work with short's. I doubt that they will. */
- typedef long PLINT;
-
- #ifdef LATTICE_50
- #define PLSTDC 1
- #endif
-
- #ifdef __STDC__
- #define PLSTDC 1
- #endif
-
- /* We need a signed char type. Manx doesn't support signed char but
- fortunately treats char as signed. */
- #ifndef AZTEC_C
- typedef signed char SCHAR;
- #else
- typedef char SCHAR;
- #endif
-
- /* Let's try to get around some ANSI/non-ANSI problems with typedef's */
- /* PLPLOT needs a signed char type to work. Some compilers don't
- recognize the signed char keywords however. */
- #ifdef PLSTDC
- typedef void VOID;
- #else
- typedef char VOID;
- #endif
-
- #ifdef PLSTDC
- #define PLARGS(a) a /* Use function prototypes. */
- #else
- #define PLARGS(a) ()
- #endif
-
- #ifdef NOPROTS
- #undef PLARGS
- #define PLARGS(a) ()
- #endif
-
- #ifndef max
- #define max(a,b) ((a)>(b) ? (a) : (b))
- #define min(a,b) ((a)<(b) ? (a) : (b))
- #define abs(a) ((a)<0 ? -(a) : (a))
- #endif
-
- #define round(a) (PLINT)((a)<0. ? ((a)-.5) : ((a)+.5))
-
- /* All of the void type declarations are made first. */
- void pladv PLARGS((PLINT page));
- void plbeg PLARGS((PLINT dev, PLINT nx, PLINT ny));
- void plbin PLARGS((PLINT nbin, PLFLT *x, PLFLT *y, PLINT centre));
- void plbox PLARGS((char *xopt, PLFLT xtick, PLINT nxsub, char *yopt, \
- PLFLT ytick, PLINT nysub));
- void plccal PLARGS((PLFLT *pts, PLINT nx, PLINT ny, PLFLT zlev, \
- PLINT ix, PLINT iy, PLINT ixg, PLINT iyg, PLFLT *dist));
- void plclr PLARGS((void));
- void plcntr PLARGS((PLFLT *points, PLINT nx, PLINT ny, PLINT kx, PLINT lx, \
- PLINT ky, PLINT ly, PLFLT zlev, PLINT *iscan, \
- PLINT *ixstor, PLINT *iystor, PLINT nstor, \
- void (*tr)(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty)));
- void plcol PLARGS((PLINT color));
- void plcont PLARGS((PLFLT *z, PLINT nx, PLINT ny, PLINT kx, PLINT lx, \
- PLINT ky, PLINT ly, PLFLT *clevel, PLINT nlevel, \
- void (*tr)()));
- void pldeco PLARGS((short **symbol, PLINT *length, char *text));
- void pldtik PLARGS((PLFLT vmin, PLFLT vmax, PLFLT *tick, PLINT *nsubt, \
- PLINT *mode, PLINT *prec));
- void plend PLARGS((void));
- void plenv PLARGS((PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax, \
- PLINT just, PLINT axis));
- void plerrx PLARGS((PLINT n, PLFLT *xmin, PLFLT *xmax, PLFLT *y));
- void plerry PLARGS((PLINT n, PLFLT *x, PLFLT *ymin, PLFLT *ymax));
- void plerx1 PLARGS((PLFLT xmin, PLFLT xmax, PLFLT y));
- void plery1 PLARGS((PLFLT x, PLFLT ymin, PLFLT ymax));
- void plexit PLARGS((char *msg));
- void plfill PLARGS((PLINT n, PLFLT *x, PLFLT *y));
- void plfont PLARGS((PLINT ifont));
- void plfontld PLARGS((PLINT fnt));
- void plfontrel PLARGS((void));
- void plform PLARGS((PLFLT value, PLINT mode, PLINT prec, char *result));
- void plgra PLARGS((void));
- void plgspa PLARGS((PLFLT *xmin, PLFLT *xmax, PLFLT *ymin, PLFLT *ymax));
- void plhist PLARGS((PLINT n, PLFLT *data, PLFLT datmin, PLFLT datmax, \
- PLINT nbin, PLINT oldwin));
- void plhrsh PLARGS((PLINT ch, PLINT x, PLINT y));
- void pljoin PLARGS((PLFLT x1, PLFLT y1, PLFLT x2, PLFLT y2));
- void pllab PLARGS((char *xlabel, char *ylabel, char *tlabel));
- void pllclp PLARGS((PLINT x1, PLINT y1, PLINT x2, PLINT y2));
- void plline PLARGS((PLINT n, PLFLT *x, PLFLT *y));
- void pllsty PLARGS((PLINT line));
- void plmtex PLARGS((char *side, PLFLT disp, PLFLT pos, PLFLT just, \
- char *text));
- void plpat PLARGS((PLINT n, PLINT *inc, PLINT *del));
- void plpoi1 PLARGS((PLFLT x, PLFLT y, PLINT code));
- void plpoin PLARGS((PLINT n, PLFLT *x, PLFLT *y, PLINT code));
- void plprec PLARGS((PLINT setp, PLINT prec));
- void plpsty PLARGS((PLINT patt));
- void plptex PLARGS((PLFLT x, PLFLT y, PLFLT dx, PLFLT dy, PLFLT just, \
- char *text));
- void plr135 PLARGS((PLINT *ix, PLINT *iy, PLINT isens));
- void plr45 PLARGS((PLINT *ix, PLINT *iy, PLINT isens));
- void plschr PLARGS((PLFLT dep, PLFLT scale));
- void plselect PLARGS((PLINT ori, char *file));
- void plsetup PLARGS((PLFLT xdpi, PLFLT ydpi, PLINT xw, PLINT yw));
- void plsmaj PLARGS((PLFLT def, PLFLT scale));
- void plsmin PLARGS((PLFLT def, PLFLT scale));
- void plssym PLARGS((PLFLT def, PLFLT scale));
- void plstar PLARGS((PLINT nx, PLINT ny));
- void plstik PLARGS((PLFLT mx, PLFLT my, PLFLT dx, PLFLT dy));
- void plstr PLARGS((PLINT base, PLFLT *xform, PLINT refx, PLINT refy, \
- char *string));
- void plstyl PLARGS((PLINT nels, PLINT *mk, PLINT *sp));
- void plsvpa PLARGS((PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax));
- void plsym PLARGS((PLINT n, PLFLT *x, PLFLT *y, PLINT code));
- void plsym1 PLARGS((PLFLT x, PLFLT y, PLINT code));
- void pltext PLARGS((void));
- void plupd PLARGS((void));
- void plvpor PLARGS((PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax));
- void plvsta PLARGS((void));
- void plwid PLARGS((PLINT pwid));
- void plwind PLARGS((PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax));
- void plxtik PLARGS((PLINT x, PLINT y, PLINT below, PLINT above));
- void plxybx PLARGS((char *opt, char *label, PLFLT wx1, PLFLT wy1, \
- PLFLT wx2, PLFLT wy2, PLFLT vmin, PLFLT vmax, \
- PLFLT tick, PLINT nsub, PLINT nolast));
- void plxytx PLARGS((PLFLT wx1, PLFLT wy1, PLFLT wx2, PLFLT wy2, \
- PLFLT disp, PLFLT pos, PLFLT just, char *text));
- void plytik PLARGS((PLINT x, PLINT y, PLINT left, PLINT right));
- void plzbx PLARGS((char *opt, char *label, PLINT right, PLFLT dx, PLFLT dy, \
- PLFLT wx, PLFLT wy1, PLFLT wy2, PLFLT vmin, PLFLT vmax, \
- PLFLT tick, PLINT nsub));
- void plztx PLARGS((char *opt, PLFLT dx, PLFLT dy, PLFLT wx, PLFLT wy1, \
- PLFLT wy2, PLFLT disp, PLFLT pos, PLFLT just, char *t));
-
- /* 3-D routine types*/
- void pl3cut PLARGS((PLINT sx1, PLINT sy1, PLINT sx2, PLINT sy2, PLINT su1, \
- PLINT sv1, PLINT su2, PLINT sv2, PLINT *cx, PLINT *cy));
- void plbox3 PLARGS((char *xopt, char *xlabel, PLFLT xtick, PLINT nsubx, \
- char *yopt, char *ylabel, PLFLT ytick, PLINT nsuby, \
- char *zopt, char *zlabel, PLFLT ztick, PLINT nsubz));
- void plgrid3 PLARGS((PLFLT tick));
- void plmesh PLARGS((PLFLT *x, PLFLT *y, PLFLT *z, PLINT ly, \
- PLINT nx, PLINT ny, PLINT opt));
- void plnxtv PLARGS((PLINT *u, PLINT *v, PLINT n, PLINT init));
- void plot3d PLARGS((PLFLT *x, PLFLT *y, PLFLT *z, PLINT ly, \
- PLINT nx, PLINT ny, PLINT opt, PLINT side));
- void plside3 PLARGS((PLFLT *x, PLFLT *y, PLFLT *z, PLINT ly, PLINT nx, \
- PLINT ny, PLINT opt));
- void plt3zz PLARGS((PLINT xstar0, PLINT ystar0, PLINT dx, PLINT dy, \
- PLINT flg0, PLINT init, PLFLT *x, PLFLT *y, PLFLT *z, \
- PLINT ly, PLINT nx, PLINT ny, PLINT *u, PLINT *v));
- void plw3d PLARGS((PLFLT basex, PLFLT basey, PLFLT height, PLFLT xmin0, \
- PLFLT xmax0, PLFLT ymin0, PLFLT ymax0, PLFLT zmin0, \
- PLFLT zmax0, PLFLT alt, PLFLT az));
-
- /* The novice plplot user will not need to call the following functions */
- void cleanup PLARGS((void));
- void genlin PLARGS((PLINT x1, PLINT y1, PLINT x2, PLINT y2));
- void movphy PLARGS((PLINT x, PLINT y));
- void draphy PLARGS((PLINT x, PLINT y));
- void movwor PLARGS((PLFLT x, PLFLT y));
- void drawor PLARGS((PLFLT x, PLFLT y));
- void setphy PLARGS((PLINT xmin, PLINT xmax, PLINT ymin, PLINT ymax));
- void setpxl PLARGS((PLFLT xpmm0, PLFLT ypmm0));
- void setsub PLARGS((void));
- void xform PLARGS((PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty));
- /* stuff in global.c */
- void glev PLARGS((PLINT *n));
- void slev PLARGS((PLINT n));
- void gbase PLARGS((PLFLT *x, PLFLT *y, PLFLT *xc, PLFLT *yc));
- void sbase PLARGS((PLFLT x, PLFLT y, PLFLT xc, PLFLT yc));
- void gnms PLARGS((PLINT *n));
- void snms PLARGS((PLINT n));
- void gdev PLARGS((PLINT *dev, PLINT *term, PLINT *gra));
- void sdev PLARGS((PLINT dev, PLINT term, PLINT gra));
- void smod PLARGS((PLINT term));
- void gcurr PLARGS((PLINT *ix, PLINT *iy));
- void scurr PLARGS((PLINT ix, PLINT iy));
- void gdom PLARGS((PLFLT *xmin, PLFLT *xmax, PLFLT *ymin, PLFLT *ymax));
- void sdom PLARGS((PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax));
- void grange PLARGS((PLFLT *zscl, PLFLT *zmin, PLFLT *zmax));
- void srange PLARGS((PLFLT zscl, PLFLT zmin, PLFLT zmax));
- void gw3wc PLARGS((PLFLT *dxx, PLFLT *dxy, PLFLT *dyx, PLFLT *dyy, PLFLT *dyz));
- void sw3wc PLARGS((PLFLT dxx, PLFLT dxy, PLFLT dyx, PLFLT dyy, PLFLT dyz));
- void gvpp PLARGS((PLINT *ixmin, PLINT *ixmax, PLINT *iymin, PLINT *iymax));
- void svpp PLARGS((PLINT ixmin, PLINT ixmax, PLINT iymin, PLINT iymax));
- void gspp PLARGS((PLINT *ixmin, PLINT *ixmax, PLINT *iymin, PLINT *iymax));
- void sspp PLARGS((PLINT ixmin, PLINT ixmax, PLINT iymin, PLINT iymax));
- void gclp PLARGS((PLINT *ixmin, PLINT *ixmax, PLINT *iymin, PLINT *iymax));
- void sclp PLARGS((PLINT ixmin, PLINT ixmax, PLINT iymin, PLINT iymax));
- void gphy PLARGS((PLINT *ixmin, PLINT *ixmax, PLINT *iymin, PLINT *iymax));
- void sphy PLARGS((PLINT ixmin, PLINT ixmax, PLINT iymin, PLINT iymax));
- void gsub PLARGS((PLINT *nx, PLINT *ny, PLINT *cs));
- void ssub PLARGS((PLINT nx, PLINT ny, PLINT cs));
- void gumpix PLARGS((PLINT *ix, PLINT *iy));
- void sumpix PLARGS((PLINT ix, PLINT iy));
- void gatt PLARGS((PLINT *ifnt, PLINT *icol));
- void satt PLARGS((PLINT ifnt, PLINT icol));
- void gcol PLARGS((PLINT *icol));
- void scol PLARGS((PLINT icol));
- void gwid PLARGS((PLINT *pwid));
- void swid PLARGS((PLINT pwid));
- void gspd PLARGS((PLFLT *xmin, PLFLT *xmax, PLFLT *ymin, PLFLT *ymax));
- void sspd PLARGS((PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax));
- void gvpd PLARGS((PLFLT *xmin, PLFLT *xmax, PLFLT *ymin, PLFLT *ymax));
- void svpd PLARGS((PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax));
- void gvpw PLARGS((PLFLT *xmin, PLFLT *xmax, PLFLT *ymin, PLFLT *ymax));
- void svpw PLARGS((PLFLT xmin, PLFLT xmax, PLFLT ymin, PLFLT ymax));
- void gpixmm PLARGS((PLFLT *x, PLFLT *y));
- void spixmm PLARGS((PLFLT x, PLFLT y));
- void gwp PLARGS((PLFLT *xscl, PLFLT *xoff, PLFLT *yscl, PLFLT *yoff));
- void swp PLARGS((PLFLT xscl, PLFLT xoff, PLFLT yscl, PLFLT yoff));
- void gwm PLARGS((PLFLT *xscl, PLFLT *xoff, PLFLT *yscl, PLFLT *yoff));
- void swm PLARGS((PLFLT xscl, PLFLT xoff, PLFLT yscl, PLFLT yoff));
- void gdp PLARGS((PLFLT *xscl, PLFLT *xoff, PLFLT *yscl, PLFLT *yoff));
- void sdp PLARGS((PLFLT xscl, PLFLT xoff, PLFLT yscl, PLFLT yoff));
- void gmp PLARGS((PLFLT *xscl, PLFLT *xoff, PLFLT *yscl,PLFLT *yoff));
- void smp PLARGS((PLFLT xscl, PLFLT xoff, PLFLT yscl, PLFLT yoff));
- void gchr PLARGS((PLFLT *def, PLFLT *ht));
- void schr PLARGS((PLFLT def, PLFLT ht));
- void gsym PLARGS((PLFLT *def, PLFLT *ht));
- void ssym PLARGS((PLFLT def, PLFLT ht));
- void gmaj PLARGS((PLFLT *def, PLFLT *ht));
- void smaj PLARGS((PLFLT def, PLFLT ht));
- void gmin PLARGS((PLFLT *def, PLFLT *ht));
- void smin PLARGS((PLFLT def, PLFLT ht));
-
- /* Functions that return floats */
- PLFLT plstrl PLARGS((char *string));
- /* Stuff in fcnvrt.c */
- PLFLT dcmmx PLARGS((PLFLT x));
- PLFLT dcmmy PLARGS((PLFLT y));
- PLFLT dcscx PLARGS((PLFLT x));
- PLFLT dcscy PLARGS((PLFLT y));
- PLFLT mmdcx PLARGS((PLFLT x));
- PLFLT mmdcy PLARGS((PLFLT y));
- PLFLT scdcx PLARGS((PLFLT x));
- PLFLT scdcy PLARGS((PLFLT y));
- PLFLT wcmmx PLARGS((PLFLT x));
- PLFLT wcmmy PLARGS((PLFLT y));
- PLFLT w3wcx PLARGS((PLFLT x, PLFLT y, PLFLT z));
- PLFLT w3wcy PLARGS((PLFLT x, PLFLT y, PLFLT z));
-
- /* Functions returning PLINTs */
- PLINT plabv PLARGS((PLINT px, PLINT py, PLINT sx1, PLINT sy1, PLINT sx2, PLINT sy2));
- PLINT plcvec PLARGS((PLINT ch, signed char **xygrid));
- PLINT stindex PLARGS((char *str1, char *str2));
- PLINT strpos PLARGS((char *str, char chr));
- PLINT stsearch PLARGS((char *str, char chr));
- /* This stuff is all in icnvrt.c */
- PLINT dcpcx PLARGS((PLFLT x));
- PLINT dcpcy PLARGS((PLFLT y));
- PLINT mmpcx PLARGS((PLFLT x));
- PLINT mmpcy PLARGS((PLFLT y));
- PLINT wcpcx PLARGS((PLFLT x));
- PLINT wcpcy PLARGS((PLFLT y));
-
- /* Device independent routines */
- void grsetup PLARGS((void));
- void grselect PLARGS((void));
- void grbeg PLARGS((PLINT dev));
- void grclr PLARGS((void));
- void grpage PLARGS((void));
- void grcol PLARGS((void));
- void grwid PLARGS((void));
- void grinit PLARGS((void));
- void grgra PLARGS((void));
- void grline PLARGS((PLINT x1, PLINT y1, PLINT x2, PLINT y2));
- void grtext PLARGS((void));
- void grtidy PLARGS((void));
-