ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/ray.h
(Generate patch)

Comparing ray/src/rt/ray.h (file contents):
Revision 2.52 by greg, Fri Apr 5 01:10:26 2024 UTC vs.
Revision 2.62 by greg, Fri Jun 20 18:05:30 2025 UTC

# Line 19 | Line 19 | extern "C" {
19   #define RNUMBER         size_t          /* ray counter (>= sizeof pointer) */
20   #endif
21  
22 < #define  MAXDIM         32      /* maximum number of sampling dimensions */
22 > #define  MAXDIM         36      /* maximum number of sampling dimensions */
23 > #define  XTRADIM        3       /* #spare dimensions */
24 > #define  ndims_inc()    (ndims -= ndims>=MAXDIM-XTRADIM, ndims++)
25 > #define  dec_ndims()    (ndims -= ndims>0)
26  
27                                  /* ray type flags */
28   #define  PRIMARY        01              /* original ray */
# Line 64 | Line 67 | typedef struct ray {
67          int     *slights;       /* list of lights to test for scattering */
68          RNUMBER rno;            /* unique ray number */
69          OBJECT  robj;           /* intersected object number */
70 <        int     rsrc;           /* source we're aiming for */
70 >        int     rsrc;           /* source we're aiming for (or ones to skip) */
71          float   rweight;        /* cumulative weight (for termination) */
72          float   gecc;           /* scattering eccentricity coefficient */
73          SCOLOR  rcoef;          /* contribution coefficient w.r.t. parent */
# Line 104 | Line 107 | extern void    (*trace)(RAY*); /* global trace reporting
107  
108   extern int      dimlist[];      /* dimension list for distribution */
109   extern int      ndims;          /* number of dimensions so far */
110 < extern int      samplendx;      /* index for this sample */
110 > extern unsigned long
111 >                samplendx;      /* index for this sample */
112  
113   extern int      do_irrad;       /* compute irradiance? */
114  
# Line 205 | Line 209 | extern void    free_objmem(void);
209                                          /* defined in preload.c */
210   extern int      load_os(OBJREC *op);
211   extern void     preload_objs(void);
212 + extern char     *shm_boundary;
213 + extern void     cow_memshare(void);
214 + extern void     cow_doneshare(void);
215                                          /* defined in raycalls.c */
216   extern void     ray_init(char *otnm);
217   extern void     ray_trace(RAY *r);
# Line 212 | Line 219 | extern void    ray_done(int freall);
219   extern void     ray_save(RAYPARAMS *rp);
220   extern void     ray_restore(RAYPARAMS *rp);
221   extern void     ray_defaults(RAYPARAMS *rp);
222 + extern void     reset_random(void);
223                                          /* defined in raypcalls.c */
224   extern void     ray_pinit(char *otnm, int nproc);
225   extern int      ray_psend(RAY *r);
# Line 248 | Line 256 | extern int     feature_status(int ac, char *av[]);
256   extern int      getrenderopt(int ac, char *av[]);
257   extern void     print_rdefaults(void);
258                                          /* defined in srcdraw.c */
251 extern void     drawsources(COLOR *pic[], float *zbf[],
252                        int x0, int xsiz, int y0, int ysiz);
259   extern void     init_drawsources(int rad);
260 + extern void     drawsources(COLORV *pic[], RGBPRIMP primp, float *zbf[],
261 +                        int x0, int xsiz, int y0, int ysiz);
262                                          /* defined in rt/initotypes.c */
263   extern void     initotypes(void);
264                                          /* module main procedures */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines