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

Comparing ray/src/rt/data.h (file contents):
Revision 2.8 by greg, Wed Dec 13 23:26:16 2023 UTC vs.
Revision 2.9 by greg, Tue Mar 12 16:54:51 2024 UTC

# Line 8 | Line 8
8   extern "C" {
9   #endif
10  
11 < #define  MAXDDIM        5               /* maximum data dimensions */
11 > #define  MAXDDIM        6               /* maximum data dimensions */
12  
13   #define  DATATYPE       float           /* single precision to save space */
14   #define  DATATY         'f'             /* format for DATATYPE */
15   #define  SPECTY         'c'             /* format for SCOLR */
16  
17   typedef struct datarray {
18 +        struct datarray  *next;         /* next array in list */
19          char  *name;                    /* name of our data */
20          short  type;                    /* DATATY, SPECTY, RED, GRN or BLU */
21          short  nd;                      /* number of dimensions */
21        struct {
22                DATATYPE  org, siz;             /* coordinate domain */
23                int  ne;                        /* number of elements */
24                DATATYPE  *p;                   /* point locations */
25        } dim[MAXDDIM];                 /* dimension specifications */
22          union {
23                  DATATYPE  *d;                   /* float data */
24                  COLR  *c;                       /* RGBE data */
25                  uby8  *s;                       /* spectral data */
26                  void  *p;                       /* generic pointer */
27          }  arr;                         /* the data */
28 <        struct datarray  *next;         /* next array in list */
28 >        struct dadim {                  /* put this last */
29 >                DATATYPE  *p;                   /* point locations */
30 >                DATATYPE  org, siz;             /* coordinate domain */
31 >                int  ne;                        /* number of elements */
32 >        } dim[MAXDDIM];                 /* dimension specifications */
33   } DATARRAY;                     /* a data array */
34  
35
35   extern DATARRAY *getdata(char *dname);
36   extern DATARRAY *getpict(char *pname);
37   extern DATARRAY *getspec(char *sname);
38   extern void     freedata(DATARRAY *dta);
39   extern double   datavalue(DATARRAY *dp, double *pt);
40 <
40 > /* release datavector() pointer with free() not freedata() */
41 > extern DATARRAY *datavector(DATARRAY *dp, double *pt);
42  
43   #ifdef __cplusplus
44   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines