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

Comparing ray/src/rt/func.c (file contents):
Revision 2.19 by schorsch, Mon Jul 21 22:30:19 2003 UTC vs.
Revision 2.24 by greg, Tue Feb 22 16:45:12 2011 UTC

# Line 8 | Line 8 | static const char      RCSid[] = "$Id$";
8   #include "copyright.h"
9  
10   #include  "ray.h"
11 <
11 > #include  "paths.h"
12   #include  "otypes.h"
13
13   #include  "func.h"
14  
15  
# Line 31 | Line 30 | XF  funcxf;                    /* current transformation */
30   static OBJREC  *fobj = NULL;    /* current function object */
31   static RAY  *fray = NULL;       /* current function ray */
32  
33 < static double  l_erf(), l_erfc(), l_arg();
33 > static double  l_erf(char *), l_erfc(char *), l_arg(char *);
34  
35  
36 < MFUNC *
37 < getfunc(m, ff, ef, dofwd)       /* get function for this modifier */
38 < OBJREC  *m;
39 < int  ff;
40 < unsigned int  ef;
41 < int  dofwd;
36 > extern MFUNC *
37 > getfunc(        /* get function for this modifier */
38 >        OBJREC  *m,
39 >        int  ff,
40 >        unsigned int  ef,
41 >        int  dofwd
42 > )
43   {
44          static char  initfile[] = INITFILE;
45          char  sbuf[MAXSTR];
# Line 131 | Line 131 | toofew:
131          objerror(m, USER, "too few string arguments");
132   memerr:
133          error(SYSTEM, "out of memory in getfunc");
134 +        return NULL; /* pro forma return */
135   }
136  
137  
138 < void
139 < freefunc(m)                     /* free memory associated with modifier */
140 < OBJREC  *m;
138 > extern void
139 > freefunc(                       /* free memory associated with modifier */
140 >        OBJREC  *m
141 > )
142   {
143          register MFUNC  *f;
144          register int  i;
# Line 163 | Line 165 | OBJREC  *m;
165   }
166  
167  
168 < int
169 < setfunc(m, r)                   /* set channels for function call */
170 < OBJREC  *m;
171 < register RAY  *r;
168 > extern int
169 > setfunc(                        /* set channels for function call */
170 >        OBJREC  *m,
171 >        register RAY  *r
172 > )
173   {
174 <        static unsigned long  lastrno = ~0;
174 >        static RNUMBER  lastrno = ~0;
175          register MFUNC  *f;
176                                          /* get function */
177          if ((f = (MFUNC *)m->os) == NULL)
# Line 194 | Line 197 | register RAY  *r;
197   }
198  
199  
200 < void
201 < loadfunc(fname)                 /* load definition file */
202 < char  *fname;
200 > extern void
201 > loadfunc(                       /* load definition file */
202 >        char  *fname
203 > )
204   {
205          char  *ffname;
206  
# Line 209 | Line 213 | char  *fname;
213  
214  
215   static double
216 < l_arg()                         /* return nth real argument */
216 > l_arg(char *nm)                 /* return nth real argument */
217   {
218          register int  n;
219  
# Line 230 | Line 234 | l_arg()                                /* return nth real argument */
234  
235  
236   static double
237 < l_erf()                         /* error function */
237 > l_erf(char *nm)                 /* error function */
238   {
235        extern double  erf();
236
239          return(erf(argument(1)));
240   }
241  
242  
243   static double
244 < l_erfc()                        /* cumulative error function */
244 > l_erfc(char *nm)                /* cumulative error function */
245   {
244        extern double  erfc();
245
246          return(erfc(argument(1)));
247   }
248  
249  
250 < double
251 < chanvalue(n)                    /* return channel n to calcomp */
252 < register int  n;
250 > extern double
251 > chanvalue(                      /* return channel n to calcomp */
252 >        register int  n
253 > )
254   {
255          if (fray == NULL)
256                  syntax("ray parameter used in constant expression");

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines