OLD | NEW |
(Empty) | |
| 1 /* mnote-olympus-tag.h |
| 2 * |
| 3 * Copyright (c) 2002 Lutz Mueller <lutz@users.sourceforge.net> |
| 4 * |
| 5 * This library is free software; you can redistribute it and/or |
| 6 * modify it under the terms of the GNU Lesser General Public |
| 7 * License as published by the Free Software Foundation; either |
| 8 * version 2 of the License, or (at your option) any later version. |
| 9 * |
| 10 * This library is distributed in the hope that it will be useful, |
| 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 13 * Lesser General Public License for more details. |
| 14 * |
| 15 * You should have received a copy of the GNU Lesser General Public |
| 16 * License along with this library; if not, write to the |
| 17 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
| 18 * Boston, MA 02110-1301 USA. |
| 19 */ |
| 20 |
| 21 #ifndef __MNOTE_OLYMPUS_TAG_H__ |
| 22 #define __MNOTE_OLYMPUS_TAG_H__ |
| 23 |
| 24 #ifdef __cplusplus |
| 25 extern "C" { |
| 26 #endif /* __cplusplus */ |
| 27 |
| 28 enum _MnoteOlympusTag { |
| 29 |
| 30 /* Nikon v.2 */ |
| 31 MNOTE_NIKON_TAG_FIRMWARE = 0x0001, |
| 32 MNOTE_NIKON_TAG_ISO = 0x0002, |
| 33 MNOTE_NIKON_TAG_COLORMODE1 = 0x0003, |
| 34 MNOTE_NIKON_TAG_QUALITY = 0x0004, |
| 35 MNOTE_NIKON_TAG_WHITEBALANCE = 0x0005, |
| 36 MNOTE_NIKON_TAG_SHARPENING = 0x0006, |
| 37 MNOTE_NIKON_TAG_FOCUSMODE = 0x0007, |
| 38 MNOTE_NIKON_TAG_FLASHSETTING = 0x0008, |
| 39 MNOTE_NIKON_TAG_FLASHMODE = 0x0009, |
| 40 MNOTE_NIKON_TAG_WHITEBALANCEFINE = 0x000b, |
| 41 MNOTE_NIKON_TAG_WHITEBALANCERB = 0x000c, |
| 42 MNOTE_NIKON_TAG_UNKNOWN_0X000D = 0x000d, |
| 43 MNOTE_NIKON_TAG_EXPOSUREDIFF = 0x000e, |
| 44 MNOTE_NIKON_TAG_ISOSELECTION = 0x000f, |
| 45 MNOTE_NIKON_TAG_PREVIEWIMAGE_IFD_POINTER= 0x0011, |
| 46 MNOTE_NIKON_TAG_FLASHEXPCOMPENSATION = 0x0012, |
| 47 MNOTE_NIKON_TAG_ISO2 = 0x0013, |
| 48 MNOTE_NIKON_TAG_IMAGEBOUNDARY = 0x0016, |
| 49 MNOTE_NIKON_TAG_UNKNOWN_0X0017 = 0x0017, |
| 50 MNOTE_NIKON_TAG_FLASHEXPOSUREBRACKETVAL = 0x0018, |
| 51 MNOTE_NIKON_TAG_EXPOSUREBRACKETVAL = 0x0019, |
| 52 MNOTE_NIKON_TAG_IMAGEADJUSTMENT = 0x0080, |
| 53 MNOTE_NIKON_TAG_TONECOMPENSATION = 0x0081, |
| 54 MNOTE_NIKON_TAG_ADAPTER = 0x0082, |
| 55 MNOTE_NIKON_TAG_LENSTYPE = 0x0083, |
| 56 MNOTE_NIKON_TAG_LENS = 0x0084, |
| 57 MNOTE_NIKON_TAG_MANUALFOCUSDISTANCE = 0x0085, |
| 58 MNOTE_NIKON_TAG_DIGITALZOOM = 0x0086, |
| 59 MNOTE_NIKON_TAG_FLASHUSED = 0x0087, |
| 60 MNOTE_NIKON_TAG_AFFOCUSPOSITION = 0x0088, |
| 61 MNOTE_NIKON_TAG_BRACKETING = 0x0089, |
| 62 MNOTE_NIKON_TAG_UNKNOWN_0X008A = 0x008a, |
| 63 MNOTE_NIKON_TAG_LENS_FSTOPS = 0x008b, |
| 64 MNOTE_NIKON_TAG_CURVE = 0x008c, |
| 65 MNOTE_NIKON_TAG_COLORMODE = 0x008d, |
| 66 MNOTE_NIKON_TAG_LIGHTTYPE = 0x0090, |
| 67 MNOTE_NIKON_TAG_UNKNOWN_0X0091 = 0x0091, |
| 68 MNOTE_NIKON_TAG_HUE = 0x0092, |
| 69 MNOTE_NIKON_TAG_SATURATION = 0x0094, |
| 70 MNOTE_NIKON_TAG_NOISEREDUCTION = 0x0095, |
| 71 MNOTE_NIKON_TAG_UNKNOWN_0X0097 = 0x0097, |
| 72 MNOTE_NIKON_TAG_UNKNOWN_0X0098 = 0x0098, |
| 73 MNOTE_NIKON_TAG_SENSORPIXELSIZE = 0x009a, |
| 74 MNOTE_NIKON_TAG_UNKNOWN_0X009B = 0x009b, |
| 75 MNOTE_NIKON_TAG_SERIALNUMBER = 0x00a0, |
| 76 MNOTE_NIKON_TAG_IMAGE_DATASIZE = 0x00a2, |
| 77 MNOTE_NIKON_TAG_UNKNOWN_0X00A3 = 0x00a3, |
| 78 MNOTE_NIKON_TAG_TOTALPICTURES = 0x00a7, |
| 79 MNOTE_NIKON_TAG_UNKNOWN_0X00A8 = 0x00a8, |
| 80 MNOTE_NIKON_TAG_OPTIMIZATION = 0x00a9, |
| 81 MNOTE_NIKON_TAG_SATURATION2 = 0x00aa, |
| 82 MNOTE_NIKON_TAG_VARIPROGRAM = 0x00ab, |
| 83 MNOTE_NIKON_TAG_CAPTUREEDITORDATA = 0x0e01, |
| 84 MNOTE_NIKON_TAG_CAPTUREEDITORVER = 0x0e09, |
| 85 MNOTE_NIKON_TAG_UNKNOWN_0X0E0E = 0x0e0e, |
| 86 MNOTE_NIKON_TAG_UNKNOWN_0X0E10 = 0x0e10, |
| 87 |
| 88 /* Nikon v1: real values + our proprietary base to distinguish from v2 *
/ |
| 89 MNOTE_NIKON1_TAG_BASE = 0x8000, |
| 90 MNOTE_NIKON1_TAG_UNKNOWN_0X0002 = 0x0002 + MNOTE_NIKON1_TAG_BASE
, |
| 91 MNOTE_NIKON1_TAG_QUALITY = 0x0003 + MNOTE_NIKON1_TAG_BASE
, |
| 92 MNOTE_NIKON1_TAG_COLORMODE = 0x0004 + MNOTE_NIKON1_TAG_BASE
, |
| 93 MNOTE_NIKON1_TAG_IMAGEADJUSTMENT = 0x0005 + MNOTE_NIKON1_TAG_BASE
, |
| 94 MNOTE_NIKON1_TAG_CCDSENSITIVITY = 0x0006 + MNOTE_NIKON1_TAG_BASE
, |
| 95 MNOTE_NIKON1_TAG_WHITEBALANCE = 0x0007 + MNOTE_NIKON1_TAG_BASE
, |
| 96 MNOTE_NIKON1_TAG_FOCUS = 0x0008 + MNOTE_NIKON1_TAG_BASE
, |
| 97 MNOTE_NIKON1_TAG_UNKNOWN_0X0009 = 0x0009 + MNOTE_NIKON1_TAG_BASE
, |
| 98 MNOTE_NIKON1_TAG_DIGITALZOOM = 0x000a + MNOTE_NIKON1_TAG_BASE
, |
| 99 MNOTE_NIKON1_TAG_CONVERTER = 0x000b + MNOTE_NIKON1_TAG_BASE
, |
| 100 |
| 101 /* Olympus and some Sanyo */ |
| 102 MNOTE_OLYMPUS_TAG_THUMBNAILIMAGE = 0x0100, |
| 103 MNOTE_OLYMPUS_TAG_MODE = 0x0200, |
| 104 MNOTE_OLYMPUS_TAG_QUALITY = 0x0201, |
| 105 MNOTE_OLYMPUS_TAG_MACRO = 0x0202, |
| 106 MNOTE_OLYMPUS_TAG_BWMODE = 0x0203, |
| 107 MNOTE_OLYMPUS_TAG_DIGIZOOM = 0x0204, |
| 108 MNOTE_OLYMPUS_TAG_FOCALPLANEDIAGONAL = 0x0205, |
| 109 MNOTE_OLYMPUS_TAG_LENSDISTORTION = 0x0206, |
| 110 MNOTE_OLYMPUS_TAG_VERSION = 0x0207, |
| 111 MNOTE_OLYMPUS_TAG_INFO = 0x0208, |
| 112 MNOTE_OLYMPUS_TAG_ID = 0x0209, |
| 113 MNOTE_OLYMPUS_TAG_PRECAPTUREFRAMES = 0x0300, |
| 114 MNOTE_OLYMPUS_TAG_WHITEBOARD = 0x0301, |
| 115 MNOTE_OLYMPUS_TAG_ONETOUCHWB = 0x0302, |
| 116 MNOTE_OLYMPUS_TAG_WHITEBALANCEBRACKET = 0x0303, |
| 117 MNOTE_OLYMPUS_TAG_WHITEBALANCEBIAS = 0x0304, |
| 118 MNOTE_OLYMPUS_TAG_DATADUMP = 0x0f00, |
| 119 MNOTE_OLYMPUS_TAG_UNKNOWN_4 = 0x0f04, |
| 120 MNOTE_OLYMPUS_TAG_SHUTTERSPEED = 0x1000, |
| 121 MNOTE_OLYMPUS_TAG_ISOVALUE = 0x1001, |
| 122 MNOTE_OLYMPUS_TAG_APERTUREVALUE = 0x1002, |
| 123 MNOTE_OLYMPUS_TAG_BRIGHTNESSVALUE = 0x1003, |
| 124 MNOTE_OLYMPUS_TAG_FLASHMODE = 0x1004, |
| 125 MNOTE_OLYMPUS_TAG_FLASHDEVICE = 0x1005, |
| 126 MNOTE_OLYMPUS_TAG_EXPOSURECOMP = 0x1006, |
| 127 MNOTE_OLYMPUS_TAG_SENSORTEMPERATURE = 0x1007, |
| 128 MNOTE_OLYMPUS_TAG_LENSTEMPERATURE = 0x1008, |
| 129 MNOTE_OLYMPUS_TAG_LIGHTCONDITION = 0x1009, |
| 130 MNOTE_OLYMPUS_TAG_FOCUSRANGE = 0x100a, |
| 131 MNOTE_OLYMPUS_TAG_MANFOCUS = 0x100b, |
| 132 MNOTE_OLYMPUS_TAG_FOCUSDIST = 0x100c, |
| 133 MNOTE_OLYMPUS_TAG_ZOOMSTEPCOUNT = 0x100d, |
| 134 MNOTE_OLYMPUS_TAG_FOCUSSTEPCOUNT = 0x100e, |
| 135 MNOTE_OLYMPUS_TAG_SHARPNESS = 0x100f, |
| 136 MNOTE_OLYMPUS_TAG_FLASHCHARGELEVEL = 0x1010, |
| 137 MNOTE_OLYMPUS_TAG_COLORMATRIX = 0x1011, |
| 138 MNOTE_OLYMPUS_TAG_BLACKLEVEL = 0x1012, |
| 139 MNOTE_OLYMPUS_TAG_WBALANCE = 0x1015, |
| 140 MNOTE_OLYMPUS_TAG_REDBALANCE = 0x1017, |
| 141 MNOTE_OLYMPUS_TAG_BLUEBALANCE = 0x1018, |
| 142 MNOTE_OLYMPUS_TAG_COLORMATRIXNUMBER = 0x1019, |
| 143 MNOTE_OLYMPUS_TAG_SERIALNUMBER2 = 0x101a, |
| 144 MNOTE_OLYMPUS_TAG_FLASHEXPOSURECOMP = 0x1023, |
| 145 MNOTE_OLYMPUS_TAG_INTERNALFLASHTABLE = 0x1024, |
| 146 MNOTE_OLYMPUS_TAG_EXTERNALFLASHGVALUE = 0x1025, |
| 147 MNOTE_OLYMPUS_TAG_EXTERNALFLASHBOUNCE = 0x1026, |
| 148 MNOTE_OLYMPUS_TAG_EXTERNALFLASHZOOM = 0x1027, |
| 149 MNOTE_OLYMPUS_TAG_EXTERNALFLASHMODE = 0x1028, |
| 150 MNOTE_OLYMPUS_TAG_CONTRAST = 0x1029, |
| 151 MNOTE_OLYMPUS_TAG_SHARPNESSFACTOR = 0x102a, |
| 152 MNOTE_OLYMPUS_TAG_COLORCONTROL = 0x102b, |
| 153 MNOTE_OLYMPUS_TAG_IMAGEWIDTH = 0x102e, |
| 154 MNOTE_OLYMPUS_TAG_IMAGEHEIGHT = 0x102f, |
| 155 MNOTE_OLYMPUS_TAG_SCENEDETECT = 0x1030, |
| 156 MNOTE_OLYMPUS_TAG_COMPRESSIONRATIO = 0x1034, |
| 157 MNOTE_OLYMPUS_TAG_PREVIEWIMAGEVALID = 0x1035, |
| 158 MNOTE_OLYMPUS_TAG_AFRESULT = 0x1038, |
| 159 MNOTE_OLYMPUS_TAG_CCDSCANMODE = 0x1039, |
| 160 MNOTE_OLYMPUS_TAG_NOISEREDUCTION = 0x103a, |
| 161 MNOTE_OLYMPUS_TAG_INFINITYLENSSTEP = 0x103b, |
| 162 MNOTE_OLYMPUS_TAG_NEARLENSSTEP = 0x103c, |
| 163 MNOTE_OLYMPUS_TAG_LIGHTVALUECENTER = 0x103d, |
| 164 MNOTE_OLYMPUS_TAG_LIGHTVALUEPERIPHERY = 0x103e, |
| 165 |
| 166 /* Epson */ |
| 167 MNOTE_EPSON_TAG_IMAGE_WIDTH = 0x020b, |
| 168 MNOTE_EPSON_TAG_IMAGE_HEIGHT = 0x020c, |
| 169 MNOTE_EPSON_TAG_SOFTWARE = 0x020d, |
| 170 |
| 171 /* Sanyo */ |
| 172 MNOTE_SANYO_TAG_SEQUENTIALSHOT = 0x020e, |
| 173 MNOTE_SANYO_TAG_WIDERANGE = 0x020f, |
| 174 MNOTE_SANYO_TAG_COLORADJUSTMENTMODE = 0x0210, |
| 175 MNOTE_SANYO_TAG_FOCUSMODE = 0x0212, |
| 176 MNOTE_SANYO_TAG_QUICKSHOT = 0x0213, |
| 177 MNOTE_SANYO_TAG_SELFTIMER = 0x0214, |
| 178 MNOTE_SANYO_TAG_VOICEMEMO = 0x0216, |
| 179 MNOTE_SANYO_TAG_RECORDSHUTTERRELEASE = 0x0217, |
| 180 MNOTE_SANYO_TAG_FLICKERREDUCE = 0x0218, |
| 181 MNOTE_SANYO_TAG_OPTICALZOOM = 0x0219, |
| 182 MNOTE_SANYO_TAG_CCDSENSITIVITY = 0x021a, |
| 183 MNOTE_SANYO_TAG_DIGITALZOOM = 0x021b, |
| 184 MNOTE_SANYO_TAG_LIGHTSOURCESPECIAL = 0x021d, |
| 185 MNOTE_SANYO_TAG_RESAVED = 0x021e, |
| 186 MNOTE_SANYO_TAG_SCENESELECT = 0x021f, |
| 187 MNOTE_SANYO_TAG_MANUALFOCUSDISTANCE = 0x0223, |
| 188 MNOTE_SANYO_TAG_SEQUENCESHOTINTERVAL = 0x0224, |
| 189 }; |
| 190 typedef enum _MnoteOlympusTag MnoteOlympusTag; |
| 191 |
| 192 /* Don't use these definitions. They are here for compatibility only. */ |
| 193 #define MNOTE_OLYMPUS_TAG_UNKNOWN_1 MNOTE_OLYMPUS_TAG_BWMODE |
| 194 #define MNOTE_OLYMPUS_TAG_UNKNOWN_2 MNOTE_OLYMPUS_TAG_FOCALPLANEDIAGONAL |
| 195 #define MNOTE_OLYMPUS_TAG_UNKNOWN_3 MNOTE_OLYMPUS_TAG_LENSDISTORTION |
| 196 #define MNOTE_OLYMPUS_TAG_UNKNOWN_5 MNOTE_OLYMPUS_TAG_DATADUMP |
| 197 #define MNOTE_NIKON_TAG_PREVIEWIMAGE MNOTE_NIKON_TAG_PREVIEWIMAGE_IFD_POINTER |
| 198 |
| 199 /*! Return a textual name of the given tag within the Olympus-style MakerNote. |
| 200 * The name is a short, unique, non-localized text string containing only |
| 201 * US-ASCII alphanumeric characters. |
| 202 * |
| 203 * \param[in] tag Olympus-style MakerNote tag |
| 204 * \return textual name of the tag, or NULL if the tag is unknown |
| 205 */ |
| 206 const char *mnote_olympus_tag_get_name (MnoteOlympusTag tag); |
| 207 |
| 208 /*! Return a textual title of the given tag within the Olympus-style MakerNote. |
| 209 * The title is a short, localized description of the tag. |
| 210 * |
| 211 * \param[in] tag Olympus-style MakerNote tag |
| 212 * \return textual title of the tag, or NULL if the tag is unknown |
| 213 */ |
| 214 const char *mnote_olympus_tag_get_title (MnoteOlympusTag tag); |
| 215 |
| 216 /*! Return a verbose textual description of the given tag within the |
| 217 * Olympus-style MakerNote. |
| 218 * The description is a verbose, localized description of the tag. |
| 219 * |
| 220 * \param[in] tag EXIF tag |
| 221 * \return textual description of the tag, or NULL if the tag is unknown |
| 222 */ |
| 223 const char *mnote_olympus_tag_get_description (MnoteOlympusTag tag); |
| 224 |
| 225 #ifdef __cplusplus |
| 226 } |
| 227 #endif /* __cplusplus */ |
| 228 |
| 229 #endif /* __MNOTE_OLYMPUS_TAG_H__ */ |
OLD | NEW |