1 | /* -*- C++ -*- |
2 | * File: libraw_const.h |
3 | * Copyright 2008-2013 LibRaw LLC (info@libraw.org) |
4 | * Created: Sat Mar 8 , 2008 |
5 | * LibRaw error codes |
6 | LibRaw is free software; you can redistribute it and/or modify |
7 | it under the terms of the one of three licenses as you choose: |
8 | |
9 | 1. GNU LESSER GENERAL PUBLIC LICENSE version 2.1 |
10 | (See file LICENSE.LGPL provided in LibRaw distribution archive for details). |
11 | |
12 | 2. COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.0 |
13 | (See file LICENSE.CDDL provided in LibRaw distribution archive for details). |
14 | |
15 | 3. LibRaw Software License 27032010 |
16 | (See file LICENSE.LibRaw.pdf provided in LibRaw distribution archive for details). |
17 | |
18 | */ |
19 | |
20 | #ifndef _LIBRAW_ERRORS_H |
21 | #define _LIBRAW_ERRORS_H |
22 | |
23 | #define LIBRAW_DEFAULT_ADJUST_MAXIMUM_THRESHOLD 0.75 |
24 | #define LIBRAW_DEFAULT_AUTO_BRIGHTNESS_THRESHOLD 0.01 |
25 | |
26 | enum LibRaw_decoder_flags |
27 | { |
28 | LIBRAW_DECODER_LEGACY = 1, |
29 | LIBRAW_DECODER_FLATFIELD = 1<<1, |
30 | LIBRAW_DECODER_USEBAYER2 = 1<<3, |
31 | LIBRAW_DECODER_HASCURVE = 1<<4, |
32 | LIBRAW_DECODER_ITSASONY = 1<<5, |
33 | LIBRAW_DECODER_TRYRAWSPEED = 1<<6, |
34 | LIBRAW_DECODER_OWNALLOC = 1<<7, |
35 | LIBRAW_DECODER_NOTSET = 1<<15 |
36 | }; |
37 | |
38 | #define LIBRAW_XTRANS 9 |
39 | |
40 | enum LibRaw_constructor_flags |
41 | { |
42 | LIBRAW_OPTIONS_NONE =0, |
43 | LIBRAW_OPIONS_NO_MEMERR_CALLBACK=1, |
44 | LIBRAW_OPIONS_NO_DATAERR_CALLBACK=1<<1 |
45 | }; |
46 | |
47 | enum LibRaw_warnings |
48 | { |
49 | LIBRAW_WARN_NONE =0, |
50 | LIBRAW_WARN_FOVEON_NOMATRIX =1, |
51 | LIBRAW_WARN_FOVEON_INVALIDWB =1<<1, |
52 | LIBRAW_WARN_BAD_CAMERA_WB =1<<2, |
53 | LIBRAW_WARN_NO_METADATA =1<<3, |
54 | LIBRAW_WARN_NO_JPEGLIB = 1<<4, |
55 | LIBRAW_WARN_NO_EMBEDDED_PROFILE = 1<<5, |
56 | LIBRAW_WARN_NO_INPUT_PROFILE = 1<<6, |
57 | LIBRAW_WARN_BAD_OUTPUT_PROFILE= 1<<7, |
58 | LIBRAW_WARN_NO_BADPIXELMAP=1<<8, |
59 | LIBRAW_WARN_BAD_DARKFRAME_FILE=1<<9, |
60 | LIBRAW_WARN_BAD_DARKFRAME_DIM=1<<10, |
61 | LIBRAW_WARN_NO_JASPER = 1<<11, |
62 | LIBRAW_WARN_RAWSPEED_PROBLEM = 1<<12, |
63 | LIBRAW_WARN_RAWSPEED_UNSUPPORTED = 1<<13, |
64 | LIBRAW_WARN_RAWSPEED_PROCESSED = 1<<14 |
65 | }; |
66 | |
67 | enum LibRaw_exceptions |
68 | { |
69 | LIBRAW_EXCEPTION_NONE =0, |
70 | LIBRAW_EXCEPTION_ALLOC =1, |
71 | LIBRAW_EXCEPTION_DECODE_RAW =2, |
72 | LIBRAW_EXCEPTION_DECODE_JPEG=3, |
73 | LIBRAW_EXCEPTION_IO_EOF =4, |
74 | LIBRAW_EXCEPTION_IO_CORRUPT =5, |
75 | LIBRAW_EXCEPTION_CANCELLED_BY_CALLBACK=6, |
76 | LIBRAW_EXCEPTION_BAD_CROP =7, |
77 | LIBRAW_EXCEPTION_IO_BADFILE =8, |
78 | LIBRAW_EXCEPTION_DECODE_JPEG2000=9 |
79 | }; |
80 | |
81 | |
82 | enum LibRaw_colorstate |
83 | { |
84 | LIBRAW_COLORSTATE_UNKNOWN =0, |
85 | LIBRAW_COLORSTATE_INIT =1, |
86 | LIBRAW_COLORSTATE_CONST =2, |
87 | LIBRAW_COLORSTATE_LOADED =3, |
88 | LIBRAW_COLORSTATE_CALCULATED=4, |
89 | LIBRAW_COLORSTATE_RESERVED1 =5, |
90 | LIBRAW_COLORSTATE_RESERVED2 =6, |
91 | LIBRAW_COLORSTATE_RESERVED3 =7 |
92 | }; |
93 | |
94 | enum LibRaw_progress |
95 | { |
96 | LIBRAW_PROGRESS_START = 0, |
97 | LIBRAW_PROGRESS_OPEN = 1, |
98 | LIBRAW_PROGRESS_IDENTIFY = 1<<1, |
99 | LIBRAW_PROGRESS_SIZE_ADJUST = 1<<2, |
100 | LIBRAW_PROGRESS_LOAD_RAW = 1<<3, |
101 | LIBRAW_PROGRESS_RAW2_IMAGE = 1<<4, |
102 | LIBRAW_PROGRESS_REMOVE_ZEROES = 1<<5, |
103 | LIBRAW_PROGRESS_BAD_PIXELS = 1<<6, |
104 | LIBRAW_PROGRESS_DARK_FRAME = 1<<7, |
105 | LIBRAW_PROGRESS_FOVEON_INTERPOLATE = 1<<8, |
106 | LIBRAW_PROGRESS_SCALE_COLORS = 1<<9, |
107 | LIBRAW_PROGRESS_PRE_INTERPOLATE = 1<<10, |
108 | LIBRAW_PROGRESS_INTERPOLATE = 1<<11, |
109 | LIBRAW_PROGRESS_MIX_GREEN = 1<<12, |
110 | LIBRAW_PROGRESS_MEDIAN_FILTER = 1<<13, |
111 | LIBRAW_PROGRESS_HIGHLIGHTS = 1<<14, |
112 | LIBRAW_PROGRESS_FUJI_ROTATE = 1<<15, |
113 | LIBRAW_PROGRESS_FLIP = 1<<16, |
114 | LIBRAW_PROGRESS_APPLY_PROFILE = 1<<17, |
115 | LIBRAW_PROGRESS_CONVERT_RGB = 1<<18, |
116 | LIBRAW_PROGRESS_STRETCH = 1<<19, |
117 | /* reserved */ |
118 | LIBRAW_PROGRESS_STAGE20 = 1<<20, |
119 | LIBRAW_PROGRESS_STAGE21 = 1<<21, |
120 | LIBRAW_PROGRESS_STAGE22 = 1<<22, |
121 | LIBRAW_PROGRESS_STAGE23 = 1<<23, |
122 | LIBRAW_PROGRESS_STAGE24 = 1<<24, |
123 | LIBRAW_PROGRESS_STAGE25 = 1<<25, |
124 | LIBRAW_PROGRESS_STAGE26 = 1<<26, |
125 | LIBRAW_PROGRESS_STAGE27 = 1<<27, |
126 | |
127 | LIBRAW_PROGRESS_THUMB_LOAD = 1<<28, |
128 | LIBRAW_PROGRESS_TRESERVED1 = 1<<29, |
129 | LIBRAW_PROGRESS_TRESERVED2 = 1<<30, |
130 | LIBRAW_PROGRESS_TRESERVED3 = 1<<31 |
131 | }; |
132 | #define LIBRAW_PROGRESS_THUMB_MASK 0x0fffffff |
133 | |
134 | enum LibRaw_errors |
135 | { |
136 | LIBRAW_SUCCESS = 0, |
137 | LIBRAW_UNSPECIFIED_ERROR=-1, |
138 | LIBRAW_FILE_UNSUPPORTED = -2, |
139 | LIBRAW_REQUEST_FOR_NONEXISTENT_IMAGE=-3, |
140 | LIBRAW_OUT_OF_ORDER_CALL=-4, |
141 | LIBRAW_NO_THUMBNAIL=-5, |
142 | LIBRAW_UNSUPPORTED_THUMBNAIL=-6, |
143 | LIBRAW_INPUT_CLOSED=-7, |
144 | LIBRAW_UNSUFFICIENT_MEMORY=-100007, |
145 | LIBRAW_DATA_ERROR=-100008, |
146 | LIBRAW_IO_ERROR=-100009, |
147 | LIBRAW_CANCELLED_BY_CALLBACK=-100010, |
148 | LIBRAW_BAD_CROP=-100011 |
149 | }; |
150 | |
151 | #define LIBRAW_FATAL_ERROR(ec) ((ec)<-100000) |
152 | |
153 | enum LibRaw_thumbnail_formats |
154 | { |
155 | LIBRAW_THUMBNAIL_UNKNOWN=0, |
156 | LIBRAW_THUMBNAIL_JPEG=1, |
157 | LIBRAW_THUMBNAIL_BITMAP=2, |
158 | LIBRAW_THUMBNAIL_LAYER=4, |
159 | LIBRAW_THUMBNAIL_ROLLEI=5 |
160 | }; |
161 | |
162 | enum LibRaw_image_formats |
163 | { |
164 | LIBRAW_IMAGE_JPEG=1, |
165 | LIBRAW_IMAGE_BITMAP=2 |
166 | }; |
167 | |
168 | #endif |
169 | |