ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/px/pfilt.h
Revision: 2.1
Committed: Mon Mar 29 00:34:23 2004 UTC (20 years ago) by schorsch
Content type: text/plain
Branch: MAIN
CVS Tags: rad5R4, rad5R2, rad4R2P2, rad5R0, rad5R1, rad3R7P2, rad3R7P1, rad4R2, rad4R1, rad4R0, rad3R6, rad3R6P1, rad3R8, rad3R9, rad4R2P1, rad5R3
Log Message:
Continued ANSIfication. Added headerfiles pfilt.h and clrtab.h.

File Contents

# Content
1 /* RCSid: $Id$ */
2 /*
3 * Header file for picture filtering
4 */
5 #ifndef _RAD_PFILT_H_
6 #define _RAD_PFILT_H_
7
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11
12
13 extern double CHECKRAD; /* radius over which gaussian is summed */
14 extern double rad; /* output pixel radius for filtering */
15 extern double thresh; /* maximum contribution for subpixel */
16 extern int nrows, ncols; /* number of rows and columns for output */
17 extern int xres, yres; /* x and y resolution */
18 extern int avghot; /* true means average in avgbrt spots */
19 extern double hotlvl; /* brightness considered "hot" */
20 extern int npts; /* # of points for stars */
21 extern double spread; /* spread for star points */
22 extern char *progname;
23 extern COLOR exposure; /* exposure for frame */
24
25 extern double x_c, y_r; /* conversion factors */
26
27 extern int xrad; /* x search radius */
28 extern int yrad; /* y search radius */
29 extern int xbrad; /* x box size */
30 extern int ybrad; /* y box size */
31
32 extern int barsize; /* size of input scan bar */
33 extern COLOR **scanin; /* input scan bar */
34 extern COLOR *scanout; /* output scan line */
35 extern COLOR **scoutbar; /* output scan bar (if thresh > 0) */
36 extern float **greybar; /* grey-averaged input values */
37 extern int obarsize; /* size of output scan bar */
38 extern int orad; /* output window radius */
39
40 extern int wrapfilt; /* wrap filter horizontally? */
41
42 typedef double brightfunc_t(COLOR c);
43 extern brightfunc_t *ourbright; /* brightness calculation function */
44
45 /* defined in pf2.c */
46 extern void pass1init(void); /* prepare for first pass */
47 extern void pass1default(void); /* for single pass */
48 extern void pass1scan(COLOR *scan, int y); /* process first pass scanline */
49 extern void pass2init(void); /* prepare for final pass */
50 extern void pass2scan(COLOR *scan, int y); /* process final pass scanline */
51
52 /* defined in pf3.c */
53 extern void initmask(void); /* initialize gaussian lookup table */
54 extern void dobox(COLOR csum, int xcent, int ycent,
55 int c, int r); /* simple box filter */
56 extern void dogauss(COLOR csum, int xcent, int ycent,
57 int c, int r); /* gaussian filter */
58 extern void dothresh(int xcent, int ycent,
59 int ccent, int rcent); /* gaussian threshold filter */
60
61 #ifdef __cplusplus
62 }
63 #endif
64 #endif /* _RAD_PFILT_H_ */
65