--- ray/src/common/random.h 1996/02/13 11:32:17 2.4 +++ ray/src/common/random.h 1999/01/09 09:15:48 2.7 @@ -1,6 +1,6 @@ -/* Copyright (c) 1992 Regents of the University of California */ +/* Copyright (c) 1999 Silicon Graphics, Inc. */ -/* SCCSid "$SunId$ LBL" */ +/* SCCSid "$SunId$ SGI" */ /* * random.h - header file for random(3) and urand() function. @@ -11,6 +11,7 @@ #ifdef MSDOS #define random() ((long)rand()<<16^(long)rand()<<6^(long)rand()>>4) +#define srandom(s) srand((unsigned)(s)) #define frandom() (rand()*(1./32768.)) @@ -27,16 +28,22 @@ extern long lrand48(); extern double drand48(); #define random() lrand48() +#define srandom(s) srand48((long)(s)) #define frandom() drand48() #endif #endif #ifdef MC + #define urand(i) frandom() +#define initurand(n) (n) + #else + +extern unsigned short *urperm; +extern int urmask, initurand(); + #define urand(i) ((urperm[(i)&urmask]+frandom())/(urmask+1)) -#endif -extern short *urperm; -extern int urmask; +#endif