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.4 by greg, Tue Feb 25 02:47:22 2003 UTC vs.
Revision 2.11 by greg, Thu May 21 18:08:43 2009 UTC

# Line 2 | Line 2
2   /*
3   * Definitions for resolution line in image file.
4   *
5 < * Include after <stdio.h>, <string.h>, and <time.h>
5 > * Include after <stdio.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
# Line 13 | Line 13
13   * A typical line for a 1024x600 image might be "-Y 600 +X 1024\n",
14   * indicating that the scanlines are in English text order (PIXSTANDARD).
15   */
16 + #ifndef _RAD_RESOLU_H_
17 + #define _RAD_RESOLU_H_
18  
19 < #include "copyright.h"
19 > #include <time.h>
20  
21 +
22   #ifdef __cplusplus
23   extern "C" {
24   #endif
# Line 52 | Line 55 | extern char  resolu_buf[RESOLU_BUFLEN];
55   #define  fprtresolu(sl,ns,fp)   fprintf(fp,PIXSTDFMT,ns,sl)
56   #define  fscnresolu(sl,ns,fp)   (fscanf(fp,PIXSTDFMT,ns,sl)==2)
57  
58 < #ifdef NOPROTO
59 <                                        /* defined in resolu.c */
60 < extern void     fputresolu();
61 < extern int      fgetresolu();
62 < extern char     *resolu2str();
60 < extern int      str2resolu();
61 <                                        /* defined in header.c */
62 < extern void     newheader();
63 < extern int      isheadid();
64 < extern int      headidval();
65 < extern int      dateval();
66 < extern int      isdate();
67 < extern void     fputdate();
68 < extern void     fputnow();
69 < extern void     printargs();
70 < extern int      isformat();
71 < extern int      formatval();
72 < extern void     fputformat();
73 < extern int      getheader();
74 < extern int      globmatch();
75 < extern int      checkheader();
58 >                        /* identify header lines */
59 > #define  isheadid(s)    headidval(NULL,s)
60 > #define  isformat(s)    formatval(NULL,s)
61 > #define  isdate(s)      dateval(NULL,s)
62 > #define  isgmt(s)       gmtval(NULL,s)
63  
64 < #else
64 > #define  LATLONSTR      "LATLONG="
65 > #define  LLATLONSTR     8
66 > #define  islatlon(hl)           (!strncmp(hl,LATLONSTR,LLATLONSTR))
67 > #define  latlonval(ll,hl)       sscanf((hl)+LLATLONSTR, "%f %f", \
68 >                                                &(ll)[0],&(ll)[1])
69 > #define  fputlatlon(lat,lon,fp) fprintf(fp,"%s %.6f %.6f\n",LATLONSTR,lat,lon)
70 >
71                                          /* defined in resolu.c */
72   extern void     fputresolu(int ord, int sl, int ns, FILE *fp);
73   extern int      fgetresolu(int *sl, int *ns, FILE *fp);
# Line 82 | Line 75 | extern char *  resolu2str(char *buf, RESOLU *rp);
75   extern int      str2resolu(RESOLU *rp, char *buf);
76                                          /* defined in header.c */
77   extern void     newheader(char *t, FILE *fp);
85 extern int      isheadid(char *s);
78   extern int      headidval(char *r, char *s);
79   extern int      dateval(time_t *t, char *s);
80 < extern int      isdate(char *s);
80 > extern int      gmtval(time_t *t, char *s);
81   extern void     fputdate(time_t t, FILE *fp);
82   extern void     fputnow(FILE *fp);
83   extern void     printargs(int ac, char **av, FILE *fp);
92 extern int      isformat(char *s);
84   extern int      formatval(char *r, char *s);
85   extern void     fputformat(char *s, FILE *fp);
86 < extern int      getheader(FILE *fp, int (*f)(), char *p);
86 > typedef int gethfunc(char *s, void *p); /* callback to process header lines */
87 > extern int      getheader(FILE *fp, gethfunc *f, void *p);
88   extern int      globmatch(char *pat, char *str);
89   extern int      checkheader(FILE *fin, char *fmt, FILE *fout);
90  
99 #endif
100
91   #ifdef __cplusplus
92   }
93   #endif
94 + #endif /* _RAD_RESOLU_H_ */
95 +

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines