--- ray/src/hd/holo.h 1997/11/06 16:37:45 3.2 +++ ray/src/hd/holo.h 1997/11/11 16:59:34 3.5 @@ -57,7 +57,7 @@ typedef struct { unsigned long tick; /* clock tick for LRU replacement */ } BEAM; /* followed by nrm RAYVAL's */ -#define hdbray(bp) (RAYVAL *)((bp)+1) +#define hdbray(bp) ((RAYVAL *)((bp)+1)) #define hdbsiz(nr) (sizeof(BEAM)+(nr)*sizeof(RAYVAL)) typedef struct { @@ -74,8 +74,8 @@ typedef struct holo { short dirty; /* beam index needs update to file */ double tlin; /* linear range for depth encoding */ FVECT wn[3]; /* wall normals (derived) */ + double wg[3]; /* wall grid multipliers (derived) */ double wo[6]; /* wall offsets (derived) */ - FVECT gv[3][2]; /* grid coordinate vectors (derived) */ int wi[6]; /* wall super-indices (derived) */ char *priv; /* pointer to private client data */ BEAM **bl; /* beam pointers (memory cache) */ @@ -90,7 +90,7 @@ typedef struct holo { #define hdflush(hp) (hdfreebeam(hp,0) && hdsync(hp)) -extern HOLO *hdinit(); +extern HOLO *hdinit(), *hdalloc(); extern BEAM *hdgetbeam(); extern RAYVAL *hdnewrays(); extern long hdmemuse(), hdfiluse();