Mercurial > geeqie
annotate src/format_raw.h @ 1811:f405ec9b696b default tip
Some small logic mistakes
Use boolean operators for booleans and bitwise otherwise only.
| author | mow |
|---|---|
| date | Mon, 10 May 2010 11:33:13 +0000 |
| parents | 956aab097ea7 |
| children |
| rev | line source |
|---|---|
| 43 | 1 /* |
| 541 | 2 * Geeqie |
| 3 * (C) 2005 John Ellis | |
| 1802 | 4 * Copyright (C) 2008 - 2010 The Geeqie Team |
| 43 | 5 * |
| 6 * Authors: | |
| 7 * Original version 2005 Lars Ellenberg, base on dcraw by David coffin. | |
| 8 * | |
| 9 * This software is released under the GNU General Public License (GNU GPL). | |
| 10 * Please read the included file COPYING for more information. | |
| 11 * This software comes with no warranty of any kind, use at your own risk! | |
| 12 */ | |
| 13 | |
| 14 #ifndef __FORMAT_RAW_H | |
| 15 #define __FORMAT_RAW_H | |
| 16 | |
|
176
695e1ad3b169
simplified exif.h, moved implementation-specific stuff to exif-int.h
nadvornik
parents:
138
diff
changeset
|
17 #include "exif-int.h" |
|
51
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
18 |
|
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
19 |
|
54
b58cac75ad12
Thu Jun 9 22:23:18 2005 John Ellis <johne@verizon.net>
gqview
parents:
51
diff
changeset
|
20 typedef enum { |
|
b58cac75ad12
Thu Jun 9 22:23:18 2005 John Ellis <johne@verizon.net>
gqview
parents:
51
diff
changeset
|
21 FORMAT_RAW_MATCH_MAGIC, |
|
b58cac75ad12
Thu Jun 9 22:23:18 2005 John Ellis <johne@verizon.net>
gqview
parents:
51
diff
changeset
|
22 FORMAT_RAW_MATCH_TIFF_MAKE |
|
b58cac75ad12
Thu Jun 9 22:23:18 2005 John Ellis <johne@verizon.net>
gqview
parents:
51
diff
changeset
|
23 } FormatRawMatchType; |
|
b58cac75ad12
Thu Jun 9 22:23:18 2005 John Ellis <johne@verizon.net>
gqview
parents:
51
diff
changeset
|
24 |
|
101
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
25 typedef enum { |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
26 FORMAT_RAW_EXIF_NONE, |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
27 FORMAT_RAW_EXIF_TIFF, |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
28 FORMAT_RAW_EXIF_JPEG, |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
29 FORMAT_RAW_EXIF_IFD_II, |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
30 FORMAT_RAW_EXIF_IFD_MM, |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
31 FORMAT_RAW_EXIF_PROPRIETARY |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
32 } FormatRawExifType; |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
33 |
| 1453 | 34 typedef gboolean (* FormatRawParseFunc)(guchar *data, const guint len, |
| 35 guint *image_offset, guint *exif_offset); | |
|
45
7cfa60beda76
Thu May 26 13:57:19 2005 John Ellis <johne@verizon.net>
gqview
parents:
43
diff
changeset
|
36 |
| 1453 | 37 typedef gboolean (* FormatRawExifParseFunc)(guchar *data, const guint len, |
| 38 ExifData *exif); | |
|
101
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
39 |
| 1453 | 40 gboolean format_raw_img_exif_offsets(guchar *data, const guint len, |
| 41 guint *image_offset, guint *exif_offset); | |
| 42 gboolean format_raw_img_exif_offsets_fd(gint fd, const gchar *path, | |
| 43 guchar *header_data, const guint header_len, | |
| 44 guint *image_offset, guint *exif_offset); | |
|
45
7cfa60beda76
Thu May 26 13:57:19 2005 John Ellis <johne@verizon.net>
gqview
parents:
43
diff
changeset
|
45 |
|
1000
4fe8f9656107
For the sake of consistency, use glib basic types everywhere.
zas_
parents:
541
diff
changeset
|
46 FormatRawExifType format_raw_exif_offset(guchar *data, const guint len, guint *exif_offset, |
|
101
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
47 FormatRawExifParseFunc *exif_parse_func); |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
48 |
| 43 | 49 |
|
51
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
50 typedef enum { |
|
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
51 FORMAT_EXIF_MATCH_MAKE, |
|
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
52 FORMAT_EXIF_MATCH_MAKERNOTE |
|
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
53 } FormatExifMatchType; |
|
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
54 |
|
1000
4fe8f9656107
For the sake of consistency, use glib basic types everywhere.
zas_
parents:
541
diff
changeset
|
55 typedef gint (* FormatExifParseFunc)(ExifData *exif, guchar *tiff, guint offset, |
| 1453 | 56 guint size, ExifByteOrder bo); |
|
51
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
57 |
| 1453 | 58 gboolean format_exif_makernote_parse(ExifData *exif, guchar *tiff, guint offset, |
| 59 guint size, ExifByteOrder bo); | |
|
51
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
60 |
|
276ea4c98d33
Sat Jun 4 22:24:00 2005 John Ellis <johne@verizon.net>
gqview
parents:
45
diff
changeset
|
61 |
|
101
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
62 #define DEBUG_RAW_TIFF 0 |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
63 |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
64 #if DEBUG_RAW_TIFF |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
65 |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
66 #define FORMAT_RAW_DEBUG_TIFF { "", \ |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
67 FORMAT_RAW_MATCH_MAGIC, 0, "II", 2, \ |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
68 FORMAT_RAW_EXIF_NONE, NULL, \ |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
69 "Tiff debugger II", format_debug_tiff_raw }, \ |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
70 { "", \ |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
71 FORMAT_RAW_MATCH_MAGIC, 0, "MM", 2, \ |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
72 FORMAT_RAW_EXIF_NONE, NULL, \ |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
73 "Tiff debugger MM", format_debug_tiff_raw } |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
74 |
|
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
75 /* used for debugging only */ |
|
1000
4fe8f9656107
For the sake of consistency, use glib basic types everywhere.
zas_
parents:
541
diff
changeset
|
76 gint format_debug_tiff_raw(guchar *data, const guint len, |
|
101
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
77 guint *image_offset, guint *exif_offset); |
| 43 | 78 #endif |
| 79 | |
|
101
847e4bc6b54c
Tue Nov 7 15:35:59 2006 John Ellis <johne@verizon.net>
gqview
parents:
54
diff
changeset
|
80 #endif |
|
1055
1646720364cf
Adding a vim modeline to all files - patch by Klaus Ethgen
nadvornik
parents:
1000
diff
changeset
|
81 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ |
