--- ray/src/util/glareval.c 1991/04/18 15:18:25 1.13 +++ ray/src/util/glareval.c 1991/06/26 13:35:16 1.18 @@ -20,7 +20,7 @@ static char SCCSid[] = "$SunId$ LBL"; #define vfork fork #endif -#define MAXSBUF 524268 /* maximum total size of scanline buffer */ +#define MAXSBUF 786432 /* maximum total size of scanline buffer */ #define HSIZE 317 /* size of scanline hash table */ #define NRETIRE 16 /* number of scanlines to retire at once */ @@ -49,6 +49,7 @@ static SCAN *hashtab[HSIZE]; /* scanline hash table */ static long ncall = 0L; /* number of calls to getpictscan */ static long nread = 0L; /* number of scanlines read */ +static long nrecl = 0L; /* number of scanlines reclaimed */ static int wrongformat = 0; @@ -77,12 +78,7 @@ int y; if (sl->y == y) { /* reclaim */ sl->next = hashtab[hi]; hashtab[hi] = sl; -#ifdef DEBUG - if (verbose) - fprintf(stderr, - "%s: scanline %d reclaimed\n", - progname, y); -#endif + nrecl++; } return(sl); } @@ -146,13 +142,15 @@ pict_stats() /* print out picture read statistics */ { static long lastcall = 0L; /* ncall at last report */ static long lastread = 0L; /* nread at last report */ + static long lastrecl = 0L; /* nrecl at last report */ if (ncall == lastcall) return; - fprintf(stderr, "%s: %ld scanlines read in %ld calls\n", - progname, nread-lastread, ncall-lastcall); + fprintf(stderr, "%s: %ld scanlines read (%ld reclaimed) in %ld calls\n", + progname, nread-lastread, nrecl-lastrecl, ncall-lastcall); lastcall = ncall; lastread = nread; + lastrecl = nrecl; } #endif @@ -179,15 +177,14 @@ FVECT vd; double -getviewpix(vh, vv, se) /* compute single view pixel */ +getviewpix(vh, vv) /* compute single view pixel */ int vh, vv; -SPANERR *se; { FVECT dir; float rt_buf[6]; double res; - if (compdir(dir, vh, vv, se) < 0) + if (compdir(dir, vh, vv) < 0) return(-1.0); npixinvw++; if ((res = pict_val(dir)) >= 0.0) @@ -214,7 +211,6 @@ float *vb; float rt_buf[6*MAXPIX]; /* rtrace send/receive buffer */ register int n; /* number of pixels in buffer */ short buf_vh[MAXPIX]; /* pixel positions */ - SPANERR sperr; FVECT dir; register int vh; @@ -223,10 +219,9 @@ float *vb; fprintf(stderr, "%s: computing view span at %d...\n", progname, vv); #endif - setspanerr(&sperr, vv); n = 0; for (vh = -hsize; vh <= hsize; vh++) { - if (compdir(dir, vh, vv, &sperr) < 0) { /* not in view */ + if (compdir(dir, vh, vv) < 0) { /* not in view */ vb[vh+hsize] = -1.0; continue; } @@ -347,7 +342,7 @@ char *av[]; dup2(p0[0], 0); close(p0[0]); } - if (p1[1] != 0) { /* connect p1 to stdout */ + if (p1[1] != 1) { /* connect p1 to stdout */ dup2(p1[1], 1); close(p1[1]); } @@ -482,7 +477,7 @@ initscans() /* initialize scanline buffers */ /* allocate scanline buffers */ scansize = sizeof(SCAN) + pxsiz*sizeof(COLR); #ifdef ALIGN - scansize = scansize+(sizeof(ALIGN)-1)) & ~(sizeof(ALIGN)-1); + scansize = scansize+(sizeof(ALIGN)-1) & ~(sizeof(ALIGN)-1); #endif i = MAXSBUF / scansize; /* compute number to allocate */ if (i > HSIZE)