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

Comparing ray/src/rt/source.h (file contents):
Revision 2.24 by greg, Wed Nov 15 18:02:53 2023 UTC vs.
Revision 2.28 by greg, Wed Oct 22 16:39:58 2025 UTC

# Line 117 | Line 117 | typedef struct {
117   *                              i passed to vproj runs from 0 to nproj-1.
118   */
119  
120 < typedef struct {
121 <        int  (*vproj)();        /* project virtual sources */
120 > typedef struct {                /* project virtual sources */
121 >        int  (*vproj)(MAT4,OBJREC*,SRCREC*,int);
122          int  nproj;             /* number of possible projections */
123   } VSMATERIAL;           /* virtual source material functions */
124  
125   typedef struct {
126 <        void    (*setsrc)();    /* set light source for object */
127 <        void    (*partit)();    /* partition light source object */
128 <        double  (*getpleq)();   /* plane equation for surface */
129 <        double  (*getdisk)();   /* maximum disk for surface */
126 >        void    (*setsrc)(SRCREC*,OBJREC*);     /* set light source for object */
127 >        void    (*partit)(SRCINDEX*,RAY*);      /* partition light source object */
128 >        double  (*getpleq)(FVECT,OBJREC*);      /* plane equation for surface */
129 >        double  (*getdisk)(FVECT,OBJREC*);      /* maximum disk for surface */
130   } SOBJECT;              /* source object functions */
131  
132   typedef union {
# Line 163 | Line 163 | extern int      srcblocked(RAY *r);
163   extern void     freeobscache(SRCREC *s);
164   extern void     markclip(OBJREC *m);
165                                          /* defined in srcsamp.c */
166 + extern int      srcskip(int sn, RAY *r);
167   extern double   nextssamp(RAY *r, SRCINDEX *si);
168   extern int      skipparts(int ct[3], int sz[3], int pp[2], unsigned char *pt);
169   extern void     nopart(SRCINDEX *si, RAY *r);
170   extern void     cylpart(SRCINDEX *si, RAY *r);
171   extern void     flatpart(SRCINDEX *si, RAY *r);
172   extern double   scylform(int sn, FVECT dir);
173 +                                        /* defined in srcskipload.c */
174 + extern int      sskip_dim[2];           /* source skip image size */
175 + extern int      srcskip_open(char *bmpspec, char *scorrimg);
176 + extern int      srcskip_getrow(int row, int *sndx, float *scorr);
177 + extern int      *srcskip_ndxmap(void);
178 + extern float    *srcskip_corrmap(void);
179 + extern void     srcskip_close(void);
180 + extern void     srcskip_free_maps(void);
181                                          /* defined in srcsupp.c */
182   extern void     initstypes(void);
183   extern int      newsource(void);

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)