1 /* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
2 /*          EXIFPROBE - TIFF/JPEG/EXIF image file probe               */
3 /* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
4 /* Copyright (C) 2002 by Duane H. Hesser. All rights reserved.        */
5 /*                                                                    */
6 /* See the file LICENSE.EXIFPROBE for terms of use.                   */
7 /* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
8 
9 /* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
10 /* @(#) $Id: x3f_extern.h,v 1.2 2005/07/24 21:03:53 alex Exp $ */
11 /* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
12 
13 #ifndef X3F_EXTERN_INCLUDED
14 #define X3F_EXTERN_INCLUDED
15 
16 /* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
17 /* Fujifilm X3F-specific external definitions                         */
18 /* =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- */
19 
20 extern struct x3f_header *read_x3fheader(FILE *,unsigned long);
21 extern int print_x3f_header(FILE *,struct fileheader *,unsigned long);
22 extern unsigned long process_x3f(FILE *,struct fileheader *,unsigned long,
23                                                     struct image_summary *,
24                                                     char *,int,int);
25 extern unsigned long process_x3f_dir(FILE *,unsigned short,struct x3f_header *,
26                                         unsigned long,struct image_summary *,
27                                         char *,int,int);
28 extern void process_x3f_direntry(FILE *,unsigned short,struct x3f_direntry *,
29                                         unsigned long,struct image_summary *,
30                                         char *,int,int);
31 extern struct x3f_direntry *read_x3f_direntry(FILE *,unsigned short,
32                                                     struct x3f_direntry *,
33                                                     unsigned long offset);
34 extern void print_x3f_direntry(FILE *,struct x3f_direntry *,unsigned long,
35                                                             char *,int,int);
36 extern struct x3f_imag_header *read_x3f_imag_header(FILE *,unsigned short,unsigned long);
37 extern struct x3f_prop_header *read_x3f_prop_header(FILE *,unsigned short,unsigned long);
38 extern struct x3f_camf_header *read_x3f_camf_header(FILE *,unsigned short,unsigned long);
39 extern unsigned long display_x3f_imag_header(struct x3f_direntry *,struct x3f_imag_header *,
40                                                                             char *,int,int);
41 extern unsigned long display_x3f_prop_header(struct x3f_direntry *,struct x3f_prop_header *,
42                                                                             char *,int,int);
43 extern unsigned long display_x3f_camf_header(struct x3f_direntry *,struct x3f_camf_header *,
44                                                                             char *,int,int);
45 extern unsigned long process_x3f_props(FILE *,unsigned short,unsigned long,unsigned long,
46                                                     unsigned long,char *,unsigned long,int);
47 extern void print_property(FILE *,unsigned short,unsigned long,unsigned long,unsigned long,
48                                                                             char *,int,int);
49 
50 #endif  /* X3F_EXTERN_INCLUDED */
51