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

Comparing ray/src/rt/rcmain.c (file contents):
Revision 2.1 by greg, Sat Jun 9 07:16:47 2012 UTC vs.
Revision 2.7 by greg, Fri Jun 22 22:03:02 2012 UTC

# Line 9 | Line 9 | static const char      RCSid[] = "$Id$";
9  
10   #include <signal.h>
11   #include "rcontrib.h"
12 < #include "platform.h"
13 < #include "paths.h"
12 > #include "random.h"
13   #include "source.h"
14   #include "ambient.h"
15  
17 char    *shm_boundary = NULL;           /* boundary of shared memory */
18
16   int     gargc;                          /* global argc */
17   char    **gargv;                        /* global argv */
18   char    *octname;                       /* global octree name */
# Line 46 | Line 43 | int    lim_dist = 0;                   /* limit distance? */
43   const char      *modname[MAXMODLIST];   /* ordered modifier name list */
44   int             nmods = 0;              /* number of modifiers */
45  
46 + void    (*addobjnotify[8])() = {ambnotify, NULL};
47 +
48   char    RCCONTEXT[] = "RCONTRIB";       /* our special evaluation context */
49  
51 void    (*addobjnotify[8])() = {ambnotify, tranotify, NULL};
50  
53
51   static void
52   printdefaults(void)                     /* print default values to stdout */
53   {
54          char  *cp;
55  
56 +        printf("-c %-5d\t\t\t# accumulated rays per record\n", accumulate);
57 +        printf("-V%c\t\t\t\t# output %s\n", contrib ? '+' : '-',
58 +                        contrib ? "contributions" : "coefficients");
59          if (imm_irrad)
60                  printf("-I+\t\t\t\t# immediate irradiance on\n");
61          printf("-n %-2d\t\t\t\t# number of rendering processes\n", nproc);
# Line 169 | Line 169 | main(int argc, char *argv[])
169                                  case 'n': case 'N': case 'f': case 'F': \
170                                  case '-': case '0': var = 0; break; \
171                                  default: goto badopt; }
172        int     nprocs = 1;
172          char    *curout = NULL;
173          char    *binval = NULL;
174          int     bincnt = 0;
# Line 227 | Line 226 | main(int argc, char *argv[])
226                          yres = atoi(argv[++i]);
227                          break;
228                  case 'w':                       /* warnings */
229 <                        rval = erract[WARNING].pf != NULL;
229 >                        rval = (erract[WARNING].pf != NULL);
230                          bool(2,rval);
231                          if (rval) erract[WARNING].pf = wputs;
232                          else erract[WARNING].pf = NULL;
# Line 336 | Line 335 | main(int argc, char *argv[])
335          nsceneobjs = nobjects;
336  
337          marksources();                  /* find and mark sources */
338 +        for (i = 0; i < nsources; i++)  /* tracing to sources as well */
339 +                source[i].sflags |= SFOLLOW;
340  
341          setambient();                   /* initialize ambient calculation */
342  
343 <        if (nproc > 1) {
343 <                preload_objs();         /* preload auxiliary data */
344 <                                        /* set shared memory boundary */
345 <                shm_boundary = strcpy((char *)malloc(16), "SHM_BOUNDARY");
346 <        }
347 <        rcontrib();                     /* trace ray contributions */
343 >        rcontrib();                     /* trace ray contributions (loop) */
344  
345          ambsync();                      /* flush ambient file */
346  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines