libopenraw
ifd.hpp
1/*
2 * libopenraw - ifd.h
3 *
4 * Copyright (C) 2006-2007,2012 Hubert Figuiere
5 *
6 * Defintions taken from libexif:
7 * Copyright (C) 2001 Lutz Müller <lutz@users.sourceforge.net>
8 *
9 * This library is free software: you can redistribute it and/or
10 * modify it under the terms of the GNU Lesser General Public License
11 * as published by the Free Software Foundation, either version 3 of
12 * the License, or (at your option) any later version.
13 *
14 * This library is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 * Lesser General Public License for more details.
18 *
19 * You should have received a copy of the GNU Lesser General Public
20 * License along with this library. If not, see
21 * <http://www.gnu.org/licenses/>.
22 */
23
27
28#ifndef OR_INTERNALS_IFD_H_
29#define OR_INTERNALS_IFD_H_
30
31namespace OpenRaw {
32namespace Internals {
33namespace IFD {
34
35#define INCLUDE_EXIF_
36#include "libopenraw/exif.h"
37#undef INCLUDE_EXIF_
38
42typedef enum {
43 EXIF_FORMAT_BYTE = 1,
44 EXIF_FORMAT_ASCII = 2,
45 EXIF_FORMAT_SHORT = 3,
46 EXIF_FORMAT_LONG = 4,
47 EXIF_FORMAT_RATIONAL = 5,
48 EXIF_FORMAT_SBYTE = 6,
49 EXIF_FORMAT_UNDEFINED = 7,
50 EXIF_FORMAT_SSHORT = 8,
51 EXIF_FORMAT_SLONG = 9,
52 EXIF_FORMAT_SRATIONAL = 10,
53 EXIF_FORMAT_FLOAT = 11,
54 EXIF_FORMAT_DOUBLE = 12
55} ExifTagType;
56
57typedef enum {
58 CFA_RED = 0,
59 CFA_GREEN = 1,
60 CFA_BLUE = 2,
61 CFA_CYAN = 3,
62 CFA_MAGENTA = 4,
63 CFA_YELLOW = 5,
64 CFA_WHITE = 6
65} CfaComponent;
66
67typedef enum {
68 COMPRESS_NONE = 1,
69 COMPRESS_JPEG = 6,
70 COMPRESS_LJPEG = 7,
71 COMPRESS_NIKON_PACK = 32769,
72 COMPRESS_NIKON_QUANTIZED = 34713,
73 COMPRESS_CUSTOM = 65535
74} TiffCompress;
75
76struct Rational {
77 uint32_t num;
78 uint32_t denom;
79
80 operator double() const;
81};
82
83struct SRational {
84 int32_t num;
85 uint32_t denom;
86
87 operator double() const;
88};
89
90}
91}
92}
93#endif
94/*
95 Local Variables:
96 mode:c++
97 c-file-style:"stroustrup"
98 c-file-offsets:((innamespace . 0))
99 indent-tabs-mode:nil
100 fill-column:80
101 End:
102*/
CIFF is the container for CRW files. It is an attempt from Canon to make this a standard....
Definition arwfile.cpp:30