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

Comparing ray/src/util/ranimove.h (file contents):
Revision 3.1 by greg, Sat Feb 22 02:07:30 2003 UTC vs.
Revision 3.10 by greg, Fri Oct 5 01:03:22 2012 UTC

# Line 1 | Line 1
1 < /* RCSid: $Id$ */
1 > /* RCSid $Id$ */
2   /*
3   *  ranimove.h
4   *
# Line 16 | Line 16
16   *
17   * See the ranimove(1) man page for further details.
18   */
19 + #ifndef _RAD_RANIMOVE_H_
20 + #define _RAD_RANIMOVE_H_
21  
20 /* ====================================================================
21 * The Radiance Software License, Version 1.0
22 *
23 * Copyright (c) 1990 - 2002 The Regents of the University of California,
24 * through Lawrence Berkeley National Laboratory.   All rights reserved.
25 *
26 * Redistribution and use in source and binary forms, with or without
27 * modification, are permitted provided that the following conditions
28 * are met:
29 *
30 * 1. Redistributions of source code must retain the above copyright
31 *         notice, this list of conditions and the following disclaimer.
32 *
33 * 2. Redistributions in binary form must reproduce the above copyright
34 *       notice, this list of conditions and the following disclaimer in
35 *       the documentation and/or other materials provided with the
36 *       distribution.
37 *
38 * 3. The end-user documentation included with the redistribution,
39 *           if any, must include the following acknowledgment:
40 *             "This product includes Radiance software
41 *                 (http://radsite.lbl.gov/)
42 *                 developed by the Lawrence Berkeley National Laboratory
43 *               (http://www.lbl.gov/)."
44 *       Alternately, this acknowledgment may appear in the software itself,
45 *       if and wherever such third-party acknowledgments normally appear.
46 *
47 * 4. The names "Radiance," "Lawrence Berkeley National Laboratory"
48 *       and "The Regents of the University of California" must
49 *       not be used to endorse or promote products derived from this
50 *       software without prior written permission. For written
51 *       permission, please contact [email protected].
52 *
53 * 5. Products derived from this software may not be called "Radiance",
54 *       nor may "Radiance" appear in their name, without prior written
55 *       permission of Lawrence Berkeley National Laboratory.
56 *
57 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
58 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
59 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
60 * DISCLAIMED.   IN NO EVENT SHALL Lawrence Berkeley National Laboratory OR
61 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
62 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
63 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
64 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
65 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
66 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
67 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
68 * SUCH DAMAGE.
69 * ====================================================================
70 *
71 * This software consists of voluntary contributions made by many
72 * individuals on behalf of Lawrence Berkeley National Laboratory.   For more
73 * information on Lawrence Berkeley National Laboratory, please see
74 * <http://www.lbl.gov/>.
75 */
76
22   #include "ray.h"
23   #include "view.h"
24   #include "vars.h"
25 +
26 + #ifdef __cplusplus
27 + extern "C" {
28 + #endif
29 +
30                                  /* input variables (alphabetical by name) */
31   #define BASENAME        0               /* output image base name */
32   #define END             1               /* number of animation frames */
# Line 84 | Line 34
34   #define HIGHQ           3               /* high quality setting */
35   #define LOWQ            4               /* low quality setting */
36   #define MBLUR           5               /* motion blur parameter */
37 < #define MOVE            6               /* object movement */
38 < #define OCONV           7               /* oconv options */
39 < #define OCTREEF         8               /* octree file name */
40 < #define RATE            9               /* frame rate (fps) */
41 < #define RESOLUTION      10              /* desired final resolution */
42 < #define RIF             11              /* rad input file */
43 < #define VIEWFILE        12              /* animation frame views */
37 > #define MNAME           6               /* motion vector file */
38 > #define MOVE            7               /* object movement */
39 > #define OCONV           8               /* oconv options */
40 > #define OCTREEF         9               /* octree file name */
41 > #define RATE            10              /* frame rate (fps) */
42 > #define RESOLUTION      11              /* desired final resolution */
43 > #define RIF             12              /* rad input file */
44 > #define VIEWFILE        13              /* animation frame views */
45 > #define ZNAME           14              /* depth file */
46  
47 < #define NV_INIT         13              /* number of variables */
47 > #define NV_INIT         15              /* number of variables */
48  
49   #define VV_INIT { \
50                  {"BASENAME",    3,      0,      NULL,   onevalue}, \
# Line 101 | Line 53
53                  {"highq",       2,      0,      NULL,   catvalues}, \
54                  {"lowq",        2,      0,      NULL,   catvalues}, \
55                  {"MBLUR",       2,      0,      NULL,   fltvalue}, \
56 +                {"MNAME",       2,      0,      NULL,   onevalue}, \
57                  {"move",        2,      0,      NULL,   NULL}, \
58                  {"oconv",       2,      0,      NULL,   catvalues}, \
59                  {"OCTREE",      3,      0,      NULL,   onevalue}, \
60                  {"RATE",        2,      0,      NULL,   fltvalue}, \
61                  {"RESOLUTION",  3,      0,      NULL,   onevalue}, \
62                  {"RIF",         3,      0,      NULL,   onevalue}, \
63 <                {"VIEWFILE",    2,      0,      NULL,   onevalue} \
63 >                {"VIEWFILE",    2,      0,      NULL,   onevalue}, \
64 >                {"ZNAME",       2,      0,      NULL,   onevalue} \
65          }
66  
67   struct ObjMove {
# Line 159 | Line 113 | extern int             haveprio;       /* high-level saliency specified
113   extern int              gargc;          /* global argc for printargs */
114   extern char             **gargv;        /* global argv for printargs */
115  
162 VIEW    *getview();
163 int     countviews();
164 int     getmove();
165 char    *getexp(), *getoctspec(), *getobjname(), *getxf();
166 double  expspec_val(), obj_prio();
167 void    setdefaults(), setmove(), animate(), getradfile(), setrendparams();
168 void    init_frame(), filter_frame(), send_frame(), free_frame();
169 int     refine_frame();
170 double  getTime();
171
116   /*************************************************************************
117   * Frame rendering stuff (defined in ranimove1.c and ranimove2.c)
118   */
# Line 190 | Line 134 | extern float   *zbuffer;       /* depth at each pixel */
134   extern OBJECT   *obuffer;       /* object id at each pixel */
135   extern short    *xmbuffer;      /* x motion at each pixel */
136   extern short    *ymbuffer;      /* y motion at each pixel */
137 < extern BYTE     *abuffer;       /* accuracy at each pixel */
138 < extern BYTE     *sbuffer;       /* sample count per pixel */
137 > extern uby8     *abuffer;       /* accuracy at each pixel */
138 > extern uby8     *sbuffer;       /* sample count per pixel */
139  
140   extern VIEW     vwprev;         /* last frame's view */
141   extern COLOR    *cprev;         /* last frame colors */
142   extern float    *zprev;         /* last frame depth */
143   extern OBJECT   *oprev;         /* last frame objects */
144 < extern BYTE     *aprev;         /* last frame accuracy */
144 > extern uby8     *aprev;         /* last frame accuracy */
145  
146   extern float    *cerrmap;       /* conspicuous error map */
147   extern int      cerrzero;       /* is all of cerrmap zero? */
# Line 228 | Line 172 | extern double  hlsmax;         /* maximum high-level saliency
172  
173   #define ATIDIFF         7       /* error difference for time extrapolation */
174  
175 < void    write_map(), sample_pos(), comp_frame_error(), conspicuity();
176 < int     getclosest(), getambcolor(), refine_first();
177 < double  sample_wt(), estimaterr(), comperr();
175 >        /* ranimove1.c */
176 > extern void     init_frame(void);
177 > extern void filter_frame(void);
178 > extern void send_frame(void);
179 > extern void free_frame(void);
180 > extern void write_map(float *mp, char *fn);
181 > extern void sample_pos(double hv[2], int x, int y, int sn);
182 > extern void comp_frame_error(void);
183 > extern int      getclosest(int *iarr, int nc, int x, int y);
184 > extern int getambcolor(COLOR clr, int obj);
185 > extern double   sample_wt(int xo, int yo);
186 > extern double estimaterr(COLOR cs, COLOR cs2, int ns, int ns0);
187 > extern double comperr(int *neigh, int nc, int ns0);
188 >
189 >        /* ranimove2.c */
190 > extern int refine_first();
191 > extern void conspicuity(void);
192 > extern int refine_frame(int pass);
193 >
194 >        /* ranimove.c */
195 > extern double getTime(void);
196 > extern double obj_prio(OBJECT obj);
197 > extern int getmove(OBJECT obj);
198 > extern char * getoctspec(int n);
199 > extern double expspec_val(char *s);
200 > extern char *getexp(int n); /* XXX partly duplicated function */
201 > extern VIEW *getview(int n); /* XXX duplicated function */
202 > double  getTime();
203 > /*
204 > int     countviews();
205 > void    setdefaults(),
206 > void setmove(),
207 > setrendparams();
208 > getradfile(),
209 > animate(),
210 > */
211 >
212 > #ifdef __cplusplus
213 > }
214 > #endif
215 > #endif /* _RAD_RANIMOVE_H_ */
216 >

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines