ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/rt/func.h
Revision: 2.7
Committed: Tue Mar 30 16:13:01 2004 UTC (20 years, 1 month ago) by schorsch
Content type: text/plain
Branch: MAIN
CVS Tags: rad3R7P2, rad3R7P1, rad4R0, rad3R6, rad3R6P1, rad3R8, rad3R9
Changes since 2.6: +11 -2 lines
Log Message:
Continued ANSIfication. There are only bits and pieces left now.

File Contents

# User Rev Content
1 schorsch 2.7 /* RCSid $Id: func.h,v 2.6 2003/07/14 22:24:00 schorsch Exp $ */
2 greg 2.1 /*
3     * Header file for modifiers using function files.
4 greg 2.2 *
5     * Include after ray.h
6     */
7 schorsch 2.4 #ifndef _RAD_FUNC_H_
8     #define _RAD_FUNC_H_
9 schorsch 2.6
10 schorsch 2.7 #include "ray.h"
11     #include "object.h"
12 schorsch 2.6 #include "calcomp.h"
13    
14 schorsch 2.4 #ifdef __cplusplus
15     extern "C" {
16     #endif
17 greg 2.1
18     #define MAXEXPR 9 /* maximum expressions in modifier */
19    
20     typedef struct {
21     EPNODE *ep[MAXEXPR+1]; /* NULL-terminated expression list */
22     char *ctx; /* context (from file name) */
23     XF *f, *b; /* forward and backward transforms */
24     } MFUNC; /* material function */
25    
26     extern XF unitxf; /* identity transform */
27     extern XF funcxf; /* current transform */
28    
29 greg 2.2
30 schorsch 2.7 extern MFUNC *getfunc(OBJREC *m, int ff, unsigned int ef, int dofwd);
31 greg 2.2 extern void freefunc(OBJREC *m);
32     extern int setfunc(OBJREC *m, RAY *r);
33     extern void loadfunc(char *fname);
34    
35 schorsch 2.7 /* defined in noise3.c */
36     extern void setnoisefuncs(void);
37    
38     /* defined in fprism.c */
39     extern void setprismfuncs(void);
40    
41    
42 schorsch 2.4
43     #ifdef __cplusplus
44     }
45 greg 2.2 #endif
46 schorsch 2.4 #endif /* _RAD_FUNC_H_ */
47