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

Comparing ray/src/common/resolu.h (file contents):
Revision 2.2 by greg, Fri Jun 4 17:01:29 1993 UTC vs.
Revision 2.3 by greg, Sat Feb 22 02:07:22 2003 UTC

# Line 1 | Line 1
1 < /* Copyright (c) 1991 Regents of the University of California */
2 <
3 < /* SCCSid "$SunId$ LBL" */
4 <
1 > /* RCSid: $Id$ */
2   /*
3   * Definitions for resolution line in image file.
4   *
5 + * Include after <stdio.h>, <string.h>, and <time.h>
6 + *
7   * True image orientation is defined by an xy coordinate system
8   * whose origin is at the lower left corner of the image, with
9   * x increasing to the right and y increasing in the upward direction.
# Line 15 | Line 14
14   * indicating that the scanlines are in English text order (PIXSTANDARD).
15   */
16  
17 + /* ====================================================================
18 + * The Radiance Software License, Version 1.0
19 + *
20 + * Copyright (c) 1990 - 2002 The Regents of the University of California,
21 + * through Lawrence Berkeley National Laboratory.   All rights reserved.
22 + *
23 + * Redistribution and use in source and binary forms, with or without
24 + * modification, are permitted provided that the following conditions
25 + * are met:
26 + *
27 + * 1. Redistributions of source code must retain the above copyright
28 + *         notice, this list of conditions and the following disclaimer.
29 + *
30 + * 2. Redistributions in binary form must reproduce the above copyright
31 + *       notice, this list of conditions and the following disclaimer in
32 + *       the documentation and/or other materials provided with the
33 + *       distribution.
34 + *
35 + * 3. The end-user documentation included with the redistribution,
36 + *           if any, must include the following acknowledgment:
37 + *             "This product includes Radiance software
38 + *                 (http://radsite.lbl.gov/)
39 + *                 developed by the Lawrence Berkeley National Laboratory
40 + *               (http://www.lbl.gov/)."
41 + *       Alternately, this acknowledgment may appear in the software itself,
42 + *       if and wherever such third-party acknowledgments normally appear.
43 + *
44 + * 4. The names "Radiance," "Lawrence Berkeley National Laboratory"
45 + *       and "The Regents of the University of California" must
46 + *       not be used to endorse or promote products derived from this
47 + *       software without prior written permission. For written
48 + *       permission, please contact [email protected].
49 + *
50 + * 5. Products derived from this software may not be called "Radiance",
51 + *       nor may "Radiance" appear in their name, without prior written
52 + *       permission of Lawrence Berkeley National Laboratory.
53 + *
54 + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
55 + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
56 + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
57 + * DISCLAIMED.   IN NO EVENT SHALL Lawrence Berkeley National Laboratory OR
58 + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
59 + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
60 + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
61 + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
62 + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
63 + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
64 + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
65 + * SUCH DAMAGE.
66 + * ====================================================================
67 + *
68 + * This software consists of voluntary contributions made by many
69 + * individuals on behalf of Lawrence Berkeley National Laboratory.   For more
70 + * information on Lawrence Berkeley National Laboratory, please see
71 + * <http://www.lbl.gov/>.
72 + */
73 +
74 + #ifdef __cplusplus
75 + extern "C" {
76 + #endif
77 +
78                          /* flags for scanline ordering */
79   #define  XDECR                  1
80   #define  YDECR                  2
# Line 26 | Line 86
86  
87                          /* structure for image dimensions */
88   typedef struct {
89 <        int     or;             /* orientation (from flags above) */
89 >        int     rt;             /* orientation (from flags above) */
90          int     xr, yr;         /* x and y resolution */
91   } RESOLU;
92  
93                          /* macros to get scanline length and number */
94 < #define  scanlen(rs)            ((rs)->or & YMAJOR ? (rs)->xr : (rs)->yr)
95 < #define  numscans(rs)           ((rs)->or & YMAJOR ? (rs)->yr : (rs)->xr)
94 > #define  scanlen(rs)            ((rs)->rt & YMAJOR ? (rs)->xr : (rs)->yr)
95 > #define  numscans(rs)           ((rs)->rt & YMAJOR ? (rs)->yr : (rs)->xr)
96  
97                          /* resolution string buffer and its size */
98   #define  RESOLU_BUFLEN          32
# Line 47 | Line 107 | extern char  resolu_buf[RESOLU_BUFLEN];
107   #define  fprtresolu(sl,ns,fp)   fprintf(fp,PIXSTDFMT,ns,sl)
108   #define  fscnresolu(sl,ns,fp)   (fscanf(fp,PIXSTDFMT,ns,sl)==2)
109  
110 < extern char  *resolu2str();
110 > #ifdef NOPROTO
111 >                                        /* defined in resolu.c */
112 > extern void     fputresolu();
113 > extern int      fgetresolu();
114 > extern char     *resolu2str();
115 > extern int      str2resolu();
116 >                                        /* defined in header.c */
117 > extern void     newheader();
118 > extern int      isheadid();
119 > extern int      headidval();
120 > extern int      dateval();
121 > extern int      isdate();
122 > extern void     fputdate();
123 > extern void     fputnow();
124 > extern void     printargs();
125 > extern int      isformat();
126 > extern int      formatval();
127 > extern void     fputformat();
128 > extern int      getheader();
129 > extern int      globmatch();
130 > extern int      checkheader();
131 >
132 > #else
133 >                                        /* defined in resolu.c */
134 > extern void     fputresolu(int ord, int sl, int ns, FILE *fp);
135 > extern int      fgetresolu(int *sl, int *ns, FILE *fp);
136 > extern char *   resolu2str(char *buf, RESOLU *rp);
137 > extern int      str2resolu(RESOLU *rp, char *buf);
138 >                                        /* defined in header.c */
139 > extern void     newheader(char *t, FILE *fp);
140 > extern int      isheadid(char *s);
141 > extern int      headidval(char *r, char *s);
142 > extern int      dateval(time_t *t, char *s);
143 > extern int      isdate(char *s);
144 > extern void     fputdate(time_t t, FILE *fp);
145 > extern void     fputnow(FILE *fp);
146 > extern void     printargs(int ac, char **av, FILE *fp);
147 > extern int      isformat(char *s);
148 > extern int      formatval(char *r, char *s);
149 > extern void     fputformat(char *s, FILE *fp);
150 > extern int      getheader(FILE *fp, int (*f)(), char *p);
151 > extern int      globmatch(char *pat, char *str);
152 > extern int      checkheader(FILE *fin, char *fmt, FILE *fout);
153 >
154 > #endif
155 >
156 > #ifdef __cplusplus
157 > }
158 > #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines