From 717d789c8ed5ea2f29bea59b0c1b43e0de8e734d Mon Sep 17 00:00:00 2001 From: Andreas Huggel Date: Mon, 30 Aug 2010 19:33:07 +0000 Subject: [PATCH] #721: Renamed ifdItem to groupName and big internal clean-up: consolidated groups and IfdIds. --- src/canonmn.cpp | 324 +++++------ src/crwimage.cpp | 88 +-- src/exif.cpp | 4 +- src/fujimn.cpp | 68 +-- src/makernote.cpp | 153 +++--- src/makernote_int.hpp | 177 ++---- src/minoltamn.cpp | 434 +++++++-------- src/nikonmn.cpp | 576 ++++++++++---------- src/olympusmn.cpp | 650 +++++++++++----------- src/orfimage.cpp | 2 +- src/panasonicmn.cpp | 152 +++--- src/pentaxmn.cpp | 164 +++--- src/rw2image.cpp | 2 +- src/sigmamn.cpp | 49 +- src/sonymn.cpp | 198 +++---- src/tags.cpp | 468 ++++++++-------- src/tags.hpp | 72 ++- src/tags_int.hpp | 176 +++--- src/tiffcomposite.cpp | 210 ++------ src/tiffcomposite_int.hpp | 151 ++---- src/tifffwd_int.hpp | 9 +- src/tiffimage.cpp | 1074 ++++++++++++++++++------------------- src/tiffimage_int.hpp | 35 +- src/tiffvisitor.cpp | 96 ++-- src/tiffvisitor_int.hpp | 16 +- 25 files changed, 2544 insertions(+), 2804 deletions(-) diff --git a/src/canonmn.cpp b/src/canonmn.cpp index 9b5c51b1..1e3c91bd 100644 --- a/src/canonmn.cpp +++ b/src/canonmn.cpp @@ -196,42 +196,42 @@ namespace Exiv2 { // Canon MakerNote Tag Info const TagInfo CanonMakerNote::tagInfo_[] = { - TagInfo(0x0000, "0x0000", "0x0000", N_("Unknown"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0001, "CameraSettings", N_("Camera Settings"), N_("Various camera settings"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0002, "FocalLength", N_("Focal Length"), N_("Focal length"), canonIfdId, makerTags, unsignedShort, -1, printFocalLength), - TagInfo(0x0003, "0x0003", "0x0003", N_("Unknown"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0004, "ShotInfo", N_("Shot Info"), N_("Shot information"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0005, "Panorama", N_("Panorama"), N_("Panorama"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0006, "ImageType", N_("Image Type"), N_("Image type"), canonIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0007, "FirmwareVersion", N_("Firmware Version"), N_("Firmware version"), canonIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0008, "FileNumber", N_("File Number"), N_("File number"), canonIfdId, makerTags, unsignedLong, -1, print0x0008), - TagInfo(0x0009, "OwnerName", N_("Owner Name"), N_("Owner Name"), canonIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x000c, "SerialNumber", N_("Serial Number"), N_("Camera serial number"), canonIfdId, makerTags, unsignedLong, -1, print0x000c), - TagInfo(0x000d, "CameraInfo", N_("Camera Info"), N_("Camera info"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x000f, "CustomFunctions", N_("Custom Functions"), N_("Custom Functions"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0010, "ModelID", N_("ModelID"), N_("Model ID"), canonIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(canonModelId)), - TagInfo(0x0012, "PictureInfo", N_("Picture Info"), N_("Picture info"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0013, "ThumbnailImageValidArea", N_("Thumbnail Image Valid Area"), N_("Thumbnail image valid area"), canonIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0015, "SerialNumberFormat", N_("Serial Number Format"), N_("Serial number format"), canonIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(canonSerialNumberFormat)), - TagInfo(0x001a, "SuperMacro", N_("Super Macro"), N_("Super macro"), canonIfdId, makerTags, signedShort, -1, EXV_PRINT_TAG(canonSuperMacro)), - TagInfo(0x0026, "AFInfo", N_("AF Info"), N_("AF info"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0083, "OriginalDecisionDataOffset", N_("Original Decision Data Offset"), N_("Original decision data offset"), canonIfdId, makerTags, signedLong, -1, printValue), - TagInfo(0x00a4, "WhiteBalanceTable", N_("White Balance Table"), N_("White balance table"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0095, "LensModel", N_("LensModel"), N_("LensModel"), canonIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0096, "InternalSerialNumber", N_("Internal Serial Number"), N_("Internal serial number"), canonIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0097, "DustRemovalData", N_("Dust Removal Data"), N_("Dust removal data"), canonIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0099, "CustomFunctions", N_("Custom Functions"), N_("Custom functions"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x00a0, "ProcessingInfo", N_("Processing Info"), N_("Processing info"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x00aa, "MeasuredColor", N_("Measured Color"), N_("Measured color"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x00b4, "ColorSpace", N_("ColorSpace"), N_("ColorSpace"), canonIfdId, makerTags, signedShort, -1, EXV_PRINT_TAG(canonColorSpace)), - TagInfo(0x00b5, "0x00b5", "0x00b5", N_("Unknown"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x00c0, "0x00c0", "0x00c0", N_("Unknown"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x00c1, "0x00c1", "0x00c1", N_("Unknown"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x00d0, "VRDOffset", N_("VRD Offset"), N_("VRD offset"), canonIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x00e0, "SensorInfo", N_("Sensor Info"), N_("Sensor info"), canonIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x4001, "ColorData", N_("Color Data"), N_("Color data"), canonIfdId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0000, "0x0000", "0x0000", N_("Unknown"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0001, "CameraSettings", N_("Camera Settings"), N_("Various camera settings"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0002, "FocalLength", N_("Focal Length"), N_("Focal length"), canonId, makerTags, unsignedShort, -1, printFocalLength), + TagInfo(0x0003, "0x0003", "0x0003", N_("Unknown"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0004, "ShotInfo", N_("Shot Info"), N_("Shot information"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0005, "Panorama", N_("Panorama"), N_("Panorama"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0006, "ImageType", N_("Image Type"), N_("Image type"), canonId, makerTags, asciiString, -1, printValue), + TagInfo(0x0007, "FirmwareVersion", N_("Firmware Version"), N_("Firmware version"), canonId, makerTags, asciiString, -1, printValue), + TagInfo(0x0008, "FileNumber", N_("File Number"), N_("File number"), canonId, makerTags, unsignedLong, -1, print0x0008), + TagInfo(0x0009, "OwnerName", N_("Owner Name"), N_("Owner Name"), canonId, makerTags, asciiString, -1, printValue), + TagInfo(0x000c, "SerialNumber", N_("Serial Number"), N_("Camera serial number"), canonId, makerTags, unsignedLong, -1, print0x000c), + TagInfo(0x000d, "CameraInfo", N_("Camera Info"), N_("Camera info"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x000f, "CustomFunctions", N_("Custom Functions"), N_("Custom Functions"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0010, "ModelID", N_("ModelID"), N_("Model ID"), canonId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(canonModelId)), + TagInfo(0x0012, "PictureInfo", N_("Picture Info"), N_("Picture info"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0013, "ThumbnailImageValidArea", N_("Thumbnail Image Valid Area"), N_("Thumbnail image valid area"), canonId, makerTags, signedShort, -1, printValue), + TagInfo(0x0015, "SerialNumberFormat", N_("Serial Number Format"), N_("Serial number format"), canonId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(canonSerialNumberFormat)), + TagInfo(0x001a, "SuperMacro", N_("Super Macro"), N_("Super macro"), canonId, makerTags, signedShort, -1, EXV_PRINT_TAG(canonSuperMacro)), + TagInfo(0x0026, "AFInfo", N_("AF Info"), N_("AF info"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0083, "OriginalDecisionDataOffset", N_("Original Decision Data Offset"), N_("Original decision data offset"), canonId, makerTags, signedLong, -1, printValue), + TagInfo(0x00a4, "WhiteBalanceTable", N_("White Balance Table"), N_("White balance table"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0095, "LensModel", N_("LensModel"), N_("LensModel"), canonId, makerTags, asciiString, -1, printValue), + TagInfo(0x0096, "InternalSerialNumber", N_("Internal Serial Number"), N_("Internal serial number"), canonId, makerTags, asciiString, -1, printValue), + TagInfo(0x0097, "DustRemovalData", N_("Dust Removal Data"), N_("Dust removal data"), canonId, makerTags, asciiString, -1, printValue), + TagInfo(0x0099, "CustomFunctions", N_("Custom Functions"), N_("Custom functions"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x00a0, "ProcessingInfo", N_("Processing Info"), N_("Processing info"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x00aa, "MeasuredColor", N_("Measured Color"), N_("Measured color"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x00b4, "ColorSpace", N_("ColorSpace"), N_("ColorSpace"), canonId, makerTags, signedShort, -1, EXV_PRINT_TAG(canonColorSpace)), + TagInfo(0x00b5, "0x00b5", "0x00b5", N_("Unknown"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x00c0, "0x00c0", "0x00c0", N_("Unknown"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x00c1, "0x00c1", "0x00c1", N_("Unknown"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x00d0, "VRDOffset", N_("VRD Offset"), N_("VRD offset"), canonId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x00e0, "SensorInfo", N_("Sensor Info"), N_("Sensor info"), canonId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x4001, "ColorData", N_("Color Data"), N_("Color data"), canonId, makerTags, unsignedShort, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownCanonMakerNoteTag)", "(UnknownCanonMakerNoteTag)", N_("Unknown CanonMakerNote tag"), canonIfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownCanonMakerNoteTag)", "(UnknownCanonMakerNoteTag)", N_("Unknown CanonMakerNote tag"), canonId, makerTags, asciiString, -1, printValue) }; const TagInfo* CanonMakerNote::tagList() @@ -730,51 +730,51 @@ namespace Exiv2 { // Canon Camera Settings Tag Info const TagInfo CanonMakerNote::tagInfoCs_[] = { - TagInfo(0x0001, "Macro", N_("Macro"), N_("Macro mode"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsMacro)), - TagInfo(0x0002, "Selftimer", N_("Selftimer"), N_("Self timer"), canonCsIfdId, makerTags, signedShort, 1, printCs0x0002), - TagInfo(0x0003, "Quality", N_("Quality"), N_("Quality"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsQuality)), - TagInfo(0x0004, "FlashMode", N_("Flash Mode"), N_("Flash mode setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFlashMode)), - TagInfo(0x0005, "DriveMode", N_("Drive Mode"), N_("Drive mode setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsDriveMode)), - TagInfo(0x0006, "0x0006", "0x0006", N_("Unknown"), canonCsIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0007, "FocusMode", N_("Focus Mode"), N_("Focus mode setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFocusMode)), - TagInfo(0x0008, "0x0008", "0x0008", N_("Unknown"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0009, "0x0009", "0x0009", N_("Unknown"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x000a, "ImageSize", N_("Image Size"), N_("Image size"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsImageSize)), - TagInfo(0x000b, "EasyMode", N_("Easy Mode"), N_("Easy shooting mode"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsEasyMode)), - TagInfo(0x000c, "DigitalZoom", N_("Digital Zoom"), N_("Digital zoom"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsDigitalZoom)), - TagInfo(0x000d, "Contrast", N_("Contrast"), N_("Contrast setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsLnh)), - TagInfo(0x000e, "Saturation", N_("Saturation"), N_("Saturation setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsLnh)), - TagInfo(0x000f, "Sharpness", N_("Sharpness"), N_("Sharpness setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsLnh)), - TagInfo(0x0010, "ISOSpeed", N_("ISO Speed Mode"), N_("ISO speed setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsISOSpeed)), - TagInfo(0x0011, "MeteringMode", N_("Metering Mode"), N_("Metering mode setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsMeteringMode)), - TagInfo(0x0012, "FocusType", N_("Focus Type"), N_("Focus type setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFocusType)), - TagInfo(0x0013, "AFPoint", N_("AF Point"), N_("AF point selected"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsAfPoint)), - TagInfo(0x0014, "ExposureProgram", N_("Exposure Program"), N_("Exposure mode setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsExposureProgram)), - TagInfo(0x0015, "0x0015", "0x0015", N_("Unknown"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0016, "LensType", N_("Lens Type"), N_("Lens type"), canonCsIfdId, makerTags, signedShort, 1, printCsLensType), - TagInfo(0x0017, "Lens", N_("Lens"), N_("'long' and 'short' focal length of lens (in 'focal units') and 'focal units' per mm"), canonCsIfdId, makerTags, unsignedShort, 3, printCsLens), - TagInfo(0x0018, "ShortFocal", N_("Short Focal"), N_("Short focal"), canonCsIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0019, "FocalUnits", N_("Focal Units"), N_("Focal units"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x001a, "MaxAperture", N_("Max Aperture"), N_("Max aperture"), canonCsIfdId, makerTags, signedShort, 1, printSi0x0015), - TagInfo(0x001b, "MinAperture", N_("Min Aperture"), N_("Min aperture"), canonCsIfdId, makerTags, signedShort, 1, printSi0x0015), - TagInfo(0x001c, "FlashActivity", N_("Flash Activity"), N_("Flash activity"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFlashActivity)), - TagInfo(0x001d, "FlashDetails", N_("Flash Details"), N_("Flash details"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG_BITMASK(canonCsFlashDetails)), - TagInfo(0x001e, "0x001e", "0x001e", N_("Unknown"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x001f, "0x001f", "0x001f", N_("Unknown"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0020, "FocusContinuous", N_("Focus Continuous"), N_("Focus continuous setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFocusContinuous)), - TagInfo(0x0021, "AESetting", N_("AESetting"), N_("AE setting"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsAESetting)), - TagInfo(0x0022, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsImageStabilization)), - TagInfo(0x0023, "DisplayAperture", N_("Display Aperture"), N_("Display aperture"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0024, "ZoomSourceWidth", N_("Zoom Source Width"), N_("Zoom source width"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0025, "ZoomTargetWidth", N_("Zoom Target Width"), N_("Zoom target width"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0026, "0x0026", "0x0026", N_("Unknown"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0027, "SpotMeteringMode", N_("Spot Metering Mode"), N_("Spot metering mode"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsSpotMeteringMode)), - TagInfo(0x0028, "PhotoEffect", N_("Photo Effect"), N_("Photo effect"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsPhotoEffect)), - TagInfo(0x0029, "ManualFlashOutput", N_("Manual Flash Output"), N_("Manual flash output"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsSRAWQuality)), - TagInfo(0x002a, "ColorTone", N_("Color Tone"), N_("Color tone"), canonCsIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x002e, "SRAWQuality", N_("SRAW Quality Tone"), N_("SRAW quality"), canonCsIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsSRAWQuality)), + TagInfo(0x0001, "Macro", N_("Macro"), N_("Macro mode"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsMacro)), + TagInfo(0x0002, "Selftimer", N_("Selftimer"), N_("Self timer"), canonCsId, makerTags, signedShort, 1, printCs0x0002), + TagInfo(0x0003, "Quality", N_("Quality"), N_("Quality"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsQuality)), + TagInfo(0x0004, "FlashMode", N_("Flash Mode"), N_("Flash mode setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFlashMode)), + TagInfo(0x0005, "DriveMode", N_("Drive Mode"), N_("Drive mode setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsDriveMode)), + TagInfo(0x0006, "0x0006", "0x0006", N_("Unknown"), canonCsId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0007, "FocusMode", N_("Focus Mode"), N_("Focus mode setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFocusMode)), + TagInfo(0x0008, "0x0008", "0x0008", N_("Unknown"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x0009, "0x0009", "0x0009", N_("Unknown"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x000a, "ImageSize", N_("Image Size"), N_("Image size"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsImageSize)), + TagInfo(0x000b, "EasyMode", N_("Easy Mode"), N_("Easy shooting mode"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsEasyMode)), + TagInfo(0x000c, "DigitalZoom", N_("Digital Zoom"), N_("Digital zoom"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsDigitalZoom)), + TagInfo(0x000d, "Contrast", N_("Contrast"), N_("Contrast setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsLnh)), + TagInfo(0x000e, "Saturation", N_("Saturation"), N_("Saturation setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsLnh)), + TagInfo(0x000f, "Sharpness", N_("Sharpness"), N_("Sharpness setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsLnh)), + TagInfo(0x0010, "ISOSpeed", N_("ISO Speed Mode"), N_("ISO speed setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsISOSpeed)), + TagInfo(0x0011, "MeteringMode", N_("Metering Mode"), N_("Metering mode setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsMeteringMode)), + TagInfo(0x0012, "FocusType", N_("Focus Type"), N_("Focus type setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFocusType)), + TagInfo(0x0013, "AFPoint", N_("AF Point"), N_("AF point selected"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsAfPoint)), + TagInfo(0x0014, "ExposureProgram", N_("Exposure Program"), N_("Exposure mode setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsExposureProgram)), + TagInfo(0x0015, "0x0015", "0x0015", N_("Unknown"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x0016, "LensType", N_("Lens Type"), N_("Lens type"), canonCsId, makerTags, signedShort, 1, printCsLensType), + TagInfo(0x0017, "Lens", N_("Lens"), N_("'long' and 'short' focal length of lens (in 'focal units') and 'focal units' per mm"), canonCsId, makerTags, unsignedShort, 3, printCsLens), + TagInfo(0x0018, "ShortFocal", N_("Short Focal"), N_("Short focal"), canonCsId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0019, "FocalUnits", N_("Focal Units"), N_("Focal units"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x001a, "MaxAperture", N_("Max Aperture"), N_("Max aperture"), canonCsId, makerTags, signedShort, 1, printSi0x0015), + TagInfo(0x001b, "MinAperture", N_("Min Aperture"), N_("Min aperture"), canonCsId, makerTags, signedShort, 1, printSi0x0015), + TagInfo(0x001c, "FlashActivity", N_("Flash Activity"), N_("Flash activity"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFlashActivity)), + TagInfo(0x001d, "FlashDetails", N_("Flash Details"), N_("Flash details"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG_BITMASK(canonCsFlashDetails)), + TagInfo(0x001e, "0x001e", "0x001e", N_("Unknown"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x001f, "0x001f", "0x001f", N_("Unknown"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x0020, "FocusContinuous", N_("Focus Continuous"), N_("Focus continuous setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsFocusContinuous)), + TagInfo(0x0021, "AESetting", N_("AESetting"), N_("AE setting"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsAESetting)), + TagInfo(0x0022, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsImageStabilization)), + TagInfo(0x0023, "DisplayAperture", N_("Display Aperture"), N_("Display aperture"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x0024, "ZoomSourceWidth", N_("Zoom Source Width"), N_("Zoom source width"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x0025, "ZoomTargetWidth", N_("Zoom Target Width"), N_("Zoom target width"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x0026, "0x0026", "0x0026", N_("Unknown"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x0027, "SpotMeteringMode", N_("Spot Metering Mode"), N_("Spot metering mode"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsSpotMeteringMode)), + TagInfo(0x0028, "PhotoEffect", N_("Photo Effect"), N_("Photo effect"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsPhotoEffect)), + TagInfo(0x0029, "ManualFlashOutput", N_("Manual Flash Output"), N_("Manual flash output"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsSRAWQuality)), + TagInfo(0x002a, "ColorTone", N_("Color Tone"), N_("Color tone"), canonCsId, makerTags, signedShort, 1, printValue), + TagInfo(0x002e, "SRAWQuality", N_("SRAW Quality Tone"), N_("SRAW quality"), canonCsId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsSRAWQuality)), // End of list marker - TagInfo(0xffff, "(UnknownCanonCsTag)", "(UnknownCanonCsTag)", N_("Unknown Canon Camera Settings 1 tag"), canonCsIfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownCanonCsTag)", "(UnknownCanonCsTag)", N_("Unknown Canon Camera Settings 1 tag"), canonCsId, makerTags, unsignedShort, 1, printValue) }; const TagInfo* CanonMakerNote::tagListCs() @@ -837,34 +837,34 @@ namespace Exiv2 { // Canon Shot Info Tag const TagInfo CanonMakerNote::tagInfoSi_[] = { - TagInfo(0x0001, "0x0001", "0x0001", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0002, "ISOSpeed", N_("ISO Speed Used"), N_("ISO speed used"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x0002), - TagInfo(0x0003, "MeasuredEV", N_("Measured EV"), N_("Measured EV"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x0003), - TagInfo(0x0004, "TargetAperture", N_("Target Aperture"), N_("Target Aperture"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x0015), - TagInfo(0x0005, "TargetShutterSpeed", N_("Target Shutter Speed"), N_("Target shutter speed"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x0016), - TagInfo(0x0006, "0x0006", "0x0006", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0007, "WhiteBalance", N_("White Balance"), N_("White balance setting"), canonSiIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(canonSiWhiteBalance)), - TagInfo(0x0008, "0x0008", "0x0008", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0009, "Sequence", N_("Sequence"), N_("Sequence number (if in a continuous burst)"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x0009), - TagInfo(0x000a, "0x000a", "0x000a", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000b, "0x000b", "0x000b", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000c, "0x000c", "0x000c", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000d, "0x000d", "0x000d", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000e, "AFPointUsed", N_("AF Point Used"), N_("AF point used"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x000e), - TagInfo(0x000f, "FlashBias", N_("Flash Bias"), N_("Flash bias"), canonSiIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(canonSiFlashBias)), - TagInfo(0x0010, "0x0010", "0x0010", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0011, "0x0011", "0x0011", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0012, "0x0012", "0x0012", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0013, "SubjectDistance", N_("Subject Distance"), N_("Subject distance (units are not clear)"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x0013), - TagInfo(0x0014, "0x0014", "0x0014", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0015, "ApertureValue", N_("Aperture Value"), N_("Aperture"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x0015), - TagInfo(0x0016, "ShutterSpeedValue", N_("Shutter Speed Value"), N_("Shutter speed"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x0016), - TagInfo(0x0017, "MeasuredEV2", N_("Measured EV 2"), N_("Measured EV 2"), canonSiIfdId, makerTags, unsignedShort, 1, printSi0x0017), - TagInfo(0x0018, "0x0018", "0x0018", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0019, "0x0019", "0x0019", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x001a, "0x001a", "0x001a", N_("Unknown"), canonSiIfdId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0001, "0x0001", "0x0001", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0002, "ISOSpeed", N_("ISO Speed Used"), N_("ISO speed used"), canonSiId, makerTags, unsignedShort, 1, printSi0x0002), + TagInfo(0x0003, "MeasuredEV", N_("Measured EV"), N_("Measured EV"), canonSiId, makerTags, unsignedShort, 1, printSi0x0003), + TagInfo(0x0004, "TargetAperture", N_("Target Aperture"), N_("Target Aperture"), canonSiId, makerTags, unsignedShort, 1, printSi0x0015), + TagInfo(0x0005, "TargetShutterSpeed", N_("Target Shutter Speed"), N_("Target shutter speed"), canonSiId, makerTags, unsignedShort, 1, printSi0x0016), + TagInfo(0x0006, "0x0006", "0x0006", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0007, "WhiteBalance", N_("White Balance"), N_("White balance setting"), canonSiId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(canonSiWhiteBalance)), + TagInfo(0x0008, "0x0008", "0x0008", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0009, "Sequence", N_("Sequence"), N_("Sequence number (if in a continuous burst)"), canonSiId, makerTags, unsignedShort, 1, printSi0x0009), + TagInfo(0x000a, "0x000a", "0x000a", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000b, "0x000b", "0x000b", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000c, "0x000c", "0x000c", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000d, "0x000d", "0x000d", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000e, "AFPointUsed", N_("AF Point Used"), N_("AF point used"), canonSiId, makerTags, unsignedShort, 1, printSi0x000e), + TagInfo(0x000f, "FlashBias", N_("Flash Bias"), N_("Flash bias"), canonSiId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(canonSiFlashBias)), + TagInfo(0x0010, "0x0010", "0x0010", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0011, "0x0011", "0x0011", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0012, "0x0012", "0x0012", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0013, "SubjectDistance", N_("Subject Distance"), N_("Subject distance (units are not clear)"), canonSiId, makerTags, unsignedShort, 1, printSi0x0013), + TagInfo(0x0014, "0x0014", "0x0014", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0015, "ApertureValue", N_("Aperture Value"), N_("Aperture"), canonSiId, makerTags, unsignedShort, 1, printSi0x0015), + TagInfo(0x0016, "ShutterSpeedValue", N_("Shutter Speed Value"), N_("Shutter speed"), canonSiId, makerTags, unsignedShort, 1, printSi0x0016), + TagInfo(0x0017, "MeasuredEV2", N_("Measured EV 2"), N_("Measured EV 2"), canonSiId, makerTags, unsignedShort, 1, printSi0x0017), + TagInfo(0x0018, "0x0018", "0x0018", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0019, "0x0019", "0x0019", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x001a, "0x001a", "0x001a", N_("Unknown"), canonSiId, makerTags, unsignedShort, 1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownCanonSiTag)", "(UnknownCanonSiTag)", N_("Unknown Canon Camera Settings 2 tag"), canonSiIfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownCanonSiTag)", "(UnknownCanonSiTag)", N_("Unknown Canon Camera Settings 2 tag"), canonSiId, makerTags, unsignedShort, 1, printValue) }; const TagInfo* CanonMakerNote::tagListSi() @@ -883,10 +883,10 @@ namespace Exiv2 { // Canon Panorama Info const TagInfo CanonMakerNote::tagInfoPa_[] = { - TagInfo(0x0002, "PanoramaFrame", N_("Panorama Frame"), N_("Panorama frame number"), canonPaIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0005, "PanoramaDirection", N_("Panorama Direction"), N_("Panorama direction"), canonPaIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(canonPaDirection)), + TagInfo(0x0002, "PanoramaFrame", N_("Panorama Frame"), N_("Panorama frame number"), canonPaId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0005, "PanoramaDirection", N_("Panorama Direction"), N_("Panorama direction"), canonPaId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(canonPaDirection)), // End of list marker - TagInfo(0xffff, "(UnknownCanonCs2Tag)", "(UnknownCanonCs2Tag)", N_("Unknown Canon Panorama tag"), canonPaIfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownCanonCs2Tag)", "(UnknownCanonCs2Tag)", N_("Unknown Canon Panorama tag"), canonPaId, makerTags, unsignedShort, 1, printValue) }; const TagInfo* CanonMakerNote::tagListPa() @@ -896,23 +896,23 @@ namespace Exiv2 { // Canon Custom Function Tag Info const TagInfo CanonMakerNote::tagInfoCf_[] = { - TagInfo(0x0001, "NoiseReduction", N_("Noise Reduction"), N_("Long exposure noise reduction"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0002, "ShutterAeLock", N_("Shutter Ae Lock"), N_("Shutter/AE lock buttons"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0003, "MirrorLockup", N_("Mirror Lockup"), N_("Mirror lockup"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0004, "ExposureLevelIncrements", N_("Exposure Level Increments"), N_("Tv/Av and exposure level"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0005, "AFAssist", N_("AF Assist"), N_("AF assist light"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0006, "FlashSyncSpeedAv", N_("Flash Sync Speed Av"), N_("Shutter speed in Av mode"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0007, "AEBSequence", N_("AEB Sequence"), N_("AEB sequence/auto cancellation"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0008, "ShutterCurtainSync", N_("Shutter Curtain Sync"), N_("Shutter curtain sync"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0009, "LensAFStopButton", N_("Lens AF Stop Button"), N_("Lens AF stop button Fn. Switch"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000a, "FillFlashAutoReduction", N_("Fill Flash Auto Reduction"), N_("Auto reduction of fill flash"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000b, "MenuButtonReturn", N_("Menu Button Return"), N_("Menu button return position"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000c, "SetButtonFunction", N_("Set Button Function"), N_("SET button func. when shooting"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000d, "SensorCleaning", N_("Sensor Cleaning"), N_("Sensor cleaning"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000e, "SuperimposedDisplay", N_("Superimposed Display"), N_("Superimposed display"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x000f, "ShutterReleaseNoCFCard", N_("Shutter Release No CF Card"), N_("Shutter Release W/O CF Card"), canonCfIfdId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0001, "NoiseReduction", N_("Noise Reduction"), N_("Long exposure noise reduction"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0002, "ShutterAeLock", N_("Shutter Ae Lock"), N_("Shutter/AE lock buttons"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0003, "MirrorLockup", N_("Mirror Lockup"), N_("Mirror lockup"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0004, "ExposureLevelIncrements", N_("Exposure Level Increments"), N_("Tv/Av and exposure level"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0005, "AFAssist", N_("AF Assist"), N_("AF assist light"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0006, "FlashSyncSpeedAv", N_("Flash Sync Speed Av"), N_("Shutter speed in Av mode"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0007, "AEBSequence", N_("AEB Sequence"), N_("AEB sequence/auto cancellation"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0008, "ShutterCurtainSync", N_("Shutter Curtain Sync"), N_("Shutter curtain sync"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0009, "LensAFStopButton", N_("Lens AF Stop Button"), N_("Lens AF stop button Fn. Switch"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000a, "FillFlashAutoReduction", N_("Fill Flash Auto Reduction"), N_("Auto reduction of fill flash"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000b, "MenuButtonReturn", N_("Menu Button Return"), N_("Menu button return position"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000c, "SetButtonFunction", N_("Set Button Function"), N_("SET button func. when shooting"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000d, "SensorCleaning", N_("Sensor Cleaning"), N_("Sensor cleaning"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000e, "SuperimposedDisplay", N_("Superimposed Display"), N_("Superimposed display"), canonCfId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x000f, "ShutterReleaseNoCFCard", N_("Shutter Release No CF Card"), N_("Shutter Release W/O CF Card"), canonCfId, makerTags, unsignedShort, 1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownCanonCfTag)", "(UnknownCanonCfTag)", N_("Unknown Canon Custom Function tag"), canonCfIfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownCanonCfTag)", "(UnknownCanonCfTag)", N_("Unknown Canon Custom Function tag"), canonCfId, makerTags, unsignedShort, 1, printValue) }; const TagInfo* CanonMakerNote::tagListCf() @@ -946,14 +946,14 @@ namespace Exiv2 { // Canon Picture Info Tag const TagInfo CanonMakerNote::tagInfoPi_[] = { - TagInfo(0x0002, "ImageWidth", N_("Image Width"), N_("Image width"), canonPiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0003, "ImageHeight", N_("Image Height"), N_("Image height"), canonPiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0004, "ImageWidthAsShot", N_("Image Width As Shot"), N_("Image width (as shot)"), canonPiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0005, "ImageHeightAsShot", N_("Image Height As Shot"), N_("Image height (as shot)"), canonPiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo(0x0016, "AFPointsUsed", N_("AF Points Used"), N_("AF points used"), canonPiIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG_BITMASK(canonPiAFPointsUsed)), - TagInfo(0x001a, "AFPointsUsed20D", N_("AF Points Used 20D"), N_("AF points used (20D)"), canonPiIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG_BITMASK(canonPiAFPointsUsed20D)), + TagInfo(0x0002, "ImageWidth", N_("Image Width"), N_("Image width"), canonPiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0003, "ImageHeight", N_("Image Height"), N_("Image height"), canonPiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0004, "ImageWidthAsShot", N_("Image Width As Shot"), N_("Image width (as shot)"), canonPiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0005, "ImageHeightAsShot", N_("Image Height As Shot"), N_("Image height (as shot)"), canonPiId, makerTags, unsignedShort, 1, printValue), + TagInfo(0x0016, "AFPointsUsed", N_("AF Points Used"), N_("AF points used"), canonPiId, makerTags, unsignedShort, 1, EXV_PRINT_TAG_BITMASK(canonPiAFPointsUsed)), + TagInfo(0x001a, "AFPointsUsed20D", N_("AF Points Used 20D"), N_("AF points used (20D)"), canonPiId, makerTags, unsignedShort, 1, EXV_PRINT_TAG_BITMASK(canonPiAFPointsUsed20D)), // End of list marker - TagInfo(0xffff, "(UnknownCanonPiTag)", "(UnknownCanonPiTag)", N_("Unknown Canon Picture Info tag"), canonPiIfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownCanonPiTag)", "(UnknownCanonPiTag)", N_("Unknown Canon Picture Info tag"), canonPiId, makerTags, unsignedShort, 1, printValue) }; const TagInfo* CanonMakerNote::tagListPi() @@ -1020,23 +1020,23 @@ namespace Exiv2 { // Canon File Info Tag const TagInfo CanonMakerNote::tagInfoFi_[] = { - TagInfo(0x0001, "FileNumber", N_("File Number"), N_("File Number"), canonFiIfdId, makerTags, unsignedLong, 1, printFiFileNumber), - TagInfo(0x0003, "BracketMode", N_("Bracket Mode"), N_("Bracket Mode"), canonFiIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonBracketMode)), - TagInfo(0x0004, "BracketValue", N_("Bracket Value"), N_("Bracket Value"), canonFiIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0005, "BracketShotNumber", N_("Bracket Shot Number"), N_("Bracket Shot Number"), canonFiIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0006, "RawJpgQuality", N_("Raw Jpg Quality"), N_("Raw Jpg Quality"), canonFiIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsQuality)), - TagInfo(0x0007, "RawJpgSize", N_("Raw Jpg Size"), N_("Raw Jpg Size"), canonFiIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonRawJpgSize)), - TagInfo(0x0008, "NoiseReduction", N_("Noise Reduction"), N_("Noise Reduction"), canonFiIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonNoiseReduction)), - TagInfo(0x0009, "WBBracketMode", N_("WB Bracket Mode"), N_("WB Bracket Mode"), canonFiIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonWBBracketMode)), - TagInfo(0x000c, "WBBracketValueAB", N_("WB Bracket Value AB"), N_("WB Bracket Value AB"), canonFiIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x000d, "WBBracketValueGM", N_("WB Bracket Value GM"), N_("WB Bracket Value GM"), canonFiIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x000e, "FilterEffect", N_("Filter Effect"), N_("Filter Effect"), canonFiIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonFilterEffect)), - TagInfo(0x000f, "ToningEffect", N_("Toning Effect"), N_("Toning Effect"), canonFiIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonToningEffect)), - TagInfo(0x0010, "MacroMagnification", N_("Macro Magnification"), N_("Macro magnification"), canonFiIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0013, "LiveViewShooting", N_("Live View Shooting"), N_("Live view shooting"), canonFiIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonOffOn)), - TagInfo(0x0019, "FlashExposureLock", N_("Flash Exposure Lock"), N_("Flash exposure lock"), canonFiIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonOffOn)), + TagInfo(0x0001, "FileNumber", N_("File Number"), N_("File Number"), canonFiId, makerTags, unsignedLong, 1, printFiFileNumber), + TagInfo(0x0003, "BracketMode", N_("Bracket Mode"), N_("Bracket Mode"), canonFiId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonBracketMode)), + TagInfo(0x0004, "BracketValue", N_("Bracket Value"), N_("Bracket Value"), canonFiId, makerTags, signedShort, 1, printValue), + TagInfo(0x0005, "BracketShotNumber", N_("Bracket Shot Number"), N_("Bracket Shot Number"), canonFiId, makerTags, signedShort, 1, printValue), + TagInfo(0x0006, "RawJpgQuality", N_("Raw Jpg Quality"), N_("Raw Jpg Quality"), canonFiId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonCsQuality)), + TagInfo(0x0007, "RawJpgSize", N_("Raw Jpg Size"), N_("Raw Jpg Size"), canonFiId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonRawJpgSize)), + TagInfo(0x0008, "NoiseReduction", N_("Noise Reduction"), N_("Noise Reduction"), canonFiId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonNoiseReduction)), + TagInfo(0x0009, "WBBracketMode", N_("WB Bracket Mode"), N_("WB Bracket Mode"), canonFiId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonWBBracketMode)), + TagInfo(0x000c, "WBBracketValueAB", N_("WB Bracket Value AB"), N_("WB Bracket Value AB"), canonFiId, makerTags, signedShort, 1, printValue), + TagInfo(0x000d, "WBBracketValueGM", N_("WB Bracket Value GM"), N_("WB Bracket Value GM"), canonFiId, makerTags, signedShort, 1, printValue), + TagInfo(0x000e, "FilterEffect", N_("Filter Effect"), N_("Filter Effect"), canonFiId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonFilterEffect)), + TagInfo(0x000f, "ToningEffect", N_("Toning Effect"), N_("Toning Effect"), canonFiId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonToningEffect)), + TagInfo(0x0010, "MacroMagnification", N_("Macro Magnification"), N_("Macro magnification"), canonFiId, makerTags, signedShort, 1, printValue), + TagInfo(0x0013, "LiveViewShooting", N_("Live View Shooting"), N_("Live view shooting"), canonFiId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonOffOn)), + TagInfo(0x0019, "FlashExposureLock", N_("Flash Exposure Lock"), N_("Flash exposure lock"), canonFiId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonOffOn)), // End of list marker - TagInfo(0xffff, "(UnknownCanonFiTag)", "(UnknownCanonFiTag)", N_("Unknown Canon File Info tag"), canonFiIfdId, makerTags, signedShort, 1, printValue) + TagInfo(0xffff, "(UnknownCanonFiTag)", "(UnknownCanonFiTag)", N_("Unknown Canon File Info tag"), canonFiId, makerTags, signedShort, 1, printValue) }; const TagInfo* CanonMakerNote::tagListFi() @@ -1087,20 +1087,20 @@ namespace Exiv2 { // Canon Processing Info Tag const TagInfo CanonMakerNote::tagInfoPr_[] = { - TagInfo(0x0001, "ToneCurve", N_("ToneCurve"), N_("Tone curve"), canonPrIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonToneCurve)), - TagInfo(0x0002, "Sharpness", N_("Sharpness"), N_("Sharpness"), canonPrIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0003, "SharpnessFrequency", N_("SharpnessFrequency"), N_("Sharpness frequency"), canonPrIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonSharpnessFrequency)), - TagInfo(0x0004, "SensorRedLevel", N_("SensorRedLevel"), N_("Sensor red level"), canonPrIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0005, "SensorBlueLevel", N_("SensorBlueLevel"), N_("Sensor blue level"), canonPrIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0006, "WhiteBalanceRed", N_("WhiteBalanceRed"), N_("White balance red"), canonPrIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0007, "WhiteBalanceBlue", N_("WhiteBalanceBlue"), N_("White balance blue"), canonPrIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x0008, "WhiteBalance", N_("WhiteBalance"), N_("White balance"), canonPrIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonSiWhiteBalance)), - TagInfo(0x0009, "ColorTemperature", N_("ColorTemperature"), N_("Color Temperature"), canonPrIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x000a, "PictureStyle", N_("PictureStyle"), N_("Picture style"), canonPrIfdId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonPictureStyle)), - TagInfo(0x000b, "DigitalGain", N_("DigitalGain"), N_("Digital gain"), canonPrIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x000c, "WBShiftAB", N_("WBShiftAB"), N_("WBShift AB"), canonPrIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0x000d, "WBShiftGM", N_("WBShiftGM"), N_("WB Shift GM"), canonPrIfdId, makerTags, signedShort, 1, printValue), - TagInfo(0xffff, "(UnknownCanonPrTag)", "(UnknownCanonPrTag)", N_("Unknown Canon Processing Info tag"), canonPrIfdId, makerTags, signedShort, 1, printValue) + TagInfo(0x0001, "ToneCurve", N_("ToneCurve"), N_("Tone curve"), canonPrId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonToneCurve)), + TagInfo(0x0002, "Sharpness", N_("Sharpness"), N_("Sharpness"), canonPrId, makerTags, signedShort, 1, printValue), + TagInfo(0x0003, "SharpnessFrequency", N_("SharpnessFrequency"), N_("Sharpness frequency"), canonPrId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonSharpnessFrequency)), + TagInfo(0x0004, "SensorRedLevel", N_("SensorRedLevel"), N_("Sensor red level"), canonPrId, makerTags, signedShort, 1, printValue), + TagInfo(0x0005, "SensorBlueLevel", N_("SensorBlueLevel"), N_("Sensor blue level"), canonPrId, makerTags, signedShort, 1, printValue), + TagInfo(0x0006, "WhiteBalanceRed", N_("WhiteBalanceRed"), N_("White balance red"), canonPrId, makerTags, signedShort, 1, printValue), + TagInfo(0x0007, "WhiteBalanceBlue", N_("WhiteBalanceBlue"), N_("White balance blue"), canonPrId, makerTags, signedShort, 1, printValue), + TagInfo(0x0008, "WhiteBalance", N_("WhiteBalance"), N_("White balance"), canonPrId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonSiWhiteBalance)), + TagInfo(0x0009, "ColorTemperature", N_("ColorTemperature"), N_("Color Temperature"), canonPrId, makerTags, signedShort, 1, printValue), + TagInfo(0x000a, "PictureStyle", N_("PictureStyle"), N_("Picture style"), canonPrId, makerTags, signedShort, 1, EXV_PRINT_TAG(canonPictureStyle)), + TagInfo(0x000b, "DigitalGain", N_("DigitalGain"), N_("Digital gain"), canonPrId, makerTags, signedShort, 1, printValue), + TagInfo(0x000c, "WBShiftAB", N_("WBShiftAB"), N_("WBShift AB"), canonPrId, makerTags, signedShort, 1, printValue), + TagInfo(0x000d, "WBShiftGM", N_("WBShiftGM"), N_("WB Shift GM"), canonPrId, makerTags, signedShort, 1, printValue), + TagInfo(0xffff, "(UnknownCanonPrTag)", "(UnknownCanonPrTag)", N_("Unknown Canon Processing Info tag"), canonPrId, makerTags, signedShort, 1, printValue) }; const TagInfo* CanonMakerNote::tagListPr() diff --git a/src/crwimage.cpp b/src/crwimage.cpp index 9dd4fb19..ce6fbdd0 100644 --- a/src/crwimage.cpp +++ b/src/crwimage.cpp @@ -270,33 +270,33 @@ namespace Exiv2 { the other parameters in the mapping structure. */ const CrwMapping CrwMap::crwMapping_[] = { - // CrwTag CrwDir Size ExifTag IfdId decodeFct encodeFct - // ------ ------ ---- ------- ----- --------- --------- - CrwMapping(0x0805, 0x300a, 0, 0, canonIfdId, decode0x0805, encode0x0805), - CrwMapping(0x080a, 0x2807, 0, 0, canonIfdId, decode0x080a, encode0x080a), - CrwMapping(0x080b, 0x3004, 0, 0x0007, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x0810, 0x2807, 0, 0x0009, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x0815, 0x2804, 0, 0x0006, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x1029, 0x300b, 0, 0x0002, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x102a, 0x300b, 0, 0x0004, canonIfdId, decodeArray, encodeArray), - CrwMapping(0x102d, 0x300b, 0, 0x0001, canonIfdId, decodeArray, encodeArray), - CrwMapping(0x1033, 0x300b, 0, 0x000f, canonIfdId, decodeArray, encodeArray), - CrwMapping(0x1038, 0x300b, 0, 0x0012, canonIfdId, decodeArray, encodeArray), - CrwMapping(0x10a9, 0x300b, 0, 0x00a9, canonIfdId, decodeBasic, encodeBasic), + // CrwTag CrwDir Size ExifTag IfdId decodeFct encodeFct + // ------ ------ ---- ------- ----- --------- --------- + CrwMapping(0x0805, 0x300a, 0, 0, canonId, decode0x0805, encode0x0805), + CrwMapping(0x080a, 0x2807, 0, 0, canonId, decode0x080a, encode0x080a), + CrwMapping(0x080b, 0x3004, 0, 0x0007, canonId, decodeBasic, encodeBasic), + CrwMapping(0x0810, 0x2807, 0, 0x0009, canonId, decodeBasic, encodeBasic), + CrwMapping(0x0815, 0x2804, 0, 0x0006, canonId, decodeBasic, encodeBasic), + CrwMapping(0x1029, 0x300b, 0, 0x0002, canonId, decodeBasic, encodeBasic), + CrwMapping(0x102a, 0x300b, 0, 0x0004, canonId, decodeArray, encodeArray), + CrwMapping(0x102d, 0x300b, 0, 0x0001, canonId, decodeArray, encodeArray), + CrwMapping(0x1033, 0x300b, 0, 0x000f, canonId, decodeArray, encodeArray), + CrwMapping(0x1038, 0x300b, 0, 0x0012, canonId, decodeArray, encodeArray), + CrwMapping(0x10a9, 0x300b, 0, 0x00a9, canonId, decodeBasic, encodeBasic), // Mapped to Exif.Photo.ColorSpace instead (see below) - //CrwMapping(0x10b4, 0x300b, 0, 0x00b4, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x10b4, 0x300b, 0, 0xa001, exifIfdId, decodeBasic, encodeBasic), - CrwMapping(0x10b5, 0x300b, 0, 0x00b5, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x10c0, 0x300b, 0, 0x00c0, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x10c1, 0x300b, 0, 0x00c1, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x1807, 0x3002, 0, 0x9206, exifIfdId, decodeBasic, encodeBasic), - CrwMapping(0x180b, 0x3004, 0, 0x000c, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x180e, 0x300a, 0, 0x9003, exifIfdId, decode0x180e, encode0x180e), - CrwMapping(0x1810, 0x300a, 0, 0xa002, exifIfdId, decode0x1810, encode0x1810), - CrwMapping(0x1817, 0x300a, 4, 0x0008, canonIfdId, decodeBasic, encodeBasic), - //CrwMapping(0x1818, 0x3002, 0, 0x9204, exifIfdId, decodeBasic, encodeBasic), - CrwMapping(0x183b, 0x300b, 0, 0x0015, canonIfdId, decodeBasic, encodeBasic), - CrwMapping(0x2008, 0x0000, 0, 0, ifd1Id, decode0x2008, encode0x2008), + //CrwMapping(0x10b4, 0x300b, 0, 0x00b4, canonId, decodeBasic, encodeBasic), + CrwMapping(0x10b4, 0x300b, 0, 0xa001, exifId, decodeBasic, encodeBasic), + CrwMapping(0x10b5, 0x300b, 0, 0x00b5, canonId, decodeBasic, encodeBasic), + CrwMapping(0x10c0, 0x300b, 0, 0x00c0, canonId, decodeBasic, encodeBasic), + CrwMapping(0x10c1, 0x300b, 0, 0x00c1, canonId, decodeBasic, encodeBasic), + CrwMapping(0x1807, 0x3002, 0, 0x9206, exifId, decodeBasic, encodeBasic), + CrwMapping(0x180b, 0x3004, 0, 0x000c, canonId, decodeBasic, encodeBasic), + CrwMapping(0x180e, 0x300a, 0, 0x9003, exifId, decode0x180e, encode0x180e), + CrwMapping(0x1810, 0x300a, 0, 0xa002, exifId, decode0x1810, encode0x1810), + CrwMapping(0x1817, 0x300a, 4, 0x0008, canonId, decodeBasic, encodeBasic), + //CrwMapping(0x1818, 0x3002, 0, 0x9204, exifId, decodeBasic, encodeBasic), + CrwMapping(0x183b, 0x300b, 0, 0x0015, canonId, decodeBasic, encodeBasic), + CrwMapping(0x2008, 0x0000, 0, 0, ifd1Id, decode0x2008, encode0x2008), // End of list marker CrwMapping(0x0000, 0x0000, 0, 0x0000, ifdIdNotSet, 0, 0) }; // CrwMap::crwMapping_[] @@ -1011,28 +1011,28 @@ namespace Exiv2 { IfdId ifdId = ifdIdNotSet; switch (pCrwMapping->tag_) { - case 0x0001: ifdId = canonCsIfdId; break; - case 0x0004: ifdId = canonSiIfdId; break; - case 0x000f: ifdId = canonCfIfdId; break; - case 0x0012: ifdId = canonPiIfdId; break; + case 0x0001: ifdId = canonCsId; break; + case 0x0004: ifdId = canonSiId; break; + case 0x000f: ifdId = canonCfId; break; + case 0x0012: ifdId = canonPiId; break; } assert(ifdId != ifdIdNotSet); - std::string ifdItem(Internal::ifdItem(ifdId)); + std::string groupName(Internal::groupName(ifdId)); uint16_t c = 1; while (uint32_t(c)*2 < ciffComponent.size()) { uint16_t n = 1; - ExifKey key(c, ifdItem); + ExifKey key(c, groupName); UShortValue value; - if (ifdId == canonCsIfdId && c == 23 && ciffComponent.size() > 50) n = 3; + if (ifdId == canonCsId && c == 23 && ciffComponent.size() > 50) n = 3; value.read(ciffComponent.pData() + c*2, n*2, byteOrder); image.exifData().add(key, &value); - if (ifdId == canonSiIfdId && c == 21) aperture = value.toLong(); - if (ifdId == canonSiIfdId && c == 22) shutterSpeed = value.toLong(); + if (ifdId == canonSiId && c == 21) aperture = value.toLong(); + if (ifdId == canonSiId && c == 22) shutterSpeed = value.toLong(); c += n; } - if (ifdId == canonSiIfdId) { + if (ifdId == canonSiId) { // Exif.Photo.FNumber float f = fnumber(canonEv(aperture)); URational ur = floatToRationalCast(f); @@ -1072,7 +1072,7 @@ namespace Exiv2 { char s[m]; std::strftime(s, m, "%Y:%m:%d %H:%M:%S", tm); - ExifKey key(pCrwMapping->tag_, Internal::ifdItem(pCrwMapping->ifdId_)); + ExifKey key(pCrwMapping->tag_, Internal::groupName(pCrwMapping->ifdId_)); AsciiValue value; value.read(std::string(s)); image.exifData().add(key, &value); @@ -1120,7 +1120,7 @@ namespace Exiv2 { { assert(pCrwMapping != 0); // create a key and value pair - ExifKey key(pCrwMapping->tag_, Internal::ifdItem(pCrwMapping->ifdId_)); + ExifKey key(pCrwMapping->tag_, Internal::groupName(pCrwMapping->ifdId_)); Value::AutoPtr value; if (ciffComponent.typeId() != directory) { value = Value::create(ciffComponent.typeId()); @@ -1175,7 +1175,7 @@ namespace Exiv2 { assert(pHead != 0); // Determine the source Exif metadatum - ExifKey ek(pCrwMapping->tag_, Internal::ifdItem(pCrwMapping->ifdId_)); + ExifKey ek(pCrwMapping->tag_, Internal::groupName(pCrwMapping->ifdId_)); ExifData::const_iterator ed = image.exifData().findKey(ek); // Set the new value or remove the entry @@ -1254,10 +1254,10 @@ namespace Exiv2 { IfdId ifdId = ifdIdNotSet; switch (pCrwMapping->tag_) { - case 0x0001: ifdId = canonCsIfdId; break; - case 0x0004: ifdId = canonSiIfdId; break; - case 0x000f: ifdId = canonCfIfdId; break; - case 0x0012: ifdId = canonPiIfdId; break; + case 0x0001: ifdId = canonCsId; break; + case 0x0004: ifdId = canonSiId; break; + case 0x000f: ifdId = canonCfId; break; + case 0x0012: ifdId = canonPiId; break; } assert(ifdId != ifdIdNotSet); DataBuf buf = packIfdId(image.exifData(), ifdId, pHead->byteOrder()); @@ -1283,7 +1283,7 @@ namespace Exiv2 { assert(pHead != 0); time_t t = 0; - const ExifKey key(pCrwMapping->tag_, Internal::ifdItem(pCrwMapping->ifdId_)); + const ExifKey key(pCrwMapping->tag_, Internal::groupName(pCrwMapping->ifdId_)); const ExifData::const_iterator ed = image.exifData().findKey(key); if (ed != image.exifData().end()) { struct tm tm; diff --git a/src/exif.cpp b/src/exif.cpp index 611f1b48..e3337af3 100644 --- a/src/exif.cpp +++ b/src/exif.cpp @@ -693,7 +693,7 @@ namespace Exiv2 { subImage7Id, subImage8Id, subImage9Id, - panaRawIfdId, + panaRawId, ifd2Id, ifd3Id }; @@ -786,7 +786,7 @@ namespace Exiv2 { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: Exif IFD " << filteredPvTags[i].key_ << " not encoded\n"; #endif - eraseIfd(ed, Internal::ifdIdByIfdItem(filteredPvTags[i].key_)); + eraseIfd(ed, Internal::groupId(filteredPvTags[i].key_)); } break; } diff --git a/src/fujimn.cpp b/src/fujimn.cpp index ac1514f6..819a2ade 100644 --- a/src/fujimn.cpp +++ b/src/fujimn.cpp @@ -175,108 +175,108 @@ namespace Exiv2 { const TagInfo FujiMakerNote::tagInfo_[] = { TagInfo(0x0000, "Version", N_("Version"), N_("Fujifilm Makernote version"), - fujiIfdId, makerTags, undefined, -1, printValue), + fujiId, makerTags, undefined, -1, printValue), TagInfo(0x0010, "SerialNumber", N_("Serial Number"), N_("This number is unique, and contains the date of manufacture, " "but is not the same as the number printed on the camera body."), - fujiIfdId, makerTags, asciiString, -1, printValue), + fujiId, makerTags, asciiString, -1, printValue), TagInfo(0x1000, "Quality", N_("Quality"), N_("Image quality setting"), - fujiIfdId, makerTags, asciiString, -1, printValue), + fujiId, makerTags, asciiString, -1, printValue), TagInfo(0x1001, N_("Sharpness"), N_("Sharpness"), N_("Sharpness setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiSharpness)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiSharpness)), TagInfo(0x1002, "WhiteBalance", N_("White Balance"), N_("White balance setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiWhiteBalance)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiWhiteBalance)), TagInfo(0x1003, "Color", N_("Color"), N_("Chroma saturation setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiColor)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiColor)), TagInfo(0x1004, "Tone", N_("Tone"), N_("Contrast setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiTone)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiTone)), TagInfo(0x1010, "FlashMode", N_("Flash Mode"), N_("Flash firing mode setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiFlashMode)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiFlashMode)), TagInfo(0x1011, "FlashStrength", N_("Flash Strength"), N_("Flash firing strength compensation setting"), - fujiIfdId, makerTags, signedRational, -1, printValue), + fujiId, makerTags, signedRational, -1, printValue), TagInfo(0x1020, "Macro", N_("Macro"), N_("Macro mode setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), TagInfo(0x1021, "FocusMode", N_("Focus Mode"), N_("Focusing mode setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiFocusMode)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiFocusMode)), TagInfo(0x1022, "0x1022", "0x1022", N_("Unknown"), - fujiIfdId, makerTags, unsignedShort, -1, printValue), + fujiId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1030, "SlowSync", N_("Slow Sync"), N_("Slow synchro mode setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), TagInfo(0x1031, "PictureMode", N_("Picture Mode"), N_("Picture mode setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiPictureMode)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiPictureMode)), TagInfo(0x1032, "0x1032", "0x1032", N_("Unknown"), - fujiIfdId, makerTags, unsignedShort, -1, printValue), + fujiId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1100, "Continuous", N_("Continuous"), N_("Continuous shooting or auto bracketing setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiContinuous)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiContinuous)), TagInfo(0x1101, "SequenceNumber", N_("Sequence Number"), N_("Sequence number"), - fujiIfdId, makerTags, unsignedShort, -1, printValue), + fujiId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1200, "0x1200", "0x1200", N_("Unknown"), - fujiIfdId, makerTags, unsignedShort, -1, printValue), + fujiId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1210, "FinePixColor", N_("FinePix Color"), N_("Fuji FinePix color setting"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiFinePixColor)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiFinePixColor)), TagInfo(0x1300, "BlurWarning", N_("Blur Warning"), N_("Blur warning status"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), TagInfo(0x1301, "FocusWarning", N_("Focus Warning"), N_("Auto Focus warning status"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), TagInfo(0x1302, "ExposureWarning", N_("Exposure Warning"), N_("Auto exposure warning status"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiOffOn)), TagInfo(0x1400, "DynamicRange", N_("Dynamic Range"), N_("Dynamic range"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDynamicRange)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDynamicRange)), TagInfo(0x1401, "FilmMode", N_("Film Mode"), N_("Film mode"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiFilmMode)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiFilmMode)), TagInfo(0x1402, "DynamicRangeSetting", N_("Dynamic Range Setting"), N_("Dynamic range settings"), - fujiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDynamicRangeSetting)), + fujiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(fujiDynamicRangeSetting)), TagInfo(0x1403, "DevelopmentDynamicRange", N_("Development Dynamic Range"), N_("Development dynamic range"), - fujiIfdId, makerTags, unsignedShort, -1, printValue), + fujiId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1404, "MinFocalLength", N_("Minimum Focal Length"), N_("Minimum focal length"), - fujiIfdId, makerTags, unsignedRational, -1, printValue), + fujiId, makerTags, unsignedRational, -1, printValue), TagInfo(0x1405, "MaxFocalLength", N_("Maximum Focal Length"), N_("Maximum focal length"), - fujiIfdId, makerTags, unsignedRational, -1, printValue), + fujiId, makerTags, unsignedRational, -1, printValue), TagInfo(0x1406, "MaxApertureAtMinFocal", N_("Maximum Aperture at Mininimum Focal"), N_("Maximum aperture at mininimum focal"), - fujiIfdId, makerTags, unsignedRational, -1, printValue), + fujiId, makerTags, unsignedRational, -1, printValue), TagInfo(0x1407, "MaxApertureAtMaxFocal", N_("Maximum Aperture at Maxinimum Focal"), N_("Maximum aperture at maxinimum focal"), - fujiIfdId, makerTags, unsignedRational, -1, printValue), + fujiId, makerTags, unsignedRational, -1, printValue), TagInfo(0x8000, "FileSource", N_("File Source"), N_("File source"), - fujiIfdId, makerTags, asciiString, -1, printValue), + fujiId, makerTags, asciiString, -1, printValue), TagInfo(0x8002, "OrderNumber", N_("Order Number"), N_("Order number"), - fujiIfdId, makerTags, unsignedLong, -1, printValue), + fujiId, makerTags, unsignedLong, -1, printValue), TagInfo(0x8003, "FrameNumber", N_("Frame Number"), N_("Frame number"), - fujiIfdId, makerTags, unsignedShort, -1, printValue), + fujiId, makerTags, unsignedShort, -1, printValue), // End of list marker TagInfo(0xffff, "(UnknownFujiMakerNoteTag)", "(UnknownFujiMakerNoteTag)", N_("Unknown FujiMakerNote tag"), - fujiIfdId, makerTags, asciiString, -1, printValue) + fujiId, makerTags, asciiString, -1, printValue) }; const TagInfo* FujiMakerNote::tagList() diff --git a/src/makernote.cpp b/src/makernote.cpp index 2d52a16e..73b237c8 100644 --- a/src/makernote.cpp +++ b/src/makernote.cpp @@ -61,25 +61,25 @@ namespace Exiv2 { namespace Internal { const TiffMnRegistry TiffMnCreator::registry_[] = { - { "Canon", Group::canonmn, newIfdMn, newIfdMn2 }, - { "FOVEON", Group::sigmamn, newSigmaMn, newSigmaMn2 }, - { "FUJI", Group::fujimn, newFujiMn, newFujiMn2 }, - { "KONICA MINOLTA", Group::minoltamn, newIfdMn, newIfdMn2 }, - { "Minolta", Group::minoltamn, newIfdMn, newIfdMn2 }, - { "NIKON", Group::nikonmn, newNikonMn, 0 }, - { "OLYMPUS", Group::olympmn, newOlympusMn, 0 }, - { "Panasonic", Group::panamn, newPanasonicMn, newPanasonicMn2 }, - { "PENTAX", Group::pentaxmn, newPentaxMn, newPentaxMn2 }, - { "SIGMA", Group::sigmamn, newSigmaMn, newSigmaMn2 }, - { "SONY", Group::sonymn, newSonyMn, 0 }, + { "Canon", canonId, newIfdMn, newIfdMn2 }, + { "FOVEON", sigmaId, newSigmaMn, newSigmaMn2 }, + { "FUJI", fujiId, newFujiMn, newFujiMn2 }, + { "KONICA MINOLTA", minoltaId, newIfdMn, newIfdMn2 }, + { "Minolta", minoltaId, newIfdMn, newIfdMn2 }, + { "NIKON", ifdIdNotSet, newNikonMn, 0 }, // mnGroup_ is not used + { "OLYMPUS", ifdIdNotSet, newOlympusMn, 0 }, // mnGroup_ is not used + { "Panasonic", panasonicId, newPanasonicMn, newPanasonicMn2 }, + { "PENTAX", pentaxId, newPentaxMn, newPentaxMn2 }, + { "SIGMA", sigmaId, newSigmaMn, newSigmaMn2 }, + { "SONY", ifdIdNotSet, newSonyMn, 0 }, // mnGroup_ is not used // Entries below are only used for lookup by group - { "-", Group::nikon1mn, 0, newIfdMn2 }, - { "-", Group::nikon2mn, 0, newNikon2Mn2 }, - { "-", Group::nikon3mn, 0, newNikon3Mn2 }, - { "-", Group::sony1mn, 0, newSony1Mn2 }, - { "-", Group::sony2mn, 0, newSony2Mn2 }, - { "-", Group::olymp1mn, 0, newOlympusMn2 }, - { "-", Group::olymp2mn, 0, newOlympus2Mn2 } + { "-", nikon1Id, 0, newIfdMn2 }, + { "-", nikon2Id, 0, newNikon2Mn2 }, + { "-", nikon3Id, 0, newNikon3Mn2 }, + { "-", sony1Id, 0, newSony1Mn2 }, + { "-", sony2Id, 0, newSony2Mn2 }, + { "-", olympusId, 0, newOlympusMn2 }, + { "-", olympus2Id, 0, newOlympus2Mn2 } }; bool TiffMnRegistry::operator==(const std::string& key) const @@ -88,13 +88,13 @@ namespace Exiv2 { return make == key.substr(0, make.length()); } - bool TiffMnRegistry::operator==(const uint16_t& key) const + bool TiffMnRegistry::operator==(IfdId key) const { return mnGroup_ == key; } TiffComponent* TiffMnCreator::create(uint16_t tag, - uint16_t group, + IfdId group, const std::string& make, const byte* pData, uint32_t size, @@ -115,12 +115,19 @@ namespace Exiv2 { } // TiffMnCreator::create TiffComponent* TiffMnCreator::create(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { TiffComponent* tc = 0; const TiffMnRegistry* tmr = find(registry_, mnGroup); if (tmr) { + + if (tmr->newMnFct2_ == 0) { + + std::cout << "mnGroup = " << mnGroup << "\n"; + + } + assert(tmr->newMnFct2_); tc = tmr->newMnFct2_(tag, group, mnGroup); } @@ -601,8 +608,8 @@ namespace Exiv2 { // free functions TiffComponent* newIfdMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* /*pData*/, uint32_t /*size*/, ByteOrder /*byteOrder*/) @@ -611,43 +618,43 @@ namespace Exiv2 { } TiffComponent* newIfdMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, 0); } TiffComponent* newOlympusMn(uint16_t tag, - uint16_t group, - uint16_t /*mnGroup*/, + IfdId group, + IfdId /*mnGroup*/, const byte* pData, uint32_t size, ByteOrder /*byteOrder*/) { if (size < 10 || std::string(reinterpret_cast(pData), 10) != std::string("OLYMPUS\0II", 10)) { - return newOlympusMn2(tag, group, Group::olymp1mn); + return newOlympusMn2(tag, group, olympusId); } - return newOlympus2Mn2(tag, group, Group::olymp2mn); + return newOlympus2Mn2(tag, group, olympus2Id); } TiffComponent* newOlympusMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, new OlympusMnHeader); } TiffComponent* newOlympus2Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, new Olympus2MnHeader); } TiffComponent* newFujiMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* /*pData*/, uint32_t /*size*/, ByteOrder /*byteOrder*/) @@ -656,15 +663,15 @@ namespace Exiv2 { } TiffComponent* newFujiMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, new FujiMnHeader); } TiffComponent* newNikonMn(uint16_t tag, - uint16_t group, - uint16_t /*mnGroup*/, + IfdId group, + IfdId /*mnGroup*/, const byte* pData, uint32_t size, ByteOrder /*byteOrder*/) @@ -672,7 +679,7 @@ namespace Exiv2 { // If there is no "Nikon" string it must be Nikon1 format if (size < 6 || std::string(reinterpret_cast(pData), 6) != std::string("Nikon\0", 6)) { - return newIfdMn2(tag, group, Group::nikon1mn); + return newIfdMn2(tag, group, nikon1Id); } // If the "Nikon" string is not followed by a TIFF header, we assume // Nikon2 format @@ -680,29 +687,29 @@ namespace Exiv2 { if ( size < 18 || !tiffHeader.read(pData + 10, size - 10) || tiffHeader.tag() != 0x002a) { - return newNikon2Mn2(tag, group, Group::nikon2mn); + return newNikon2Mn2(tag, group, nikon2Id); } // Else we have a Nikon3 makernote - return newNikon3Mn2(tag, group, Group::nikon3mn); + return newNikon3Mn2(tag, group, nikon3Id); } TiffComponent* newNikon2Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, new Nikon2MnHeader); } TiffComponent* newNikon3Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, new Nikon3MnHeader); } TiffComponent* newPanasonicMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* /*pData*/, uint32_t /*size*/, ByteOrder /*byteOrder*/) @@ -711,32 +718,32 @@ namespace Exiv2 { } TiffComponent* newPanasonicMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, new PanasonicMnHeader, false); } TiffComponent* newPentaxMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, - const byte* /*pData*/, - uint32_t /*size*/, - ByteOrder /*byteOrder*/) + IfdId group, + IfdId mnGroup, + const byte* /*pData*/, + uint32_t /*size*/, + ByteOrder /*byteOrder*/) { return newPentaxMn2(tag, group, mnGroup); } TiffComponent* newPentaxMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, new PentaxMnHeader); } TiffComponent* newSigmaMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* /*pData*/, uint32_t /*size*/, ByteOrder /*byteOrder*/) @@ -745,15 +752,15 @@ namespace Exiv2 { } TiffComponent* newSigmaMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, new SigmaMnHeader); } TiffComponent* newSonyMn(uint16_t tag, - uint16_t group, - uint16_t /*mnGroup*/, + IfdId group, + IfdId /*mnGroup*/, const byte* pData, uint32_t size, ByteOrder /*byteOrder*/) @@ -761,21 +768,21 @@ namespace Exiv2 { // If there is no "SONY DSC " string we assume it's a simple IFD Makernote if (size < 12 || std::string(reinterpret_cast(pData), 12) != std::string("SONY DSC \0\0\0", 12)) { - return newSony2Mn2(tag, group, Group::sony2mn); + return newSony2Mn2(tag, group, sony2Id); } - return newSony1Mn2(tag, group, Group::sony1mn); + return newSony1Mn2(tag, group, sony1Id); } TiffComponent* newSony1Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, new SonyMnHeader, false); } TiffComponent* newSony2Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup) + IfdId group, + IfdId mnGroup) { return new TiffIfdMakernote(tag, group, mnGroup, 0, true); } @@ -857,14 +864,14 @@ namespace Exiv2 { if (nci == 0 || nci->start_ == NA || size <= nci->start_) return buf; // Find Exif.Nikon3.ShutterCount - TiffFinder finder(0x00a7, Group::nikon3mn); + TiffFinder finder(0x00a7, nikon3Id); pRoot->accept(finder); TiffEntryBase* te = dynamic_cast(finder.result()); if (!te || !te->pValue() || te->pValue()->count() == 0) return buf; uint32_t count = static_cast(te->pValue()->toLong()); // Find Exif.Nikon3.SerialNumber - finder.init(0x001d, Group::nikon3mn); + finder.init(0x001d, nikon3Id); pRoot->accept(finder); te = dynamic_cast(finder.result()); if (!te || !te->pValue() || te->pValue()->count() == 0) return buf; @@ -904,7 +911,7 @@ namespace Exiv2 { namespace { std::string getExifModel(Exiv2::Internal::TiffComponent* const pRoot) { - Exiv2::Internal::TiffFinder finder(0x0110, Exiv2::Internal::Group::ifd0); // Exif.Image.Model + Exiv2::Internal::TiffFinder finder(0x0110, Exiv2::Internal::ifd0Id); // Exif.Image.Model pRoot->accept(finder); Exiv2::Internal::TiffEntryBase* te = dynamic_cast(finder.result()); if (!te || !te->pValue() || te->pValue()->count() == 0) return std::string(); diff --git a/src/makernote_int.hpp b/src/makernote_int.hpp index 06a96a9f..c68c40e8 100644 --- a/src/makernote_int.hpp +++ b/src/makernote_int.hpp @@ -35,6 +35,7 @@ // ***************************************************************************** // included header files #include "tifffwd_int.hpp" +#include "tags_int.hpp" #include "types.hpp" // + standard includes @@ -45,103 +46,21 @@ namespace Exiv2 { namespace Internal { - namespace Group { - const uint16_t olympmn = 257; //!< any Olympus makernote - const uint16_t fujimn = 258; //!< Fujifilm makernote - const uint16_t canonmn = 259; //!< Canon makernote - const uint16_t canoncs = 260; //!< Canon camera settings - const uint16_t canonsi = 261; //!< Canon shot info - const uint16_t canoncf = 262; //!< Canon custom functions - const uint16_t nikonmn = 263; //!< Any Nikon makernote (pseudo group) - const uint16_t nikon1mn = 264; //!< Nikon1 makernote - const uint16_t nikon2mn = 265; //!< Nikon2 makernote - const uint16_t nikon3mn = 266; //!< Nikon3 makernote - const uint16_t panamn = 267; //!< Panasonic makernote - const uint16_t sigmamn = 268; //!< Sigma makernote - const uint16_t sonymn = 269; //!< Any Sony makernote (pseudo group) - const uint16_t sony1mn = 270; //!< Sony1 makernote - const uint16_t sony2mn = 271; //!< Sony2 makernote - const uint16_t minoltamn = 272; //!< Minolta makernote - const uint16_t minocso = 273; //!< Minolta camera settings (old) - const uint16_t minocsn = 274; //!< Minolta camera settings (new) - const uint16_t minocs5 = 275; //!< Minolta camera settings (D5) - const uint16_t minocs7 = 276; //!< Minolta camera settings (D7) - const uint16_t canonpi = 277; //!< Canon picture info - const uint16_t canonpa = 278; //!< Canon panorama - const uint16_t pentaxmn = 279; //!< Pentax makernote - const uint16_t nikonpv = 280; //!< Nikon preview sub-IFD - const uint16_t olymp1mn = 281; //!< Olympus makernote - const uint16_t olymp2mn = 282; //!< Olympus II makernote - const uint16_t olympcs = 283; //!< Olympus camera settings - const uint16_t olympeq = 284; //!< Olympus equipment tags - const uint16_t olymprd = 285; //!< Olympus raw development tags - const uint16_t olymprd2 = 286; //!< Olympus raw development 2 tags - const uint16_t olympip = 287; //!< Olympus image processing tags - const uint16_t olympfi = 288; //!< Olympus focus info tags - const uint16_t olympfe1 = 289; //!< Olympus FE 1 tags - const uint16_t olympfe2 = 290; //!< Olympus FE 2 tags - const uint16_t olympfe3 = 291; //!< Olympus FE 3 tags - const uint16_t olympfe4 = 292; //!< Olympus FE 4 tags - const uint16_t olympfe5 = 293; //!< Olympus FE 5 tags - const uint16_t olympfe6 = 294; //!< Olympus FE 6 tags - const uint16_t olympfe7 = 295; //!< Olympus FE 7 tags - const uint16_t olympfe8 = 296; //!< Olympus FE 8 tags - const uint16_t olympfe9 = 297; //!< Olympus FE 9 tags - const uint16_t olympri = 298; //!< Olympus raw info tags - const uint16_t nikonwt = 299; //!< Nikon World Time tags - const uint16_t nikonii = 300; //!< Nikon ISO Info tags - const uint16_t nikonld1 = 301; //!< Nikon Lens Data 1 tags - const uint16_t nikonld2 = 302; //!< Nikon Lens Data 2 tags - const uint16_t nikonld3 = 303; //!< Nikon Lens Data 3 tags - const uint16_t nikoncb1 = 304; //!< Nikon Color Balance 1 Tags - const uint16_t nikoncb2 = 305; //!< Nikon Color Balance 2 Tags - const uint16_t nikoncb2a = 306; //!< Nikon Color Balance 2 Tags - const uint16_t nikoncb2b = 307; //!< Nikon Color Balance 2 Tags - const uint16_t nikoncb3 = 308; //!< Nikon Color Balance 3 Tags - const uint16_t nikoncb4 = 309; //!< Nikon Color Balance 4 Tags - const uint16_t nikonvr = 310; //!< Nikon Vibration Reduction Tags - const uint16_t nikonpc = 311; //!< Nikon Picture Control Tags - const uint16_t nikonaf = 312; //!< Nikon Auto Focus Tags - const uint16_t nikonsi1 = 313; //!< Nikon Shot Info D80 Tags - const uint16_t nikonsi2 = 314; //!< Nikon Shot Info D40 Tags - const uint16_t nikonsi3 = 315; //!< Nikon Shot Info D300 Tags (a) - const uint16_t nikonsi4 = 316; //!< Nikon Shot Info D300 Tags (b) - const uint16_t nikonsi5 = 317; //!< Nikon Shot Info v2.* Tags - const uint16_t nikonsi6 = 318; //!< Nikon Shot Info v1.* Tags - const uint16_t canonfi = 320; //!< Canon File Info - const uint16_t sonymltmn = 330; //!< Sony Minolta Makernotes - const uint16_t sony1cs = 331; //!< Sony Camera Settings (in Sony1 makernote) - const uint16_t sony1cs2 = 332; //!< Sony Camera Settings 2 (in Sony1 makernote) - const uint16_t sony1mcso = 333; //!< Minolta (old) Camera Settings (in Sony1 makernote) - const uint16_t sony1mcsn = 334; //!< Minolta (new) Camera Settings (in Sony1 makernote) - const uint16_t sony1mcsa100=335;//!< Sony A100 Camera Settings (in Sony1 makernote) - const uint16_t sony1mcs7 = 336; //!< Minolta D7 Camera Settings (in Sony1 makernote) - const uint16_t sony2cs = 337; //!< Sony Camera Settings (in Sony2 makernote) - const uint16_t sony2cs2 = 338; //!< Sony Camera Settings 2 (in Sony2 makernote) - const uint16_t nikonfi = 362; //!< Nikon File Info Tags - const uint16_t nikonaf2 = 363; //!< Nikon Auto Focus 2 Tags - const uint16_t nikonme = 364; //!< Nikon Multi Exposure Tags - const uint16_t nikonfl1 = 365; //!< Nikon Flash Info 1 Tags - const uint16_t nikonfl2 = 366; //!< Nikon Flash Info 2 Tags - const uint16_t nikonfl3 = 367; //!< Nikon Flash Info 3 Tags - const uint16_t canonpr = 368; //!< Canon ProcessingInfo Tags - } - // ***************************************************************************** // class definitions //! Type for a pointer to a function creating a makernote (image) typedef TiffComponent* (*NewMnFct)(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* pData, uint32_t size, ByteOrder byteOrder); //! Type for a pointer to a function creating a makernote (group) typedef TiffComponent* (*NewMnFct2)(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Makernote registry structure struct TiffMnRegistry { @@ -156,11 +75,11 @@ namespace Exiv2 { bool operator==(const std::string& key) const; //! Compare a TiffMnRegistry structure with a makernote group - bool operator==(const uint16_t& key) const; + bool operator==(IfdId key) const; // DATA const char* make_; //!< Camera make - uint16_t mnGroup_; //!< Group identifier + IfdId mnGroup_; //!< Group identifier NewMnFct newMnFct_; //!< Makernote create function (image) NewMnFct2 newMnFct2_; //!< Makernote create function (group) }; @@ -182,7 +101,7 @@ namespace Exiv2 { file dependencies. */ static TiffComponent* create(uint16_t tag, - uint16_t group, + IfdId group, const std::string& make, const byte* pData, uint32_t size, @@ -192,8 +111,8 @@ namespace Exiv2 { when a makernote is written back from Exif tags. */ static TiffComponent* create(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); protected: //! Prevent destruction (needed if used as a policy class) @@ -540,125 +459,125 @@ namespace Exiv2 { //! Function to create a simple IFD makernote (Canon, Minolta, Nikon1) TiffComponent* newIfdMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* pData, uint32_t size, ByteOrder byteOrder); //! Function to create a simple IFD makernote (Canon, Minolta, Nikon1) TiffComponent* newIfdMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Function to create an Olympus makernote TiffComponent* newOlympusMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* pData, uint32_t size, ByteOrder byteOrder); //! Function to create an Olympus makernote TiffComponent* newOlympusMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Function to create an Olympus II makernote TiffComponent* newOlympus2Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Function to create a Fujifilm makernote TiffComponent* newFujiMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* pData, uint32_t size, ByteOrder byteOrder); //! Function to create a Fujifilm makernote TiffComponent* newFujiMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); /*! @brief Function to create a Nikon makernote. This will create the appropriate Nikon 1, 2 or 3 makernote, based on the arguments. */ TiffComponent* newNikonMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* pData, uint32_t size, ByteOrder byteOrder); //! Function to create a Nikon2 makernote TiffComponent* newNikon2Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Function to create a Nikon3 makernote TiffComponent* newNikon3Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Function to create a Panasonic makernote TiffComponent* newPanasonicMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* pData, uint32_t size, ByteOrder byteOrder); //! Function to create a Panasonic makernote TiffComponent* newPanasonicMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Function to create an Pentax makernote TiffComponent* newPentaxMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* pData, uint32_t size, ByteOrder byteOrder); //! Function to create an Pentax makernote TiffComponent* newPentaxMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Function to create a Sigma makernote TiffComponent* newSigmaMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* pData, uint32_t size, ByteOrder byteOrder); //! Function to create a Sigma makernote TiffComponent* newSigmaMn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Function to create a Sony makernote TiffComponent* newSonyMn(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, const byte* pData, uint32_t size, ByteOrder byteOrder); //! Function to create a Sony1 makernote TiffComponent* newSony1Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); //! Function to create a Sony2 makernote TiffComponent* newSony2Mn2(uint16_t tag, - uint16_t group, - uint16_t mnGroup); + IfdId group, + IfdId mnGroup); /*! @brief Function to select cfg + def of the Sony Camera Settings complex binary array. diff --git a/src/minoltamn.cpp b/src/minoltamn.cpp index 8a70b825..1368e575 100644 --- a/src/minoltamn.cpp +++ b/src/minoltamn.cpp @@ -89,104 +89,104 @@ namespace Exiv2 { const TagInfo MinoltaMakerNote::tagInfo_[] = { TagInfo(0x0000, "Version", N_("Makernote Version"), N_("String 'MLT0' (not null terminated)"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), TagInfo(0x0001, "CameraSettingsStdOld", N_("Camera Settings (Std Old)"), N_("Standard Camera settings (Old Camera models like D5, D7, S304, and S404)"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), TagInfo(0x0003, "CameraSettingsStdNew", N_("Camera Settings (Std New)"), N_("Standard Camera settings (New Camera Models like D7u, D7i, and D7hi)"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), TagInfo(0x0004, "CameraSettings7D", N_("Camera Settings (7D)"), N_("Camera Settings (for Dynax 7D model)"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), TagInfo(0x0018, "ImageStabilizationData", N_("Image Stabilization Data"), N_("Image stabilization data"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), // TODO: Implement WB Info A100 tags decoding. TagInfo(0x0020, "WBInfoA100", N_("WB Info A100"), N_("White balance information for the Sony DSLR-A100"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), TagInfo(0x0040, "CompressedImageSize", N_("Compressed Image Size"), N_("Compressed image size"), - minoltaIfdId, makerTags, unsignedLong, -1, printValue), + minoltaId, makerTags, unsignedLong, -1, printValue), TagInfo(0x0081, "Thumbnail", N_("Thumbnail"), N_("Jpeg thumbnail 640x480 pixels"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), TagInfo(0x0088, "ThumbnailOffset", N_("Thumbnail Offset"), N_("Offset of the thumbnail"), - minoltaIfdId, makerTags, unsignedLong, -1, printValue), + minoltaId, makerTags, unsignedLong, -1, printValue), TagInfo(0x0089, "ThumbnailLength", N_("Thumbnail Length"), N_("Size of the thumbnail"), - minoltaIfdId, makerTags, unsignedLong, -1, printValue), + minoltaId, makerTags, unsignedLong, -1, printValue), TagInfo(0x0100, "SceneMode", N_("Scene Mode"), N_("Scene Mode"), - minoltaIfdId, makerTags, unsignedLong, -1, printMinoltaSonySceneMode), + minoltaId, makerTags, unsignedLong, -1, printMinoltaSonySceneMode), // TODO: for A100, use Sony table from printMinoltaSonyColorMode(). TagInfo(0x0101, "ColorMode", N_("Color Mode"), N_("Color mode"), - minoltaIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(minoltaColorMode)), + minoltaId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(minoltaColorMode)), TagInfo(0x0102, "Quality", N_("Image Quality"), N_("Image quality"), - minoltaIfdId, makerTags, unsignedLong, -1, printMinoltaSonyImageQuality), + minoltaId, makerTags, unsignedLong, -1, printMinoltaSonyImageQuality), // TODO: Tag 0x0103 : quality or image size (see ExifTool doc). TagInfo(0x0103, "0x0103", N_("0x0103"), N_("0x0103"), - minoltaIfdId, makerTags, unsignedLong, -1, printValue), + minoltaId, makerTags, unsignedLong, -1, printValue), TagInfo(0x0104, "FlashExposureComp", N_("Flash Exposure Compensation"), N_("Flash exposure compensation in EV"), - minoltaIfdId, makerTags, signedRational, -1, print0x9204), + minoltaId, makerTags, signedRational, -1, print0x9204), TagInfo(0x0105, "Teleconverter", N_("Teleconverter Model"), N_("Teleconverter Model"), - minoltaIfdId, makerTags, unsignedLong, -1, printMinoltaSonyTeleconverterModel), + minoltaId, makerTags, unsignedLong, -1, printMinoltaSonyTeleconverterModel), TagInfo(0x0107, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), - minoltaIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(minoltaImageStabilization)), + minoltaId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(minoltaImageStabilization)), TagInfo(0x0109, "RawAndJpgRecording", N_("RAW+JPG Recording"), N_("RAW and JPG files recording"), - minoltaIfdId, makerTags, unsignedLong, -1, printMinoltaSonyBoolValue), + minoltaId, makerTags, unsignedLong, -1, printMinoltaSonyBoolValue), TagInfo(0x010a, "ZoneMatching", N_("Zone Matching"), N_("Zone matching"), - minoltaIfdId, makerTags, unsignedLong, -1, printMinoltaSonyZoneMatching), + minoltaId, makerTags, unsignedLong, -1, printMinoltaSonyZoneMatching), TagInfo(0x010b, "ColorTemperature", N_("Color Temperature"), N_("Color temperature"), - minoltaIfdId, makerTags, unsignedLong, -1, printValue), + minoltaId, makerTags, unsignedLong, -1, printValue), TagInfo(0x010c, "LensID", N_("Lens ID"), N_("Lens identifier"), - minoltaIfdId, makerTags, unsignedLong, -1, printMinoltaSonyLensID), + minoltaId, makerTags, unsignedLong, -1, printMinoltaSonyLensID), TagInfo(0x0111, "ColorCompensationFilter", N_("Color Compensation Filter"), N_("Color Compensation Filter: negative is green, positive is magenta"), - minoltaIfdId, makerTags, unsignedLong, -1, printValue), + minoltaId, makerTags, unsignedLong, -1, printValue), TagInfo(0x0112, "WhiteBalanceFineTune", N_("White Balance Fine Tune"), N_("White Balance Fine Tune Value"), - minoltaIfdId, makerTags, unsignedLong, -1, printValue), + minoltaId, makerTags, unsignedLong, -1, printValue), TagInfo(0x0113, "ImageStabilizationA100", N_("Image Stabilization A100"), N_("Image Stabilization for the Sony DSLR-A100"), - minoltaIfdId, makerTags, unsignedLong, -1, printMinoltaSonyBoolValue), + minoltaId, makerTags, unsignedLong, -1, printMinoltaSonyBoolValue), // TODO: implement CameraSettingsA100 tags decoding. TagInfo(0x0114, "CameraSettings5D", N_("Camera Settings (5D)"), N_("Camera Settings (for Dynax 5D model)"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), TagInfo(0x0115, "WhiteBalance", N_("White Balance"), N_("White balance"), - minoltaIfdId, makerTags, unsignedLong, -1, printMinoltaSonyWhiteBalanceStd), + minoltaId, makerTags, unsignedLong, -1, printMinoltaSonyWhiteBalanceStd), TagInfo(0x0e00, "PrintIM", N_("Print IM"), N_("PrintIM information"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), TagInfo(0x0f00, "CameraSettingsZ1", N_("Camera Settings (Z1)"), N_("Camera Settings (for Z1, DImage X, and F100 models)"), - minoltaIfdId, makerTags, undefined, -1, printValue), + minoltaId, makerTags, undefined, -1, printValue), // End of list marker TagInfo(0xffff, "(UnknownMinoltaMakerNoteTag)", "(UnknownMinoltaMakerNoteTag)", N_("Unknown Minolta MakerNote tag"), - minoltaIfdId, makerTags, asciiString, -1, printValue) + minoltaId, makerTags, asciiString, -1, printValue) }; const TagInfo* MinoltaMakerNote::tagList() @@ -488,158 +488,158 @@ namespace Exiv2 { const TagInfo MinoltaMakerNote::tagInfoCsStd_[] = { TagInfo(0x0001, "ExposureMode", N_("Exposure Mode"), N_("Exposure mode"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaExposureModeStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaExposureModeStd)), TagInfo(0x0002, "FlashMode", N_("Flash Mode"), N_("Flash mode"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashModeStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashModeStd)), TagInfo(0x0003, "WhiteBalance", N_("White Balance"), N_("White balance"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaWhiteBalanceStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaWhiteBalanceStd)), TagInfo(0x0004, "ImageSize", N_("Image Size"), N_("Image size"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaImageSizeStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaImageSizeStd)), TagInfo(0x0005, "Quality", N_("Image Quality"), N_("Image quality"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaImageQualityStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaImageQualityStd)), TagInfo(0x0006, "DriveMode", N_("Drive Mode"), N_("Drive mode"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaDriveModeStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaDriveModeStd)), TagInfo(0x0007, "MeteringMode", N_("Metering Mode"), N_("Metering mode"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaMeteringModeStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaMeteringModeStd)), TagInfo(0x0008, "ISO", N_("ISO"), N_("ISO Value"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaExposureSpeedStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaExposureSpeedStd), TagInfo(0x0009, "ExposureTime", N_("Exposure Time"), N_("Exposure time"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaExposureTimeStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaExposureTimeStd), TagInfo(0x000A, "FNumber", N_("FNumber"), N_("The F-Number"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaFNumberStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaFNumberStd), TagInfo(0x000B, "MacroMode", N_("Macro Mode"), N_("Macro mode"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaSonyBoolValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaSonyBoolValue), TagInfo(0x000C, "DigitalZoom", N_("Digital Zoom"), N_("Digital zoom"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaDigitalZoomStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaDigitalZoomStd)), TagInfo(0x000D, "ExposureCompensation", N_("Exposure Compensation"), N_("Exposure compensation"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaExposureCompensationStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaExposureCompensationStd), TagInfo(0x000E, "BracketStep", N_("Bracket Step"), N_("Bracket step"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaBracketStepStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaBracketStepStd)), TagInfo(0x0010, "IntervalLength", N_("Interval Length"), N_("Interval length"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x0011, "IntervalNumber", N_("Interval Number"), N_("Interval number"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x0012, "FocalLength", N_("Focal Length"), N_("Focal length"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaFocalLengthStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaFocalLengthStd), TagInfo(0x0013, "FocusDistance", N_("Focus Distance"), N_("Focus distance"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x0014, "FlashFired", N_("Flash Fired"), N_("Flash fired"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashFired)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashFired)), TagInfo(0x0015, "MinoltaDate", N_("Minolta Date"), N_("Minolta date"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaDateStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaDateStd), TagInfo(0x0016, "MinoltaTime", N_("Minolta Time"), N_("Minolta time"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaTimeStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaTimeStd), TagInfo(0x0017, "MaxAperture", N_("Max Aperture"), N_("Max aperture"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x001A, "FileNumberMemory", N_("File Number Memory"), N_("File number memory"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaSonyBoolValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaSonyBoolValue), TagInfo(0x001B, "LastFileNumber", N_("Last Image Number"), N_("Last image number"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x001C, "ColorBalanceRed", N_("Color Balance Red"), N_("Color balance red"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaWhiteBalanceStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaWhiteBalanceStd), TagInfo(0x001D, "ColorBalanceGreen", N_("Color Balance Green"), N_("Color balance green"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaWhiteBalanceStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaWhiteBalanceStd), TagInfo(0x001E, "ColorBalanceBlue", N_("Color Balance Blue"), N_("Color balance blue"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaWhiteBalanceStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaWhiteBalanceStd), TagInfo(0x001F, "Saturation", N_("Saturation"), N_("Saturation"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x0020, "Contrast", N_("Contrast"), N_("Contrast"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x0021, "Sharpness", N_("Sharpness"), N_("Sharpness"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaSharpnessStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaSharpnessStd)), TagInfo(0x0022, "SubjectProgram", N_("Subject Program"), N_("Subject program"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaSubjectProgramStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaSubjectProgramStd)), TagInfo(0x0023, "FlashExposureComp", N_("Flash Exposure Compensation"), N_("Flash exposure compensation in EV"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaFlashExposureCompStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaFlashExposureCompStd), TagInfo(0x0024, "ISOSetting", N_("ISO Settings"), N_("ISO setting"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaISOSettingStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaISOSettingStd)), TagInfo(0x0025, "MinoltaModel", N_("Minolta Model"), N_("Minolta model"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaModelStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaModelStd)), TagInfo(0x0026, "IntervalMode", N_("Interval Mode"), N_("Interval mode"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaIntervalModeStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaIntervalModeStd)), TagInfo(0x0027, "FolderName", N_("Folder Name"), N_("Folder name"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFolderNameStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFolderNameStd)), TagInfo(0x0028, "ColorMode", N_("ColorMode"), N_("ColorMode"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaColorModeStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaColorModeStd)), TagInfo(0x0029, "ColorFilter", N_("Color Filter"), N_("Color filter"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x002A, "BWFilter", N_("Black and White Filter"), N_("Black and white filter"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x002B, "Internal Flash", N_("Internal Flash"), N_("Internal Flash"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashFired)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashFired)), TagInfo(0x002C, "Brightness", N_("Brightness"), N_("Brightness"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printMinoltaBrightnessStd), + minoltaCsNewId, makerTags, unsignedLong, 1, printMinoltaBrightnessStd), TagInfo(0x002D, "SpotFocusPointX", N_("Spot Focus Point X"), N_("Spot focus point X"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x002E, "SpotFocusPointY", N_("Spot Focus Point Y"), N_("Spot focus point Y"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue), + minoltaCsNewId, makerTags, unsignedLong, 1, printValue), TagInfo(0x002F, "WideFocusZone", N_("Wide Focus Zone"), N_("Wide focus zone"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaWideFocusZoneStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaWideFocusZoneStd)), TagInfo(0x0030, "FocusMode", N_("Focus Mode"), N_("Focus mode"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFocusModeStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFocusModeStd)), TagInfo(0x0031, "FocusArea", N_("Focus area"), N_("Focus area"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFocusAreaStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFocusAreaStd)), TagInfo(0x0032, "DECPosition", N_("DEC Switch Position"), N_("DEC switch position"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaDECPositionStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaDECPositionStd)), TagInfo(0x0033, "ColorProfile", N_("Color Profile"), N_("Color profile"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaColorProfileStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaColorProfileStd)), TagInfo(0x0034, "DataImprint", N_("Data Imprint"), N_("Data Imprint"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaDataImprintStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaDataImprintStd)), TagInfo(0x003F, "FlashMetering", N_("Flash Metering"), N_("Flash metering"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashMeteringStd)), + minoltaCsNewId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashMeteringStd)), // End of list marker TagInfo(0xffff, "(UnknownMinoltaCsStdTag)", "(UnknownMinoltaCsStdTag)", N_("Unknown Minolta Camera Settings tag"), - minoltaCsNewIfdId, makerTags, unsignedLong, 1, printValue) + minoltaCsNewId, makerTags, unsignedLong, 1, printValue) }; const TagInfo* MinoltaMakerNote::tagListCsStd() @@ -738,87 +738,87 @@ namespace Exiv2 { const TagInfo MinoltaMakerNote::tagInfoCs7D_[] = { TagInfo(0x0000, "ExposureMode", N_("Exposure Mode"), N_("Exposure mode"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaExposureMode7D)), + minoltaCs7DId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaExposureMode7D)), TagInfo(0x0002, "ImageSize", N_("Image Size"), N_("Image size"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaImageSize7D)), + minoltaCs7DId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaImageSize7D)), TagInfo(0x0003, "Quality", N_("Image Quality"), N_("Image quality"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaImageQuality7D)), + minoltaCs7DId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaImageQuality7D)), TagInfo(0x0004, "WhiteBalance", N_("White Balance"), N_("White balance"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaWhiteBalance7D)), + minoltaCs7DId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaWhiteBalance7D)), TagInfo(0x000E, "FocusMode", N_("Focus Mode"), N_("Focus mode"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaFocusMode7D)), + minoltaCs7DId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaFocusMode7D)), TagInfo(0x0010, "AFPoints", N_("AF Points"), N_("AF points"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaAFPoints7D)), + minoltaCs7DId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaAFPoints7D)), TagInfo(0x0015, "FlashFired", N_("Flash Fired"), N_("Flash fired"), - minoltaCs7DIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashFired)), + minoltaCs7DId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(minoltaFlashFired)), TagInfo(0x0016, "FlashMode", N_("Flash Mode"), N_("Flash mode"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x001C, "ISOSpeed", N_("ISO Speed Mode"), N_("ISO speed setting"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaISOSetting7D)), + minoltaCs7DId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaISOSetting7D)), TagInfo(0x001E, "ExposureCompensation", N_("Exposure Compensation"), N_("Exposure compensation"), - minoltaCs7DIfdId, makerTags, signedShort, 1, printValue), + minoltaCs7DId, makerTags, signedShort, 1, printValue), TagInfo(0x0025, "ColorSpace", N_("Color Space"), N_("Color space"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaColorSpace7D)), + minoltaCs7DId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaColorSpace7D)), TagInfo(0x0026, "Sharpness", N_("Sharpness"), N_("Sharpness"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x0027, "Contrast", N_("Contrast"), N_("Contrast"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x0028, "Saturation", N_("Saturation"), N_("Saturation"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x002D, "FreeMemoryCardImages", N_("Free Memory Card Images"), N_("Free memory card images"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x003F, "ColorTemperature", N_("Color Temperature"), N_("Color temperature"), - minoltaCs7DIfdId, makerTags, signedShort, 1, printValue), + minoltaCs7DId, makerTags, signedShort, 1, printValue), TagInfo(0x0040, "Hue", N_("Hue"), N_("Hue"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x0046, "Rotation", N_("Rotation"), N_("Rotation"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaRotation7D)), + minoltaCs7DId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaRotation7D)), TagInfo(0x0047, "FNumber", N_("FNumber"), N_("The F-Number"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x0048, "ExposureTime", N_("Exposure Time"), N_("Exposure time"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), // 0x004A is a dupplicate than 0x002D. TagInfo(0x004A, "FreeMemoryCardImages", N_("Free Memory Card Images"), N_("Free memory card images"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x005E, "ImageNumber", N_("Image Number"), N_("Image number"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x0060, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), // 0x0062 is a dupplicate than 0x005E. TagInfo(0x0062, "ImageNumber", N_("Image Number"), N_("Image number"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printValue), TagInfo(0x0071, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), TagInfo(0x0075, "ZoneMatchingOn", N_("Zone Matching On"), N_("Zone matching on"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + minoltaCs7DId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), // End of list marker TagInfo(0xffff, "(UnknownMinoltaCs7DTag)", "(UnknownMinoltaCs7DTag)", N_("Unknown Minolta Camera Settings 7D tag"), - minoltaCs7DIfdId, makerTags, unsignedShort, 1, printValue) + minoltaCs7DId, makerTags, unsignedShort, 1, printValue) }; const TagInfo* MinoltaMakerNote::tagListCs7D() @@ -981,94 +981,94 @@ namespace Exiv2 { const TagInfo MinoltaMakerNote::tagInfoCs5D_[] = { TagInfo(0x000A, "ExposureMode", N_("Exposure Mode"), N_("Exposure mode"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaExposureMode5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaExposureMode5D)), TagInfo(0x000C, "ImageSize", N_("Image Size"), N_("Image size"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaImageSize5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaImageSize5D)), TagInfo(0x000D, "Quality", N_("Image Quality"), N_("Image quality"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaImageQuality5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaImageQuality5D)), TagInfo(0x000E, "WhiteBalance", N_("White Balance"), N_("White balance"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaWhiteBalance5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaWhiteBalance5D)), TagInfo(0x001A, "FocusPosition", N_("Focus Position"), N_("Focus position"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaFocusPosition5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaFocusPosition5D)), TagInfo(0x001B, "FocusArea", N_("Focus Area"), N_("Focus area"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaFocusArea5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaFocusArea5D)), TagInfo(0x001F, "FlashFired", N_("Flash Fired"), N_("Flash fired"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaFlashFired)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaFlashFired)), TagInfo(0x0025, "MeteringMode", N_("Metering Mode"), N_("Metering mode"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaMeteringMode5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaMeteringMode5D)), TagInfo(0x0026, "ISOSpeed", N_("ISO Speed Mode"), N_("ISO speed setting"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaISOSetting5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaISOSetting5D)), TagInfo(0x002F, "ColorSpace", N_("Color Space"), N_("Color space"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaColorSpace5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaColorSpace5D)), TagInfo(0x0030, "Sharpness", N_("Sharpness"), N_("Sharpness"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0031, "Contrast", N_("Contrast"), N_("Contrast"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0032, "Saturation", N_("Saturation"), N_("Saturation"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0035, "ExposureTime", N_("Exposure Time"), N_("Exposure time"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0036, "FNumber", N_("FNumber"), N_("The F-Number"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0037, "FreeMemoryCardImages", N_("Free Memory Card Images"), N_("Free memory card images"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0038, "ExposureRevision", N_("Exposure Revision"), N_("Exposure revision"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0048, "FocusMode", N_("Focus Mode"), N_("Focus mode"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaFocusModeStd)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaFocusModeStd)), TagInfo(0x0049, "ColorTemperature", N_("Color Temperature"), N_("Color temperature"), - minoltaCs5DIfdId, makerTags, signedShort, -1, printValue), + minoltaCs5DId, makerTags, signedShort, -1, printValue), TagInfo(0x0050, "Rotation", N_("Rotation"), N_("Rotation"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaRotation5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaRotation5D)), TagInfo(0x0053, "ExposureCompensation", N_("Exposure Compensation"), N_("Exposure compensation"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printMinoltaExposureCompensation5D), + minoltaCs5DId, makerTags, unsignedShort, -1, printMinoltaExposureCompensation5D), TagInfo(0x0054, "FreeMemoryCardImages", N_("Free Memory Card Images"), N_("Free memory card images"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0065, "Rotation2", N_("Rotation2"), N_("Rotation2"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printMinoltaSonyRotation), + minoltaCs5DId, makerTags, unsignedShort, -1, printMinoltaSonyRotation), TagInfo(0x006E, "Color Temperature", N_("Color Temperature"), N_("Color Temperature"), - minoltaCs5DIfdId, makerTags, signedShort, -1, printValue), + minoltaCs5DId, makerTags, signedShort, -1, printValue), TagInfo(0x0071, "PictureFinish", N_("Picture Finish"), N_("Picture Finish"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaPictureFinish5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaPictureFinish5D)), TagInfo(0x0091, "ExposureManualBias", N_("Exposure Manual Bias"), N_("Exposure manual bias"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printMinoltaExposureManualBias5D), + minoltaCs5DId, makerTags, unsignedShort, -1, printMinoltaExposureManualBias5D), TagInfo(0x009E, "AFMode", N_("AF Mode"), N_("AF mode"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaAFMode5D)), + minoltaCs5DId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(minoltaAFMode5D)), TagInfo(0x00AE, "ImageNumber", N_("Image Number"), N_("Image number"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printValue), TagInfo(0x00B0, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printMinoltaSonyBoolValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printMinoltaSonyBoolValue), TagInfo(0x00BD, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), - minoltaCs5DIfdId, makerTags, unsignedShort, -1, printMinoltaSonyBoolValue), + minoltaCs5DId, makerTags, unsignedShort, -1, printMinoltaSonyBoolValue), // From Xavier Raynaud: some notes on missing tags. // 0x0051 seems to be identical to FNumber (0x0036). An approx. relation between Tag value @@ -1079,7 +1079,7 @@ namespace Exiv2 { // End of list marker TagInfo(0xFFFF, "(UnknownMinoltaCs5DTag)", "(UnknownMinoltaCs5DTag)", N_("Unknown Minolta Camera Settings 5D tag"), - minoltaCs5DIfdId, makerTags, invalidTypeId, -1, printValue) + minoltaCs5DId, makerTags, invalidTypeId, -1, printValue) }; const TagInfo* MinoltaMakerNote::tagListCs5D() @@ -1349,242 +1349,242 @@ namespace Exiv2 { const TagInfo MinoltaMakerNote::tagInfoCsA100_[] = { TagInfo(0x0000, "ExposureMode", N_("Exposure Mode"), N_("Exposure mode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaExposureMode5D)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaExposureMode5D)), TagInfo(0x0001, "ExposureCompensationSetting", N_("Exposure Compensation Setting"), N_("Exposure compensation setting"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0005, "HighSpeedSync", N_("High Speed Sync"), N_("High speed sync"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), TagInfo(0x0006, "ManualExposureTime", N_("Manual Exposure Time"), N_("Manual exposure time"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0007, "ManualFNumber", N_("Manual FNumber"), N_("Manual FNumber"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0008, "ExposureTime", N_("Exposure Time"), N_("Exposure time"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0009, "FNumber", N_("FNumber"), N_("FNumber"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x000A, "DriveMode2", N_("Drive Mode 2"), N_("Drive mode 2"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyDriveMode2A100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyDriveMode2A100)), TagInfo(0x000B, "WhiteBalance", N_("White Balance"), N_("White balance"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaWhiteBalance5D)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaWhiteBalance5D)), TagInfo(0x000C, "FocusMode", N_("Focus Mode"), N_("Focus mode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFocusModeA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFocusModeA100)), TagInfo(0x000D, "LocalAFAreaPoint", N_("Local AF Area Point"), N_("Local AF Area Point"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyLocalAFAreaPoint), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyLocalAFAreaPoint), TagInfo(0x000E, "AFAreaMode", N_("AF Area Mode"), N_("AF Area Mode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyAFAreaMode), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyAFAreaMode), TagInfo(0x000F, "FlashMode", N_("FlashMode"), N_("FlashMode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashModeA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashModeA100)), TagInfo(0x0010, "FlashExposureCompSetting", N_("Flash Exposure Comp Setting"), N_("Flash exposure compensation setting"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0012, "MeteringMode", N_("Metering Mode"), N_("Metering mode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMeteringModeA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMeteringModeA100)), TagInfo(0x0013, "ISOSetting", N_("ISO Setting"), N_("ISO setting"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0014, "ZoneMatchingMode", N_("Zone Matching Mode"), N_("Zone Matching Mode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyZoneMatchingModeA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyZoneMatchingModeA100)), TagInfo(0x0015, "DynamicRangeOptimizerMode", N_("Dynamic Range Optimizer Mode"), N_("Dynamic range optimizer mode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyDynamicRangeOptimizerMode), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyDynamicRangeOptimizerMode), TagInfo(0x0016, "ColorMode", N_("Color Mode"), N_("Color mode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyColorMode), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyColorMode), TagInfo(0x0017, "ColorSpace", N_("Color Space"), N_("Color space"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyColorSpaceA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyColorSpaceA100)), TagInfo(0x0018, "Sharpness", N_("Sharpness"), N_("Sharpness"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0019, "Contrast", N_("Contrast"), N_("Contrast"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x001A, "Saturation", N_("Saturation"), N_("Saturation"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x001C, "FlashMetering", N_("Flash Metering"), N_("Flash metering"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaFlashMeteringStd)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(minoltaFlashMeteringStd)), TagInfo(0x001D, "PrioritySetupShutterRelease", N_("Priority Setup Shutter Release"), N_("Priority Setup Shutter Release"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyPrioritySetupShutterRelease), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyPrioritySetupShutterRelease), TagInfo(0x001E, "DriveMode", N_("Drive Mode"), N_("Drive mode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyDriveModeA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyDriveModeA100)), TagInfo(0x001F, "SelfTimerTime", N_("Self Timer Time"), N_("Self timer time"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonySelfTimerTimeA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonySelfTimerTimeA100)), TagInfo(0x0020, "ContinuousBracketing", N_("Continuous Bracketing"), N_("Continuous bracketing"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyContinuousBracketingA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyContinuousBracketingA100)), TagInfo(0x0021, "SingleFrameBracketing", N_("Single Frame Bracketing"), N_("Single frame bracketing"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonySingleFrameBracketingA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonySingleFrameBracketingA100)), TagInfo(0x0022, "WhiteBalanceBracketing", N_("White Balance Bracketing"), N_("White balance bracketing"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyWhiteBalanceBracketingA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyWhiteBalanceBracketingA100)), TagInfo(0x0023, "WhiteBalanceSetting", N_("White Balance Setting"), N_("White balance setting"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyWhiteBalanceSettingA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyWhiteBalanceSettingA100)), TagInfo(0x0024, "PresetWhiteBalance", N_("Preset White Balance"), N_("Preset white balance"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyPresetWhiteBalanceA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyPresetWhiteBalanceA100)), TagInfo(0x0025, "ColorTemperatureSetting", N_("Color Temperature Setting"), N_("Color temperature setting"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyColorTemperatureSettingA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyColorTemperatureSettingA100)), TagInfo(0x0026, "CustomWBSetting", N_("Custom WB Setting"), N_("Custom WB setting"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCustomWBSettingA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCustomWBSettingA100)), TagInfo(0x0027, "DynamicRangeOptimizerSettings", N_("Dynamic Range Optimizer Settings"), N_("Dynamic Range Optimizer Settings"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyDynamicRangeOptimizerMode), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyDynamicRangeOptimizerMode), TagInfo(0x0032, "FreeMemoryCardImages", N_("Free Memory Card Images"), N_("Free memory card images"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0034, "CustomWBRedLevel", N_("Custom WB Red Level"), N_("Custom WB red level"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0035, "CustomWBGreenLevel", N_("Custom WB Green Level"), N_("Custom WB green level"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0036, "CustomWBBlueLevel", N_("Custom WB Blue Level"), N_("CustomWB blue level"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0037, "CustomWBError", N_("Custom WB Error"), N_("Custom WB Error"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCustomWBErrorA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCustomWBErrorA100)), TagInfo(0x0038, "WhiteBalanceFineTune", N_("White Balance Fine Tune"), N_("White balance fine tune"), - sony1MltCsA100IfdId, makerTags, signedShort, 1, printValue), + sony1MltCsA100Id, makerTags, signedShort, 1, printValue), TagInfo(0x0039, "ColorTemperature", N_("Color Temperature"), N_("Color temperature"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x003A, "ColorCompensationFilter", N_("Color Compensation Filter"), N_("Color compensation filter"), - sony1MltCsA100IfdId, makerTags, signedShort, 1, printValue), + sony1MltCsA100Id, makerTags, signedShort, 1, printValue), TagInfo(0x003B, "SonyImageSize", N_("Sony Image Size"), N_("Sony Image Size"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyImageSizeA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyImageSizeA100)), TagInfo(0x003C, "Quality", N_("Quality"), N_("Quality"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyQualityCs), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyQualityCs), TagInfo(0x003D, "InstantPlaybackTime", N_("Instant Playback Time"), N_("Instant playback time"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x003E, "InstantPlaybackSetup", N_("Instant Playback Setup"), N_("Instant playback setup"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyInstantPlaybackSetupA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyInstantPlaybackSetupA100)), TagInfo(0x003F, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), TagInfo(0x0040, "EyeStartAF", N_("Eye Start AF"), N_("Eye start AF"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), TagInfo(0x0041, "RedEyeReduction", N_("Red Eye Reduction"), N_("Red eye reduction"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), TagInfo(0x0042, "FlashDefault", N_("Flash Default"), N_("Flash default"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashDefaultA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashDefaultA100)), TagInfo(0x0043, "AutoBracketOrder", N_("Auto Bracket Order"), N_("Auto bracket order"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAutoBracketOrderA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAutoBracketOrderA100)), TagInfo(0x0044, "FocusHoldButton", N_("Focus Hold Button"), N_("Focus hold button"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFocusHoldButtonA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFocusHoldButtonA100)), TagInfo(0x0045, "AELButton", N_("AEL Button"), N_("AEL button"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAELButtonA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAELButtonA100)), TagInfo(0x0046, "ControlDialSet", N_("Control Dial Set"), N_("Control dial set"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyControlDialSetA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyControlDialSetA100)), TagInfo(0x0047, "ExposureCompensationMode", N_("Exposure Compensation Mode"), N_("Exposure compensation mode"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureCompensationModeA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureCompensationModeA100)), TagInfo(0x0048, "AFAssist", N_("AF Assist"), N_("AF assist"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), TagInfo(0x0049, "CardShutterLock", N_("Card Shutter Lock"), N_("Card shutter lock"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), TagInfo(0x004A, "LensShutterLock", N_("Lens Shutter Lock"), N_("Lens shutter lock"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), TagInfo(0x004B, "AFAreaIllumination", N_("AF Area Illumination"), N_("AF area illumination"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAFAreaIlluminationA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAFAreaIlluminationA100)), TagInfo(0x004C, "MonitorDisplayOff", N_("Monitor Display Off"), N_("Monitor display off"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMonitorDisplayOffA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMonitorDisplayOffA100)), TagInfo(0x004D, "RecordDisplay", N_("Record Display"), N_("Record display"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyRecordDisplayA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyRecordDisplayA100)), TagInfo(0x004E, "PlayDisplay", N_("Play Display"), N_("Play display"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyPlayDisplayA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyPlayDisplayA100)), TagInfo(0x0050, "ExposureIndicator", N_("Exposure Indicator"), N_("Exposure indicator"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), TagInfo(0x0051, "AELExposureIndicator", N_("AEL Exposure Indicator"), N_("AEL exposure indicator (also indicates exposure for next shot when bracketing)"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), TagInfo(0x0052, "ExposureBracketingIndicatorLast", N_("Exposure Bracketing Indicator Last"), N_("Exposure bracketing indicator last (indicator for last shot when bracketing)"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), TagInfo(0x0053, "MeteringOffScaleIndicator", N_("Metering Off Scale Indicator"), N_("Metering off scale indicator (two flashing triangles when under or over metering scale)"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMeteringOffScaleIndicatorA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMeteringOffScaleIndicatorA100)), TagInfo(0x0054, "FlashExposureIndicator", N_("Flash Exposure Indicator"), N_("Flash exposure indicator"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), TagInfo(0x0055, "FlashExposureIndicatorNext", N_("Flash Exposure Indicator Next"), N_("Flash exposure indicator next (indicator for next shot when bracketing)"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), TagInfo(0x0056, "FlashExposureIndicatorLast", N_("Flash Exposure Indicator Last"), N_("Flash exposure indicator last (indicator for last shot when bracketing)"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureIndicatorA100)), TagInfo(0x0057, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), TagInfo(0x0058, "FocusModeSwitch", N_("Focus Mode Switch"), N_("Focus mode switch"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFocusModeSwitchA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFocusModeSwitchA100)), TagInfo(0x0059, "FlashType", N_("Flash Type"), N_("Flash type"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashTypeA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashTypeA100)), TagInfo(0x005A, "Rotation", N_("Rotation"), N_("Rotation"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyRotation), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyRotation), TagInfo(0x004B, "AELock", N_("AE Lock"), N_("AE lock"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + sony1MltCsA100Id, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), TagInfo(0x005E, "ColorTemperature", N_("Color Temperature"), N_("Color temperature"), - sony1MltCsA100IfdId, makerTags, unsignedLong, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedLong, 1, printValue), TagInfo(0x005F, "ColorCompensationFilter", N_("Color Compensation Filter"), N_("Color compensation filter: negative is green, positive is magenta"), - sony1MltCsA100IfdId, makerTags, unsignedLong, 1, printValue), + sony1MltCsA100Id, makerTags, unsignedLong, 1, printValue), TagInfo(0x0060, "BatteryLevel", N_("Battery Level"), N_("Battery level"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyBatteryLevelA100)), + sony1MltCsA100Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyBatteryLevelA100)), // End of list marker TagInfo(0xffff, "(UnknownSonyCsA100Tag)", "(UnknownSonyCsA100Tag)", N_("Unknown Sony Camera Settings A100 tag"), - sony1MltCsA100IfdId, makerTags, unsignedShort, 1, printValue) + sony1MltCsA100Id, makerTags, unsignedShort, 1, printValue) }; const TagInfo* MinoltaMakerNote::tagListCsA100() diff --git a/src/nikonmn.cpp b/src/nikonmn.cpp index af62b4b0..e0224c93 100644 --- a/src/nikonmn.cpp +++ b/src/nikonmn.cpp @@ -212,56 +212,56 @@ namespace Exiv2 { const TagInfo Nikon1MakerNote::tagInfo_[] = { TagInfo(0x0001, "Version", N_("Version"), N_("Nikon Makernote version"), - nikon1IfdId, makerTags, undefined, -1, printValue), + nikon1Id, makerTags, undefined, -1, printValue), TagInfo(0x0002, "ISOSpeed", N_("ISO Speed"), N_("ISO speed setting"), - nikon1IfdId, makerTags, unsignedShort, -1, print0x0002), + nikon1Id, makerTags, unsignedShort, -1, print0x0002), TagInfo(0x0003, "ColorMode", N_("Color Mode"), N_("Color mode"), - nikon1IfdId, makerTags, asciiString, -1, printValue), + nikon1Id, makerTags, asciiString, -1, printValue), TagInfo(0x0004, "Quality", N_("Quality"), N_("Image quality setting"), - nikon1IfdId, makerTags, asciiString, -1, printValue), + nikon1Id, makerTags, asciiString, -1, printValue), TagInfo(0x0005, "WhiteBalance", N_("White Balance"), N_("White balance"), - nikon1IfdId, makerTags, asciiString, -1, printValue), + nikon1Id, makerTags, asciiString, -1, printValue), TagInfo(0x0006, "Sharpening", N_("Sharpening"), N_("Image sharpening setting"), - nikon1IfdId, makerTags, asciiString, -1, printValue), + nikon1Id, makerTags, asciiString, -1, printValue), TagInfo(0x0007, "Focus", N_("Focus"), N_("Focus mode"), - nikon1IfdId, makerTags, asciiString, -1, print0x0007), + nikon1Id, makerTags, asciiString, -1, print0x0007), TagInfo(0x0008, "FlashSetting", N_("Flash Setting"), N_("Flash setting"), - nikon1IfdId, makerTags, asciiString, -1, printValue), + nikon1Id, makerTags, asciiString, -1, printValue), TagInfo(0x000a, "0x000a", "0x000a", N_("Unknown"), - nikon1IfdId, makerTags, unsignedRational, -1, printValue), + nikon1Id, makerTags, unsignedRational, -1, printValue), TagInfo(0x000f, "ISOSelection", N_("ISO Selection"), N_("ISO selection"), - nikon1IfdId, makerTags, asciiString, -1, printValue), + nikon1Id, makerTags, asciiString, -1, printValue), TagInfo(0x0010, "DataDump", N_("Data Dump"), N_("Data dump"), - nikon1IfdId, makerTags, undefined, -1, printValue), + nikon1Id, makerTags, undefined, -1, printValue), TagInfo(0x0080, "ImageAdjustment", N_("Image Adjustment"), N_("Image adjustment setting"), - nikon1IfdId, makerTags, asciiString, -1, printValue), + nikon1Id, makerTags, asciiString, -1, printValue), TagInfo(0x0082, "AuxiliaryLens", N_("Auxiliary Lens"), N_("Auxiliary lens (adapter)"), - nikon1IfdId, makerTags, asciiString, -1, printValue), + nikon1Id, makerTags, asciiString, -1, printValue), TagInfo(0x0085, "FocusDistance", N_("Focus Distance"), N_("Manual focus distance"), - nikon1IfdId, makerTags, unsignedRational, -1, print0x0085), + nikon1Id, makerTags, unsignedRational, -1, print0x0085), TagInfo(0x0086, "DigitalZoom", N_("Digital Zoom"), N_("Digital zoom setting"), - nikon1IfdId, makerTags, unsignedRational, -1, print0x0086), + nikon1Id, makerTags, unsignedRational, -1, print0x0086), TagInfo(0x0088, "AFFocusPos", N_("AF Focus Position"), N_("AF focus position information"), - nikon1IfdId, makerTags, undefined, -1, print0x0088), + nikon1Id, makerTags, undefined, -1, print0x0088), // End of list marker TagInfo(0xffff, "(UnknownNikon1MnTag)", "(UnknownNikon1MnTag)", N_("Unknown Nikon1MakerNote tag"), - nikon1IfdId, makerTags, asciiString, -1, printValue) + nikon1Id, makerTags, asciiString, -1, printValue) }; const TagInfo* Nikon1MakerNote::tagList() @@ -455,41 +455,41 @@ namespace Exiv2 { const TagInfo Nikon2MakerNote::tagInfo_[] = { TagInfo(0x0002, "0x0002", "0x0002", N_("Unknown"), - nikon2IfdId, makerTags, asciiString, -1, printValue), + nikon2Id, makerTags, asciiString, -1, printValue), TagInfo(0x0003, "Quality", N_("Quality"), N_("Image quality setting"), - nikon2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2Quality)), + nikon2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2Quality)), TagInfo(0x0004, "ColorMode", N_("Color Mode"), N_("Color mode"), - nikon2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2ColorMode)), + nikon2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2ColorMode)), TagInfo(0x0005, "ImageAdjustment", N_("Image Adjustment"), N_("Image adjustment setting"), - nikon2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2ImageAdjustment)), + nikon2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2ImageAdjustment)), TagInfo(0x0006, "ISOSpeed", N_("ISO Speed"), N_("ISO speed setting"), - nikon2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2IsoSpeed)), + nikon2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2IsoSpeed)), TagInfo(0x0007, "WhiteBalance", N_("White Balance"), N_("White balance"), - nikon2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2WhiteBalance)), + nikon2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikon2WhiteBalance)), TagInfo(0x0008, "Focus", N_("Focus Mode"), N_("Focus mode"), - nikon2IfdId, makerTags, unsignedRational, -1, printValue), + nikon2Id, makerTags, unsignedRational, -1, printValue), TagInfo(0x0009, "0x0009", "0x0009", N_("Unknown"), - nikon2IfdId, makerTags, asciiString, -1, printValue), + nikon2Id, makerTags, asciiString, -1, printValue), TagInfo(0x000a, "DigitalZoom", N_("Digital Zoom"), N_("Digital zoom setting"), - nikon2IfdId, makerTags, unsignedRational, -1, print0x000a), + nikon2Id, makerTags, unsignedRational, -1, print0x000a), TagInfo(0x000b, "AuxiliaryLens", N_("Auxiliary Lens"), N_("Auxiliary lens (adapter)"), - nikon2IfdId, makerTags, unsignedShort, -1, printValue), + nikon2Id, makerTags, unsignedShort, -1, printValue), TagInfo(0x0f00, "0x0f00", "0x0f00", N_("Unknown"), - nikon2IfdId, makerTags, unsignedLong, -1, printValue), + nikon2Id, makerTags, unsignedLong, -1, printValue), // End of list marker TagInfo(0xffff, "(UnknownNikon2MnTag)", "(UnknownNikon2MnTag)", N_("Unknown Nikon2MakerNote tag"), - nikon2IfdId, makerTags, asciiString, -1, printValue) + nikon2Id, makerTags, asciiString, -1, printValue) }; const TagInfo* Nikon2MakerNote::tagList() @@ -521,99 +521,99 @@ namespace Exiv2 { // Nikon3 MakerNote Tag Info const TagInfo Nikon3MakerNote::tagInfo_[] = { - TagInfo(0x0001, "Version", N_("Version"), N_("Nikon Makernote version"), nikon3IfdId, makerTags, undefined, -1, printExifVersion), - TagInfo(0x0002, "ISOSpeed", N_("ISO Speed"), N_("ISO speed setting"), nikon3IfdId, makerTags, unsignedShort, -1, print0x0002), - TagInfo(0x0003, "ColorMode", N_("Color Mode"), N_("Color mode"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0004, "Quality", N_("Quality"), N_("Image quality setting"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0005, "WhiteBalance", N_("White Balance"), N_("White balance"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0006, "Sharpening", N_("Sharpening"), N_("Image sharpening setting"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0007, "Focus", N_("Focus"), N_("Focus mode"), nikon3IfdId, makerTags, asciiString, -1, print0x0007), - TagInfo(0x0008, "FlashSetting", N_("Flash Setting"), N_("Flash setting"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0009, "FlashDevice", N_("Flash Device"), N_("Flash device"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x000a, "0x000a", "0x000a", N_("Unknown"), nikon3IfdId, makerTags, unsignedRational, -1, printValue), - TagInfo(0x000b, "WhiteBalanceBias", N_("White Balance Bias"), N_("White balance bias"), nikon3IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x000c, "WB_RBLevels", N_("WB RB Levels"), N_("WB RB levels"), nikon3IfdId, makerTags, unsignedRational, -1, printValue), - TagInfo(0x000d, "ProgramShift", N_("Program Shift"), N_("Program shift"), nikon3IfdId, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), - TagInfo(0x000e, "ExposureDiff", N_("Exposure Difference"), N_("Exposure difference"), nikon3IfdId, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), - TagInfo(0x000f, "ISOSelection", N_("ISO Selection"), N_("ISO selection"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0010, "DataDump", N_("Data Dump"), N_("Data dump"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0011, "Preview", N_("Pointer to a preview image"), N_("Offset to an IFD containing a preview image"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0012, "FlashComp", N_("Flash Comp"), N_("Flash compensation setting"), nikon3IfdId, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), - TagInfo(0x0013, "ISOSettings", N_("ISO Settings"), N_("ISO setting"), nikon3IfdId, makerTags, unsignedShort, -1, print0x0002), // use 0x0002 print fct - TagInfo(0x0016, "ImageBoundary", N_("Image Boundary"), N_("Image boundary"), nikon3IfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0017, "FlashExposureComp", "Flash Exposure Comp", N_("Flash exposure comp"), nikon3IfdId, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), - TagInfo(0x0018, "FlashBracketComp", N_("Flash Bracket Comp"), N_("Flash bracket compensation applied"), nikon3IfdId, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), // use 0x0012 print fct - TagInfo(0x0019, "ExposureBracketComp", N_("Exposure Bracket Comp"), N_("AE bracket compensation applied"), nikon3IfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x001a, "ImageProcessing", N_("Image Processing"), N_("Image processing"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x001b, "CropHiSpeed", N_("Crop High Speed"), N_("Crop high speed"), nikon3IfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x001c, "ExposureTuning", N_("Exposure Tuning"), N_("Exposure tuning"), nikon3IfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x001d, "SerialNumber", N_("Serial Number"), N_("Serial Number"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x001e, "ColorSpace", N_("Color Space"), N_("Color space"), nikon3IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonColorSpace)), - TagInfo(0x001f, "VRInfo", N_("VR Info"), N_("VR info"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0020, "ImageAuthentication", N_("Image Authentication"), N_("Image authentication"), nikon3IfdId, makerTags, unsignedByte, -1, EXV_PRINT_TAG(nikonOffOn)), - TagInfo(0x0022, "ActiveDLighting", N_("ActiveD-Lighting"), N_("ActiveD-lighting"), nikon3IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonActiveDLighning)), - TagInfo(0x0023, "PictureControl", N_("Picture Control"), N_(" Picture control"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0024, "WorldTime", N_("World Time"), N_("World time"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0025, "ISOInfo", N_("ISO Info"), N_("ISO info"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x002a, "VignetteControl", N_("Vignette Control"), N_("Vignette control"), nikon3IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonOlnh)), - TagInfo(0x0080, "ImageAdjustment", N_("Image Adjustment"), N_("Image adjustment setting"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0081, "ToneComp", N_("Tone Compensation"), N_("Tone compensation"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0082, "AuxiliaryLens", N_("Auxiliary Lens"), N_("Auxiliary lens (adapter)"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0083, "LensType", N_("Lens Type"), N_("Lens type"), nikon3IfdId, makerTags, unsignedByte, -1, print0x0083), - TagInfo(0x0084, "Lens", N_("Lens"), N_("Lens"), nikon3IfdId, makerTags, unsignedRational, -1, print0x0084), - TagInfo(0x0085, "FocusDistance", N_("Focus Distance"), N_("Manual focus distance"), nikon3IfdId, makerTags, unsignedRational, -1, print0x0085), - TagInfo(0x0086, "DigitalZoom", N_("Digital Zoom"), N_("Digital zoom setting"), nikon3IfdId, makerTags, unsignedRational, -1, print0x0086), - TagInfo(0x0087, "FlashMode", N_("Flash Mode"), N_("Mode of flash used"), nikon3IfdId, makerTags, unsignedByte, -1, EXV_PRINT_TAG(nikonFlashMode)), - TagInfo(0x0088, "AFInfo", N_("AF Info"), N_("AF info"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0089, "ShootingMode", N_("Shooting Mode"), N_("Shooting mode"), nikon3IfdId, makerTags, unsignedShort, -1, print0x0089), - TagInfo(0x008a, "AutoBracketRelease", N_("Auto Bracket Release"), N_("Auto bracket release"), nikon3IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonAutoBracketRelease)), - TagInfo(0x008b, "LensFStops", N_("Lens FStops"), N_("Lens FStops"), nikon3IfdId, makerTags, undefined, -1, print0x008b), - TagInfo(0x008c, "ContrastCurve", N_("Contrast Curve"), N_("Contrast curve"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x008d, "ColorHue", N_("Color Hue"), N_("Color hue"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x008f, "SceneMode", N_("Scene Mode"), N_("Scene mode"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0090, "LightSource", N_("Light Source"), N_("Light source"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0091, "ShotInfo", "Shot Info", N_("Shot info"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0092, "HueAdjustment", N_("Hue Adjustment"), N_("Hue adjustment"), nikon3IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0093, "NEFCompression", N_("NEF Compression"), N_("NEF compression"), nikon3IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonNefCompression)), - TagInfo(0x0094, "Saturation", N_("Saturation"), N_("Saturation"), nikon3IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0095, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0096, "LinearizationTable", N_("Linearization Table"), N_("Linearization table"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0097, "ColorBalance", N_("Color Balance"), N_("Color balance"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0098, "LensData", N_("Lens Data"), N_("Lens data settings"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0099, "RawImageCenter", N_("Raw Image Center"), N_("Raw image center"), nikon3IfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x009a, "SensorPixelSize", N_("Sensor Pixel Size"), N_("Sensor pixel size"), nikon3IfdId, makerTags, unsignedRational, -1, print0x009a), - TagInfo(0x009b, "0x009b", "0x009b", N_("Unknown"), nikon3IfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x009c, "SceneAssist", N_("Scene Assist"), N_("Scene assist"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x009e, "RetouchHistory", N_("Retouch History"), N_("Retouch history"), nikon3IfdId, makerTags, unsignedShort, -1, print0x009e), - TagInfo(0x009f, "0x009f", "0x009f", N_("Unknown"), nikon3IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x00a0, "SerialNO", N_("Serial NO"), N_("Camera serial number, usually starts with \"NO= \""), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x00a2, "ImageDataSize", N_("Image Data Size"), N_("Image data size"), nikon3IfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x00a3, "0x00a3", "0x00a3", N_("Unknown"), nikon3IfdId, makerTags, unsignedByte, -1, printValue), - TagInfo(0x00a5, "ImageCount", N_("Image Count"), N_("Image count"), nikon3IfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x00a6, "DeletedImageCount", N_("Deleted Image Count"), N_("Deleted image count"), nikon3IfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x00a7, "ShutterCount", N_("Shutter Count"), N_("Number of shots taken by camera"), nikon3IfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x00a8, "FlashInfo", "Flash Info", N_("Flash info"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x00a9, "ImageOptimization", N_("Image Optimization"), N_("Image optimization"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x00aa, "Saturation", N_("Saturation"), N_("Saturation"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x00ab, "VariProgram", N_("Program Variation"), N_("Program variation"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x00ac, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x00ad, "AFResponse", N_("AF Response"), N_("AF response"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x00b0, "MultiExposure", "Multi Exposure", N_("Multi exposure"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x00b1, "HighISONoiseReduction", N_("High ISO Noise Reduction"), N_("High ISO Noise Reduction"), nikon3IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonHighISONoiseReduction)), - TagInfo(0x00b3, "ToningEffect", "Toning Effect", N_("Toning effect"), nikon3IfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x00b7, "AFInfo2", "AF Info 2", N_("AF info 2"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x00b8, "FileInfo", "File Info", N_("File info"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0e00, "PrintIM", N_("Print IM"), N_("PrintIM information"), nikon3IfdId, makerTags, undefined, -1, printValue), + TagInfo(0x0001, "Version", N_("Version"), N_("Nikon Makernote version"), nikon3Id, makerTags, undefined, -1, printExifVersion), + TagInfo(0x0002, "ISOSpeed", N_("ISO Speed"), N_("ISO speed setting"), nikon3Id, makerTags, unsignedShort, -1, print0x0002), + TagInfo(0x0003, "ColorMode", N_("Color Mode"), N_("Color mode"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0004, "Quality", N_("Quality"), N_("Image quality setting"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0005, "WhiteBalance", N_("White Balance"), N_("White balance"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0006, "Sharpening", N_("Sharpening"), N_("Image sharpening setting"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0007, "Focus", N_("Focus"), N_("Focus mode"), nikon3Id, makerTags, asciiString, -1, print0x0007), + TagInfo(0x0008, "FlashSetting", N_("Flash Setting"), N_("Flash setting"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0009, "FlashDevice", N_("Flash Device"), N_("Flash device"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x000a, "0x000a", "0x000a", N_("Unknown"), nikon3Id, makerTags, unsignedRational, -1, printValue), + TagInfo(0x000b, "WhiteBalanceBias", N_("White Balance Bias"), N_("White balance bias"), nikon3Id, makerTags, signedShort, -1, printValue), + TagInfo(0x000c, "WB_RBLevels", N_("WB RB Levels"), N_("WB RB levels"), nikon3Id, makerTags, unsignedRational, -1, printValue), + TagInfo(0x000d, "ProgramShift", N_("Program Shift"), N_("Program shift"), nikon3Id, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), + TagInfo(0x000e, "ExposureDiff", N_("Exposure Difference"), N_("Exposure difference"), nikon3Id, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), + TagInfo(0x000f, "ISOSelection", N_("ISO Selection"), N_("ISO selection"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0010, "DataDump", N_("Data Dump"), N_("Data dump"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0011, "Preview", N_("Pointer to a preview image"), N_("Offset to an IFD containing a preview image"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0012, "FlashComp", N_("Flash Comp"), N_("Flash compensation setting"), nikon3Id, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), + TagInfo(0x0013, "ISOSettings", N_("ISO Settings"), N_("ISO setting"), nikon3Id, makerTags, unsignedShort, -1, print0x0002), // use 0x0002 print fct + TagInfo(0x0016, "ImageBoundary", N_("Image Boundary"), N_("Image boundary"), nikon3Id, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0017, "FlashExposureComp", "Flash Exposure Comp", N_("Flash exposure comp"), nikon3Id, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), + TagInfo(0x0018, "FlashBracketComp", N_("Flash Bracket Comp"), N_("Flash bracket compensation applied"), nikon3Id, makerTags, undefined, -1, EXV_PRINT_TAG(nikonFlashComp)), // use 0x0012 print fct + TagInfo(0x0019, "ExposureBracketComp", N_("Exposure Bracket Comp"), N_("AE bracket compensation applied"), nikon3Id, makerTags, signedRational, -1, printValue), + TagInfo(0x001a, "ImageProcessing", N_("Image Processing"), N_("Image processing"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x001b, "CropHiSpeed", N_("Crop High Speed"), N_("Crop high speed"), nikon3Id, makerTags, unsignedShort, -1, printValue), + TagInfo(0x001c, "ExposureTuning", N_("Exposure Tuning"), N_("Exposure tuning"), nikon3Id, makerTags, unsignedShort, -1, printValue), + TagInfo(0x001d, "SerialNumber", N_("Serial Number"), N_("Serial Number"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x001e, "ColorSpace", N_("Color Space"), N_("Color space"), nikon3Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonColorSpace)), + TagInfo(0x001f, "VRInfo", N_("VR Info"), N_("VR info"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0020, "ImageAuthentication", N_("Image Authentication"), N_("Image authentication"), nikon3Id, makerTags, unsignedByte, -1, EXV_PRINT_TAG(nikonOffOn)), + TagInfo(0x0022, "ActiveDLighting", N_("ActiveD-Lighting"), N_("ActiveD-lighting"), nikon3Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonActiveDLighning)), + TagInfo(0x0023, "PictureControl", N_("Picture Control"), N_(" Picture control"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0024, "WorldTime", N_("World Time"), N_("World time"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0025, "ISOInfo", N_("ISO Info"), N_("ISO info"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x002a, "VignetteControl", N_("Vignette Control"), N_("Vignette control"), nikon3Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonOlnh)), + TagInfo(0x0080, "ImageAdjustment", N_("Image Adjustment"), N_("Image adjustment setting"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0081, "ToneComp", N_("Tone Compensation"), N_("Tone compensation"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0082, "AuxiliaryLens", N_("Auxiliary Lens"), N_("Auxiliary lens (adapter)"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0083, "LensType", N_("Lens Type"), N_("Lens type"), nikon3Id, makerTags, unsignedByte, -1, print0x0083), + TagInfo(0x0084, "Lens", N_("Lens"), N_("Lens"), nikon3Id, makerTags, unsignedRational, -1, print0x0084), + TagInfo(0x0085, "FocusDistance", N_("Focus Distance"), N_("Manual focus distance"), nikon3Id, makerTags, unsignedRational, -1, print0x0085), + TagInfo(0x0086, "DigitalZoom", N_("Digital Zoom"), N_("Digital zoom setting"), nikon3Id, makerTags, unsignedRational, -1, print0x0086), + TagInfo(0x0087, "FlashMode", N_("Flash Mode"), N_("Mode of flash used"), nikon3Id, makerTags, unsignedByte, -1, EXV_PRINT_TAG(nikonFlashMode)), + TagInfo(0x0088, "AFInfo", N_("AF Info"), N_("AF info"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0089, "ShootingMode", N_("Shooting Mode"), N_("Shooting mode"), nikon3Id, makerTags, unsignedShort, -1, print0x0089), + TagInfo(0x008a, "AutoBracketRelease", N_("Auto Bracket Release"), N_("Auto bracket release"), nikon3Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonAutoBracketRelease)), + TagInfo(0x008b, "LensFStops", N_("Lens FStops"), N_("Lens FStops"), nikon3Id, makerTags, undefined, -1, print0x008b), + TagInfo(0x008c, "ContrastCurve", N_("Contrast Curve"), N_("Contrast curve"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x008d, "ColorHue", N_("Color Hue"), N_("Color hue"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x008f, "SceneMode", N_("Scene Mode"), N_("Scene mode"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0090, "LightSource", N_("Light Source"), N_("Light source"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0091, "ShotInfo", "Shot Info", N_("Shot info"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0092, "HueAdjustment", N_("Hue Adjustment"), N_("Hue adjustment"), nikon3Id, makerTags, signedShort, -1, printValue), + TagInfo(0x0093, "NEFCompression", N_("NEF Compression"), N_("NEF compression"), nikon3Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonNefCompression)), + TagInfo(0x0094, "Saturation", N_("Saturation"), N_("Saturation"), nikon3Id, makerTags, signedShort, -1, printValue), + TagInfo(0x0095, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x0096, "LinearizationTable", N_("Linearization Table"), N_("Linearization table"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0097, "ColorBalance", N_("Color Balance"), N_("Color balance"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0098, "LensData", N_("Lens Data"), N_("Lens data settings"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0099, "RawImageCenter", N_("Raw Image Center"), N_("Raw image center"), nikon3Id, makerTags, unsignedShort, -1, printValue), + TagInfo(0x009a, "SensorPixelSize", N_("Sensor Pixel Size"), N_("Sensor pixel size"), nikon3Id, makerTags, unsignedRational, -1, print0x009a), + TagInfo(0x009b, "0x009b", "0x009b", N_("Unknown"), nikon3Id, makerTags, unsignedShort, -1, printValue), + TagInfo(0x009c, "SceneAssist", N_("Scene Assist"), N_("Scene assist"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x009e, "RetouchHistory", N_("Retouch History"), N_("Retouch history"), nikon3Id, makerTags, unsignedShort, -1, print0x009e), + TagInfo(0x009f, "0x009f", "0x009f", N_("Unknown"), nikon3Id, makerTags, signedShort, -1, printValue), + TagInfo(0x00a0, "SerialNO", N_("Serial NO"), N_("Camera serial number, usually starts with \"NO= \""), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x00a2, "ImageDataSize", N_("Image Data Size"), N_("Image data size"), nikon3Id, makerTags, unsignedLong, -1, printValue), + TagInfo(0x00a3, "0x00a3", "0x00a3", N_("Unknown"), nikon3Id, makerTags, unsignedByte, -1, printValue), + TagInfo(0x00a5, "ImageCount", N_("Image Count"), N_("Image count"), nikon3Id, makerTags, unsignedLong, -1, printValue), + TagInfo(0x00a6, "DeletedImageCount", N_("Deleted Image Count"), N_("Deleted image count"), nikon3Id, makerTags, unsignedLong, -1, printValue), + TagInfo(0x00a7, "ShutterCount", N_("Shutter Count"), N_("Number of shots taken by camera"), nikon3Id, makerTags, unsignedLong, -1, printValue), + TagInfo(0x00a8, "FlashInfo", "Flash Info", N_("Flash info"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x00a9, "ImageOptimization", N_("Image Optimization"), N_("Image optimization"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x00aa, "Saturation", N_("Saturation"), N_("Saturation"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x00ab, "VariProgram", N_("Program Variation"), N_("Program variation"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x00ac, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x00ad, "AFResponse", N_("AF Response"), N_("AF response"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x00b0, "MultiExposure", "Multi Exposure", N_("Multi exposure"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x00b1, "HighISONoiseReduction", N_("High ISO Noise Reduction"), N_("High ISO Noise Reduction"), nikon3Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonHighISONoiseReduction)), + TagInfo(0x00b3, "ToningEffect", "Toning Effect", N_("Toning effect"), nikon3Id, makerTags, asciiString, -1, printValue), + TagInfo(0x00b7, "AFInfo2", "AF Info 2", N_("AF info 2"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x00b8, "FileInfo", "File Info", N_("File info"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0e00, "PrintIM", N_("Print IM"), N_("PrintIM information"), nikon3Id, makerTags, undefined, -1, printValue), // TODO: Add Capture Data decoding implementation. - TagInfo(0x0e01, "CaptureData", N_("Capture Data"), N_("Capture data"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0e09, "CaptureVersion", N_("Capture Version"), N_("Capture version"), nikon3IfdId, makerTags, asciiString, -1, printValue), + TagInfo(0x0e01, "CaptureData", N_("Capture Data"), N_("Capture data"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0e09, "CaptureVersion", N_("Capture Version"), N_("Capture version"), nikon3Id, makerTags, asciiString, -1, printValue), // TODO: Add Capture Offsets decoding implementation. - TagInfo(0x0e0e, "CaptureOffsets", N_("Capture Offsets"), N_("Capture offsets"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0e10, "ScanIFD", "Scan IFD", N_("Scan IFD"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0e1d, "ICCProfile", "ICC Profile", N_("ICC profile"), nikon3IfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0e1e, "CaptureOutput", "Capture Output", N_("Capture output"), nikon3IfdId, makerTags, undefined, -1, printValue), + TagInfo(0x0e0e, "CaptureOffsets", N_("Capture Offsets"), N_("Capture offsets"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0e10, "ScanIFD", "Scan IFD", N_("Scan IFD"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0e1d, "ICCProfile", "ICC Profile", N_("ICC profile"), nikon3Id, makerTags, undefined, -1, printValue), + TagInfo(0x0e1e, "CaptureOutput", "Capture Output", N_("Capture output"), nikon3Id, makerTags, undefined, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikon3MnTag)", "(UnknownNikon3MnTag)", N_("Unknown Nikon3MakerNote tag"), nikon3IfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownNikon3MnTag)", "(UnknownNikon3MnTag)", N_("Unknown Nikon3MakerNote tag"), nikon3Id, makerTags, asciiString, -1, printValue) }; const TagInfo* Nikon3MakerNote::tagList() @@ -642,10 +642,10 @@ namespace Exiv2 { // Nikon3 Vibration Reduction Tag Info const TagInfo Nikon3MakerNote::tagInfoVr_[] = { - TagInfo(0, "Version", N_("Version"), N_("Version"), nikonVrIfdId, makerTags, undefined, 4, printExifVersion), - TagInfo(4, "VibrationReduction", N_("Vibration Reduction"), N_("Vibration reduction"), nikonVrIfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOnOff)), + TagInfo(0, "Version", N_("Version"), N_("Version"), nikonVrId, makerTags, undefined, 4, printExifVersion), + TagInfo(4, "VibrationReduction", N_("Vibration Reduction"), N_("Vibration reduction"), nikonVrId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOnOff)), // End of list marker - TagInfo(0xffff, "(UnknownNikonVrTag)", "(UnknownNikonVrTag)", N_("Unknown Nikon Vibration Reduction Tag"), nikonVrIfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonVrTag)", "(UnknownNikonVrTag)", N_("Unknown Nikon Vibration Reduction Tag"), nikonVrId, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListVr() @@ -687,21 +687,21 @@ namespace Exiv2 { // Nikon3 Picture Control Tag Info const TagInfo Nikon3MakerNote::tagInfoPc_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonPcIfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 4, "Name", N_("Name"), N_("Name"), nikonPcIfdId, makerTags, asciiString, 20, printValue), - TagInfo(24, "Base", N_("Base"), N_("Base"), nikonPcIfdId, makerTags, asciiString, 20, printValue), - TagInfo(48, "Adjust", N_("Adjust"), N_("Adjust"), nikonPcIfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonAdjust)), - TagInfo(49, "QuickAdjust", N_("Quick Adjust"), N_("Quick adjust"), nikonPcIfdId, makerTags, unsignedByte, 1, printPictureControl), - TagInfo(50, "Sharpness", N_("Sharpness"), N_("Sharpness"), nikonPcIfdId, makerTags, unsignedByte, 1, printPictureControl), - TagInfo(51, "Contrast", N_("Contrast"), N_("Contrast"), nikonPcIfdId, makerTags, unsignedByte, 1, printPictureControl), - TagInfo(52, "Brightness", N_("Brightness"), N_("Brightness"), nikonPcIfdId, makerTags, unsignedByte, 1, printPictureControl), - TagInfo(53, "Saturation", N_("Saturation"), N_("Saturation"), nikonPcIfdId, makerTags, unsignedByte, 1, printPictureControl), - TagInfo(54, "HueAdjustment", N_("Hue Adjustment"), N_("Hue adjustment"), nikonPcIfdId, makerTags, unsignedByte, 1, printPictureControl), - TagInfo(55, "FilterEffect", N_("Filter Effect"), N_("Filter effect"), nikonPcIfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFilterEffect)), - TagInfo(56, "ToningEffect", N_("Toning Effect"), N_("Toning effect"), nikonPcIfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonToningEffect)), - TagInfo(57, "ToningSaturation", N_("Toning Saturation"), N_("Toning saturation"), nikonPcIfdId, makerTags, unsignedByte, 1, printPictureControl), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonPcId, makerTags, undefined, 4, printExifVersion), + TagInfo( 4, "Name", N_("Name"), N_("Name"), nikonPcId, makerTags, asciiString, 20, printValue), + TagInfo(24, "Base", N_("Base"), N_("Base"), nikonPcId, makerTags, asciiString, 20, printValue), + TagInfo(48, "Adjust", N_("Adjust"), N_("Adjust"), nikonPcId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonAdjust)), + TagInfo(49, "QuickAdjust", N_("Quick Adjust"), N_("Quick adjust"), nikonPcId, makerTags, unsignedByte, 1, printPictureControl), + TagInfo(50, "Sharpness", N_("Sharpness"), N_("Sharpness"), nikonPcId, makerTags, unsignedByte, 1, printPictureControl), + TagInfo(51, "Contrast", N_("Contrast"), N_("Contrast"), nikonPcId, makerTags, unsignedByte, 1, printPictureControl), + TagInfo(52, "Brightness", N_("Brightness"), N_("Brightness"), nikonPcId, makerTags, unsignedByte, 1, printPictureControl), + TagInfo(53, "Saturation", N_("Saturation"), N_("Saturation"), nikonPcId, makerTags, unsignedByte, 1, printPictureControl), + TagInfo(54, "HueAdjustment", N_("Hue Adjustment"), N_("Hue adjustment"), nikonPcId, makerTags, unsignedByte, 1, printPictureControl), + TagInfo(55, "FilterEffect", N_("Filter Effect"), N_("Filter effect"), nikonPcId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFilterEffect)), + TagInfo(56, "ToningEffect", N_("Toning Effect"), N_("Toning effect"), nikonPcId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonToningEffect)), + TagInfo(57, "ToningSaturation", N_("Toning Saturation"), N_("Toning saturation"), nikonPcId, makerTags, unsignedByte, 1, printPictureControl), // End of list marker - TagInfo(0xffff, "(UnknownNikonPcTag)", "(UnknownNikonPcTag)", N_("Unknown Nikon Picture Control Tag"), nikonPcIfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonPcTag)", "(UnknownNikonPcTag)", N_("Unknown Nikon Picture Control Tag"), nikonPcId, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListPc() @@ -711,11 +711,11 @@ namespace Exiv2 { // Nikon3 World Time Tag Info const TagInfo Nikon3MakerNote::tagInfoWt_[] = { - TagInfo(0, "Timezone", N_("Timezone"), N_("Timezone"), nikonWtIfdId, makerTags, signedShort, 1, printTimeZone), - TagInfo(2, "DaylightSavings", N_("Daylight Savings"), N_("Daylight savings"), nikonWtIfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonYesNo)), - TagInfo(3, "DateDisplayFormat", N_("Date Display Format"), N_("Date display format"), nikonWtIfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonDateDisplayFormat)), + TagInfo(0, "Timezone", N_("Timezone"), N_("Timezone"), nikonWtId, makerTags, signedShort, 1, printTimeZone), + TagInfo(2, "DaylightSavings", N_("Daylight Savings"), N_("Daylight savings"), nikonWtId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonYesNo)), + TagInfo(3, "DateDisplayFormat", N_("Date Display Format"), N_("Date display format"), nikonWtId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonDateDisplayFormat)), // End of list marker - TagInfo(0xffff, "(UnknownNikonWtTag)", "(UnknownNikonWtTag)", N_("Unknown Nikon World Time Tag"), nikonWtIfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonWtTag)", "(UnknownNikonWtTag)", N_("Unknown Nikon World Time Tag"), nikonWtId, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListWt() @@ -742,12 +742,12 @@ namespace Exiv2 { // Nikon3 ISO Info Tag Info const TagInfo Nikon3MakerNote::tagInfoIi_[] = { - TagInfo( 0, "ISO", N_("ISO"), N_("ISO"), nikonIiIfdId, makerTags, unsignedByte, 1, printIiIso), - TagInfo( 4, "ISOExpansion", N_("ISO Expansion"), N_("ISO expansion"), nikonIiIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonIsoExpansion)), - TagInfo( 6, "ISO2", N_("ISO 2"), N_("ISO 2"), nikonIiIfdId, makerTags, unsignedByte, 1, printIiIso), - TagInfo(10, "ISOExpansion2", N_("ISO Expansion 2"), N_("ISO expansion 2"), nikonIiIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonIsoExpansion)), + TagInfo( 0, "ISO", N_("ISO"), N_("ISO"), nikonIiId, makerTags, unsignedByte, 1, printIiIso), + TagInfo( 4, "ISOExpansion", N_("ISO Expansion"), N_("ISO expansion"), nikonIiId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonIsoExpansion)), + TagInfo( 6, "ISO2", N_("ISO 2"), N_("ISO 2"), nikonIiId, makerTags, unsignedByte, 1, printIiIso), + TagInfo(10, "ISOExpansion2", N_("ISO Expansion 2"), N_("ISO expansion 2"), nikonIiId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonIsoExpansion)), // End of list marker - TagInfo(0xffff, "(UnknownNikonIiTag)", "(UnknownNikonIiTag)", N_("Unknown Nikon Iso Info Tag"), nikonIiIfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonIiTag)", "(UnknownNikonIiTag)", N_("Unknown Nikon Iso Info Tag"), nikonIiId, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListIi() @@ -797,11 +797,11 @@ namespace Exiv2 { // Nikon3 Auto Focus Tag Info const TagInfo Nikon3MakerNote::tagInfoAf_[] = { - TagInfo( 0, "AFAreaMode", N_("AF Area Mode"), N_("AF area mode"), nikonAfIfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonAfAreaMode)), - TagInfo( 1, "AFPoint", N_("AF Point"), N_("AF point"), nikonAfIfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonAfPoint)), - TagInfo( 2, "AFPointsInFocus", N_("AF Points In Focus"), N_("AF points in focus"), nikonAfIfdId, makerTags, unsignedShort, 1, printAfPointsInFocus), + TagInfo( 0, "AFAreaMode", N_("AF Area Mode"), N_("AF area mode"), nikonAfId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonAfAreaMode)), + TagInfo( 1, "AFPoint", N_("AF Point"), N_("AF point"), nikonAfId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonAfPoint)), + TagInfo( 2, "AFPointsInFocus", N_("AF Points In Focus"), N_("AF points in focus"), nikonAfId, makerTags, unsignedShort, 1, printAfPointsInFocus), // End of list marker - TagInfo(0xffff, "(UnknownNikonAfTag)", "(UnknownNikonAfTag)", N_("Unknown Nikon Auto Focus Tag"), nikonAfIfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonAfTag)", "(UnknownNikonAfTag)", N_("Unknown Nikon Auto Focus Tag"), nikonAfId, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListAf() @@ -818,21 +818,21 @@ namespace Exiv2 { // Nikon3 Auto Focus Tag Info const TagInfo Nikon3MakerNote::tagInfoAf2_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonAf2IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 4, "ContrastDetectAF", N_("Contrast Detect AF"), N_("Contrast detect AF"), nikonAf2IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOffOn)), - TagInfo( 5, "AFAreaMode", N_("AF Area Mode"), N_("AF area mode"), nikonAf2IfdId, makerTags, unsignedByte, 1, printValue), - TagInfo( 6, "PhaseDetectAF", N_("Phase Detect AF"), N_("Phase detect AF"), nikonAf2IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonPhaseDetectAF)), - TagInfo( 7, "PrimaryAFPoint", N_("Primary AF Point"), N_("Primary AF point"), nikonAf2IfdId, makerTags, unsignedByte, 1, printValue), - TagInfo( 8, "AFPointsUsed", N_("AF Points Used"), N_("AF points used"), nikonAf2IfdId, makerTags, unsignedByte, 7, printValue), - TagInfo( 16, "AFImageWidth", N_("AF Image Width"), N_("AF image width"), nikonAf2IfdId, makerTags, unsignedShort, 1, printValue), - TagInfo( 18, "AFImageHeight", N_("AF Image Height"), N_("AF image height"), nikonAf2IfdId, makerTags, unsignedShort, 1, printValue), - TagInfo( 20, "AFAreaXPosition", N_("AF Area X Position"), N_("AF area x position"), nikonAf2IfdId, makerTags, unsignedShort, 1, printValue), - TagInfo( 22, "AFAreaYPosition", N_("AF Area Y Position"), N_("AF area y position"), nikonAf2IfdId, makerTags, unsignedShort, 1, printValue), - TagInfo( 24, "AFAreaWidth", N_("AF Area Width"), N_("AF area width"), nikonAf2IfdId, makerTags, unsignedShort, 1, printValue), - TagInfo( 26, "AFAreaHeight", N_("AF Area Height"), N_("AF area height"), nikonAf2IfdId, makerTags, unsignedShort, 1, printValue), - TagInfo( 28, "ContrastDetectAFInFocus", N_("Contrast Detect AF In Focus"), N_("Contrast detect AF in focus"), nikonAf2IfdId, makerTags, unsignedShort, 1, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonAf2Id, makerTags, undefined, 4, printExifVersion), + TagInfo( 4, "ContrastDetectAF", N_("Contrast Detect AF"), N_("Contrast detect AF"), nikonAf2Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOffOn)), + TagInfo( 5, "AFAreaMode", N_("AF Area Mode"), N_("AF area mode"), nikonAf2Id, makerTags, unsignedByte, 1, printValue), + TagInfo( 6, "PhaseDetectAF", N_("Phase Detect AF"), N_("Phase detect AF"), nikonAf2Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonPhaseDetectAF)), + TagInfo( 7, "PrimaryAFPoint", N_("Primary AF Point"), N_("Primary AF point"), nikonAf2Id, makerTags, unsignedByte, 1, printValue), + TagInfo( 8, "AFPointsUsed", N_("AF Points Used"), N_("AF points used"), nikonAf2Id, makerTags, unsignedByte, 7, printValue), + TagInfo( 16, "AFImageWidth", N_("AF Image Width"), N_("AF image width"), nikonAf2Id, makerTags, unsignedShort, 1, printValue), + TagInfo( 18, "AFImageHeight", N_("AF Image Height"), N_("AF image height"), nikonAf2Id, makerTags, unsignedShort, 1, printValue), + TagInfo( 20, "AFAreaXPosition", N_("AF Area X Position"), N_("AF area x position"), nikonAf2Id, makerTags, unsignedShort, 1, printValue), + TagInfo( 22, "AFAreaYPosition", N_("AF Area Y Position"), N_("AF area y position"), nikonAf2Id, makerTags, unsignedShort, 1, printValue), + TagInfo( 24, "AFAreaWidth", N_("AF Area Width"), N_("AF area width"), nikonAf2Id, makerTags, unsignedShort, 1, printValue), + TagInfo( 26, "AFAreaHeight", N_("AF Area Height"), N_("AF area height"), nikonAf2Id, makerTags, unsignedShort, 1, printValue), + TagInfo( 28, "ContrastDetectAFInFocus", N_("Contrast Detect AF In Focus"), N_("Contrast detect AF in focus"), nikonAf2Id, makerTags, unsignedShort, 1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonAf2Tag)", "(UnknownNikonAf2Tag)", N_("Unknown Nikon Auto Focus 2 Tag"), nikonAf2IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonAf2Tag)", "(UnknownNikonAf2Tag)", N_("Unknown Nikon Auto Focus 2 Tag"), nikonAf2Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListAf2() @@ -842,11 +842,11 @@ namespace Exiv2 { // Nikon3 File Info Tag Info const TagInfo Nikon3MakerNote::tagInfoFi_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonFiIfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 6, "DirectoryNumber", N_("Directory Number"), N_("Directory number"), nikonFiIfdId, makerTags, unsignedShort, 1, printValue), - TagInfo( 8, "FileNumber", N_("File Number"), N_("File number"), nikonFiIfdId, makerTags, unsignedShort, 1, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonFiId, makerTags, undefined, 4, printExifVersion), + TagInfo( 6, "DirectoryNumber", N_("Directory Number"), N_("Directory number"), nikonFiId, makerTags, unsignedShort, 1, printValue), + TagInfo( 8, "FileNumber", N_("File Number"), N_("File number"), nikonFiId, makerTags, unsignedShort, 1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonFiTag)", "(UnknownNikonFiTag)", N_("Unknown Nikon File Info Tag"), nikonFiIfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonFiTag)", "(UnknownNikonFiTag)", N_("Unknown Nikon File Info Tag"), nikonFiId, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListFi() @@ -863,12 +863,12 @@ namespace Exiv2 { // Nikon3 Multi Exposure Tag Info const TagInfo Nikon3MakerNote::tagInfoMe_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonMeIfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 4, "MultiExposureMode", N_("Multi Exposure Mode"), N_("Multi exposure mode"), nikonMeIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(nikonMultiExposureMode)), - TagInfo( 8, "MultiExposureShots", N_("Multi Exposure Shots"), N_("Multi exposure shots"), nikonMeIfdId, makerTags, unsignedLong, 1, printValue), - TagInfo( 12, "MultiExposureAutoGain", N_("Multi Exposure Auto Gain"), N_("Multi exposure auto gain"), nikonMeIfdId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(nikonOffOn)), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonMeId, makerTags, undefined, 4, printExifVersion), + TagInfo( 4, "MultiExposureMode", N_("Multi Exposure Mode"), N_("Multi exposure mode"), nikonMeId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(nikonMultiExposureMode)), + TagInfo( 8, "MultiExposureShots", N_("Multi Exposure Shots"), N_("Multi exposure shots"), nikonMeId, makerTags, unsignedLong, 1, printValue), + TagInfo( 12, "MultiExposureAutoGain", N_("Multi Exposure Auto Gain"), N_("Multi exposure auto gain"), nikonMeId, makerTags, unsignedLong, 1, EXV_PRINT_TAG(nikonOffOn)), // End of list marker - TagInfo(0xffff, "(UnknownNikonMeTag)", "(UnknownNikonMeTag)", N_("Unknown Nikon Multi Exposure Tag"), nikonMeIfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonMeTag)", "(UnknownNikonMeTag)", N_("Unknown Nikon Multi Exposure Tag"), nikonMeId, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListMe() @@ -975,19 +975,19 @@ namespace Exiv2 { // Nikon3 Flash Info 1 Tag Info const TagInfo Nikon3MakerNote::tagInfoFl1_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonFl1IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 4, "FlashSource", N_("Flash Source"), N_("Flash source"), nikonFl1IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashSource)), - TagInfo( 5, "0x0005", N_("0x0005"), N_("Unknown"), nikonFl1IfdId, makerTags, unsignedByte, 1, printValue), - TagInfo( 6, "ExternalFlashFirmware", N_("External Flash Firmware"), N_("External flash firmware"), nikonFl1IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonFlashFirmware)), - TagInfo( 8, "ExternalFlashFlags", N_("External Flash Flags"), N_("External flash flags"), nikonFl1IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonExternalFlashFlags)), - TagInfo( 11, "FlashFocalLength", N_("Flash Focal Length"), N_("Flash focal length"), nikonFl1IfdId, makerTags, unsignedByte, 1, printFlashFocalLength), - TagInfo( 12, "RepeatingFlashRate", N_("Repeating Flash Rate"), N_("Repeating flash rate"), nikonFl1IfdId, makerTags, unsignedByte, 1, printRepeatingFlashRate), - TagInfo( 13, "RepeatingFlashCount", N_("Repeating Flash Count"), N_("Repeating flash count"), nikonFl1IfdId, makerTags, unsignedByte, 1, printRepeatingFlashCount), - TagInfo( 14, "FlashGNDistance", N_("Flash GN Distance"), N_("Flash GN distance"), nikonFl1IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashGNDistance)), - TagInfo( 15, "FlashGroupAControlMode", N_("Flash Group A Control Mode"), N_("Flash group a control mode"), nikonFl1IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashControlMode)), - TagInfo( 16, "FlashGroupBControlMode", N_("Flash Group B Control Mode"), N_("Flash group b control mode"), nikonFl1IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashControlMode)), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonFl1Id, makerTags, undefined, 4, printExifVersion), + TagInfo( 4, "FlashSource", N_("Flash Source"), N_("Flash source"), nikonFl1Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashSource)), + TagInfo( 5, "0x0005", N_("0x0005"), N_("Unknown"), nikonFl1Id, makerTags, unsignedByte, 1, printValue), + TagInfo( 6, "ExternalFlashFirmware", N_("External Flash Firmware"), N_("External flash firmware"), nikonFl1Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonFlashFirmware)), + TagInfo( 8, "ExternalFlashFlags", N_("External Flash Flags"), N_("External flash flags"), nikonFl1Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonExternalFlashFlags)), + TagInfo( 11, "FlashFocalLength", N_("Flash Focal Length"), N_("Flash focal length"), nikonFl1Id, makerTags, unsignedByte, 1, printFlashFocalLength), + TagInfo( 12, "RepeatingFlashRate", N_("Repeating Flash Rate"), N_("Repeating flash rate"), nikonFl1Id, makerTags, unsignedByte, 1, printRepeatingFlashRate), + TagInfo( 13, "RepeatingFlashCount", N_("Repeating Flash Count"), N_("Repeating flash count"), nikonFl1Id, makerTags, unsignedByte, 1, printRepeatingFlashCount), + TagInfo( 14, "FlashGNDistance", N_("Flash GN Distance"), N_("Flash GN distance"), nikonFl1Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashGNDistance)), + TagInfo( 15, "FlashGroupAControlMode", N_("Flash Group A Control Mode"), N_("Flash group a control mode"), nikonFl1Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashControlMode)), + TagInfo( 16, "FlashGroupBControlMode", N_("Flash Group B Control Mode"), N_("Flash group b control mode"), nikonFl1Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashControlMode)), // End of list marker - TagInfo(0xffff, "(UnknownNikonMeTag)", "(UnknownNikonMeTag)", N_("Unknown Nikon Multi Exposure Tag"), nikonFl1IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonMeTag)", "(UnknownNikonMeTag)", N_("Unknown Nikon Multi Exposure Tag"), nikonFl1Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListFl1() @@ -997,17 +997,17 @@ namespace Exiv2 { // Nikon3 Flash Info 2 Tag Info const TagInfo Nikon3MakerNote::tagInfoFl2_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonFl2IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 4, "FlashSource", N_("Flash Source"), N_("Flash source"), nikonFl2IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashSource)), - TagInfo( 5, "0x0005", N_("0x0005"), N_("Unknown"), nikonFl2IfdId, makerTags, unsignedByte, 1, printValue), - TagInfo( 6, "ExternalFlashFirmware", N_("External Flash Firmware"), N_("External flash firmware"), nikonFl2IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonFlashFirmware)), - TagInfo( 8, "ExternalFlashFlags", N_("External Flash Flags"), N_("External flash flags"), nikonFl2IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonExternalFlashFlags)), - TagInfo( 12, "FlashFocalLength", N_("Flash Focal Length"), N_("Flash focal length"), nikonFl2IfdId, makerTags, unsignedByte, 1, printFlashFocalLength), - TagInfo( 13, "RepeatingFlashRate", N_("Repeating Flash Rate"), N_("Repeating flash rate"), nikonFl2IfdId, makerTags, unsignedByte, 1, printRepeatingFlashRate), - TagInfo( 14, "RepeatingFlashCount", N_("Repeating Flash Count"), N_("Repeating flash count"), nikonFl2IfdId, makerTags, unsignedByte, 1, printRepeatingFlashCount), - TagInfo( 15, "FlashGNDistance", N_("Flash GN Distance"), N_("Flash GN distance"), nikonFl2IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashGNDistance)), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonFl2Id, makerTags, undefined, 4, printExifVersion), + TagInfo( 4, "FlashSource", N_("Flash Source"), N_("Flash source"), nikonFl2Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashSource)), + TagInfo( 5, "0x0005", N_("0x0005"), N_("Unknown"), nikonFl2Id, makerTags, unsignedByte, 1, printValue), + TagInfo( 6, "ExternalFlashFirmware", N_("External Flash Firmware"), N_("External flash firmware"), nikonFl2Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonFlashFirmware)), + TagInfo( 8, "ExternalFlashFlags", N_("External Flash Flags"), N_("External flash flags"), nikonFl2Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonExternalFlashFlags)), + TagInfo( 12, "FlashFocalLength", N_("Flash Focal Length"), N_("Flash focal length"), nikonFl2Id, makerTags, unsignedByte, 1, printFlashFocalLength), + TagInfo( 13, "RepeatingFlashRate", N_("Repeating Flash Rate"), N_("Repeating flash rate"), nikonFl2Id, makerTags, unsignedByte, 1, printRepeatingFlashRate), + TagInfo( 14, "RepeatingFlashCount", N_("Repeating Flash Count"), N_("Repeating flash count"), nikonFl2Id, makerTags, unsignedByte, 1, printRepeatingFlashCount), + TagInfo( 15, "FlashGNDistance", N_("Flash GN Distance"), N_("Flash GN distance"), nikonFl2Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashGNDistance)), // End of list marker - TagInfo(0xffff, "(UnknownNikonMeTag)", "(UnknownNikonMeTag)", N_("Unknown Nikon Multi Exposure Tag"), nikonFl2IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonMeTag)", "(UnknownNikonMeTag)", N_("Unknown Nikon Multi Exposure Tag"), nikonFl2Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListFl2() @@ -1017,17 +1017,17 @@ namespace Exiv2 { // Nikon3 Flash Info 3 Tag Info const TagInfo Nikon3MakerNote::tagInfoFl3_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonFl3IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 4, "FlashSource", N_("Flash Source"), N_("Flash source"), nikonFl3IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashSource)), - TagInfo( 6, "ExternalFlashFirmware", N_("External Flash Firmware"), N_("External flash firmware"), nikonFl3IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonFlashFirmware)), - TagInfo( 8, "ExternalFlashFlags", N_("External Flash Flags"), N_("External flash flags"), nikonFl3IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonExternalFlashFlags)), - TagInfo( 12, "FlashFocalLength", N_("Flash Focal Length"), N_("Flash focal length"), nikonFl3IfdId, makerTags, unsignedByte, 1, printFlashFocalLength), - TagInfo( 13, "RepeatingFlashRate", N_("Repeating Flash Rate"), N_("Repeating flash rate"), nikonFl3IfdId, makerTags, unsignedByte, 1, printRepeatingFlashRate), - TagInfo( 14, "RepeatingFlashCount", N_("Repeating Flash Count"), N_("Repeating flash count"), nikonFl3IfdId, makerTags, unsignedByte, 1, printRepeatingFlashCount), - TagInfo( 15, "FlashGNDistance", N_("Flash GN Distance"), N_("Flash GN distance"), nikonFl3IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashGNDistance)), - TagInfo( 16, "FlashColorFilter", N_("Flash Color Filter"), N_("Flash color filter"), nikonFl3IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashColorFilter)), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonFl3Id, makerTags, undefined, 4, printExifVersion), + TagInfo( 4, "FlashSource", N_("Flash Source"), N_("Flash source"), nikonFl3Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashSource)), + TagInfo( 6, "ExternalFlashFirmware", N_("External Flash Firmware"), N_("External flash firmware"), nikonFl3Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonFlashFirmware)), + TagInfo( 8, "ExternalFlashFlags", N_("External Flash Flags"), N_("External flash flags"), nikonFl3Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonExternalFlashFlags)), + TagInfo( 12, "FlashFocalLength", N_("Flash Focal Length"), N_("Flash focal length"), nikonFl3Id, makerTags, unsignedByte, 1, printFlashFocalLength), + TagInfo( 13, "RepeatingFlashRate", N_("Repeating Flash Rate"), N_("Repeating flash rate"), nikonFl3Id, makerTags, unsignedByte, 1, printRepeatingFlashRate), + TagInfo( 14, "RepeatingFlashCount", N_("Repeating Flash Count"), N_("Repeating flash count"), nikonFl3Id, makerTags, unsignedByte, 1, printRepeatingFlashCount), + TagInfo( 15, "FlashGNDistance", N_("Flash GN Distance"), N_("Flash GN distance"), nikonFl3Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashGNDistance)), + TagInfo( 16, "FlashColorFilter", N_("Flash Color Filter"), N_("Flash color filter"), nikonFl3Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonFlashColorFilter)), // End of list marker - TagInfo(0xffff, "(UnknownNikonMeTag)", "(UnknownNikonMeTag)", N_("Unknown Nikon Multi Exposure Tag"), nikonFl3IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonMeTag)", "(UnknownNikonMeTag)", N_("Unknown Nikon Multi Exposure Tag"), nikonFl3Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListFl3() @@ -1037,10 +1037,10 @@ namespace Exiv2 { // Nikon3 Shot Info D80 Tag Info const TagInfo Nikon3MakerNote::tagInfoSi1_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi1IfdId, makerTags, unsignedByte, 4, printExifVersion), - TagInfo( 586, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi1IfdId, makerTags, unsignedLong, 1, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi1Id, makerTags, unsignedByte, 4, printExifVersion), + TagInfo( 586, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi1Id, makerTags, unsignedLong, 1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonSi1Tag)", "(UnknownNikonSi1Tag)", N_("Unknown Nikon Shot Info D80 Tag"), nikonSi1IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonSi1Tag)", "(UnknownNikonSi1Tag)", N_("Unknown Nikon Shot Info D80 Tag"), nikonSi1Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListSi1() @@ -1050,11 +1050,11 @@ namespace Exiv2 { // Nikon3 Shot Info D40 Tag Info const TagInfo Nikon3MakerNote::tagInfoSi2_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi2IfdId, makerTags, unsignedByte, 4, printExifVersion), - TagInfo( 582, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi2IfdId, makerTags, unsignedLong, 1, printValue), - TagInfo( 738, "FlashLevel", N_("Flash Level"), N_("Flash level"), nikonSi2IfdId, makerTags, unsignedByte, 1, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi2Id, makerTags, unsignedByte, 4, printExifVersion), + TagInfo( 582, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi2Id, makerTags, unsignedLong, 1, printValue), + TagInfo( 738, "FlashLevel", N_("Flash Level"), N_("Flash level"), nikonSi2Id, makerTags, unsignedByte, 1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonSi2Tag)", "(UnknownNikonSi2Tag)", N_("Unknown Nikon Shot Info D40 Tag"), nikonSi2IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonSi2Tag)", "(UnknownNikonSi2Tag)", N_("Unknown Nikon Shot Info D40 Tag"), nikonSi2Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListSi2() @@ -1109,12 +1109,12 @@ namespace Exiv2 { // Nikon3 Shot Info D300 (a) Tag Info const TagInfo Nikon3MakerNote::tagInfoSi3_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi3IfdId, makerTags, unsignedByte, 4, printExifVersion), - TagInfo( 604, "ISO", N_("ISO"), N_("ISO"), nikonSi3IfdId, makerTags, unsignedByte, 1, printIiIso), - TagInfo( 633, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi3IfdId, makerTags, unsignedLong, 1, printValue), - TagInfo( 721, "AFFineTuneAdj", N_("AF Fine Tune Adj"), N_("AF fine tune adj"), nikonSi3IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonAfFineTuneAdj1)), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi3Id, makerTags, unsignedByte, 4, printExifVersion), + TagInfo( 604, "ISO", N_("ISO"), N_("ISO"), nikonSi3Id, makerTags, unsignedByte, 1, printIiIso), + TagInfo( 633, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi3Id, makerTags, unsignedLong, 1, printValue), + TagInfo( 721, "AFFineTuneAdj", N_("AF Fine Tune Adj"), N_("AF fine tune adj"), nikonSi3Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonAfFineTuneAdj1)), // End of list marker - TagInfo(0xffff, "(UnknownNikonSi3Tag)", "(UnknownNikonSi3Tag)", N_("Unknown Nikon Shot Info D300 (a) Tag"), nikonSi3IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonSi3Tag)", "(UnknownNikonSi3Tag)", N_("Unknown Nikon Shot Info D300 (a) Tag"), nikonSi3Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListSi3() @@ -1169,12 +1169,12 @@ namespace Exiv2 { // Nikon3 Shot Info D300 (b) Tag Info const TagInfo Nikon3MakerNote::tagInfoSi4_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi4IfdId, makerTags, unsignedByte, 4, printExifVersion), - TagInfo( 613, "ISO", N_("ISO"), N_("ISO"), nikonSi4IfdId, makerTags, unsignedByte, 1, printIiIso), - TagInfo( 644, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi4IfdId, makerTags, unsignedLong, 1, printValue), - TagInfo( 732, "AFFineTuneAdj", N_("AF Fine Tune Adj"), N_("AF fine tune adj"), nikonSi4IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonAfFineTuneAdj2)), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi4Id, makerTags, unsignedByte, 4, printExifVersion), + TagInfo( 613, "ISO", N_("ISO"), N_("ISO"), nikonSi4Id, makerTags, unsignedByte, 1, printIiIso), + TagInfo( 644, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi4Id, makerTags, unsignedLong, 1, printValue), + TagInfo( 732, "AFFineTuneAdj", N_("AF Fine Tune Adj"), N_("AF fine tune adj"), nikonSi4Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(nikonAfFineTuneAdj2)), // End of list marker - TagInfo(0xffff, "(UnknownNikonSi4Tag)", "(UnknownNikonSi4Tag)", N_("Unknown Nikon Shot Info D300 (b) Tag"), nikonSi4IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonSi4Tag)", "(UnknownNikonSi4Tag)", N_("Unknown Nikon Shot Info D300 (b) Tag"), nikonSi4Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListSi4() @@ -1199,17 +1199,17 @@ namespace Exiv2 { // Nikon3 Shot Info Tag Info const TagInfo Nikon3MakerNote::tagInfoSi5_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi5IfdId, makerTags, unsignedByte, 4, printExifVersion), - TagInfo( 106, "ShutterCount1", N_("Shutter Count 1"), N_("Shutter count 1"), nikonSi5IfdId, makerTags, unsignedLong, 1, printValue), - TagInfo( 110, "DeletedImageCount", N_("Deleted Image Count"), N_("Deleted image count"), nikonSi5IfdId, makerTags, unsignedLong, 1, printValue), - TagInfo( 117, "VibrationReduction", N_("Vibration Reduction"), N_("Vibration reduction"), nikonSi5IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOffOn2)), - TagInfo( 130, "VibrationReduction1", N_(""), N_(""), nikonSi5IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOffOn)), - TagInfo( 343, "ShutterCount2", N_("Shutter Count 2"), N_("Shutter count 2"), nikonSi5IfdId, makerTags, undefined, 2, printValue), - TagInfo( 430, "VibrationReduction2", N_("Vibration Reduction 2"), N_("Vibration reduction 2"), nikonSi5IfdId, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOffOn3)), - TagInfo( 598, "ISO", N_("ISO"), N_("ISO"), nikonSi5IfdId, makerTags, unsignedByte, 1, printIiIso), - TagInfo( 630, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi5IfdId, makerTags, unsignedLong, 1, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonSi5Id, makerTags, unsignedByte, 4, printExifVersion), + TagInfo( 106, "ShutterCount1", N_("Shutter Count 1"), N_("Shutter count 1"), nikonSi5Id, makerTags, unsignedLong, 1, printValue), + TagInfo( 110, "DeletedImageCount", N_("Deleted Image Count"), N_("Deleted image count"), nikonSi5Id, makerTags, unsignedLong, 1, printValue), + TagInfo( 117, "VibrationReduction", N_("Vibration Reduction"), N_("Vibration reduction"), nikonSi5Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOffOn2)), + TagInfo( 130, "VibrationReduction1", N_(""), N_(""), nikonSi5Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOffOn)), + TagInfo( 343, "ShutterCount2", N_("Shutter Count 2"), N_("Shutter count 2"), nikonSi5Id, makerTags, undefined, 2, printValue), + TagInfo( 430, "VibrationReduction2", N_("Vibration Reduction 2"), N_("Vibration reduction 2"), nikonSi5Id, makerTags, unsignedByte, 1, EXV_PRINT_TAG(nikonOffOn3)), + TagInfo( 598, "ISO", N_("ISO"), N_("ISO"), nikonSi5Id, makerTags, unsignedByte, 1, printIiIso), + TagInfo( 630, "ShutterCount", N_("Shutter Count"), N_("Shutter count"), nikonSi5Id, makerTags, unsignedLong, 1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonSi5Tag)", "(UnknownNikonSi5Tag)", N_("Unknown Nikon Shot Info Tag"), nikonSi5IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonSi5Tag)", "(UnknownNikonSi5Tag)", N_("Unknown Nikon Shot Info Tag"), nikonSi5Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListSi5() @@ -1219,10 +1219,10 @@ namespace Exiv2 { // Nikon3 Color Balance 1 Tag Info const TagInfo Nikon3MakerNote::tagInfoCb1_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb1IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo(36, "WB_RBGGLevels", N_("WB RBGG Levels"), N_("WB RBGG levels"), nikonCb1IfdId, makerTags, unsignedShort, 4, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb1Id, makerTags, undefined, 4, printExifVersion), + TagInfo(36, "WB_RBGGLevels", N_("WB RBGG Levels"), N_("WB RBGG levels"), nikonCb1Id, makerTags, unsignedShort, 4, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonCb1Tag)", "(UnknownNikonCb1Tag)", N_("Unknown Nikon Color Balance 1 Tag"), nikonCb1IfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownNikonCb1Tag)", "(UnknownNikonCb1Tag)", N_("Unknown Nikon Color Balance 1 Tag"), nikonCb1Id, makerTags, unsignedShort, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListCb1() @@ -1232,10 +1232,10 @@ namespace Exiv2 { // Nikon3 Color Balance 2 Tag Info const TagInfo Nikon3MakerNote::tagInfoCb2_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb2IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 5, "WB_RGGBLevels", N_("WB RGGB Levels"), N_("WB RGGB levels"), nikonCb2IfdId, makerTags, unsignedShort, 4, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb2Id, makerTags, undefined, 4, printExifVersion), + TagInfo( 5, "WB_RGGBLevels", N_("WB RGGB Levels"), N_("WB RGGB levels"), nikonCb2Id, makerTags, unsignedShort, 4, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonCb2Tag)", "(UnknownNikonCb2Tag)", N_("Unknown Nikon Color Balance 2 Tag"), nikonCb2IfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownNikonCb2Tag)", "(UnknownNikonCb2Tag)", N_("Unknown Nikon Color Balance 2 Tag"), nikonCb2Id, makerTags, unsignedShort, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListCb2() @@ -1245,10 +1245,10 @@ namespace Exiv2 { // Nikon3 Color Balance 2a Tag Info const TagInfo Nikon3MakerNote::tagInfoCb2a_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb2aIfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 9, "WB_RGGBLevels", N_("WB RGGB Levels"), N_("WB RGGB levels"), nikonCb2aIfdId, makerTags, unsignedShort, 4, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb2aId, makerTags, undefined, 4, printExifVersion), + TagInfo( 9, "WB_RGGBLevels", N_("WB RGGB Levels"), N_("WB RGGB levels"), nikonCb2aId, makerTags, unsignedShort, 4, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonCb2aTag)", "(UnknownNikonCb2aTag)", N_("Unknown Nikon Color Balance 2a Tag"), nikonCb2aIfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownNikonCb2aTag)", "(UnknownNikonCb2aTag)", N_("Unknown Nikon Color Balance 2a Tag"), nikonCb2aId, makerTags, unsignedShort, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListCb2a() @@ -1258,10 +1258,10 @@ namespace Exiv2 { // Nikon3 Color Balance 2b Tag Info const TagInfo Nikon3MakerNote::tagInfoCb2b_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb2bIfdId, makerTags, undefined, 4, printExifVersion), - TagInfo(145, "WB_RGGBLevels", N_("WB RGGB Levels"), N_("WB RGGB levels"), nikonCb2bIfdId, makerTags, unsignedShort, 4, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb2bId, makerTags, undefined, 4, printExifVersion), + TagInfo(145, "WB_RGGBLevels", N_("WB RGGB Levels"), N_("WB RGGB levels"), nikonCb2bId, makerTags, unsignedShort, 4, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonCb2bTag)", "(UnknownNikonCb2bTag)", N_("Unknown Nikon Color Balance 2b Tag"), nikonCb2bIfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownNikonCb2bTag)", "(UnknownNikonCb2bTag)", N_("Unknown Nikon Color Balance 2b Tag"), nikonCb2bId, makerTags, unsignedShort, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListCb2b() @@ -1271,10 +1271,10 @@ namespace Exiv2 { // Nikon3 Color Balance 3 Tag Info const TagInfo Nikon3MakerNote::tagInfoCb3_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb3IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo(10, "WB_RGBGLevels", N_("WB RGBG Levels"), N_("WB RGBG levels"), nikonCb3IfdId, makerTags, unsignedShort, 4, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb3Id, makerTags, undefined, 4, printExifVersion), + TagInfo(10, "WB_RGBGLevels", N_("WB RGBG Levels"), N_("WB RGBG levels"), nikonCb3Id, makerTags, unsignedShort, 4, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonCb3Tag)", "(UnknownNikonCb3Tag)", N_("Unknown Nikon Color Balance 3 Tag"), nikonCb3IfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownNikonCb3Tag)", "(UnknownNikonCb3Tag)", N_("Unknown Nikon Color Balance 3 Tag"), nikonCb3Id, makerTags, unsignedShort, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListCb3() @@ -1284,10 +1284,10 @@ namespace Exiv2 { // Nikon3 Color Balance 4 Tag Info const TagInfo Nikon3MakerNote::tagInfoCb4_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb4IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo(147, "WB_GRBGLevels", N_("WB GRBG Levels"), N_("WB GRBG levels"), nikonCb4IfdId, makerTags, unsignedShort, 4, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonCb4Id, makerTags, undefined, 4, printExifVersion), + TagInfo(147, "WB_GRBGLevels", N_("WB GRBG Levels"), N_("WB GRBG levels"), nikonCb4Id, makerTags, unsignedShort, 4, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonCb4Tag)", "(UnknownNikonCb4Tag)", N_("Unknown Nikon Color Balance 4 Tag"), nikonCb4IfdId, makerTags, unsignedShort, 1, printValue) + TagInfo(0xffff, "(UnknownNikonCb4Tag)", "(UnknownNikonCb4Tag)", N_("Unknown Nikon Color Balance 4 Tag"), nikonCb4Id, makerTags, unsignedShort, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListCb4() @@ -1297,16 +1297,16 @@ namespace Exiv2 { // Nikon3 Lens Data 1 Tag Info const TagInfo Nikon3MakerNote::tagInfoLd1_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonLd1IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 6, "LensIDNumber", N_("Lens ID Number"), N_("Lens ID number"), nikonLd1IfdId, makerTags, unsignedByte, 1, printLensId1), - TagInfo( 7, "LensFStops", N_("Lens F-Stops"), N_("Lens F-stops"), nikonLd1IfdId, makerTags, unsignedByte, 1, printFStops), - TagInfo( 8, "MinFocalLength", N_("Min Focal Length"), N_("Min focal length"), nikonLd1IfdId, makerTags, unsignedByte, 1, printFocal), - TagInfo( 9, "MaxFocalLength", N_("Max Focal Length"), N_("Max focal length"), nikonLd1IfdId, makerTags, unsignedByte, 1, printFocal), - TagInfo(10, "MaxApertureAtMinFocal", N_("Max Aperture At Min Focal"), N_("Max aperture at min focal"), nikonLd1IfdId, makerTags, unsignedByte, 1, printAperture), - TagInfo(11, "MaxApertureAtMaxFocal", N_("Max Aperture At Max Focal"), N_("Max aperture at max focal"), nikonLd1IfdId, makerTags, unsignedByte, 1, printAperture), - TagInfo(12, "MCUVersion", N_("MCU Version"), N_("MCU version"), nikonLd1IfdId, makerTags, unsignedByte, 1, printValue), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonLd1Id, makerTags, undefined, 4, printExifVersion), + TagInfo( 6, "LensIDNumber", N_("Lens ID Number"), N_("Lens ID number"), nikonLd1Id, makerTags, unsignedByte, 1, printLensId1), + TagInfo( 7, "LensFStops", N_("Lens F-Stops"), N_("Lens F-stops"), nikonLd1Id, makerTags, unsignedByte, 1, printFStops), + TagInfo( 8, "MinFocalLength", N_("Min Focal Length"), N_("Min focal length"), nikonLd1Id, makerTags, unsignedByte, 1, printFocal), + TagInfo( 9, "MaxFocalLength", N_("Max Focal Length"), N_("Max focal length"), nikonLd1Id, makerTags, unsignedByte, 1, printFocal), + TagInfo(10, "MaxApertureAtMinFocal", N_("Max Aperture At Min Focal"), N_("Max aperture at min focal"), nikonLd1Id, makerTags, unsignedByte, 1, printAperture), + TagInfo(11, "MaxApertureAtMaxFocal", N_("Max Aperture At Max Focal"), N_("Max aperture at max focal"), nikonLd1Id, makerTags, unsignedByte, 1, printAperture), + TagInfo(12, "MCUVersion", N_("MCU Version"), N_("MCU version"), nikonLd1Id, makerTags, unsignedByte, 1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownNikonLd1Tag)", "(UnknownNikonLd1Tag)", N_("Unknown Nikon Lens Data 1 Tag"), nikonLd1IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonLd1Tag)", "(UnknownNikonLd1Tag)", N_("Unknown Nikon Lens Data 1 Tag"), nikonLd1Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListLd1() @@ -1316,22 +1316,22 @@ namespace Exiv2 { // Nikon3 Lens Data 2 Tag Info const TagInfo Nikon3MakerNote::tagInfoLd2_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonLd2IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 4, "ExitPupilPosition", N_("Exit Pupil Position"), N_("Exit pupil position"), nikonLd2IfdId, makerTags, unsignedByte, 1, printExitPupilPosition), - TagInfo( 5, "AFAperture", N_("AF Aperture"), N_("AF aperture"), nikonLd2IfdId, makerTags, unsignedByte, 1, printAperture), - TagInfo( 8, "FocusPosition", N_("Focus Position"), N_("Focus position"), nikonLd2IfdId, makerTags, unsignedByte, 1, printValue), - TagInfo( 9, "FocusDistance", N_("Focus Distance"), N_("Focus distance"), nikonLd2IfdId, makerTags, unsignedByte, 1, printFocusDistance), - TagInfo(10, "FocalLength", N_("Focal Length"), N_("Focal length"), nikonLd2IfdId, makerTags, unsignedByte, 1, printFocal), - TagInfo(11, "LensIDNumber", N_("Lens ID Number"), N_("Lens ID number"), nikonLd2IfdId, makerTags, unsignedByte, 1, printLensId2), - TagInfo(12, "LensFStops", N_("Lens F-Stops"), N_("Lens F-stops"), nikonLd2IfdId, makerTags, unsignedByte, 1, printFStops), - TagInfo(13, "MinFocalLength", N_("Min Focal Length"), N_("Min focal length"), nikonLd2IfdId, makerTags, unsignedByte, 1, printFocal), - TagInfo(14, "MaxFocalLength", N_("Max Focal Length"), N_("Max focal length"), nikonLd2IfdId, makerTags, unsignedByte, 1, printFocal), - TagInfo(15, "MaxApertureAtMinFocal", N_("Max Aperture At Min Focal"), N_("Max aperture at min focal"), nikonLd2IfdId, makerTags, unsignedByte, 1, printAperture), - TagInfo(16, "MaxApertureAtMaxFocal", N_("Max Aperture At Max Focal"), N_("Max aperture at max focal"), nikonLd2IfdId, makerTags, unsignedByte, 1, printAperture), - TagInfo(17, "MCUVersion", N_("MCU Version"), N_("MCU version"), nikonLd2IfdId, makerTags, unsignedByte, 1, printValue), - TagInfo(18, "EffectiveMaxAperture", N_("Effective Max Aperture"), N_("Effective max aperture"), nikonLd2IfdId, makerTags, unsignedByte, 1, printAperture), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonLd2Id, makerTags, undefined, 4, printExifVersion), + TagInfo( 4, "ExitPupilPosition", N_("Exit Pupil Position"), N_("Exit pupil position"), nikonLd2Id, makerTags, unsignedByte, 1, printExitPupilPosition), + TagInfo( 5, "AFAperture", N_("AF Aperture"), N_("AF aperture"), nikonLd2Id, makerTags, unsignedByte, 1, printAperture), + TagInfo( 8, "FocusPosition", N_("Focus Position"), N_("Focus position"), nikonLd2Id, makerTags, unsignedByte, 1, printValue), + TagInfo( 9, "FocusDistance", N_("Focus Distance"), N_("Focus distance"), nikonLd2Id, makerTags, unsignedByte, 1, printFocusDistance), + TagInfo(10, "FocalLength", N_("Focal Length"), N_("Focal length"), nikonLd2Id, makerTags, unsignedByte, 1, printFocal), + TagInfo(11, "LensIDNumber", N_("Lens ID Number"), N_("Lens ID number"), nikonLd2Id, makerTags, unsignedByte, 1, printLensId2), + TagInfo(12, "LensFStops", N_("Lens F-Stops"), N_("Lens F-stops"), nikonLd2Id, makerTags, unsignedByte, 1, printFStops), + TagInfo(13, "MinFocalLength", N_("Min Focal Length"), N_("Min focal length"), nikonLd2Id, makerTags, unsignedByte, 1, printFocal), + TagInfo(14, "MaxFocalLength", N_("Max Focal Length"), N_("Max focal length"), nikonLd2Id, makerTags, unsignedByte, 1, printFocal), + TagInfo(15, "MaxApertureAtMinFocal", N_("Max Aperture At Min Focal"), N_("Max aperture at min focal"), nikonLd2Id, makerTags, unsignedByte, 1, printAperture), + TagInfo(16, "MaxApertureAtMaxFocal", N_("Max Aperture At Max Focal"), N_("Max aperture at max focal"), nikonLd2Id, makerTags, unsignedByte, 1, printAperture), + TagInfo(17, "MCUVersion", N_("MCU Version"), N_("MCU version"), nikonLd2Id, makerTags, unsignedByte, 1, printValue), + TagInfo(18, "EffectiveMaxAperture", N_("Effective Max Aperture"), N_("Effective max aperture"), nikonLd2Id, makerTags, unsignedByte, 1, printAperture), // End of list marker - TagInfo(0xffff, "(UnknownNikonLd2Tag)", "(UnknownNikonLd2Tag)", N_("Unknown Nikon Lens Data 2 Tag"), nikonLd2IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonLd2Tag)", "(UnknownNikonLd2Tag)", N_("Unknown Nikon Lens Data 2 Tag"), nikonLd2Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListLd2() @@ -1341,22 +1341,22 @@ namespace Exiv2 { // Nikon3 Lens Data 3 Tag Info const TagInfo Nikon3MakerNote::tagInfoLd3_[] = { - TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonLd3IfdId, makerTags, undefined, 4, printExifVersion), - TagInfo( 4, "ExitPupilPosition", N_("Exit Pupil Position"), N_("Exit pupil position"), nikonLd3IfdId, makerTags, unsignedByte, 1, printExitPupilPosition), - TagInfo( 5, "AFAperture", N_("AF Aperture"), N_("AF aperture"), nikonLd3IfdId, makerTags, unsignedByte, 1, printAperture), - TagInfo( 8, "FocusPosition", N_("Focus Position"), N_("Focus position"), nikonLd3IfdId, makerTags, unsignedByte, 1, printValue), - TagInfo(10, "FocusDistance", N_("Focus Distance"), N_("Focus distance"), nikonLd3IfdId, makerTags, unsignedByte, 1, printFocusDistance), - TagInfo(11, "FocalLength", N_("Focal Length"), N_("Focal length"), nikonLd3IfdId, makerTags, unsignedByte, 1, printFocal), - TagInfo(12, "LensIDNumber", N_("Lens ID Number"), N_("Lens ID number"), nikonLd3IfdId, makerTags, unsignedByte, 1, printLensId3), - TagInfo(13, "LensFStops", N_("Lens F-Stops"), N_("Lens F-stops"), nikonLd3IfdId, makerTags, unsignedByte, 1, printFStops), - TagInfo(14, "MinFocalLength", N_("Min Focal Length"), N_("Min focal length"), nikonLd3IfdId, makerTags, unsignedByte, 1, printFocal), - TagInfo(15, "MaxFocalLength", N_("Max Focal Length"), N_("Max focal length"), nikonLd3IfdId, makerTags, unsignedByte, 1, printFocal), - TagInfo(16, "MaxApertureAtMinFocal", N_("Max Aperture At Min Focal"), N_("Max aperture at min focal length"), nikonLd3IfdId, makerTags, unsignedByte, 1, printAperture), - TagInfo(17, "MaxApertureAtMaxFocal", N_("Max Aperture At Max Focal"), N_("Max aperture at max focal length"), nikonLd3IfdId, makerTags, unsignedByte, 1, printAperture), - TagInfo(18, "MCUVersion", N_("MCU Version"), N_("MCU version"), nikonLd3IfdId, makerTags, unsignedByte, 1, printValue), - TagInfo(19, "EffectiveMaxAperture", N_("Effective Max Aperture"), N_("Effective max aperture"), nikonLd3IfdId, makerTags, unsignedByte, 1, printAperture), + TagInfo( 0, "Version", N_("Version"), N_("Version"), nikonLd3Id, makerTags, undefined, 4, printExifVersion), + TagInfo( 4, "ExitPupilPosition", N_("Exit Pupil Position"), N_("Exit pupil position"), nikonLd3Id, makerTags, unsignedByte, 1, printExitPupilPosition), + TagInfo( 5, "AFAperture", N_("AF Aperture"), N_("AF aperture"), nikonLd3Id, makerTags, unsignedByte, 1, printAperture), + TagInfo( 8, "FocusPosition", N_("Focus Position"), N_("Focus position"), nikonLd3Id, makerTags, unsignedByte, 1, printValue), + TagInfo(10, "FocusDistance", N_("Focus Distance"), N_("Focus distance"), nikonLd3Id, makerTags, unsignedByte, 1, printFocusDistance), + TagInfo(11, "FocalLength", N_("Focal Length"), N_("Focal length"), nikonLd3Id, makerTags, unsignedByte, 1, printFocal), + TagInfo(12, "LensIDNumber", N_("Lens ID Number"), N_("Lens ID number"), nikonLd3Id, makerTags, unsignedByte, 1, printLensId3), + TagInfo(13, "LensFStops", N_("Lens F-Stops"), N_("Lens F-stops"), nikonLd3Id, makerTags, unsignedByte, 1, printFStops), + TagInfo(14, "MinFocalLength", N_("Min Focal Length"), N_("Min focal length"), nikonLd3Id, makerTags, unsignedByte, 1, printFocal), + TagInfo(15, "MaxFocalLength", N_("Max Focal Length"), N_("Max focal length"), nikonLd3Id, makerTags, unsignedByte, 1, printFocal), + TagInfo(16, "MaxApertureAtMinFocal", N_("Max Aperture At Min Focal"), N_("Max aperture at min focal length"), nikonLd3Id, makerTags, unsignedByte, 1, printAperture), + TagInfo(17, "MaxApertureAtMaxFocal", N_("Max Aperture At Max Focal"), N_("Max aperture at max focal length"), nikonLd3Id, makerTags, unsignedByte, 1, printAperture), + TagInfo(18, "MCUVersion", N_("MCU Version"), N_("MCU version"), nikonLd3Id, makerTags, unsignedByte, 1, printValue), + TagInfo(19, "EffectiveMaxAperture", N_("Effective Max Aperture"), N_("Effective max aperture"), nikonLd3Id, makerTags, unsignedByte, 1, printAperture), // End of list marker - TagInfo(0xffff, "(UnknownNikonLd3Tag)", "(UnknownNikonLd3Tag)", N_("Unknown Nikon Lens Data 3 Tag"), nikonLd3IfdId, makerTags, unsignedByte, 1, printValue) + TagInfo(0xffff, "(UnknownNikonLd3Tag)", "(UnknownNikonLd3Tag)", N_("Unknown Nikon Lens Data 3 Tag"), nikonLd3Id, makerTags, unsignedByte, 1, printValue) }; const TagInfo* Nikon3MakerNote::tagListLd3() diff --git a/src/olympusmn.cpp b/src/olympusmn.cpp index 04c23852..6ecf75ab 100644 --- a/src/olympusmn.cpp +++ b/src/olympusmn.cpp @@ -184,291 +184,291 @@ namespace Exiv2 { add Minolta makenotes tags here (0x0000-0x0103). See Exiftool database.*/ TagInfo(0x0000, "0x0000", "0x0000", N_("Unknown"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0100, "ThumbnailImage", N_("Thumbnail Image"), N_("Thumbnail image"), - olympusIfdId, makerTags, undefined, -1, printValue), + olympusId, makerTags, undefined, -1, printValue), TagInfo(0x0104, "BodyFirmwareVersion", N_("Body Firmware Version"), N_("Body firmware version"), - olympusIfdId, makerTags, asciiString, -1, printValue), + olympusId, makerTags, asciiString, -1, printValue), TagInfo(0x0200, "SpecialMode", N_("Special Mode"), N_("Picture taking mode"), - olympusIfdId, makerTags, unsignedLong, -1, print0x0200), + olympusId, makerTags, unsignedLong, -1, print0x0200), TagInfo(0x0201, "Quality", N_("Quality"), N_("Image quality setting"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusQuality)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusQuality)), TagInfo(0x0202, "Macro", N_("Macro"), N_("Macro mode"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusMacro)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusMacro)), TagInfo(0x0203, "BWMode", N_("Black & White Mode"), N_("Black and white mode"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), TagInfo(0x0204, "DigitalZoom", N_("Digital Zoom"), N_("Digital zoom ratio"), - olympusIfdId, makerTags, unsignedRational, -1, print0x0204), + olympusId, makerTags, unsignedRational, -1, print0x0204), TagInfo(0x0205, "FocalPlaneDiagonal", N_("Focal Plane Diagonal"), N_("Focal plane diagonal"), - olympusIfdId, makerTags, unsignedRational, -1, printValue), + olympusId, makerTags, unsignedRational, -1, printValue), TagInfo(0x0206, "LensDistortionParams", N_("Lens Distortion Parameters"), N_("Lens distortion parameters"), - olympusIfdId, makerTags, signedShort, -1, printValue), + olympusId, makerTags, signedShort, -1, printValue), TagInfo(0x0207, "CameraType", N_("Camera Type"), N_("Camera type"), - olympusIfdId, makerTags, asciiString, -1, printValue), + olympusId, makerTags, asciiString, -1, printValue), TagInfo(0x0208, "PictureInfo", N_("Picture Info"), N_("ASCII format data such as [PictureInfo]"), - olympusIfdId, makerTags, asciiString, -1, printValue), + olympusId, makerTags, asciiString, -1, printValue), TagInfo(0x0209, "CameraID", N_("Camera ID"), N_("Camera ID data"), - olympusIfdId, makerTags, asciiString, -1, print0x0209), + olympusId, makerTags, asciiString, -1, print0x0209), TagInfo(0x020b, "ImageWidth", N_("Image Width"), N_("Image width"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x020c, "ImageHeight", N_("Image Height"), N_("Image height"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x020d, "Software", N_("Software"), N_("Software"), - olympusIfdId, makerTags, asciiString, -1, printValue), + olympusId, makerTags, asciiString, -1, printValue), TagInfo(0x0280, "PreviewImage", N_("Preview Image"), N_("Preview image"), - olympusIfdId, makerTags, unsignedByte, -1, printValue), + olympusId, makerTags, unsignedByte, -1, printValue), TagInfo(0x0300, "PreCaptureFrames", N_("Pre Capture Frames"), N_("Pre-capture frames"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0301, "WhiteBoard", N_("White Board"), N_("White board"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0302, "OneTouchWB", N_("One Touch WB"), N_("One touch white balance"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOneTouchWb)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOneTouchWb)), TagInfo(0x0303, "WhiteBalanceBracket", N_("White Balance Bracket"), N_("White balance bracket"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0304, "WhiteBalanceBias", N_("White Balance Bias"), N_("White balance bias"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x0403, "SceneMode", N_("Scene Mode"), N_("Scene mode"), - olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusSceneMode)), + olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusSceneMode)), TagInfo(0x0404, "Firmware", N_("Firmware"), N_("Firmwarer"), - olympusIfdId, makerTags, asciiString, -1, printValue), + olympusId, makerTags, asciiString, -1, printValue), TagInfo(0x0e00, "PrintIM", N_("Print IM"), N_("PrintIM information"), - olympusIfdId, makerTags, undefined, -1, printValue), + olympusId, makerTags, undefined, -1, printValue), TagInfo(0x0f00, "DataDump1", N_("Data Dump 1"), N_("Various camera settings 1"), - olympusIfdId, makerTags, undefined, -1, printValue), + olympusId, makerTags, undefined, -1, printValue), TagInfo(0x0f01, "DataDump2", N_("Data Dump 2"), N_("Various camera settings 2"), - olympusIfdId, makerTags, undefined, -1, printValue), + olympusId, makerTags, undefined, -1, printValue), TagInfo(0x1000, "ShutterSpeed", N_("Shutter Speed"), N_("Shutter speed value"), - olympusIfdId, makerTags, signedRational, -1, printValue), + olympusId, makerTags, signedRational, -1, printValue), TagInfo(0x1001, "ISOSpeed", N_("ISO Speed"), N_("ISO speed value"), - olympusIfdId, makerTags, signedRational, -1, printValue), + olympusId, makerTags, signedRational, -1, printValue), TagInfo(0x1002, "ApertureValue", N_("Aperture Value"), N_("Aperture value"), - olympusIfdId, makerTags, signedRational, -1, printValue), + olympusId, makerTags, signedRational, -1, printValue), TagInfo(0x1003, "Brightness", N_("Brightness"), N_("Brightness value"), - olympusIfdId, makerTags, signedRational, -1, printValue), + olympusId, makerTags, signedRational, -1, printValue), TagInfo(0x1004, "FlashMode", N_("Flash Mode"), N_("Flash mode"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), TagInfo(0x1005, "FlashDevice", N_("Flash Device"), N_("Flash device"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFlashDevice)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFlashDevice)), TagInfo(0x1006, "Bracket", N_("Bracket"), N_("Exposure compensation value"), - olympusIfdId, makerTags, signedRational, -1, printValue), + olympusId, makerTags, signedRational, -1, printValue), TagInfo(0x1007, "SensorTemperature", N_("Sensor Temperature"), N_("Sensor temperature"), - olympusIfdId, makerTags, signedShort, -1, printValue), + olympusId, makerTags, signedShort, -1, printValue), TagInfo(0x1008, "LensTemperature", N_("Lens Temperature"), N_("Lens temperature"), - olympusIfdId, makerTags, signedShort, -1, printValue), + olympusId, makerTags, signedShort, -1, printValue), TagInfo(0x1009, "LightCondition", N_("Light Condition"), N_("Light condition"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x100a, "FocusRange", N_("Focus Range"), N_("Focus range"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFocusRange)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFocusRange)), TagInfo(0x100b, "FocusMode", N_("Focus Mode"), N_("Focus mode"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFocusMode)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFocusMode)), TagInfo(0x100c, "FocusDistance", N_("Focus Distance"), N_("Manual focus distance"), - olympusIfdId, makerTags, unsignedRational, -1, printValue), + olympusId, makerTags, unsignedRational, -1, printValue), TagInfo(0x100d, "Zoom", N_("Zoom"), N_("Zoom step count"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x100e, "MacroFocus", N_("Macro Focus"), N_("Macro focus step count"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x100f, "SharpnessFactor", N_("Sharpness Factor"), N_("Sharpness factor"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusSharpness)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusSharpness)), TagInfo(0x1010, "FlashChargeLevel", N_("Flash Charge Level"), N_("Flash charge level"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1011, "ColorMatrix", N_("Color Matrix"), N_("Color matrix"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1012, "BlackLevel", N_("BlackLevel"), N_("Black level"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1013, "0x1013", "0x1013", N_("Unknown"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1014, "0x1014", "0x1014", N_("Unknown"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1015, "WhiteBalance", N_("White Balance"), N_("White balance mode"), - olympusIfdId, makerTags, unsignedShort, -1, print0x1015), + olympusId, makerTags, unsignedShort, -1, print0x1015), TagInfo(0x1016, "0x1016", "0x1016", N_("Unknown"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1017, "RedBalance", N_("Red Balance"), N_("Red balance"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1018, "BlueBalance", N_("Blue Balance"), N_("Blue balance"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1019, "ColorMatrixNumber", N_("Color Matrix Number"), N_("Color matrix mumber"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x101a, "SerialNumber2", N_("Serial Number 2"), N_("Serial number 2"), - olympusIfdId, makerTags, asciiString, -1, printValue), + olympusId, makerTags, asciiString, -1, printValue), TagInfo(0x101b, "0x101b", "0x101b", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x101c, "0x101c", "0x101c", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x101d, "0x101d", "0x101d", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x101e, "0x101e", "0x101e", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x101f, "0x101f", "0x101f", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x1020, "0x1020", "0x1020", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x1021, "0x1021", "0x1021", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x1022, "0x1022", "0x1022", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x1023, "FlashBias", N_("Flash Bias"), N_("Flash exposure compensation"), - olympusIfdId, makerTags, signedRational, -1, printValue), + olympusId, makerTags, signedRational, -1, printValue), TagInfo(0x1024, "0x1024", "0x1024", N_("Unknown"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1025, "0x1025", "0x1025", N_("Unknown"), - olympusIfdId, makerTags, signedRational, -1, printValue), + olympusId, makerTags, signedRational, -1, printValue), TagInfo(0x1026, "ExternalFlashBounce", N_("External Flash Bounce"), N_("External flash bounce"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), TagInfo(0x1027, "ExternalFlashZoom", N_("External Flash Zoom"), N_("External flash zoom"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1028, "ExternalFlashMode", N_("External Flash Mode"), N_("External flash mode"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1029, "Contrast", N_("Contrast"), N_("Contrast setting"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusContrast)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusContrast)), TagInfo(0x102a, "SharpnessFactor", N_("Sharpness Factor"), N_("Sharpness factor"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x102b, "ColorControl", N_("Color Control"), N_("Color control"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x102c, "ValidBits", N_("ValidBits"), N_("Valid bits"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x102d, "CoringFilter", N_("CoringFilter"), N_("Coring filter"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x102e, "ImageWidth", N_("Image Width"), N_("Image width"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x102f, "ImageHeight", N_("Image Height"), N_("Image height"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x1030, "0x1030", "0x1030", N_("Unknown"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1031, "0x1031", "0x1031", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x1032, "0x1032", "0x1032", N_("Unknown"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x1033, "0x1033", "0x1033", N_("Unknown"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x1034, "CompressionRatio", N_("Compression Ratio"), N_("Compression ratio"), - olympusIfdId, makerTags, unsignedRational, -1, printValue), + olympusId, makerTags, unsignedRational, -1, printValue), TagInfo(0x1035, "Thumbnail", N_("Thumbnail"), N_("Preview image embedded"), - olympusIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(olympusOffOn)), + olympusId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(olympusOffOn)), TagInfo(0x1036, "ThumbnailOffset", N_("Thumbnail Offset"), N_("Offset of the preview image"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x1037, "ThumbnailLength", N_("Thumbnail Length"), N_("Size of the preview image"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x1039, "CCDScanMode", N_("CCD Scan Mode"), N_("CCD scan mode"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusCCDScanMode)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusCCDScanMode)), TagInfo(0x103a, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), - olympusIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + olympusId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), TagInfo(0x103b, "InfinityLensStep", N_("Infinity Lens Step"), N_("Infinity lens step"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x103c, "NearLensStep", N_("Near Lens Step"), N_("Near lens step"), - olympusIfdId, makerTags, unsignedShort, -1, printValue), + olympusId, makerTags, unsignedShort, -1, printValue), TagInfo(0x2010, "Equipment", N_("Equipment Info"), N_("Camera equipment sub-IFD"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x2020, "CameraSettings", N_("Camera Settings"), N_("Camera Settings sub-IFD"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x2030, "RawDevelopment", N_("Raw Development"), N_("Raw development sub-IFD"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x2031, "RawDevelopment2", N_("Raw Development 2"), N_("Raw development 2 sub-IFD"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x2040, "ImageProcessing", N_("Image Processing"), N_("Image processing sub-IFD"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x2050, "FocusInfo", N_("Focus Info"), N_("Focus sub-IFD"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), TagInfo(0x3000, "RawInfo", N_("Raw Info"), N_("Raw sub-IFD"), - olympusIfdId, makerTags, unsignedLong, -1, printValue), + olympusId, makerTags, unsignedLong, -1, printValue), // End of list marker TagInfo(0xffff, "(UnknownOlympusMakerNoteTag)", "(UnknownOlympusMakerNoteTag)", N_("Unknown OlympusMakerNote tag"), - olympusIfdId, makerTags, asciiString, -1, printValue) + olympusId, makerTags, asciiString, -1, printValue) }; const TagInfo* OlympusMakerNote::tagList() @@ -652,62 +652,62 @@ namespace Exiv2 { }; const TagInfo OlympusMakerNote::tagInfoCs_[] = { - TagInfo(0x0000, "CameraSettingsVersion", N_("Camera Settings Version"), N_("Camera settings version"), olympusCsIfdId, makerTags, undefined, -1, printExifVersion), - TagInfo(0x0100, "PreviewImageValid", N_("PreviewImage Valid"), N_("Preview image valid"), olympusCsIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(olympusNoYes)), - TagInfo(0x0101, "PreviewImageStart", N_("PreviewImage Start"), N_("Preview image start"), olympusCsIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x0102, "PreviewImageLength", N_("PreviewImage Length"), N_("Preview image length"), olympusCsIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x0200, "ExposureMode", N_("Exposure Mode"), N_("Exposure mode"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusExposureMode)), - TagInfo(0x0201, "AELock", N_("AE Lock"), N_("Auto exposure lock"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x0202, "MeteringMode", N_("Metering Mode"), N_("Metering mode"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusMeteringMode)), - TagInfo(0x0203, "ExposureShift", N_("Exposure Shift"), N_("Exposure shift"), olympusCsIfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x0300, "MacroMode", N_("Macro Mode"), N_("Macro mode"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusMacroMode)), - TagInfo(0x0301, "FocusMode", N_("Focus Mode"), N_("Focus mode"), olympusCsIfdId, makerTags, unsignedShort, -1, printCs0x0301), - TagInfo(0x0302, "FocusProcess", N_("Focus Process"), N_("Focus process"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFocusProcess)), - TagInfo(0x0303, "AFSearch", N_("AF Search"), N_("AF search"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusAFSearch)), - TagInfo(0x0304, "AFAreas", N_("AF Areas"), N_("AF areas"), olympusCsIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x0305, "AFPointSelected", N_("AFPointSelected"), N_("AFPointSelected"), olympusCsIfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x0307, "AFFineTuneAdj", N_("AF Fine Tune Adjust"), N_("AF fine tune adjust"), olympusCsIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0400, "FlashMode", N_("Flash Mode"), N_("Flash mode"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusFlashMode)), - TagInfo(0x0401, "FlashExposureComp", N_("Flash Exposure Compensation"), N_("Flash exposure compensation"), olympusCsIfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x0403, "FlashRemoteControl", N_("Flash Remote Control"), N_("Flash remote control"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFlashRemoteControl)), - TagInfo(0x0404, "FlashControlMode", N_("Flash Control Mode"), N_("Flash control mode"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFlashControlMode)), - TagInfo(0x0405, "FlashIntensity", N_("Flash Intensity"), N_("Flash intensity"), olympusCsIfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x0406, "ManualFlashStrength", N_("Manual Flash Strength"), N_("Manual flash strength"), olympusCsIfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x0500, "WhiteBalance", N_("White Balance 2"), N_("White balance 2"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusWhiteBalance)), - TagInfo(0x0501, "WhiteBalanceTemperature", N_("White Balance Temperature"), N_("White balance temperature"), olympusCsIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0502, "WhiteBalanceBracket", N_("White Balance Bracket"), N_("White balance bracket"), olympusCsIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0503, "CustomSaturation", N_("Custom Saturation"), N_("Custom saturation"), olympusCsIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0504, "ModifiedSaturation", N_("Modified Saturation"), N_("Modified saturation"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusModifiedSaturation)), - TagInfo(0x0505, "ContrastSetting", N_("Contrast Setting"), N_("Contrast setting"), olympusCsIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0506, "SharpnessSetting", N_("Sharpness Setting"), N_("Sharpness setting"), olympusCsIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0507, "ColorSpace", N_("Color Space"), N_("Color space"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusColorSpace)), - TagInfo(0x0509, "SceneMode", N_("Scene Mode"), N_("Scene mode"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusSceneMode)), - TagInfo(0x050a, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusNoiseReduction)), - TagInfo(0x050b, "DistortionCorrection", N_("Distortion Correction"), N_("Distortion correction"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x050c, "ShadingCompensation", N_("Shading Compensation"), N_("Shading compensation"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x050d, "CompressionFactor", N_("Compression Factor"), N_("Compression factor"), olympusCsIfdId, makerTags, unsignedRational, -1, printValue), - TagInfo(0x050f, "Gradation", N_("Gradation"), N_("Gradation"), olympusCsIfdId, makerTags, signedShort, -1, print0x050f), - TagInfo(0x0520, "PictureMode", N_("Picture Mode"), N_("Picture mode"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusPictureMode)), - TagInfo(0x0521, "PictureModeSaturation", N_("Picture Mode Saturation"), N_("Picture mode saturation"), olympusCsIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0522, "PictureModeHue", N_("Picture Mode Hue"), N_("Picture mode hue"), olympusCsIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0523, "PictureModeContrast", N_("Picture Mode Contrast"), N_("Picture mode contrast"), olympusCsIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0524, "PictureModeSharpness", N_("Picture Mode Sharpness"), N_("Picture mode sharpness"), olympusCsIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0525, "PictureModeBWFilter", N_("Picture Mode BW Filter"), N_("Picture mode BW filter"), olympusCsIfdId, makerTags, signedShort, -1, EXV_PRINT_TAG(olympusPictureModeBWFilter)), - TagInfo(0x0526, "PictureModeTone", N_("Picture Mode Tone"), N_("Picture mode tone"), olympusCsIfdId, makerTags, signedShort, -1, EXV_PRINT_TAG(olympusPictureModeTone)), - TagInfo(0x0527, "NoiseFilter", N_("Noise Filter"), N_("Noise filter"), olympusCsIfdId, makerTags, signedShort, -1, print0x0527), - TagInfo(0x0529, "ArtFilter", N_("Art Filter"), N_("Art filter"), olympusCsIfdId, makerTags, unsignedShort, -1, print0x0529), - TagInfo(0x052c, "MagicFilter", N_("Magic Filter"), N_("Magic filter"), olympusCsIfdId, makerTags, unsignedShort, -1, print0x0529), - TagInfo(0x0600, "DriveMode", N_("Drive Mode"), N_("Drive mode"), olympusCsIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0601, "PanoramaMode", N_("Panorama Mode"), N_("Panorama mode"), olympusCsIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0603, "Quality", N_("Image Quality 2"), N_("Image quality 2"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusCsQuality)), - TagInfo(0x0604, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusImageStabilization)), - TagInfo(0x0900, "ManometerPressure", N_("Manometer Pressure"), N_("Manometer pressure"), olympusCsIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0901, "ManometerReading", N_("Manometer Reading"), N_("Manometer reading"), olympusCsIfdId, makerTags, signedLong, -1, printValue), - TagInfo(0x0902, "ExtendedWBDetect", N_("Extended WB Detect"), N_("Extended WB detect"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x0903, "LevelGaugeRoll", N_("Level Gauge Roll"), N_("Level gauge roll"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x0904, "LevelGaugePitch", N_("Level Gauge Pitch"), N_("Level gauge pitch"), olympusCsIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x0000, "CameraSettingsVersion", N_("Camera Settings Version"), N_("Camera settings version"), olympusCsId, makerTags, undefined, -1, printExifVersion), + TagInfo(0x0100, "PreviewImageValid", N_("PreviewImage Valid"), N_("Preview image valid"), olympusCsId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(olympusNoYes)), + TagInfo(0x0101, "PreviewImageStart", N_("PreviewImage Start"), N_("Preview image start"), olympusCsId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0102, "PreviewImageLength", N_("PreviewImage Length"), N_("Preview image length"), olympusCsId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0200, "ExposureMode", N_("Exposure Mode"), N_("Exposure mode"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusExposureMode)), + TagInfo(0x0201, "AELock", N_("AE Lock"), N_("Auto exposure lock"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x0202, "MeteringMode", N_("Metering Mode"), N_("Metering mode"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusMeteringMode)), + TagInfo(0x0203, "ExposureShift", N_("Exposure Shift"), N_("Exposure shift"), olympusCsId, makerTags, signedRational, -1, printValue), + TagInfo(0x0300, "MacroMode", N_("Macro Mode"), N_("Macro mode"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusMacroMode)), + TagInfo(0x0301, "FocusMode", N_("Focus Mode"), N_("Focus mode"), olympusCsId, makerTags, unsignedShort, -1, printCs0x0301), + TagInfo(0x0302, "FocusProcess", N_("Focus Process"), N_("Focus process"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFocusProcess)), + TagInfo(0x0303, "AFSearch", N_("AF Search"), N_("AF search"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusAFSearch)), + TagInfo(0x0304, "AFAreas", N_("AF Areas"), N_("AF areas"), olympusCsId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0305, "AFPointSelected", N_("AFPointSelected"), N_("AFPointSelected"), olympusCsId, makerTags, signedRational, -1, printValue), + TagInfo(0x0307, "AFFineTuneAdj", N_("AF Fine Tune Adjust"), N_("AF fine tune adjust"), olympusCsId, makerTags, signedShort, -1, printValue), + TagInfo(0x0400, "FlashMode", N_("Flash Mode"), N_("Flash mode"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusFlashMode)), + TagInfo(0x0401, "FlashExposureComp", N_("Flash Exposure Compensation"), N_("Flash exposure compensation"), olympusCsId, makerTags, signedRational, -1, printValue), + TagInfo(0x0403, "FlashRemoteControl", N_("Flash Remote Control"), N_("Flash remote control"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFlashRemoteControl)), + TagInfo(0x0404, "FlashControlMode", N_("Flash Control Mode"), N_("Flash control mode"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFlashControlMode)), + TagInfo(0x0405, "FlashIntensity", N_("Flash Intensity"), N_("Flash intensity"), olympusCsId, makerTags, signedRational, -1, printValue), + TagInfo(0x0406, "ManualFlashStrength", N_("Manual Flash Strength"), N_("Manual flash strength"), olympusCsId, makerTags, signedRational, -1, printValue), + TagInfo(0x0500, "WhiteBalance", N_("White Balance 2"), N_("White balance 2"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusWhiteBalance)), + TagInfo(0x0501, "WhiteBalanceTemperature", N_("White Balance Temperature"), N_("White balance temperature"), olympusCsId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0502, "WhiteBalanceBracket", N_("White Balance Bracket"), N_("White balance bracket"), olympusCsId, makerTags, signedShort, -1, printValue), + TagInfo(0x0503, "CustomSaturation", N_("Custom Saturation"), N_("Custom saturation"), olympusCsId, makerTags, signedShort, -1, printValue), + TagInfo(0x0504, "ModifiedSaturation", N_("Modified Saturation"), N_("Modified saturation"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusModifiedSaturation)), + TagInfo(0x0505, "ContrastSetting", N_("Contrast Setting"), N_("Contrast setting"), olympusCsId, makerTags, signedShort, -1, printValue), + TagInfo(0x0506, "SharpnessSetting", N_("Sharpness Setting"), N_("Sharpness setting"), olympusCsId, makerTags, signedShort, -1, printValue), + TagInfo(0x0507, "ColorSpace", N_("Color Space"), N_("Color space"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusColorSpace)), + TagInfo(0x0509, "SceneMode", N_("Scene Mode"), N_("Scene mode"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusSceneMode)), + TagInfo(0x050a, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusNoiseReduction)), + TagInfo(0x050b, "DistortionCorrection", N_("Distortion Correction"), N_("Distortion correction"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x050c, "ShadingCompensation", N_("Shading Compensation"), N_("Shading compensation"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x050d, "CompressionFactor", N_("Compression Factor"), N_("Compression factor"), olympusCsId, makerTags, unsignedRational, -1, printValue), + TagInfo(0x050f, "Gradation", N_("Gradation"), N_("Gradation"), olympusCsId, makerTags, signedShort, -1, print0x050f), + TagInfo(0x0520, "PictureMode", N_("Picture Mode"), N_("Picture mode"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusPictureMode)), + TagInfo(0x0521, "PictureModeSaturation", N_("Picture Mode Saturation"), N_("Picture mode saturation"), olympusCsId, makerTags, signedShort, -1, printValue), + TagInfo(0x0522, "PictureModeHue", N_("Picture Mode Hue"), N_("Picture mode hue"), olympusCsId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0523, "PictureModeContrast", N_("Picture Mode Contrast"), N_("Picture mode contrast"), olympusCsId, makerTags, signedShort, -1, printValue), + TagInfo(0x0524, "PictureModeSharpness", N_("Picture Mode Sharpness"), N_("Picture mode sharpness"), olympusCsId, makerTags, signedShort, -1, printValue), + TagInfo(0x0525, "PictureModeBWFilter", N_("Picture Mode BW Filter"), N_("Picture mode BW filter"), olympusCsId, makerTags, signedShort, -1, EXV_PRINT_TAG(olympusPictureModeBWFilter)), + TagInfo(0x0526, "PictureModeTone", N_("Picture Mode Tone"), N_("Picture mode tone"), olympusCsId, makerTags, signedShort, -1, EXV_PRINT_TAG(olympusPictureModeTone)), + TagInfo(0x0527, "NoiseFilter", N_("Noise Filter"), N_("Noise filter"), olympusCsId, makerTags, signedShort, -1, print0x0527), + TagInfo(0x0529, "ArtFilter", N_("Art Filter"), N_("Art filter"), olympusCsId, makerTags, unsignedShort, -1, print0x0529), + TagInfo(0x052c, "MagicFilter", N_("Magic Filter"), N_("Magic filter"), olympusCsId, makerTags, unsignedShort, -1, print0x0529), + TagInfo(0x0600, "DriveMode", N_("Drive Mode"), N_("Drive mode"), olympusCsId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0601, "PanoramaMode", N_("Panorama Mode"), N_("Panorama mode"), olympusCsId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0603, "Quality", N_("Image Quality 2"), N_("Image quality 2"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusCsQuality)), + TagInfo(0x0604, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusImageStabilization)), + TagInfo(0x0900, "ManometerPressure", N_("Manometer Pressure"), N_("Manometer pressure"), olympusCsId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0901, "ManometerReading", N_("Manometer Reading"), N_("Manometer reading"), olympusCsId, makerTags, signedLong, -1, printValue), + TagInfo(0x0902, "ExtendedWBDetect", N_("Extended WB Detect"), N_("Extended WB detect"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x0903, "LevelGaugeRoll", N_("Level Gauge Roll"), N_("Level gauge roll"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x0904, "LevelGaugePitch", N_("Level Gauge Pitch"), N_("Level gauge pitch"), olympusCsId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), // End of list marker - TagInfo(0xffff, "(UnknownOlympusCsTag)", "(UnknownOlympusCsTag)", N_("Unknown OlympusCs tag"), olympusCsIfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownOlympusCsTag)", "(UnknownOlympusCsTag)", N_("Unknown OlympusCs tag"), olympusCsId, makerTags, asciiString, -1, printValue) }; const TagInfo* OlympusMakerNote::tagListCs() @@ -735,32 +735,32 @@ namespace Exiv2 { }; const TagInfo OlympusMakerNote::tagInfoEq_[] = { - TagInfo(0x0000, "EquipmentVersion", N_("Equipment Version"), N_("Equipment version"), olympusEqIfdId, makerTags, undefined, -1, printExifVersion), - TagInfo(0x0100, "CameraType", N_("Camera Type"), N_("Camera type"), olympusEqIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0101, "SerialNumber", N_("Serial Number"), N_("Serial number"), olympusEqIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0102, "InternalSerialNumber", N_("Internal Serial Number"), N_("Internal serial number"), olympusEqIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0103, "FocalPlaneDiagonal", N_("Focal Plane Diagonal"), N_("Focal plane diagonal"), olympusEqIfdId, makerTags, unsignedRational, -1, printValue), - TagInfo(0x0104, "BodyFirmwareVersion", N_("Body Firmware Version"), N_("Body firmware version"), olympusEqIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x0201, "LensType", N_("Lens Type"), N_("Lens type"), olympusEqIfdId, makerTags, unsignedByte, -1, print0x0201), - TagInfo(0x0202, "LensSerialNumber", N_("Lens Serial Number"), N_("Lens serial number"), olympusEqIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0203, "LensModel", N_("Lens Model"), N_("Lens model"), olympusEqIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0204, "LensFirmwareVersion", N_("Lens Firmware Version"), N_("Lens firmware version"), olympusEqIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x0205, "MaxApertureAtMinFocal", N_("Max Aperture At Min Focal"), N_("Max aperture at min focal"), olympusEqIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0206, "MaxApertureAtMaxFocal", N_("Max Aperture At Max Focal"), N_("Max aperture at max focal"), olympusEqIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0207, "MinFocalLength", N_("Min Focal Length"), N_("Min focal length"), olympusEqIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0208, "MaxFocalLength", N_("Max Focal Length"), N_("Max focal length"), olympusEqIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x020a, "MaxApertureAtCurrentFocal", N_("Max Aperture At Current Focal"), N_("Max aperture at current focal"), olympusEqIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x020b, "LensProperties", N_("Lens Properties"), N_("Lens properties"), olympusEqIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0301, "Extender", N_("Extender"), N_("Extender"), olympusEqIfdId, makerTags, unsignedByte, -1, printEq0x0301), - TagInfo(0x0302, "ExtenderSerialNumber", N_("Extender Serial Number"), N_("Extender serial number"), olympusEqIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0303, "ExtenderModel", N_("Extender Model"), N_("Extender model"), olympusEqIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0304, "ExtenderFirmwareVersion", N_("Extender Firmware Version"), N_("Extender firmwareversion"), olympusEqIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x1000, "FlashType", N_("Flash Type"), N_("Flash type"), olympusEqIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusEqFlashType)), - TagInfo(0x1001, "FlashModel", N_("Flash Model"), N_("Flash model"), olympusEqIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusEqFlashModel)), - TagInfo(0x1002, "FlashFirmwareVersion", N_("Flash Firmware Version"), N_("Flash firmware version"), olympusEqIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x1003, "FlashSerialNumber", N_("FlashSerialNumber"), N_("FlashSerialNumber"), olympusEqIfdId, makerTags, asciiString, -1, printValue), + TagInfo(0x0000, "EquipmentVersion", N_("Equipment Version"), N_("Equipment version"), olympusEqId, makerTags, undefined, -1, printExifVersion), + TagInfo(0x0100, "CameraType", N_("Camera Type"), N_("Camera type"), olympusEqId, makerTags, asciiString, -1, printValue), + TagInfo(0x0101, "SerialNumber", N_("Serial Number"), N_("Serial number"), olympusEqId, makerTags, asciiString, -1, printValue), + TagInfo(0x0102, "InternalSerialNumber", N_("Internal Serial Number"), N_("Internal serial number"), olympusEqId, makerTags, asciiString, -1, printValue), + TagInfo(0x0103, "FocalPlaneDiagonal", N_("Focal Plane Diagonal"), N_("Focal plane diagonal"), olympusEqId, makerTags, unsignedRational, -1, printValue), + TagInfo(0x0104, "BodyFirmwareVersion", N_("Body Firmware Version"), N_("Body firmware version"), olympusEqId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0201, "LensType", N_("Lens Type"), N_("Lens type"), olympusEqId, makerTags, unsignedByte, -1, print0x0201), + TagInfo(0x0202, "LensSerialNumber", N_("Lens Serial Number"), N_("Lens serial number"), olympusEqId, makerTags, asciiString, -1, printValue), + TagInfo(0x0203, "LensModel", N_("Lens Model"), N_("Lens model"), olympusEqId, makerTags, asciiString, -1, printValue), + TagInfo(0x0204, "LensFirmwareVersion", N_("Lens Firmware Version"), N_("Lens firmware version"), olympusEqId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0205, "MaxApertureAtMinFocal", N_("Max Aperture At Min Focal"), N_("Max aperture at min focal"), olympusEqId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0206, "MaxApertureAtMaxFocal", N_("Max Aperture At Max Focal"), N_("Max aperture at max focal"), olympusEqId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0207, "MinFocalLength", N_("Min Focal Length"), N_("Min focal length"), olympusEqId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0208, "MaxFocalLength", N_("Max Focal Length"), N_("Max focal length"), olympusEqId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x020a, "MaxApertureAtCurrentFocal", N_("Max Aperture At Current Focal"), N_("Max aperture at current focal"), olympusEqId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x020b, "LensProperties", N_("Lens Properties"), N_("Lens properties"), olympusEqId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0301, "Extender", N_("Extender"), N_("Extender"), olympusEqId, makerTags, unsignedByte, -1, printEq0x0301), + TagInfo(0x0302, "ExtenderSerialNumber", N_("Extender Serial Number"), N_("Extender serial number"), olympusEqId, makerTags, asciiString, -1, printValue), + TagInfo(0x0303, "ExtenderModel", N_("Extender Model"), N_("Extender model"), olympusEqId, makerTags, asciiString, -1, printValue), + TagInfo(0x0304, "ExtenderFirmwareVersion", N_("Extender Firmware Version"), N_("Extender firmwareversion"), olympusEqId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x1000, "FlashType", N_("Flash Type"), N_("Flash type"), olympusEqId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusEqFlashType)), + TagInfo(0x1001, "FlashModel", N_("Flash Model"), N_("Flash model"), olympusEqId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusEqFlashModel)), + TagInfo(0x1002, "FlashFirmwareVersion", N_("Flash Firmware Version"), N_("Flash firmware version"), olympusEqId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x1003, "FlashSerialNumber", N_("FlashSerialNumber"), N_("FlashSerialNumber"), olympusEqId, makerTags, asciiString, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownOlympusEqTag)", "(UnknownOlympusEqTag)", N_("Unknown OlympusEq tag"), olympusEqIfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownOlympusEqTag)", "(UnknownOlympusEqTag)", N_("Unknown OlympusEq tag"), olympusEqId, makerTags, asciiString, -1, printValue) }; const TagInfo* OlympusMakerNote::tagListEq() @@ -804,22 +804,22 @@ namespace Exiv2 { }; const TagInfo OlympusMakerNote::tagInfoRd_[] = { - TagInfo(0x0000, "RawDevVersion", N_("Raw Development Version"), N_("Raw development version"), olympusRdIfdId, makerTags, undefined, -1, printExifVersion), - TagInfo(0x0100, "ExposureBiasValue", N_("Exposure Bias Value"), N_("Exposure bias value"), olympusRdIfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x0101, "WhiteBalanceValue", N_("White Balance Value"), N_("White balance value"), olympusRdIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0102, "WBFineAdjustment", N_("WB Fine Adjustment"), N_("WB fine adjustment"), olympusRdIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0103, "GrayPoint", N_("Gray Point"), N_("Gray point"), olympusRdIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0104, "SaturationEmphasis", N_("Saturation Emphasis"), N_("Saturation emphasis"), olympusRdIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0105, "MemoryColorEmphasis", N_("Memory Color Emphasis"), N_("Memory color emphasis"), olympusRdIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0106, "ContrastValue", N_("Contrast Value"), N_("Contrast value"), olympusRdIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0107, "SharpnessValue", N_("Sharpness Value"), N_("Sharpness value"), olympusRdIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0108, "ColorSpace", N_("Color Space"), N_("Color space"), olympusRdIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRdColorSpace)), - TagInfo(0x0109, "Engine", N_("Engine"), N_("Engine"), olympusRdIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRdEngine)), - TagInfo(0x010a, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), olympusRdIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusNoiseReduction)), - TagInfo(0x010b, "EditStatus", N_("Edit Status"), N_("Edit status"), olympusRdIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRdEditStatus)), - TagInfo(0x010c, "Settings", N_("Settings"), N_("Settings"), olympusRdIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusRdSettings)), + TagInfo(0x0000, "RawDevVersion", N_("Raw Development Version"), N_("Raw development version"), olympusRdId, makerTags, undefined, -1, printExifVersion), + TagInfo(0x0100, "ExposureBiasValue", N_("Exposure Bias Value"), N_("Exposure bias value"), olympusRdId, makerTags, signedRational, -1, printValue), + TagInfo(0x0101, "WhiteBalanceValue", N_("White Balance Value"), N_("White balance value"), olympusRdId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0102, "WBFineAdjustment", N_("WB Fine Adjustment"), N_("WB fine adjustment"), olympusRdId, makerTags, signedShort, -1, printValue), + TagInfo(0x0103, "GrayPoint", N_("Gray Point"), N_("Gray point"), olympusRdId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0104, "SaturationEmphasis", N_("Saturation Emphasis"), N_("Saturation emphasis"), olympusRdId, makerTags, signedShort, -1, printValue), + TagInfo(0x0105, "MemoryColorEmphasis", N_("Memory Color Emphasis"), N_("Memory color emphasis"), olympusRdId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0106, "ContrastValue", N_("Contrast Value"), N_("Contrast value"), olympusRdId, makerTags, signedShort, -1, printValue), + TagInfo(0x0107, "SharpnessValue", N_("Sharpness Value"), N_("Sharpness value"), olympusRdId, makerTags, signedShort, -1, printValue), + TagInfo(0x0108, "ColorSpace", N_("Color Space"), N_("Color space"), olympusRdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRdColorSpace)), + TagInfo(0x0109, "Engine", N_("Engine"), N_("Engine"), olympusRdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRdEngine)), + TagInfo(0x010a, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), olympusRdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusNoiseReduction)), + TagInfo(0x010b, "EditStatus", N_("Edit Status"), N_("Edit status"), olympusRdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRdEditStatus)), + TagInfo(0x010c, "Settings", N_("Settings"), N_("Settings"), olympusRdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusRdSettings)), // End of list marker - TagInfo(0xffff, "(UnknownOlympusRdTag)", "(UnknownOlympusRdTag)", N_("Unknown OlympusRd tag"), olympusRdIfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownOlympusRdTag)", "(UnknownOlympusRdTag)", N_("Unknown OlympusRd tag"), olympusRdId, makerTags, asciiString, -1, printValue) }; const TagInfo* OlympusMakerNote::tagListRd() @@ -874,31 +874,31 @@ namespace Exiv2 { }; const TagInfo OlympusMakerNote::tagInfoRd2_[] = { - TagInfo(0x0000, "RawDev2Version", N_("Raw Development 2 Version"), N_("Raw development 2 version"), olympusRd2IfdId, makerTags, undefined, -1, printExifVersion), - TagInfo(0x0100, "ExposureBiasValue", N_("Exposure Bias Value"), N_("Exposure bias value"), olympusRd2IfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x0101, "WhiteBalance", N_("White Balance"), N_("White balance"), olympusRd2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2WhiteBalance)), - TagInfo(0x0102, "WhiteBalanceValue", N_("White Balance Value"), N_("White balance value"), olympusRd2IfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0103, "WBFineAdjustment", N_("WB Fine Adjustment"), N_("White balance fine adjustment"), olympusRd2IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0104, "GrayPoint", N_("Gray Point"), N_("Gray point"), olympusRd2IfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0105, "ContrastValue", N_("Contrast Value"), N_("Contrast value"), olympusRd2IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0106, "SharpnessValue", N_("Sharpness Value"), N_("Sharpness value"), olympusRd2IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0107, "SaturationEmphasis", N_("Saturation Emphasis"), N_("Saturation emphasis"), olympusRd2IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0108, "MemoryColorEmphasis", N_("Memory Color Emphasis"), N_("Memory color emphasis"), olympusRd2IfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0109, "ColorSpace", N_("Color Space"), N_("Color space"), olympusRd2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2ColorSpace)), - TagInfo(0x010a, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), olympusRd2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusNoiseReduction)), - TagInfo(0x010b, "Engine", N_("Engine"), N_("Engine"), olympusRd2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2Engine)), - TagInfo(0x010c, "PictureMode", N_("Picture Mode"), N_("Picture mode"), olympusRd2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2PictureMode)), - TagInfo(0x010d, "PMSaturation", N_("PM Saturation"), N_("Picture mode saturation"), olympusRd2IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x010e, "PMContrast", N_("PM Contrast"), N_("Picture mode contrast"), olympusRd2IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x010f, "PMSharpness", N_("PM Sharpness"), N_("Picture mode sharpness"), olympusRd2IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0110, "PM_BWFilter", N_("PM BW Filter"), N_("PM BW filter"), olympusRd2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2PM_BWFilter)), - TagInfo(0x0111, "PMPictureTone", N_("PM Picture Tone"), N_("PM picture tone"), olympusRd2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2PMPictureTone)), - TagInfo(0x0112, "Gradation", N_("Gradation"), N_("Gradation"), olympusRd2IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0113, "Saturation", N_("Saturation"), N_("Saturation"), olympusRd2IfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0119, "AutoGradation", N_("Auto Gradation"), N_("Auto gradation"), olympusRd2IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x0120, "PMNoiseFilter", N_("PM Noise Filter"), N_("Picture mode noise filter"), olympusRd2IfdId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0000, "RawDev2Version", N_("Raw Development 2 Version"), N_("Raw development 2 version"), olympusRd2Id, makerTags, undefined, -1, printExifVersion), + TagInfo(0x0100, "ExposureBiasValue", N_("Exposure Bias Value"), N_("Exposure bias value"), olympusRd2Id, makerTags, signedRational, -1, printValue), + TagInfo(0x0101, "WhiteBalance", N_("White Balance"), N_("White balance"), olympusRd2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2WhiteBalance)), + TagInfo(0x0102, "WhiteBalanceValue", N_("White Balance Value"), N_("White balance value"), olympusRd2Id, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0103, "WBFineAdjustment", N_("WB Fine Adjustment"), N_("White balance fine adjustment"), olympusRd2Id, makerTags, signedShort, -1, printValue), + TagInfo(0x0104, "GrayPoint", N_("Gray Point"), N_("Gray point"), olympusRd2Id, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0105, "ContrastValue", N_("Contrast Value"), N_("Contrast value"), olympusRd2Id, makerTags, signedShort, -1, printValue), + TagInfo(0x0106, "SharpnessValue", N_("Sharpness Value"), N_("Sharpness value"), olympusRd2Id, makerTags, signedShort, -1, printValue), + TagInfo(0x0107, "SaturationEmphasis", N_("Saturation Emphasis"), N_("Saturation emphasis"), olympusRd2Id, makerTags, signedShort, -1, printValue), + TagInfo(0x0108, "MemoryColorEmphasis", N_("Memory Color Emphasis"), N_("Memory color emphasis"), olympusRd2Id, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0109, "ColorSpace", N_("Color Space"), N_("Color space"), olympusRd2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2ColorSpace)), + TagInfo(0x010a, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), olympusRd2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusNoiseReduction)), + TagInfo(0x010b, "Engine", N_("Engine"), N_("Engine"), olympusRd2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2Engine)), + TagInfo(0x010c, "PictureMode", N_("Picture Mode"), N_("Picture mode"), olympusRd2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2PictureMode)), + TagInfo(0x010d, "PMSaturation", N_("PM Saturation"), N_("Picture mode saturation"), olympusRd2Id, makerTags, signedShort, -1, printValue), + TagInfo(0x010e, "PMContrast", N_("PM Contrast"), N_("Picture mode contrast"), olympusRd2Id, makerTags, signedShort, -1, printValue), + TagInfo(0x010f, "PMSharpness", N_("PM Sharpness"), N_("Picture mode sharpness"), olympusRd2Id, makerTags, signedShort, -1, printValue), + TagInfo(0x0110, "PM_BWFilter", N_("PM BW Filter"), N_("PM BW filter"), olympusRd2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2PM_BWFilter)), + TagInfo(0x0111, "PMPictureTone", N_("PM Picture Tone"), N_("PM picture tone"), olympusRd2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRd2PMPictureTone)), + TagInfo(0x0112, "Gradation", N_("Gradation"), N_("Gradation"), olympusRd2Id, makerTags, signedShort, -1, printValue), + TagInfo(0x0113, "Saturation", N_("Saturation"), N_("Saturation"), olympusRd2Id, makerTags, signedShort, -1, printValue), + TagInfo(0x0119, "AutoGradation", N_("Auto Gradation"), N_("Auto gradation"), olympusRd2Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x0120, "PMNoiseFilter", N_("PM Noise Filter"), N_("Picture mode noise filter"), olympusRd2Id, makerTags, unsignedShort, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownOlympusRd2Tag)", "(UnknownOlympusRd2Tag)", N_("Unknown OlympusRd2 tag"), olympusRd2IfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownOlympusRd2Tag)", "(UnknownOlympusRd2Tag)", N_("Unknown OlympusRd2 tag"), olympusRd2Id, makerTags, asciiString, -1, printValue) }; const TagInfo* OlympusMakerNote::tagListRd2() @@ -927,59 +927,59 @@ namespace Exiv2 { }; const TagInfo OlympusMakerNote::tagInfoIp_[] = { - TagInfo(0x0000, "ImageProcessingVersion", N_("Image Processing Version"), N_("Image processing version"), olympusIpIfdId, makerTags, undefined, -1, printExifVersion), - TagInfo(0x0100, "WB_RBLevels", N_("WB RB Levels"), N_("WB RB levels"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0102, "WB_RBLevels3000K", N_("WB RB Levels 3000K"), N_("WB RB levels 3000K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0103, "WB_RBLevels3300K", N_("WB RB Levels 3300K"), N_("WB RB levels 3300K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0104, "WB_RBLevels3600K", N_("WB RB Levels 3600K"), N_("WB RB levels 3600K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0105, "WB_RBLevels3900K", N_("WB RB Levels 3900K"), N_("WB RB levels 3900K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0106, "WB_RBLevels4000K", N_("WB RB Levels 4000K"), N_("WB RB levels 4000K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0107, "WB_RBLevels4300K", N_("WB RB Levels 4300K"), N_("WB RB levels 4300K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0108, "WB_RBLevels4500K", N_("WB RB Levels 4500K"), N_("WB RB levels 4500K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0109, "WB_RBLevels4800K", N_("WB RB Levels 4800K"), N_("WB RB levels 4800K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x010a, "WB_RBLevels5300K", N_("WB RB Levels 5300K"), N_("WB RB levels 5300K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x010b, "WB_RBLevels6000K", N_("WB RB Levels 6000K"), N_("WB RB levels 6000K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x010c, "WB_RBLevels6600K", N_("WB RB Levels 6600K"), N_("WB RB levels 6600K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x010d, "WB_RBLevels7500K", N_("WB RB Levels 7500K"), N_("WB RB levels 7500K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x010e, "WB_RBLevelsCWB1", N_("WB RB Levels CWB1"), N_("WB RB levels CWB1"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x010f, "WB_RBLevelsCWB2", N_("WB RB Levels CWB2"), N_("WB RB levels CWB2"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0110, "WB_RBLevelsCWB3", N_("WB RB Levels CWB3"), N_("WB RB levels CWB3"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0111, "WB_RBLevelsCWB4", N_("WB RB Levels CWB4"), N_("WB RB levels CWB4"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0113, "WB_GLevel3000K", N_("WB G Level 3000K"), N_("WB G level 3000K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0114, "WB_GLevel3300K", N_("WB G Level 3300K"), N_("WB G level 3300K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0115, "WB_GLevel3600K", N_("WB G Level 3600K"), N_("WB G level 3600K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0116, "WB_GLevel3900K", N_("WB G Level 3900K"), N_("WB G level 3900K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0117, "WB_GLevel4000K", N_("WB G Level 4000K"), N_("WB G level 4000K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0118, "WB_GLevel4300K", N_("WB G Level 4300K"), N_("WB G level 4300K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0119, "WB_GLevel4500K", N_("WB G Level 4500K"), N_("WB G level 4500K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x011a, "WB_GLevel4800K", N_("WB G Level 4800K"), N_("WB G level 4800K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x011b, "WB_GLevel5300K", N_("WB G Level 5300K"), N_("WB G level 5300K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x011c, "WB_GLevel6000K", N_("WB G Level 6000K"), N_("WB G level 6000K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x011d, "WB_GLevel6600K", N_("WB G Level 6600K"), N_("WB G level 6600K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x011e, "WB_GLevel7500K", N_("WB G Level 7500K"), N_("WB G level 7500K"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x011f, "WB_GLevel", N_("WB G Level"), N_("WB G level"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0200, "ColorMatrix", N_("Color Matrix"), N_("Color matrix"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0300, "Enhancer", N_("Enhancer"), N_("Enhancer"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0301, "EnhancerValues", N_("Enhancer Values"), N_("Enhancer values"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0310, "CoringFilter", N_("Coring Filter"), N_("Coring filter"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0311, "CoringValues", N_("Coring Values"), N_("Coring values"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0600, "BlackLevel", N_("Black Level"), N_("Black level"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0610, "GainBase", N_("Gain Base"), N_("Gain base"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0611, "ValidBits", N_("Valid Bits"), N_("Valid bits"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0612, "CropLeft", N_("Crop Left"), N_("Crop left"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0613, "CropTop", N_("Crop Top"), N_("Crop top"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0614, "CropWidth", N_("Crop Width"), N_("Crop width"), olympusIpIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x0615, "CropHeight", N_("Crop Height"), N_("Crop height"), olympusIpIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x1010, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), olympusIpIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusNoiseReduction)), - TagInfo(0x1011, "DistortionCorrection", N_("Distortion Correction"), N_("Distortion correction"), olympusIpIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x1012, "ShadingCompensation", N_("Shading Compensation"), N_("Shading compensation"), olympusIpIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x101c, "MultipleExposureMode", N_("Multiple Exposure Mode"), N_("Multiple exposure mode"), olympusIpIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusIpMultipleExposureMode)), - TagInfo(0x1112, "AspectRatio", N_("Aspect Ratio"), N_("Aspect ratio"), olympusIpIfdId, makerTags, unsignedByte, -1, EXV_PRINT_TAG(olympusIpAspectRatio)), - TagInfo(0x1113, "AspectFrame", N_("Aspect Frame"), N_("Aspect frame"), olympusIpIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x1200, "FaceDetect", N_("Face Detect"), N_("Face detect"), olympusIpIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x1201, "FaceDetectArea", N_("Face Detect Area"), N_("Face detect area"), olympusIpIfdId, makerTags, signedShort, -1, printValue), + TagInfo(0x0000, "ImageProcessingVersion", N_("Image Processing Version"), N_("Image processing version"), olympusIpId, makerTags, undefined, -1, printExifVersion), + TagInfo(0x0100, "WB_RBLevels", N_("WB RB Levels"), N_("WB RB levels"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0102, "WB_RBLevels3000K", N_("WB RB Levels 3000K"), N_("WB RB levels 3000K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0103, "WB_RBLevels3300K", N_("WB RB Levels 3300K"), N_("WB RB levels 3300K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0104, "WB_RBLevels3600K", N_("WB RB Levels 3600K"), N_("WB RB levels 3600K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0105, "WB_RBLevels3900K", N_("WB RB Levels 3900K"), N_("WB RB levels 3900K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0106, "WB_RBLevels4000K", N_("WB RB Levels 4000K"), N_("WB RB levels 4000K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0107, "WB_RBLevels4300K", N_("WB RB Levels 4300K"), N_("WB RB levels 4300K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0108, "WB_RBLevels4500K", N_("WB RB Levels 4500K"), N_("WB RB levels 4500K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0109, "WB_RBLevels4800K", N_("WB RB Levels 4800K"), N_("WB RB levels 4800K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x010a, "WB_RBLevels5300K", N_("WB RB Levels 5300K"), N_("WB RB levels 5300K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x010b, "WB_RBLevels6000K", N_("WB RB Levels 6000K"), N_("WB RB levels 6000K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x010c, "WB_RBLevels6600K", N_("WB RB Levels 6600K"), N_("WB RB levels 6600K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x010d, "WB_RBLevels7500K", N_("WB RB Levels 7500K"), N_("WB RB levels 7500K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x010e, "WB_RBLevelsCWB1", N_("WB RB Levels CWB1"), N_("WB RB levels CWB1"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x010f, "WB_RBLevelsCWB2", N_("WB RB Levels CWB2"), N_("WB RB levels CWB2"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0110, "WB_RBLevelsCWB3", N_("WB RB Levels CWB3"), N_("WB RB levels CWB3"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0111, "WB_RBLevelsCWB4", N_("WB RB Levels CWB4"), N_("WB RB levels CWB4"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0113, "WB_GLevel3000K", N_("WB G Level 3000K"), N_("WB G level 3000K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0114, "WB_GLevel3300K", N_("WB G Level 3300K"), N_("WB G level 3300K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0115, "WB_GLevel3600K", N_("WB G Level 3600K"), N_("WB G level 3600K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0116, "WB_GLevel3900K", N_("WB G Level 3900K"), N_("WB G level 3900K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0117, "WB_GLevel4000K", N_("WB G Level 4000K"), N_("WB G level 4000K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0118, "WB_GLevel4300K", N_("WB G Level 4300K"), N_("WB G level 4300K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0119, "WB_GLevel4500K", N_("WB G Level 4500K"), N_("WB G level 4500K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x011a, "WB_GLevel4800K", N_("WB G Level 4800K"), N_("WB G level 4800K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x011b, "WB_GLevel5300K", N_("WB G Level 5300K"), N_("WB G level 5300K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x011c, "WB_GLevel6000K", N_("WB G Level 6000K"), N_("WB G level 6000K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x011d, "WB_GLevel6600K", N_("WB G Level 6600K"), N_("WB G level 6600K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x011e, "WB_GLevel7500K", N_("WB G Level 7500K"), N_("WB G level 7500K"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x011f, "WB_GLevel", N_("WB G Level"), N_("WB G level"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0200, "ColorMatrix", N_("Color Matrix"), N_("Color matrix"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0300, "Enhancer", N_("Enhancer"), N_("Enhancer"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0301, "EnhancerValues", N_("Enhancer Values"), N_("Enhancer values"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0310, "CoringFilter", N_("Coring Filter"), N_("Coring filter"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0311, "CoringValues", N_("Coring Values"), N_("Coring values"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0600, "BlackLevel", N_("Black Level"), N_("Black level"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0610, "GainBase", N_("Gain Base"), N_("Gain base"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0611, "ValidBits", N_("Valid Bits"), N_("Valid bits"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0612, "CropLeft", N_("Crop Left"), N_("Crop left"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0613, "CropTop", N_("Crop Top"), N_("Crop top"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0614, "CropWidth", N_("Crop Width"), N_("Crop width"), olympusIpId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0615, "CropHeight", N_("Crop Height"), N_("Crop height"), olympusIpId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x1010, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), olympusIpId, makerTags, unsignedShort, -1, EXV_PRINT_TAG_BITMASK(olympusNoiseReduction)), + TagInfo(0x1011, "DistortionCorrection", N_("Distortion Correction"), N_("Distortion correction"), olympusIpId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x1012, "ShadingCompensation", N_("Shading Compensation"), N_("Shading compensation"), olympusIpId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x101c, "MultipleExposureMode", N_("Multiple Exposure Mode"), N_("Multiple exposure mode"), olympusIpId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusIpMultipleExposureMode)), + TagInfo(0x1112, "AspectRatio", N_("Aspect Ratio"), N_("Aspect ratio"), olympusIpId, makerTags, unsignedByte, -1, EXV_PRINT_TAG(olympusIpAspectRatio)), + TagInfo(0x1113, "AspectFrame", N_("Aspect Frame"), N_("Aspect frame"), olympusIpId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x1200, "FaceDetect", N_("Face Detect"), N_("Face detect"), olympusIpId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x1201, "FaceDetectArea", N_("Face Detect Area"), N_("Face detect area"), olympusIpId, makerTags, signedShort, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownOlympusIpTag)", "(UnknownOlympusIpTag)", N_("Unknown OlympusIp tag"), olympusIpIfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownOlympusIpTag)", "(UnknownOlympusIpTag)", N_("Unknown OlympusIp tag"), olympusIpId, makerTags, asciiString, -1, printValue) }; const TagInfo* OlympusMakerNote::tagListIp() @@ -994,27 +994,27 @@ namespace Exiv2 { }; const TagInfo OlympusMakerNote::tagInfoFi_[] = { - TagInfo(0x0000, "FocusInfoVersion", N_("Focus Info Version"), N_("Focus info version"), olympusFiIfdId, makerTags, undefined, -1, printExifVersion), - TagInfo(0x0209, "AutoFocus", N_("Auto Focus"), N_("Auto focus"), olympusFiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x0210, "SceneDetect", N_("Scene Detect"), N_("Scene detect"), olympusFiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0211, "SceneArea", N_("Scene Area"), N_("Scene area"), olympusFiIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x0212, "SceneDetectData", N_("Scene Detect Data"), N_("Scene detect data"), olympusFiIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x0300, "ZoomStepCount", N_("Zoom Step Count"), N_("Zoom step count"), olympusFiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0301, "FocusStepCount", N_("Focus Step Count"), N_("Focus step count"), olympusFiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0303, "FocusStepInfinity", N_("Focus Step Infinity"), N_("Focus step infinity"), olympusFiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0304, "FocusStepNear", N_("Focus Step Near"), N_("Focus step near"), olympusFiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0305, "FocusDistance", N_("Focus Distance"), N_("Focus distance"), olympusFiIfdId, makerTags, unsignedRational, -1, printValue), - TagInfo(0x0308, "AFPoint", N_("AF Point"), N_("AF point"), olympusFiIfdId, makerTags, unsignedShort, -1, print0x0308), - TagInfo(0x1201, "ExternalFlash", N_("External Flash"), N_("External flash"), olympusFiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x1203, "ExternalFlashGuideNumber", N_("External Flash Guide Number"), N_("External flash guide number"), olympusFiIfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x1204, "ExternalFlashBounce", N_("External Flash Bounce"), N_("External flash bounce"), olympusFiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFiExternalFlashBounce)), - TagInfo(0x1205, "ExternalFlashZoom", N_("External Flash Zoom"), N_("External flash zoom"), olympusFiIfdId, makerTags, unsignedRational, -1, printValue), - TagInfo(0x1208, "InternalFlash", N_("Internal Flash"), N_("Internal flash"), olympusFiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), - TagInfo(0x1209, "ManualFlash", N_("Manual Flash"), N_("Manual flash"), olympusFiIfdId, makerTags, unsignedShort, -1, print0x1209), - TagInfo(0x1500, "SensorTemperature", N_("Sensor Temperature"), N_("Sensor temperature"), olympusFiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x1600, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), olympusFiIfdId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0000, "FocusInfoVersion", N_("Focus Info Version"), N_("Focus info version"), olympusFiId, makerTags, undefined, -1, printExifVersion), + TagInfo(0x0209, "AutoFocus", N_("Auto Focus"), N_("Auto focus"), olympusFiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x0210, "SceneDetect", N_("Scene Detect"), N_("Scene detect"), olympusFiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0211, "SceneArea", N_("Scene Area"), N_("Scene area"), olympusFiId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0212, "SceneDetectData", N_("Scene Detect Data"), N_("Scene detect data"), olympusFiId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0300, "ZoomStepCount", N_("Zoom Step Count"), N_("Zoom step count"), olympusFiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0301, "FocusStepCount", N_("Focus Step Count"), N_("Focus step count"), olympusFiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0303, "FocusStepInfinity", N_("Focus Step Infinity"), N_("Focus step infinity"), olympusFiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0304, "FocusStepNear", N_("Focus Step Near"), N_("Focus step near"), olympusFiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0305, "FocusDistance", N_("Focus Distance"), N_("Focus distance"), olympusFiId, makerTags, unsignedRational, -1, printValue), + TagInfo(0x0308, "AFPoint", N_("AF Point"), N_("AF point"), olympusFiId, makerTags, unsignedShort, -1, print0x0308), + TagInfo(0x1201, "ExternalFlash", N_("External Flash"), N_("External flash"), olympusFiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x1203, "ExternalFlashGuideNumber", N_("External Flash Guide Number"), N_("External flash guide number"), olympusFiId, makerTags, signedRational, -1, printValue), + TagInfo(0x1204, "ExternalFlashBounce", N_("External Flash Bounce"), N_("External flash bounce"), olympusFiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusFiExternalFlashBounce)), + TagInfo(0x1205, "ExternalFlashZoom", N_("External Flash Zoom"), N_("External flash zoom"), olympusFiId, makerTags, unsignedRational, -1, printValue), + TagInfo(0x1208, "InternalFlash", N_("Internal Flash"), N_("Internal flash"), olympusFiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusOffOn)), + TagInfo(0x1209, "ManualFlash", N_("Manual Flash"), N_("Manual flash"), olympusFiId, makerTags, unsignedShort, -1, print0x1209), + TagInfo(0x1500, "SensorTemperature", N_("Sensor Temperature"), N_("Sensor temperature"), olympusFiId, makerTags, signedShort, -1, printValue), + TagInfo(0x1600, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), olympusFiId, makerTags, unsignedLong, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownOlympusFiTag)", "(UnknownOlympusFiTag)", N_("Unknown OlympusFi tag"), olympusFiIfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownOlympusFiTag)", "(UnknownOlympusFiTag)", N_("Unknown OlympusFi tag"), olympusFiId, makerTags, asciiString, -1, printValue) }; const TagInfo* OlympusMakerNote::tagListFi() @@ -1023,9 +1023,9 @@ namespace Exiv2 { } const TagInfo OlympusMakerNote::tagInfoFe_[] = { - TagInfo(0x0100, "BodyFirmwareVersion", N_("Body Firmware Version"), N_("Body firmware version"), olympusFe1IfdId, makerTags, asciiString, -1, printValue), + TagInfo(0x0100, "BodyFirmwareVersion", N_("Body Firmware Version"), N_("Body firmware version"), olympusFe1Id, makerTags, asciiString, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownOlympusFeTag)", "(UnknownOlympusFeTag)", N_("Unknown OlympusFe tag"), olympusFe1IfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownOlympusFeTag)", "(UnknownOlympusFeTag)", N_("Unknown OlympusFe tag"), olympusFe1Id, makerTags, asciiString, -1, printValue) }; const TagInfo* OlympusMakerNote::tagListFe() @@ -1050,44 +1050,44 @@ namespace Exiv2 { }; const TagInfo OlympusMakerNote::tagInfoRi_[] = { - TagInfo(0x0000, "RawInfoVersion", N_("Raw Info Version"), N_("Raw info version"), olympusRiIfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0100, "WB_RBLevelsUsed", N_("WB_RB Levels Used"), N_("WB_RB levels used"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0110, "WB_RBLevelsAuto", N_("WB_RB Levels Auto"), N_("WB_RB levels auto"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0120, "WB_RBLevelsShade", N_("WB_RB Levels Shade"), N_("WB_RB levels shade"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0121, "WB_RBLevelsCloudy", N_("WB_RB Levels Cloudy"), N_("WB_RB levels cloudy"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0122, "WB_RBLevelsFineWeather", N_("WB_RB Levels Fine Weather"), N_("WB_RB levels fine weather"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0123, "WB_RBLevelsTungsten", N_("WB_RB Levels Tungsten"), N_("WB_RB levels tungsten"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0124, "WB_RBLevelsEveningSunlight", N_("WB_RB Levels Evening Sunlight"), N_("WB_RB levels evening sunlight"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0130, "WB_RBLevelsDaylightFluor", N_("WB_RB Levels Daylight Fluor"), N_("WB_RB levels daylight fluor"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0131, "WB_RBLevelsDayWhiteFluor", N_("WB_RB Levels Day White Fluor"), N_("WB_RB levels day white fluor"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0132, "WB_RBLevelsCoolWhiteFluor", N_("WB_RB Levels Cool White Fluor"), N_("WB_RB levels cool white fluor"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0133, "WB_RBLevelsWhiteFluorescent", N_("WB_RB Levels White Fluorescent"), N_("WB_RB levels white fluorescent"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0200, "ColorMatrix2", N_("Color Matrix2"), N_("Color matrix 2"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0310, "CoringFilter", N_("Coring Filter"), N_("Coring filter"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0311, "CoringValues", N_("Coring Values"), N_("Coring values"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0600, "BlackLevel2", N_("Black Level 2"), N_("Black level 2"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0601, "YCbCrCoefficients", N_("YCbCr Coefficients"), N_("YCbCr coefficients"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0611, "ValidPixelDepth", N_("Valid Pixel Depth"), N_("Valid pixel depth"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0612, "CropLeft", N_("Crop Left"), N_("Crop left"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0613, "CropTop", N_("Crop Top"), N_("Crop top"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0614, "CropWidth", N_("Crop Width"), N_("Crop width"), olympusRiIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x0615, "CropHeight", N_("Crop Height"), N_("Crop height"), olympusRiIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x1000, "LightSource", N_("Light Source"), N_("Light source"), olympusRiIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRiLightSource)), - TagInfo(0x1001, "WhiteBalanceComp", N_("White Balance Comp"), N_("White balance comp"), olympusRiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x1010, "SaturationSetting", N_("Saturation Setting"), N_("Saturation setting"), olympusRiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x1011, "HueSetting", N_("Hue Setting"), N_("Hue setting"), olympusRiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x1012, "ContrastSetting", N_("Contrast Setting"), N_("Contrast setting"), olympusRiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x1013, "SharpnessSetting", N_("Sharpness Setting"), N_("Sharpness setting"), olympusRiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x2000, "CMExposureCompensation", N_("CM Exposure Compensation"), N_("CM exposure compensation"), olympusRiIfdId, makerTags, signedRational, -1, printValue), - TagInfo(0x2001, "CMWhiteBalance", N_("CM White Balance"), N_("CM white balance"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x2002, "CMWhiteBalanceComp", N_("CM White Balance Comp"), N_("CM white balance comp"), olympusRiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x2010, "CMWhiteBalanceGrayPoint", N_("CM White Balance Gray Point"), N_("CM white balance gray point"), olympusRiIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x2020, "CMSaturation", N_("CM Saturation"), N_("CM saturation"), olympusRiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x2021, "CMHue", N_("CM Hue"), N_("CM hue"), olympusRiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x2022, "CMContrast", N_("CM Contrast"), N_("CM contrast"), olympusRiIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x2023, "CMSharpness", N_("CM Sharpness"), N_("CM sharpness"), olympusRiIfdId, makerTags, signedShort, -1, printValue), + TagInfo(0x0000, "RawInfoVersion", N_("Raw Info Version"), N_("Raw info version"), olympusRiId, makerTags, undefined, -1, printValue), + TagInfo(0x0100, "WB_RBLevelsUsed", N_("WB_RB Levels Used"), N_("WB_RB levels used"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0110, "WB_RBLevelsAuto", N_("WB_RB Levels Auto"), N_("WB_RB levels auto"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0120, "WB_RBLevelsShade", N_("WB_RB Levels Shade"), N_("WB_RB levels shade"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0121, "WB_RBLevelsCloudy", N_("WB_RB Levels Cloudy"), N_("WB_RB levels cloudy"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0122, "WB_RBLevelsFineWeather", N_("WB_RB Levels Fine Weather"), N_("WB_RB levels fine weather"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0123, "WB_RBLevelsTungsten", N_("WB_RB Levels Tungsten"), N_("WB_RB levels tungsten"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0124, "WB_RBLevelsEveningSunlight", N_("WB_RB Levels Evening Sunlight"), N_("WB_RB levels evening sunlight"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0130, "WB_RBLevelsDaylightFluor", N_("WB_RB Levels Daylight Fluor"), N_("WB_RB levels daylight fluor"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0131, "WB_RBLevelsDayWhiteFluor", N_("WB_RB Levels Day White Fluor"), N_("WB_RB levels day white fluor"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0132, "WB_RBLevelsCoolWhiteFluor", N_("WB_RB Levels Cool White Fluor"), N_("WB_RB levels cool white fluor"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0133, "WB_RBLevelsWhiteFluorescent", N_("WB_RB Levels White Fluorescent"), N_("WB_RB levels white fluorescent"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0200, "ColorMatrix2", N_("Color Matrix2"), N_("Color matrix 2"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0310, "CoringFilter", N_("Coring Filter"), N_("Coring filter"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0311, "CoringValues", N_("Coring Values"), N_("Coring values"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0600, "BlackLevel2", N_("Black Level 2"), N_("Black level 2"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0601, "YCbCrCoefficients", N_("YCbCr Coefficients"), N_("YCbCr coefficients"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0611, "ValidPixelDepth", N_("Valid Pixel Depth"), N_("Valid pixel depth"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0612, "CropLeft", N_("Crop Left"), N_("Crop left"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0613, "CropTop", N_("Crop Top"), N_("Crop top"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0614, "CropWidth", N_("Crop Width"), N_("Crop width"), olympusRiId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x0615, "CropHeight", N_("Crop Height"), N_("Crop height"), olympusRiId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x1000, "LightSource", N_("Light Source"), N_("Light source"), olympusRiId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(olympusRiLightSource)), + TagInfo(0x1001, "WhiteBalanceComp", N_("White Balance Comp"), N_("White balance comp"), olympusRiId, makerTags, signedShort, -1, printValue), + TagInfo(0x1010, "SaturationSetting", N_("Saturation Setting"), N_("Saturation setting"), olympusRiId, makerTags, signedShort, -1, printValue), + TagInfo(0x1011, "HueSetting", N_("Hue Setting"), N_("Hue setting"), olympusRiId, makerTags, signedShort, -1, printValue), + TagInfo(0x1012, "ContrastSetting", N_("Contrast Setting"), N_("Contrast setting"), olympusRiId, makerTags, signedShort, -1, printValue), + TagInfo(0x1013, "SharpnessSetting", N_("Sharpness Setting"), N_("Sharpness setting"), olympusRiId, makerTags, signedShort, -1, printValue), + TagInfo(0x2000, "CMExposureCompensation", N_("CM Exposure Compensation"), N_("CM exposure compensation"), olympusRiId, makerTags, signedRational, -1, printValue), + TagInfo(0x2001, "CMWhiteBalance", N_("CM White Balance"), N_("CM white balance"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x2002, "CMWhiteBalanceComp", N_("CM White Balance Comp"), N_("CM white balance comp"), olympusRiId, makerTags, signedShort, -1, printValue), + TagInfo(0x2010, "CMWhiteBalanceGrayPoint", N_("CM White Balance Gray Point"), N_("CM white balance gray point"), olympusRiId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x2020, "CMSaturation", N_("CM Saturation"), N_("CM saturation"), olympusRiId, makerTags, signedShort, -1, printValue), + TagInfo(0x2021, "CMHue", N_("CM Hue"), N_("CM hue"), olympusRiId, makerTags, signedShort, -1, printValue), + TagInfo(0x2022, "CMContrast", N_("CM Contrast"), N_("CM contrast"), olympusRiId, makerTags, signedShort, -1, printValue), + TagInfo(0x2023, "CMSharpness", N_("CM Sharpness"), N_("CM sharpness"), olympusRiId, makerTags, signedShort, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownOlympusRiTag)", "(UnknownOlympusRiTag)", N_("Unknown OlympusRi tag"), olympusRiIfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownOlympusRiTag)", "(UnknownOlympusRiTag)", N_("Unknown OlympusRi tag"), olympusRiId, makerTags, asciiString, -1, printValue) }; const TagInfo* OlympusMakerNote::tagListRi() diff --git a/src/orfimage.cpp b/src/orfimage.cpp index 81f0efb6..633bbb8c 100644 --- a/src/orfimage.cpp +++ b/src/orfimage.cpp @@ -176,7 +176,7 @@ namespace Exiv2 { // Delete IFDs which do not occur in TIFF images static const IfdId filteredIfds[] = { - panaRawIfdId + panaRawId }; for (unsigned int i = 0; i < EXV_COUNTOF(filteredIfds); ++i) { #ifdef DEBUG diff --git a/src/panasonicmn.cpp b/src/panasonicmn.cpp index bbf07969..505a008f 100644 --- a/src/panasonicmn.cpp +++ b/src/panasonicmn.cpp @@ -229,59 +229,59 @@ namespace Exiv2 { // Panasonic MakerNote Tag Info const TagInfo PanasonicMakerNote::tagInfo_[] = { - TagInfo(0x0001, "Quality", N_("Quality"), N_("Image Quality"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicQuality)), - TagInfo(0x0002, "FirmwareVersion", N_("Firmware Version"), N_("Firmware version"), panasonicIfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0003, "WhiteBalance", N_("White Balance"), N_("White balance setting"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicWhiteBalance)), - TagInfo(0x0004, "0x0004", "0x0004", N_("Unknown"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0007, "FocusMode", N_("Focus Mode"), N_("Focus mode"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicFocusMode)), - TagInfo(0x000f, "AFMode", N_("AF Mode"), N_("AF mode"), panasonicIfdId, makerTags, unsignedByte, -1, print0x000f), - TagInfo(0x001a, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicImageStabilizer)), - TagInfo(0x001c, "Macro", N_("Macro"), N_("Macro mode"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicMacro)), - TagInfo(0x001f, "ShootingMode", N_("Shooting Mode"), N_("Shooting mode"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicShootingMode)), - TagInfo(0x0020, "Audio", N_("Audio"), N_("Audio"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicAudio)), - TagInfo(0x0021, "DataDump", N_("Data Dump"), N_("Data dump"), panasonicIfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0022, "0x0022", "0x0022", N_("Unknown"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0023, "WhiteBalanceBias", N_("White Balance Bias"), N_("White balance adjustment"), panasonicIfdId, makerTags, signedShort, -1, print0x0023), - TagInfo(0x0024, "FlashBias", N_("FlashBias"), N_("Flash bias"), panasonicIfdId, makerTags, signedShort, -1, printValue), - TagInfo(0x0025, "InternalSerialNumber", N_("Internal Serial Number"), N_("This number is unique, and contains the date of manufacture, but is not the same as the number printed on the camera body."), panasonicIfdId, makerTags, undefined, -1, printValue), - TagInfo(0x0026, "ExifVersion", "Exif Version", N_("Exif version"), panasonicIfdId, makerTags, undefined, -1, printExifVersion), - TagInfo(0x0027, "0x0027", "0x0027", N_("Unknown"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0028, "ColorEffect", N_("Color Effect"), N_("Color effect"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicColorEffect)), - TagInfo(0x0029, "TimeSincePowerOn", "Time since Power On", N_("Time in 1/100 s from when the camera was powered on to when the image is written to memory card"), panasonicIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x002a, "BurstMode", N_("Burst Mode"), N_("Burst mode"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicBurstMode)), - TagInfo(0x002b, "SequenceNumber", N_("Sequence Number"), N_("Sequence number"), panasonicIfdId, makerTags, unsignedLong, -1, printValue), - TagInfo(0x002c, "Contrast", N_("Contrast"), N_("Contrast setting"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicContrast)), - TagInfo(0x002d, "NoiseReduction", N_("NoiseReduction"), N_("Noise reduction"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicNoiseReduction)), - TagInfo(0x002e, "SelfTimer", N_("Self Timer"), N_("Self timer"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicSelfTimer)), - TagInfo(0x002f, "0x002f", "0x002f", N_("Unknown"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0030, "Rotation", N_("Rotation"), N_("Rotation"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicRotation)), - TagInfo(0x0031, "0x0031", "0x0031", N_("Unknown"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0032, "ColorMode", N_("Color Mode"), N_("Color mode"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicColorMode)), - TagInfo(0x0033, "BabyAge", N_("Baby Age"), N_("Baby (or pet) age"), panasonicIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0034, "OpticalZoomMode", N_("Optical Zoom Mode"), N_("Optical zoom mode"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicOpticalZoomMode)), - TagInfo(0x0035, "ConversionLens", N_("Conversion Lens"), N_("Conversion lens"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicConversionLens)), - TagInfo(0x0036, "TravelDay", N_("Travel Day"), N_("Travel day"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0039, "Contrast", N_("Contrast"), N_("Contrast"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x003a, "WorldTimeLocation", N_("World Time Location"), N_("World time location"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicWorldTimeLocation)), - TagInfo(0x003c, "ProgramISO", N_("Program ISO"), N_("Program ISO"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0040, "Saturation", N_("Saturation"), N_("Saturation"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0041, "Sharpness", N_("Sharpness"), N_("Sharpness"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0042, "FilmMode", N_("Film Mode"), N_("Film mode"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicFilmMode)), - TagInfo(0x0046, "WBAdjustAB", N_("WB Adjust AB"), N_("WB adjust AB. Positive is a shift toward blue."), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0047, "WBAdjustGM", N_("WB Adjust GM"), N_("WBAdjustGM. Positive is a shift toward green."), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x0051, "LensType", N_("Lens Type"), N_("Lens type"), panasonicIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0052, "LensSerialNumber", N_("Lens Serial Number"), N_("Lens serial number"), panasonicIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0053, "AccessoryType", N_("Accessory Type"), N_("Accessory type"), panasonicIfdId, makerTags, asciiString, -1, printValue), - TagInfo(0x0e00, "PrintIM", N_("Print IM"), N_("PrintIM information"), panasonicIfdId, makerTags, undefined, -1, printValue), - TagInfo(0x4449, "0x4449", "0x4449", N_("Unknown"), panasonicIfdId, makerTags, undefined, -1, printValue), - TagInfo(0x8000, "MakerNoteVersion", N_("MakerNote Version"), N_("MakerNote version"), panasonicIfdId, makerTags, undefined, -1, printExifVersion), - TagInfo(0x8001, "SceneMode", N_("Scene Mode"), N_("Scene mode"), panasonicIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicShootingMode)), - TagInfo(0x8004, "WBRedLevel", N_("WB Red Level"), N_("WB red level"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x8005, "WBGreenLevel", N_("WB Green Level"), N_("WB green level"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x8006, "WBBlueLevel", N_("WB Blue Level"), N_("WB blue level"), panasonicIfdId, makerTags, unsignedShort, -1, printValue), - TagInfo(0x8010, "BabyAge", N_("Baby Age"), N_("Baby (or pet) age"), panasonicIfdId, makerTags, asciiString, -1, printValue), + TagInfo(0x0001, "Quality", N_("Quality"), N_("Image Quality"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicQuality)), + TagInfo(0x0002, "FirmwareVersion", N_("Firmware Version"), N_("Firmware version"), panasonicId, makerTags, undefined, -1, printValue), + TagInfo(0x0003, "WhiteBalance", N_("White Balance"), N_("White balance setting"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicWhiteBalance)), + TagInfo(0x0004, "0x0004", "0x0004", N_("Unknown"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0007, "FocusMode", N_("Focus Mode"), N_("Focus mode"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicFocusMode)), + TagInfo(0x000f, "AFMode", N_("AF Mode"), N_("AF mode"), panasonicId, makerTags, unsignedByte, -1, print0x000f), + TagInfo(0x001a, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicImageStabilizer)), + TagInfo(0x001c, "Macro", N_("Macro"), N_("Macro mode"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicMacro)), + TagInfo(0x001f, "ShootingMode", N_("Shooting Mode"), N_("Shooting mode"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicShootingMode)), + TagInfo(0x0020, "Audio", N_("Audio"), N_("Audio"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicAudio)), + TagInfo(0x0021, "DataDump", N_("Data Dump"), N_("Data dump"), panasonicId, makerTags, undefined, -1, printValue), + TagInfo(0x0022, "0x0022", "0x0022", N_("Unknown"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0023, "WhiteBalanceBias", N_("White Balance Bias"), N_("White balance adjustment"), panasonicId, makerTags, signedShort, -1, print0x0023), + TagInfo(0x0024, "FlashBias", N_("FlashBias"), N_("Flash bias"), panasonicId, makerTags, signedShort, -1, printValue), + TagInfo(0x0025, "InternalSerialNumber", N_("Internal Serial Number"), N_("This number is unique, and contains the date of manufacture, but is not the same as the number printed on the camera body."), panasonicId, makerTags, undefined, -1, printValue), + TagInfo(0x0026, "ExifVersion", "Exif Version", N_("Exif version"), panasonicId, makerTags, undefined, -1, printExifVersion), + TagInfo(0x0027, "0x0027", "0x0027", N_("Unknown"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0028, "ColorEffect", N_("Color Effect"), N_("Color effect"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicColorEffect)), + TagInfo(0x0029, "TimeSincePowerOn", "Time since Power On", N_("Time in 1/100 s from when the camera was powered on to when the image is written to memory card"), panasonicId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x002a, "BurstMode", N_("Burst Mode"), N_("Burst mode"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicBurstMode)), + TagInfo(0x002b, "SequenceNumber", N_("Sequence Number"), N_("Sequence number"), panasonicId, makerTags, unsignedLong, -1, printValue), + TagInfo(0x002c, "Contrast", N_("Contrast"), N_("Contrast setting"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicContrast)), + TagInfo(0x002d, "NoiseReduction", N_("NoiseReduction"), N_("Noise reduction"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicNoiseReduction)), + TagInfo(0x002e, "SelfTimer", N_("Self Timer"), N_("Self timer"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicSelfTimer)), + TagInfo(0x002f, "0x002f", "0x002f", N_("Unknown"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0030, "Rotation", N_("Rotation"), N_("Rotation"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicRotation)), + TagInfo(0x0031, "0x0031", "0x0031", N_("Unknown"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0032, "ColorMode", N_("Color Mode"), N_("Color mode"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicColorMode)), + TagInfo(0x0033, "BabyAge", N_("Baby Age"), N_("Baby (or pet) age"), panasonicId, makerTags, asciiString, -1, printValue), + TagInfo(0x0034, "OpticalZoomMode", N_("Optical Zoom Mode"), N_("Optical zoom mode"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicOpticalZoomMode)), + TagInfo(0x0035, "ConversionLens", N_("Conversion Lens"), N_("Conversion lens"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicConversionLens)), + TagInfo(0x0036, "TravelDay", N_("Travel Day"), N_("Travel day"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0039, "Contrast", N_("Contrast"), N_("Contrast"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x003a, "WorldTimeLocation", N_("World Time Location"), N_("World time location"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicWorldTimeLocation)), + TagInfo(0x003c, "ProgramISO", N_("Program ISO"), N_("Program ISO"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0040, "Saturation", N_("Saturation"), N_("Saturation"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0041, "Sharpness", N_("Sharpness"), N_("Sharpness"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0042, "FilmMode", N_("Film Mode"), N_("Film mode"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicFilmMode)), + TagInfo(0x0046, "WBAdjustAB", N_("WB Adjust AB"), N_("WB adjust AB. Positive is a shift toward blue."), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0047, "WBAdjustGM", N_("WB Adjust GM"), N_("WBAdjustGM. Positive is a shift toward green."), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x0051, "LensType", N_("Lens Type"), N_("Lens type"), panasonicId, makerTags, asciiString, -1, printValue), + TagInfo(0x0052, "LensSerialNumber", N_("Lens Serial Number"), N_("Lens serial number"), panasonicId, makerTags, asciiString, -1, printValue), + TagInfo(0x0053, "AccessoryType", N_("Accessory Type"), N_("Accessory type"), panasonicId, makerTags, asciiString, -1, printValue), + TagInfo(0x0e00, "PrintIM", N_("Print IM"), N_("PrintIM information"), panasonicId, makerTags, undefined, -1, printValue), + TagInfo(0x4449, "0x4449", "0x4449", N_("Unknown"), panasonicId, makerTags, undefined, -1, printValue), + TagInfo(0x8000, "MakerNoteVersion", N_("MakerNote Version"), N_("MakerNote version"), panasonicId, makerTags, undefined, -1, printExifVersion), + TagInfo(0x8001, "SceneMode", N_("Scene Mode"), N_("Scene mode"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicShootingMode)), + TagInfo(0x8004, "WBRedLevel", N_("WB Red Level"), N_("WB red level"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x8005, "WBGreenLevel", N_("WB Green Level"), N_("WB green level"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x8006, "WBBlueLevel", N_("WB Blue Level"), N_("WB blue level"), panasonicId, makerTags, unsignedShort, -1, printValue), + TagInfo(0x8010, "BabyAge", N_("Baby Age"), N_("Baby (or pet) age"), panasonicId, makerTags, asciiString, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownPanasonicMakerNoteTag)", "(UnknownPanasonicMakerNoteTag)", N_("Unknown PanasonicMakerNote tag"), panasonicIfdId, makerTags, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownPanasonicMakerNoteTag)", "(UnknownPanasonicMakerNoteTag)", N_("Unknown PanasonicMakerNote tag"), panasonicId, makerTags, asciiString, -1, printValue) }; const TagInfo* PanasonicMakerNote::tagList() @@ -328,31 +328,31 @@ namespace Exiv2 { // Panasonic MakerNote Tag Info const TagInfo PanasonicMakerNote::tagInfoRaw_[] = { - TagInfo(0x0001, "Version", N_("Version"), N_("Panasonic raw version"), panaRawIfdId, panaRaw, undefined, -1, printExifVersion), - TagInfo(0x0002, "SensorWidth", N_("Sensor Width"), N_("Sensor width"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0003, "SensorHeight", N_("Sensor Height"), N_("Sensor height"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0004, "SensorTopBorder", N_("Sensor Top Border"), N_("Sensor top border"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0005, "SensorLeftBorder", N_("Sensor Left Border"), N_("Sensor left border"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0006, "ImageHeight", N_("Image Height"), N_("Image height"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0007, "ImageWidth", N_("Image Width"), N_("Image width"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0011, "RedBalance", N_("Red Balance"), N_("Red balance (found in Digilux 2 RAW images)"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0012, "BlueBalance", N_("Blue Balance"), N_("Blue balance"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0017, "ISOSpeed", N_("ISO Speed"), N_("ISO speed setting"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0024, "WBRedLevel", N_("WB Red Level"), N_("WB red level"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0025, "WBGreenLevel", N_("WB Green Level"), N_("WB green level"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0026, "WBBlueLevel", N_("WB Blue Level"), N_("WB blue level"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x002e, "PreviewImage", N_("Preview Image"), N_("Preview image"), panaRawIfdId, panaRaw, undefined, -1, printValue), - TagInfo(0x010f, "Make", N_("Manufacturer"), N_("The manufacturer of the recording equipment"), panaRawIfdId, panaRaw, asciiString, -1, printValue), - TagInfo(0x0110, "Model", N_("Model"), N_("The model name or model number of the equipment"), panaRawIfdId, panaRaw, asciiString, -1, printValue), - TagInfo(0x0111, "StripOffsets", N_("Strip Offsets"), N_("Strip offsets"), panaRawIfdId, panaRaw, unsignedLong, -1, printValue), - TagInfo(0x0112, "Orientation", N_("Orientation"), N_("Orientation"), panaRawIfdId, panaRaw, unsignedShort, -1, print0x0112), - TagInfo(0x0116, "RowsPerStrip", N_("Rows Per Strip"), N_("The number of rows per strip"), panaRawIfdId, panaRaw, unsignedShort, -1, printValue), - TagInfo(0x0117, "StripByteCounts", N_("Strip Byte Counts"), N_("Strip byte counts"), panaRawIfdId, panaRaw, unsignedLong, -1, printValue), - TagInfo(0x0118, "RawDataOffset", N_("Raw Data Offset"), N_("Raw data offset"), panaRawIfdId, panaRaw, unsignedLong, -1, printValue), - TagInfo(0x8769, "ExifTag", N_("Exif IFD Pointer"), N_("A pointer to the Exif IFD"), panaRawIfdId, panaRaw, unsignedLong, -1, printValue), - TagInfo(0x8825, "GPSTag", N_("GPS Info IFD Pointer"), N_("A pointer to the GPS Info IFD"), panaRawIfdId, panaRaw, unsignedLong, -1, printValue), + TagInfo(0x0001, "Version", N_("Version"), N_("Panasonic raw version"), panaRawId, panaRaw, undefined, -1, printExifVersion), + TagInfo(0x0002, "SensorWidth", N_("Sensor Width"), N_("Sensor width"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0003, "SensorHeight", N_("Sensor Height"), N_("Sensor height"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0004, "SensorTopBorder", N_("Sensor Top Border"), N_("Sensor top border"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0005, "SensorLeftBorder", N_("Sensor Left Border"), N_("Sensor left border"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0006, "ImageHeight", N_("Image Height"), N_("Image height"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0007, "ImageWidth", N_("Image Width"), N_("Image width"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0011, "RedBalance", N_("Red Balance"), N_("Red balance (found in Digilux 2 RAW images)"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0012, "BlueBalance", N_("Blue Balance"), N_("Blue balance"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0017, "ISOSpeed", N_("ISO Speed"), N_("ISO speed setting"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0024, "WBRedLevel", N_("WB Red Level"), N_("WB red level"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0025, "WBGreenLevel", N_("WB Green Level"), N_("WB green level"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0026, "WBBlueLevel", N_("WB Blue Level"), N_("WB blue level"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x002e, "PreviewImage", N_("Preview Image"), N_("Preview image"), panaRawId, panaRaw, undefined, -1, printValue), + TagInfo(0x010f, "Make", N_("Manufacturer"), N_("The manufacturer of the recording equipment"), panaRawId, panaRaw, asciiString, -1, printValue), + TagInfo(0x0110, "Model", N_("Model"), N_("The model name or model number of the equipment"), panaRawId, panaRaw, asciiString, -1, printValue), + TagInfo(0x0111, "StripOffsets", N_("Strip Offsets"), N_("Strip offsets"), panaRawId, panaRaw, unsignedLong, -1, printValue), + TagInfo(0x0112, "Orientation", N_("Orientation"), N_("Orientation"), panaRawId, panaRaw, unsignedShort, -1, print0x0112), + TagInfo(0x0116, "RowsPerStrip", N_("Rows Per Strip"), N_("The number of rows per strip"), panaRawId, panaRaw, unsignedShort, -1, printValue), + TagInfo(0x0117, "StripByteCounts", N_("Strip Byte Counts"), N_("Strip byte counts"), panaRawId, panaRaw, unsignedLong, -1, printValue), + TagInfo(0x0118, "RawDataOffset", N_("Raw Data Offset"), N_("Raw data offset"), panaRawId, panaRaw, unsignedLong, -1, printValue), + TagInfo(0x8769, "ExifTag", N_("Exif IFD Pointer"), N_("A pointer to the Exif IFD"), panaRawId, panaRaw, unsignedLong, -1, printValue), + TagInfo(0x8825, "GPSTag", N_("GPS Info IFD Pointer"), N_("A pointer to the GPS Info IFD"), panaRawId, panaRaw, unsignedLong, -1, printValue), // End of list marker - TagInfo(0xffff, "(UnknownPanasonicRawTag)", "(UnknownPanasonicRawTag)", N_("Unknown PanasonicRaw tag"), panaRawIfdId, panaRaw, asciiString, -1, printValue) + TagInfo(0xffff, "(UnknownPanasonicRawTag)", "(UnknownPanasonicRawTag)", N_("Unknown PanasonicRaw tag"), panaRawId, panaRaw, asciiString, -1, printValue) }; const TagInfo* PanasonicMakerNote::tagListRaw() diff --git a/src/pentaxmn.cpp b/src/pentaxmn.cpp index 78e16fbb..ac773543 100644 --- a/src/pentaxmn.cpp +++ b/src/pentaxmn.cpp @@ -863,266 +863,266 @@ namespace Exiv2 { const TagInfo PentaxMakerNote::tagInfo_[] = { TagInfo(0x0000, "Version", N_("Version"), N_("Pentax Makernote version"), - pentaxIfdId, makerTags, undefined, -1, printPentaxVersion), + pentaxId, makerTags, undefined, -1, printPentaxVersion), TagInfo(0x0001, "Mode", N_("Shooting mode"), N_("Camera shooting mode"), - pentaxIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxShootingMode)), + pentaxId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxShootingMode)), TagInfo(0x0002, "PreviewResolution", N_("Resolution of a preview image"), N_("Resolution of a preview image"), - pentaxIfdId, makerTags, undefined, -1, printPentaxResolution), + pentaxId, makerTags, undefined, -1, printPentaxResolution), TagInfo(0x0003, "PreviewLength", N_("Length of a preview image"), N_("Size of an IFD containing a preview image"), - pentaxIfdId, makerTags, undefined, -1, printValue), + pentaxId, makerTags, undefined, -1, printValue), TagInfo(0x0004, "PreviewOffset", N_("Pointer to a preview image"), N_("Offset to an IFD containing a preview image"), - pentaxIfdId, makerTags, undefined, -1, printValue), + pentaxId, makerTags, undefined, -1, printValue), TagInfo(0x0005, "ModelID", N_("Model identification"), N_("Pentax model idenfication"), - pentaxIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxModel)), + pentaxId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxModel)), TagInfo(0x0006, "Date", N_("Date"), N_("Date"), - pentaxIfdId, makerTags, undefined, -1, printPentaxDate), + pentaxId, makerTags, undefined, -1, printPentaxDate), TagInfo(0x0007, "Time", N_("Time"), N_("Time"), - pentaxIfdId, makerTags, undefined, -1, printPentaxTime), + pentaxId, makerTags, undefined, -1, printPentaxTime), TagInfo(0x0008, "Quality", N_("Image quality"), N_("Image quality settings"), - pentaxIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxQuality)), + pentaxId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxQuality)), TagInfo(0x0009, "Size", N_("Image size"), N_("Image size settings"), - pentaxIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxSize)), + pentaxId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxSize)), /* Some missing ! */ TagInfo(0x000c, "Flash", N_("Flash mode"), N_("Flash mode settings"), - pentaxIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxFlash)), + pentaxId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxFlash)), TagInfo(0x000d, "Focus", N_("Focus mode"), N_("Focus mode settings"), - pentaxIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxFocus)), + pentaxId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxFocus)), TagInfo(0x000e, "AFPoint", N_("AF point"), N_("Selected AF point"), - pentaxIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxAFPoint)), + pentaxId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxAFPoint)), TagInfo(0x000F, "AFPointInFocus", N_("AF point in focus"), N_("AF point in focus"), - pentaxIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxAFPointFocus)), + pentaxId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxAFPointFocus)), /* Some missing ! */ TagInfo(0x0012, "ExposureTime", N_("Exposure time"), N_("Exposure time"), - pentaxIfdId, makerTags, unsignedLong, -1, printPentaxExposure), + pentaxId, makerTags, unsignedLong, -1, printPentaxExposure), TagInfo(0x0013, "FNumber", N_("F-Number"), N_("F-Number"), - pentaxIfdId, makerTags, unsignedLong, -1, printPentaxFValue), + pentaxId, makerTags, unsignedLong, -1, printPentaxFValue), TagInfo(0x0014, "ISO", N_("ISO sensitivity"), N_("ISO sensitivity settings"), - pentaxIfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxISO)), + pentaxId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(pentaxISO)), /* Some missing ! */ TagInfo(0x0016, "ExposureCompensation", N_("Exposure compensation"), N_("Exposure compensation"), - pentaxIfdId, makerTags, unsignedLong, -1, printPentaxCompensation), + pentaxId, makerTags, unsignedLong, -1, printPentaxCompensation), /* Some missing ! */ TagInfo(0x0017, "MeteringMode", N_("MeteringMode"), N_("MeteringMode"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxMeteringMode)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxMeteringMode)), TagInfo(0x0018, "AutoBracketing", N_("AutoBracketing"), N_("AutoBracketing"), - pentaxIfdId, makerTags, undefined, -1, printPentaxBracketing), + pentaxId, makerTags, undefined, -1, printPentaxBracketing), TagInfo(0x0019, "WhiteBallance", N_("White ballance"), N_("White ballance"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxWhiteBallance)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxWhiteBallance)), TagInfo(0x001a, "WhiteBallanceMode", N_("White ballance mode"), N_("White ballance mode"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxWhiteBallanceMode)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxWhiteBallanceMode)), TagInfo(0x001b, "BlueBalance", N_("Blue balance"), N_("Blue color balance"), - pentaxIfdId, makerTags, unsignedLong, -1, printValue), + pentaxId, makerTags, unsignedLong, -1, printValue), TagInfo(0x001c, "RedBalance", N_("Red balance"), N_("Red color balance"), - pentaxIfdId, makerTags, unsignedLong, -1, printValue), + pentaxId, makerTags, unsignedLong, -1, printValue), TagInfo(0x001d, "FocalLength", N_("FocalLength"), N_("FocalLength"), - pentaxIfdId, makerTags, undefined, -1, printPentaxFocalLength), + pentaxId, makerTags, undefined, -1, printPentaxFocalLength), TagInfo(0x001e, "DigitalZoom", N_("Digital zoom"), N_("Digital zoom"), - pentaxIfdId, makerTags, unsignedLong, -1, printValue), + pentaxId, makerTags, unsignedLong, -1, printValue), TagInfo(0x001f, "Saturation", N_("Saturation"), N_("Saturation"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxSaturation)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxSaturation)), TagInfo(0x0020, "Contrast", N_("Contrast"), N_("Contrast"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxContrast)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxContrast)), TagInfo(0x0021, "Sharpness", N_("Sharpness"), N_("Sharpness"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxSharpness)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxSharpness)), TagInfo(0x0022, "Location", N_("Location"), N_("Location"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxLocation)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxLocation)), TagInfo(0x0023, "Hometown", N_("Hometown"), N_("Home town"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxCities)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxCities)), TagInfo(0x0024, "Destination", N_("Destination"), N_("Destination"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxCities)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxCities)), TagInfo(0x0025, "HometownDST", N_("Hometown DST"), N_("Whether day saving time is active in home town"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxYesNo)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxYesNo)), TagInfo(0x0026, "DestinationDST", N_("Destination DST"), N_("Whether day saving time is active in destination"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxYesNo)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_TAG(pentaxYesNo)), TagInfo(0x0027, "DSPFirmwareVersion", N_("DSPFirmwareVersion"), N_("DSPFirmwareVersion"), - pentaxIfdId, makerTags, unsignedByte, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, unsignedByte, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0028, "CPUFirmwareVersion", N_("CPUFirmwareVersion"), N_("CPUFirmwareVersion"), - pentaxIfdId, makerTags, unsignedByte, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, unsignedByte, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0029, "FrameNumber", N_("Frame number"), N_("Frame number"), - pentaxIfdId, makerTags, undefined, -1, printValue), + pentaxId, makerTags, undefined, -1, printValue), /* Some missing ! */ TagInfo(0x002d, "EffectiveLV", N_("Light value"), N_("Camera calculated light value, includes exposure compensation"), - pentaxIfdId, makerTags, unsignedShort, -1, printValue), + pentaxId, makerTags, unsignedShort, -1, printValue), /* Some missing ! */ TagInfo(0x0032, "ImageProcessing", N_("Image processing"), N_("Image processing"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_COMBITAG(pentaxImageProcessing, 4, 0)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_COMBITAG(pentaxImageProcessing, 4, 0)), TagInfo(0x0033, "PictureMode", N_("Picture mode"), N_("Picture mode"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_COMBITAG(pentaxPictureMode, 3, 0)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_COMBITAG(pentaxPictureMode, 3, 0)), TagInfo(0x0034, "DriveMode", N_("Drive mode"), N_("Drive mode"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_COMBITAG(pentaxDriveMode, 4, 0)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_COMBITAG(pentaxDriveMode, 4, 0)), /* Some missing ! */ TagInfo(0x0037, "ColorSpace", N_("Color space"), N_("Color space"), - pentaxIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxColorSpace)), + pentaxId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxColorSpace)), TagInfo(0x0038, "ImageAreaOffset", N_("Image area offset"), N_("Image area offset"), - pentaxIfdId, makerTags, unsignedLong, -1, printValue), + pentaxId, makerTags, unsignedLong, -1, printValue), TagInfo(0x0039, "RawImageSize", N_("Raw image size"), N_("Raw image size"), - pentaxIfdId, makerTags, unsignedLong, -1, printValue), + pentaxId, makerTags, unsignedLong, -1, printValue), /* Some missing ! */ TagInfo(0x003e, "PreviewImageBorders", N_("Preview image borders"), N_("Preview image borders"), - pentaxIfdId, makerTags, unsignedByte, -1, printValue), + pentaxId, makerTags, unsignedByte, -1, printValue), TagInfo(0x003f, "LensType", N_("Lens type"), N_("Lens type"), - pentaxIfdId, makerTags, unsignedByte, -1, EXV_PRINT_COMBITAG_MULTI(pentaxLensType, 2, 1, 2)), + pentaxId, makerTags, unsignedByte, -1, EXV_PRINT_COMBITAG_MULTI(pentaxLensType, 2, 1, 2)), TagInfo(0x0040, "SensitivityAdjust", N_("Sensitivity adjust"), N_("Sensitivity adjust"), - pentaxIfdId, makerTags, unsignedLong, -1, printValue), + pentaxId, makerTags, unsignedLong, -1, printValue), TagInfo(0x0041, "DigitalFilter", N_("Digital filter"), N_("Digital filter"), - pentaxIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxOffOn)), + pentaxId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxOffOn)), /* Some missing ! */ TagInfo(0x0047, "Temperature", N_("Temperature"), N_("Camera temperature"), - pentaxIfdId, makerTags, signedByte, -1, printPentaxTemperature), + pentaxId, makerTags, signedByte, -1, printPentaxTemperature), TagInfo(0x0048, "AELock", N_("AE lock"), N_("AE lock"), - pentaxIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxOffOn)), + pentaxId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxOffOn)), TagInfo(0x0049, "NoiseReduction", N_("Noise reduction"), N_("Noise reduction"), - pentaxIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxOffOn)), + pentaxId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxOffOn)), /* Some missing ! */ TagInfo(0x004d, "FlashExposureCompensation", N_("Flash exposure compensation"), N_("Flash exposure compensation"), - pentaxIfdId, makerTags, signedLong, -1, printPentaxFlashCompensation), + pentaxId, makerTags, signedLong, -1, printPentaxFlashCompensation), /* Some missing ! */ TagInfo(0x004f, "ImageTone", N_("Image tone"), N_("Image tone"), - pentaxIfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxImageTone)), + pentaxId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(pentaxImageTone)), TagInfo(0x0050, "ColorTemperature", N_("Colort temperature"), N_("Colort temperature"), - pentaxIfdId, makerTags, unsignedShort, -1, printValue), + pentaxId, makerTags, unsignedShort, -1, printValue), /* Some missing ! */ TagInfo(0x005c, "ShakeReduction", N_("Shake reduction"), N_("Shake reduction information"), - pentaxIfdId, makerTags, undefined, -1, printValue), + pentaxId, makerTags, undefined, -1, printValue), TagInfo(0x005d, "ShutterCount", N_("Shutter count"), N_("Shutter count"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: This has some encryption by date (see exiftool) */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: This has some encryption by date (see exiftool) */ TagInfo(0x0069, "DynamicRangeExpansion", N_("Dynamic range expansion"), N_("Dynamic range expansion"), - pentaxIfdId, makerTags, undefined, -1, EXV_PRINT_COMBITAG(pentaxDynamicRangeExpansion, 4, 0)), + pentaxId, makerTags, undefined, -1, EXV_PRINT_COMBITAG(pentaxDynamicRangeExpansion, 4, 0)), TagInfo(0x0071, "HighISONoiseReduction", N_("High ISO noise reduction"), N_("High ISO noise reduction"), - pentaxIfdId, makerTags, unsignedByte, -1, EXV_PRINT_TAG(pentaxHighISONoiseReduction)), + pentaxId, makerTags, unsignedByte, -1, EXV_PRINT_TAG(pentaxHighISONoiseReduction)), TagInfo(0x0072, "AFAdjustment", N_("AF Adjustment"), N_("AF Adjustment"), - pentaxIfdId, makerTags, undefined, -1, printValue), + pentaxId, makerTags, undefined, -1, printValue), /* Many missing ! */ TagInfo(0x0200, "BlackPoint", N_("Black point"), N_("Black point"), - pentaxIfdId, makerTags, undefined, -1, printValue), + pentaxId, makerTags, undefined, -1, printValue), TagInfo(0x0201, "WhitePoint", N_("White point"), N_("White point"), - pentaxIfdId, makerTags, undefined, -1, printValue), + pentaxId, makerTags, undefined, -1, printValue), /* Some missing ! */ TagInfo(0x0205, "ShotInfo", N_("ShotInfo"), N_("ShotInfo"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0206, "AEInfo", N_("AEInfo"), N_("AEInfo"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0207, "LensInfo", N_("LensInfo"), N_("LensInfo"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0208, "FlashInfo", N_("FlashInfo"), N_("FlashInfo"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0209, "AEMeteringSegments", N_("AEMeteringSegments"), N_("AEMeteringSegments"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x020a, "FlashADump", N_("FlashADump"), N_("FlashADump"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x020b, "FlashBDump", N_("FlashBDump"), N_("FlashBDump"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ /* Some missing ! */ TagInfo(0x020d, "WB_RGGBLevelsDaylight", N_("WB_RGGBLevelsDaylight"), N_("WB_RGGBLevelsDaylight"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x020e, "WB_RGGBLevelsShade", N_("WB_RGGBLevelsShade"), N_("WB_RGGBLevelsShade"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x020f, "WB_RGGBLevelsCloudy", N_("WB_RGGBLevelsCloudy"), N_("WB_RGGBLevelsCloudy"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0210, "WB_RGGBLevelsTungsten", N_("WB_RGGBLevelsTungsten"), N_("WB_RGGBLevelsTungsten"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0211, "WB_RGGBLevelsFluorescentD", N_("WB_RGGBLevelsFluorescentD"), N_("WB_RGGBLevelsFluorescentD"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0212, "WB_RGGBLevelsFluorescentN", N_("WB_RGGBLevelsFluorescentN"), N_("WB_RGGBLevelsFluorescentN"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0213, "WB_RGGBLevelsFluorescentW", N_("WB_RGGBLevelsFluorescentW"), N_("WB_RGGBLevelsFluorescentW"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0214, "WB_RGGBLevelsFlash", N_("WB_RGGBLevelsFlash"), N_("WB_RGGBLevelsFlash"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0215, "CameraInfo", N_("CameraInfo"), N_("CameraInfo"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0216, "BatteryInfo", N_("BatteryInfo"), N_("BatteryInfo"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x021f, "AFInfo", N_("AFInfo"), N_("AFInfo"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0222, "ColorInfo", N_("ColorInfo"), N_("ColorInfo"), - pentaxIfdId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ + pentaxId, makerTags, undefined, -1, printValue), /* TODO: Decoding missing */ TagInfo(0x0229, "SerialNumber", N_("Serial Number"), N_("Serial Number"), - pentaxIfdId, makerTags, asciiString, -1, printValue), + pentaxId, makerTags, asciiString, -1, printValue), // End of list marker TagInfo(0xffff, "(UnknownPentaxMakerNoteTag)", "(UnknownPentaxMakerNoteTag)", N_("Unknown PentaxMakerNote tag"), - pentaxIfdId, makerTags, asciiString, -1, printValue) + pentaxId, makerTags, asciiString, -1, printValue) }; const TagInfo* PentaxMakerNote::tagList() diff --git a/src/rw2image.cpp b/src/rw2image.cpp index 1e7528a4..0f891d3e 100644 --- a/src/rw2image.cpp +++ b/src/rw2image.cpp @@ -152,7 +152,7 @@ namespace Exiv2 { if (!prevData.empty()) { // Filter duplicate tags for (ExifData::const_iterator pos = exifData_.begin(); pos != exifData_.end(); ++pos) { - if (pos->ifdId() == panaRawIfdId) continue; + if (pos->ifdId() == panaRawId) continue; ExifData::iterator dup = prevData.findKey(ExifKey(pos->key())); if (dup != prevData.end()) { #ifdef DEBUG diff --git a/src/sigmamn.cpp b/src/sigmamn.cpp index 8e8ae346..3ce8c9e4 100644 --- a/src/sigmamn.cpp +++ b/src/sigmamn.cpp @@ -55,76 +55,77 @@ namespace Exiv2 { const TagInfo SigmaMakerNote::tagInfo_[] = { TagInfo(0x0002, "SerialNumber", N_("Serial Number"), N_("Camera serial number"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x0003, "DriveMode", N_("Drive Mode"), N_("Drive mode"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x0004, "ResolutionMode", N_("Resolution Mode"), - N_("Resolution mode"), sigmaIfdId, makerTags, asciiString, -1, printValue), + N_("Resolution mode"), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x0005, "AutofocusMode", N_("Autofocus Mode"), N_("Autofocus mode"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x0006, "FocusSetting", N_("Focus Setting"), N_("Focus setting"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x0007, "WhiteBalance", N_("White Balance"), N_("White balance"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x0008, "ExposureMode", N_("Exposure Mode"), N_("Exposure mode"), - sigmaIfdId, makerTags, asciiString, -1, print0x0008), + sigmaId, makerTags, asciiString, -1, print0x0008), TagInfo(0x0009, "MeteringMode", N_("Metering Mode"), N_("Metering mode"), - sigmaIfdId, makerTags, asciiString, -1, print0x0009), + sigmaId, makerTags, asciiString, -1, print0x0009), TagInfo(0x000a, "LensRange", N_("Lens Range"), N_("Lens focal length range"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x000b, "ColorSpace", N_("Color Space"), N_("Color space"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x000c, "Exposure", N_("Exposure"), N_("Exposure"), - sigmaIfdId, makerTags, asciiString, -1, printStripLabel), + sigmaId, makerTags, asciiString, -1, printStripLabel), TagInfo(0x000d, "Contrast", N_("Contrast"), N_("Contrast"), - sigmaIfdId, makerTags, asciiString, -1, printStripLabel), + sigmaId, makerTags, asciiString, -1, printStripLabel), TagInfo(0x000e, "Shadow", N_("Shadow"), N_("Shadow"), - sigmaIfdId, makerTags, asciiString, -1, printStripLabel), + sigmaId, makerTags, asciiString, -1, printStripLabel), TagInfo(0x000f, "Highlight", N_("Highlight"), N_("Highlight"), - sigmaIfdId, makerTags, asciiString, -1, printStripLabel), + sigmaId, makerTags, asciiString, -1, printStripLabel), TagInfo(0x0010, "Saturation", N_("Saturation"), N_("Saturation"), - sigmaIfdId, makerTags, asciiString, -1, printStripLabel), + sigmaId, makerTags, asciiString, -1, printStripLabel), TagInfo(0x0011, "Sharpness", N_("Sharpness"), N_("Sharpness"), - sigmaIfdId, makerTags, asciiString, -1, printStripLabel), + sigmaId, makerTags, asciiString, -1, printStripLabel), TagInfo(0x0012, "FillLight", N_("Fill Light"), N_("X3 Fill light"), - sigmaIfdId, makerTags, asciiString, -1, printStripLabel), + sigmaId, makerTags, asciiString, -1, printStripLabel), TagInfo(0x0014, "ColorAdjustment", N_("Color Adjustment"), N_("Color adjustment"), - sigmaIfdId, makerTags, asciiString, -1, printStripLabel), + sigmaId, makerTags, asciiString, -1, printStripLabel), TagInfo(0x0015, "AdjustmentMode", N_("Adjustment Mode"), N_("Adjustment mode"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x0016, "Quality", N_("Quality"), N_("Quality"), - sigmaIfdId, makerTags, asciiString, -1, printStripLabel), + sigmaId, makerTags, asciiString, -1, printStripLabel), TagInfo(0x0017, "Firmware", N_("Firmware"), N_("Firmware"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x0018, "Software", N_("Software"), N_("Software"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), TagInfo(0x0019, "AutoBracket", N_("Auto Bracket"), N_("Auto bracket"), - sigmaIfdId, makerTags, asciiString, -1, printValue), + sigmaId, makerTags, asciiString, -1, printValue), // End of list marker TagInfo(0xffff, "(UnknownSigmaMakerNoteTag)", "(UnknownSigmaMakerNoteTag)", N_("Unknown SigmaMakerNote tag"), - sigmaIfdId, makerTags, asciiString, -1, printValue) + sigmaId, makerTags, asciiString, -1, printValue) }; const TagInfo* SigmaMakerNote::tagList() diff --git a/src/sonymn.cpp b/src/sonymn.cpp index e38b239c..ad44c180 100644 --- a/src/sonymn.cpp +++ b/src/sonymn.cpp @@ -273,166 +273,166 @@ namespace Exiv2 { const TagInfo SonyMakerNote::tagInfo_[] = { TagInfo(0x0102, "Quality", N_("Image Quality"), N_("Image quality"), - sony1IfdId, makerTags, unsignedLong, -1, printMinoltaSonyImageQuality), + sony1Id, makerTags, unsignedLong, -1, printMinoltaSonyImageQuality), TagInfo(0x0104, "FlashExposureComp", N_("Flash Exposure Compensation"), N_("Flash exposure compensation in EV"), - sony1IfdId, makerTags, signedRational, -1, print0x9204), + sony1Id, makerTags, signedRational, -1, print0x9204), TagInfo(0x0105, "Teleconverter", N_("Teleconverter Model"), N_("Teleconverter Model"), - sony1IfdId, makerTags, unsignedLong, -1, printMinoltaSonyTeleconverterModel), + sony1Id, makerTags, unsignedLong, -1, printMinoltaSonyTeleconverterModel), TagInfo(0x0112, "WhiteBalanceFineTune", N_("White Balance Fine Tune"), N_("White Balance Fine Tune Value"), - sony1IfdId, makerTags, unsignedLong, -1, printValue), + sony1Id, makerTags, unsignedLong, -1, printValue), TagInfo(0x0114, "CameraSettings", N_("Camera Settings"), N_("Camera Settings"), - sony1IfdId, makerTags, undefined, -1, printValue), + sony1Id, makerTags, undefined, -1, printValue), TagInfo(0x0115, "WhiteBalance", N_("White Balance"), N_("White balance"), - sony1IfdId, makerTags, unsignedLong, -1, printMinoltaSonyWhiteBalanceStd), + sony1Id, makerTags, unsignedLong, -1, printMinoltaSonyWhiteBalanceStd), TagInfo(0x0116, "0x0116", "0x0116", N_("Unknown"), - sony1IfdId, makerTags, undefined, -1, printValue), + sony1Id, makerTags, undefined, -1, printValue), TagInfo(0x0E00, "PrintIM", N_("Print IM"), N_("PrintIM information"), - sony1IfdId, makerTags, undefined, -1, printValue), + sony1Id, makerTags, undefined, -1, printValue), TagInfo(0x1000, "MultiBurstMode", N_("Multi Burst Mode"), N_("Multi Burst Mode"), - sony1IfdId, makerTags, undefined, -1, printMinoltaSonyBoolValue), + sony1Id, makerTags, undefined, -1, printMinoltaSonyBoolValue), TagInfo(0x1001, "MultiBurstImageWidth", N_("Multi Burst Image Width"), N_("Multi Burst Image Width"), - sony1IfdId, makerTags, unsignedShort, -1, printValue), + sony1Id, makerTags, unsignedShort, -1, printValue), TagInfo(0x1002, "MultiBurstImageHeight", N_("Multi Burst Image Height"), N_("Multi Burst Image Height"), - sony1IfdId, makerTags, unsignedShort, -1, printValue), + sony1Id, makerTags, unsignedShort, -1, printValue), // TODO : Implement Panorama tags decoding. TagInfo(0x1003, "Panorama", N_("Panorama"), N_("Panorama"), - sony1IfdId, makerTags, undefined, -1, printValue), + sony1Id, makerTags, undefined, -1, printValue), TagInfo(0x2000, "0x2000", "0x2000", N_("Unknown"), - sony1IfdId, makerTags, undefined, -1, printValue), + sony1Id, makerTags, undefined, -1, printValue), TagInfo(0x2001, "PreviewImage", N_("Preview Image"), N_("JPEG preview image"), - sony1IfdId, makerTags, undefined, -1, printValue), + sony1Id, makerTags, undefined, -1, printValue), TagInfo(0x2002, "0x2002", "0x2002", N_("Unknown"), - sony1IfdId, makerTags, unsignedLong, -1, printValue), + sony1Id, makerTags, unsignedLong, -1, printValue), TagInfo(0x2003, "0x2003", "0x2003", N_("Unknown"), - sony1IfdId, makerTags, asciiString, -1, printValue), + sony1Id, makerTags, asciiString, -1, printValue), TagInfo(0x2004, "Contrast", "Contrast", N_("Contrast"), - sony1IfdId, makerTags, signedLong, -1, printValue), + sony1Id, makerTags, signedLong, -1, printValue), TagInfo(0x2005, "Saturation", "Saturation", N_("Saturation"), - sony1IfdId, makerTags, signedLong, -1, printValue), + sony1Id, makerTags, signedLong, -1, printValue), TagInfo(0x2006, "0x2006", "0x2006", N_("Unknown"), - sony1IfdId, makerTags, signedLong, -1, printValue), + sony1Id, makerTags, signedLong, -1, printValue), TagInfo(0x2007, "0x2007", "0x2007", N_("Unknown"), - sony1IfdId, makerTags, signedLong, -1, printValue), + sony1Id, makerTags, signedLong, -1, printValue), TagInfo(0x2008, "0x2008", "0x2008", N_("Unknown"), - sony1IfdId, makerTags, signedLong, -1, printValue), + sony1Id, makerTags, signedLong, -1, printValue), TagInfo(0x2009, "0x2009", "0x2009", N_("Unknown"), - sony1IfdId, makerTags, unsignedShort, -1, printValue), + sony1Id, makerTags, unsignedShort, -1, printValue), TagInfo(0x200A, "AutoHDR", N_("Auto HDR"), N_("High Definition Range Mode"), - sony1IfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(sonyHDRMode)), + sony1Id, makerTags, unsignedLong, -1, EXV_PRINT_TAG(sonyHDRMode)), // TODO : Implement Shot Info tags decoding. TagInfo(0x3000, "ShotInfo", N_("Shot Info"), N_("Shot Information"), - sony1IfdId, makerTags, undefined, -1, printValue), + sony1Id, makerTags, undefined, -1, printValue), TagInfo(0xB000, "FileFormat", N_("File Format"), N_("File Format"), - sony1IfdId, makerTags, unsignedByte, -1, print0xb000), + sony1Id, makerTags, unsignedByte, -1, print0xb000), TagInfo(0xB001, "SonyModelID", N_("Sony Model ID"), N_("Sony Model ID"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyModelId)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyModelId)), TagInfo(0xB020, "ColorReproduction", N_("Color Reproduction"), N_("Color Reproduction"), - sony1IfdId, makerTags, asciiString, -1, printValue), + sony1Id, makerTags, asciiString, -1, printValue), TagInfo(0xb021, "ColorTemperature", N_("Color Temperature"), N_("Color Temperature"), - sony1IfdId, makerTags, unsignedLong, -1, printValue), + sony1Id, makerTags, unsignedLong, -1, printValue), TagInfo(0xB022, "ColorCompensationFilter", N_("Color Compensation Filter"), N_("Color Compensation Filter: negative is green, positive is magenta"), - sony1IfdId, makerTags, unsignedLong, -1, printValue), + sony1Id, makerTags, unsignedLong, -1, printValue), TagInfo(0xB023, "SceneMode", N_("Scene Mode"), N_("Scene Mode"), - sony1IfdId, makerTags, unsignedLong, -1, printMinoltaSonySceneMode), + sony1Id, makerTags, unsignedLong, -1, printMinoltaSonySceneMode), TagInfo(0xB024, "ZoneMatching", N_("Zone Matching"), N_("Zone Matching"), - sony1IfdId, makerTags, unsignedLong, -1, printMinoltaSonyZoneMatching), + sony1Id, makerTags, unsignedLong, -1, printMinoltaSonyZoneMatching), TagInfo(0xB025, "DynamicRangeOptimizer", N_("Dynamic Range Optimizer"), N_("Dynamic Range Optimizer"), - sony1IfdId, makerTags, unsignedLong, -1, EXV_PRINT_TAG(print0xb025)), + sony1Id, makerTags, unsignedLong, -1, EXV_PRINT_TAG(print0xb025)), TagInfo(0xB026, "ImageStabilization", N_("Image Stabilization"), N_("Image stabilization"), - sony1IfdId, makerTags, unsignedLong, -1, printMinoltaSonyBoolValue), + sony1Id, makerTags, unsignedLong, -1, printMinoltaSonyBoolValue), TagInfo(0xB027, "LensID", N_("Lens ID"), N_("Lens identifier"), - sony1IfdId, makerTags, unsignedLong, -1, printMinoltaSonyLensID), + sony1Id, makerTags, unsignedLong, -1, printMinoltaSonyLensID), TagInfo(0xB028, "MinoltaMakerNote", N_("Minolta MakerNote"), N_("Minolta MakerNote"), - sony1IfdId, makerTags, undefined, -1, printValue), + sony1Id, makerTags, undefined, -1, printValue), TagInfo(0xB029, "ColorMode", N_("Color Mode"), N_("Color Mode"), - sony1IfdId, makerTags, unsignedLong, -1, printMinoltaSonyColorMode), + sony1Id, makerTags, unsignedLong, -1, printMinoltaSonyColorMode), TagInfo(0xB02B, "FullImageSize", N_("Full Image Size"), N_("Full Image Size"), - sony1IfdId, makerTags, unsignedLong, -1, printImageSize), + sony1Id, makerTags, unsignedLong, -1, printImageSize), TagInfo(0xB02C, "PreviewImageSize", N_("Preview Image Size"), N_("Preview image size"), - sony1IfdId, makerTags, unsignedLong, -1, printImageSize), + sony1Id, makerTags, unsignedLong, -1, printImageSize), TagInfo(0xB040, "Macro", N_("Macro"), N_("Macro"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyMacroMode)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyMacroMode)), TagInfo(0xB041, "ExposureMode", N_("Exposure Mode"), N_("Exposure Mode"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyExposureMode)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyExposureMode)), TagInfo(0xB042, "FocusMode", N_("Focus Mode"), N_("Focus Mode"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyFocusMode)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyFocusMode)), TagInfo(0xB043, "AFMode", N_("AF Mode"), N_("AF Mode"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyAFMode)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyAFMode)), TagInfo(0xB044, "AFIlluminator", N_("AF Illuminator"), N_("AF Illuminator"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyAFIlluminator)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyAFIlluminator)), TagInfo(0xB047, "JPEGQuality", N_("JPEG Quality"), N_("JPEG Quality"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyJPEGQuality)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyJPEGQuality)), TagInfo(0xB048, "FlashLevel", N_("Flash Level"), N_("Flash Level"), - sony1IfdId, makerTags, signedShort, -1, EXV_PRINT_TAG(sonyFlashLevel)), + sony1Id, makerTags, signedShort, -1, EXV_PRINT_TAG(sonyFlashLevel)), TagInfo(0xB049, "ReleaseMode", N_("Release Mode"), N_("Release Mode"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyReleaseMode)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyReleaseMode)), TagInfo(0xB04A, "SequenceNumber", N_("Sequence Number"), N_("Shot number in continous burst mode"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonySequenceNumber)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonySequenceNumber)), TagInfo(0xB04B, "AntiBlur", N_("Anti-Blur"), N_("Anti-Blur"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyAntiBlur)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyAntiBlur)), TagInfo(0xB04E, "LongExposureNoiseReduction", N_("Long Exposure Noise Reduction"), N_("Long Exposure Noise Reduction"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyLongExposureNoiseReduction)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyLongExposureNoiseReduction)), TagInfo(0xB04F, "DynamicRangeOptimizer", N_("Dynamic Range Optimizer"), N_("Dynamic Range Optimizer"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(print0xb04f)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(print0xb04f)), TagInfo(0xB052, "IntelligentAuto", N_("Intelligent Auto"), N_("Intelligent Auto"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyIntelligentAuto)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyIntelligentAuto)), TagInfo(0xB054, "WhiteBalance2", N_("White Balance 2"), N_("White balance 2"), - sony1IfdId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyWhiteBalance)), + sony1Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(sonyWhiteBalance)), // End of list marker TagInfo(0xffff, "(UnknownSony1MakerNoteTag)", "(UnknownSony1MakerNoteTag)", N_("Unknown Sony1MakerNote tag"), - sony1IfdId, makerTags, asciiString, -1, printValue) + sony1Id, makerTags, asciiString, -1, printValue) }; const TagInfo* SonyMakerNote::tagList() @@ -557,102 +557,102 @@ namespace Exiv2 { // NOTE: A700 only TagInfo(0x0004, "DriveMode", N_("Drive Mode"), N_("Drive Mode"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyDriveModeStd)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyDriveModeStd)), // NOTE: A700 only TagInfo(0x0006, "WhiteBalanceFineTune", N_("White Balance Fine Tune"), N_("White Balance Fine Tune"), - sony1CsIfdId, makerTags, signedShort, 1, printValue), + sony1CsId, makerTags, signedShort, 1, printValue), TagInfo(0x0010, "FocusMode", N_("Focus Mode"), N_("Focus Mode"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCSFocusMode)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCSFocusMode)), TagInfo(0x0011, "AFAreaMode", N_("AF Area Mode"), N_("AF Area Mode"), - sony1CsIfdId, makerTags, unsignedShort, 1, printMinoltaSonyAFAreaMode), + sony1CsId, makerTags, unsignedShort, 1, printMinoltaSonyAFAreaMode), TagInfo(0x0012, "LocalAFAreaPoint", N_("Local AF Area Point"), N_("Local AF Area Point"), - sony1CsIfdId, makerTags, unsignedShort, 1, printMinoltaSonyLocalAFAreaPoint), + sony1CsId, makerTags, unsignedShort, 1, printMinoltaSonyLocalAFAreaPoint), TagInfo(0x0015, "MeteringMode", N_("Metering Mode"), N_("Metering Mode"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMeteringMode)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMeteringMode)), TagInfo(0x0016, "ISOSetting", N_("ISO Setting"), N_("ISO Setting"), - sony1CsIfdId, makerTags, unsignedShort, 1, printValue), + sony1CsId, makerTags, unsignedShort, 1, printValue), TagInfo(0x0018, "DynamicRangeOptimizerMode", N_("Dynamic Range Optimizer Mode"), N_("Dynamic Range Optimizer Mode"), - sony1CsIfdId, makerTags, unsignedShort, 1, printMinoltaSonyDynamicRangeOptimizerMode), + sony1CsId, makerTags, unsignedShort, 1, printMinoltaSonyDynamicRangeOptimizerMode), TagInfo(0x0019, "DynamicRangeOptimizerLevel", N_("Dynamic Range Optimizer Level"), N_("Dynamic Range Optimizer Level"), - sony1CsIfdId, makerTags, unsignedShort, 1, printValue), + sony1CsId, makerTags, unsignedShort, 1, printValue), TagInfo(0x001A, "CreativeStyle", N_("Creative Style"), N_("Creative Style"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCreativeStyle)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCreativeStyle)), TagInfo(0x001C, "Sharpness", N_("Sharpness"), N_("Sharpness"), - sony1CsIfdId, makerTags, unsignedShort, 1, printValue), + sony1CsId, makerTags, unsignedShort, 1, printValue), TagInfo(0x001D, "Contrast", N_("Contrast"), N_("Contrast"), - sony1CsIfdId, makerTags, unsignedShort, 1, printValue), + sony1CsId, makerTags, unsignedShort, 1, printValue), TagInfo(0x001E, "Saturation", N_("Saturation"), N_("Saturation"), - sony1CsIfdId, makerTags, unsignedShort, 1, printValue), + sony1CsId, makerTags, unsignedShort, 1, printValue), TagInfo(0x001F, "ZoneMatchingValue", N_("Zone Matching Value"), N_("Zone Matching Value"), - sony1CsIfdId, makerTags, unsignedShort, 1, printValue), + sony1CsId, makerTags, unsignedShort, 1, printValue), TagInfo(0x0022, "Brightness", N_("Brightness"), N_("Brightness"), - sony1CsIfdId, makerTags, unsignedShort, 1, printValue), + sony1CsId, makerTags, unsignedShort, 1, printValue), TagInfo(0x0023, "FlashMode", N_("FlashMode"), N_("FlashMode"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashMode)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashMode)), // NOTE: A700 only TagInfo(0x0028, "PrioritySetupShutterRelease", N_("Priority Setup Shutter Release"), N_("Priority Setup Shutter Release"), - sony1CsIfdId, makerTags, unsignedShort, 1, printMinoltaSonyPrioritySetupShutterRelease), + sony1CsId, makerTags, unsignedShort, 1, printMinoltaSonyPrioritySetupShutterRelease), // NOTE: A700 only TagInfo(0x0029, "AFIlluminator", N_("AF Illuminator"), N_("AF Illuminator"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAFIlluminatorCS)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAFIlluminatorCS)), // NOTE: A700 only TagInfo(0x002A, "AFWithShutter", N_("AF With Shutter"), N_("AF With Shutter"), - sony1CsIfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), + sony1CsId, makerTags, unsignedShort, 1, printMinoltaSonyBoolInverseValue), // NOTE: A700 only TagInfo(0x002B, "LongExposureNoiseReduction", N_("Long Exposure Noise Reduction"), N_("Long Exposure Noise Reduction"), - sony1CsIfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + sony1CsId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), // NOTE: A700 only TagInfo(0x002C, "HighISONoiseReduction", N_("High ISO NoiseReduction"), N_("High ISO NoiseReduction"), - sony1CsIfdId, makerTags, unsignedShort, 1, printValue), + sony1CsId, makerTags, unsignedShort, 1, printValue), // NOTE: A700 only TagInfo(0x002D, "ImageStyle", N_("Image Style"), N_("Image Style"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyImageStyle)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyImageStyle)), TagInfo(0x003C, "ExposureProgram", N_("Exposure Program"), N_("Exposure Program"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureProgram)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureProgram)), TagInfo(0x003D, "ImageStabilization", N_("Image Stabilization"), N_("Image Stabilization"), - sony1CsIfdId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), + sony1CsId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue), TagInfo(0x003F, "Rotation", N_("Rotation"), N_("Rotation"), - sony1CsIfdId, makerTags, unsignedShort, 1, printMinoltaSonyRotation), + sony1CsId, makerTags, unsignedShort, 1, printMinoltaSonyRotation), TagInfo(0x0054, "SonyImageSize", N_("Sony Image Size"), N_("Sony Image Size"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyImageSize)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyImageSize)), TagInfo(0x0055, "AspectRatio", N_("Aspect Ratio"), N_("Aspect Ratio"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAspectRatio)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyAspectRatio)), TagInfo(0x0056, "Quality", N_("Quality"), N_("Quality"), - sony1CsIfdId, makerTags, unsignedShort, 1, printMinoltaSonyQualityCs), + sony1CsId, makerTags, unsignedShort, 1, printMinoltaSonyQualityCs), TagInfo(0x0058, "ExposureLevelIncrements", N_("Exposure Level Increments"), N_("Exposure Level Increments"), - sony1CsIfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureLevelIncrements)), + sony1CsId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureLevelIncrements)), // End of list marker TagInfo(0xffff, "(UnknownSony1CsTag)", "(UnknownSony1CsTag)", N_("Unknown Sony1 Camera Settings tag"), - sony1CsIfdId, makerTags, unsignedShort, 1, printValue) + sony1CsId, makerTags, unsignedShort, 1, printValue) }; const TagInfo* SonyMakerNote::tagListCs() @@ -670,53 +670,53 @@ namespace Exiv2 { const TagInfo SonyMakerNote::tagInfoCs2_[] = { TagInfo(0x0010, "FocusMode", N_("Focus Mode"), N_("Focus Mode"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCSFocusMode)), + sony1Cs2Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCSFocusMode)), TagInfo(0x0011, "AFAreaMode", N_("AF Area Mode"), N_("AF Area Mode"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printMinoltaSonyAFAreaMode), + sony1Cs2Id, makerTags, unsignedShort, 1, printMinoltaSonyAFAreaMode), TagInfo(0x0012, "LocalAFAreaPoint", N_("Local AF Area Point"), N_("Local AF Area Point"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printMinoltaSonyLocalAFAreaPoint), + sony1Cs2Id, makerTags, unsignedShort, 1, printMinoltaSonyLocalAFAreaPoint), TagInfo(0x0013, "MeteringMode", N_("Metering Mode"), N_("Metering Mode"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMeteringMode)), + sony1Cs2Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyMeteringMode)), TagInfo(0x0014, "ISOSetting", N_("ISO Setting"), N_("ISO Setting"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printValue), + sony1Cs2Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0016, "DynamicRangeOptimizerMode", N_("Dynamic Range Optimizer Mode"), N_("Dynamic Range Optimizer Mode"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printMinoltaSonyDynamicRangeOptimizerMode), + sony1Cs2Id, makerTags, unsignedShort, 1, printMinoltaSonyDynamicRangeOptimizerMode), TagInfo(0x0017, "DynamicRangeOptimizerLevel", N_("Dynamic Range Optimizer Level"), N_("Dynamic Range Optimizer Level"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printValue), + sony1Cs2Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0018, "CreativeStyle", N_("Creative Style"), N_("Creative Style"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCreativeStyle)), + sony1Cs2Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyCreativeStyle)), TagInfo(0x0019, "Sharpness", N_("Sharpness"), N_("Sharpness"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printValue), + sony1Cs2Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x001A, "Contrast", N_("Contrast"), N_("Contrast"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printValue), + sony1Cs2Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x001B, "Saturation", N_("Saturation"), N_("Saturation"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printValue), + sony1Cs2Id, makerTags, unsignedShort, 1, printValue), TagInfo(0x0023, "FlashMode", N_("FlashMode"), N_("FlashMode"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashMode)), + sony1Cs2Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyFlashMode)), TagInfo(0x003C, "ExposureProgram", N_("Exposure Program"), N_("Exposure Program"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureProgram)), + sony1Cs2Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyExposureProgram)), TagInfo(0x003F, "Rotation", N_("Rotation"), N_("Rotation"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printMinoltaSonyRotation), + sony1Cs2Id, makerTags, unsignedShort, 1, printMinoltaSonyRotation), TagInfo(0x0054, "SonyImageSize", N_("Sony Image Size"), N_("Sony Image Size"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyImageSize)), + sony1Cs2Id, makerTags, unsignedShort, 1, EXV_PRINT_TAG(sonyImageSize)), // End of list marker TagInfo(0xffff, "(UnknownSony1Cs2Tag)", "(UnknownSony1Cs2Tag)", N_("Unknown Sony1 Camera Settings 2 tag"), - sony1Cs2IfdId, makerTags, unsignedShort, 1, printValue) + sony1Cs2Id, makerTags, unsignedShort, 1, printValue) }; const TagInfo* SonyMakerNote::tagListCs2() diff --git a/src/tags.cpp b/src/tags.cpp index 2fc401de..2e43a31f 100644 --- a/src/tags.cpp +++ b/src/tags.cpp @@ -80,104 +80,104 @@ namespace Exiv2 { using namespace Internal; - //! List of all known Exif groups. Important: IFD item must be unique! + //! List of all known Exif groups. Important: Group name (3rd column) must be unique! extern const GroupInfo groupInfo[] = { - { ifdIdNotSet, "(Unknown IFD)", "(Unknown item)", 0 }, - { ifd0Id, "IFD0", "Image", ifdTagList }, - { exifIfdId, "Exif", "Photo", exifTagList }, // just to avoid 'Exif.Exif.*' keys - { gpsIfdId, "GPSInfo", "GPSInfo", gpsTagList }, - { iopIfdId, "Iop", "Iop", iopTagList }, - { ifd1Id, "IFD1", "Thumbnail", ifdTagList }, - { ifd2Id, "IFD2", "Image2", ifdTagList }, - { ifd3Id, "IFD3", "Image3", ifdTagList }, - { subImage1Id, "SubImage1", "SubImage1", ifdTagList }, - { subImage2Id, "SubImage2", "SubImage2", ifdTagList }, - { subImage3Id, "SubImage3", "SubImage3", ifdTagList }, - { subImage4Id, "SubImage4", "SubImage4", ifdTagList }, - { subImage5Id, "SubImage5", "SubImage5", ifdTagList }, - { subImage6Id, "SubImage6", "SubImage6", ifdTagList }, - { subImage7Id, "SubImage7", "SubImage7", ifdTagList }, - { subImage8Id, "SubImage8", "SubImage8", ifdTagList }, - { subImage9Id, "SubImage9", "SubImage9", ifdTagList }, - { mnIfdId, "Makernote", "MakerNote", mnTagList }, - { canonIfdId, "Makernote", "Canon", CanonMakerNote::tagList }, - { canonCsIfdId, "Makernote", "CanonCs", CanonMakerNote::tagListCs }, - { canonSiIfdId, "Makernote", "CanonSi", CanonMakerNote::tagListSi }, - { canonCfIfdId, "Makernote", "CanonCf", CanonMakerNote::tagListCf }, - { canonPiIfdId, "Makernote", "CanonPi", CanonMakerNote::tagListPi }, - { canonFiIfdId, "Makernote", "CanonFi", CanonMakerNote::tagListFi }, - { canonPaIfdId, "Makernote", "CanonPa", CanonMakerNote::tagListPa }, - { canonPrIfdId, "Makernote", "CanonPr", CanonMakerNote::tagListPr }, - { fujiIfdId, "Makernote", "Fujifilm", FujiMakerNote::tagList }, - { minoltaIfdId, "Makernote", "Minolta", MinoltaMakerNote::tagList }, - { minoltaCs5DIfdId, "Makernote", "MinoltaCs5D", MinoltaMakerNote::tagListCs5D }, - { minoltaCs7DIfdId, "Makernote", "MinoltaCs7D", MinoltaMakerNote::tagListCs7D }, - { minoltaCsOldIfdId, "Makernote", "MinoltaCsOld", MinoltaMakerNote::tagListCsStd }, - { minoltaCsNewIfdId, "Makernote", "MinoltaCsNew", MinoltaMakerNote::tagListCsStd }, - { nikon1IfdId, "Makernote", "Nikon1", Nikon1MakerNote::tagList }, - { nikon2IfdId, "Makernote", "Nikon2", Nikon2MakerNote::tagList }, - { nikon3IfdId, "Makernote", "Nikon3", Nikon3MakerNote::tagList }, - { nikonPvIfdId, "Makernote", "NikonPreview", ifdTagList }, - { nikonVrIfdId, "Makernote", "NikonVr", Nikon3MakerNote::tagListVr }, - { nikonPcIfdId, "Makernote", "NikonPc", Nikon3MakerNote::tagListPc }, - { nikonWtIfdId, "Makernote", "NikonWt", Nikon3MakerNote::tagListWt }, - { nikonIiIfdId, "Makernote", "NikonIi", Nikon3MakerNote::tagListIi }, - { nikonAfIfdId, "Makernote", "NikonAf", Nikon3MakerNote::tagListAf }, - { nikonAf2IfdId, "Makernote", "NikonAf2", Nikon3MakerNote::tagListAf2 }, - { nikonFiIfdId, "Makernote", "NikonFi", Nikon3MakerNote::tagListFi }, - { nikonMeIfdId, "Makernote", "NikonMe", Nikon3MakerNote::tagListMe }, - { nikonFl1IfdId, "Makernote", "NikonFl1", Nikon3MakerNote::tagListFl1 }, - { nikonFl2IfdId, "Makernote", "NikonFl2", Nikon3MakerNote::tagListFl2 }, - { nikonFl3IfdId, "Makernote", "NikonFl3", Nikon3MakerNote::tagListFl3 }, - { nikonSi1IfdId, "Makernote", "NikonSiD80", Nikon3MakerNote::tagListSi1 }, - { nikonSi2IfdId, "Makernote", "NikonSiD40", Nikon3MakerNote::tagListSi2 }, - { nikonSi3IfdId, "Makernote", "NikonSiD300a", Nikon3MakerNote::tagListSi3 }, - { nikonSi4IfdId, "Makernote", "NikonSiD300b", Nikon3MakerNote::tagListSi4 }, - { nikonSi5IfdId, "Makernote", "NikonSi02xx", Nikon3MakerNote::tagListSi5 }, - { nikonSi6IfdId, "Makernote", "NikonSi01xx", Nikon3MakerNote::tagListSi5 }, - { nikonCb1IfdId, "Makernote", "NikonCb1", Nikon3MakerNote::tagListCb1 }, - { nikonCb2IfdId, "Makernote", "NikonCb2", Nikon3MakerNote::tagListCb2 }, - { nikonCb2aIfdId, "Makernote", "NikonCb2a", Nikon3MakerNote::tagListCb2a }, - { nikonCb2bIfdId, "Makernote", "NikonCb2b", Nikon3MakerNote::tagListCb2b }, - { nikonCb3IfdId, "Makernote", "NikonCb3", Nikon3MakerNote::tagListCb3 }, - { nikonCb4IfdId, "Makernote", "NikonCb4", Nikon3MakerNote::tagListCb4 }, - { nikonLd1IfdId, "Makernote", "NikonLd1", Nikon3MakerNote::tagListLd1 }, - { nikonLd2IfdId, "Makernote", "NikonLd2", Nikon3MakerNote::tagListLd2 }, - { nikonLd3IfdId, "Makernote", "NikonLd3", Nikon3MakerNote::tagListLd3 }, - { olympusIfdId, "Makernote", "Olympus", OlympusMakerNote::tagList }, - { olympus2IfdId, "Makernote", "Olympus2", OlympusMakerNote::tagList }, - { olympusCsIfdId, "Makernote", "OlympusCs", OlympusMakerNote::tagListCs }, - { olympusEqIfdId, "Makernote", "OlympusEq", OlympusMakerNote::tagListEq }, - { olympusRdIfdId, "Makernote", "OlympusRd", OlympusMakerNote::tagListRd }, - { olympusRd2IfdId, "Makernote", "OlympusRd2", OlympusMakerNote::tagListRd2 }, - { olympusIpIfdId, "Makernote", "OlympusIp", OlympusMakerNote::tagListIp }, - { olympusFiIfdId, "Makernote", "OlympusFi", OlympusMakerNote::tagListFi }, - { olympusFe1IfdId, "Makernote", "OlympusFe1", OlympusMakerNote::tagListFe }, - { olympusFe2IfdId, "Makernote", "OlympusFe2", OlympusMakerNote::tagListFe }, - { olympusFe3IfdId, "Makernote", "OlympusFe3", OlympusMakerNote::tagListFe }, - { olympusFe4IfdId, "Makernote", "OlympusFe4", OlympusMakerNote::tagListFe }, - { olympusFe5IfdId, "Makernote", "OlympusFe5", OlympusMakerNote::tagListFe }, - { olympusFe6IfdId, "Makernote", "OlympusFe6", OlympusMakerNote::tagListFe }, - { olympusFe7IfdId, "Makernote", "OlympusFe7", OlympusMakerNote::tagListFe }, - { olympusFe8IfdId, "Makernote", "OlympusFe8", OlympusMakerNote::tagListFe }, - { olympusFe9IfdId, "Makernote", "OlympusFe9", OlympusMakerNote::tagListFe }, - { olympusRiIfdId, "Makernote", "OlympusRi", OlympusMakerNote::tagListRi }, - { panasonicIfdId, "Makernote", "Panasonic", PanasonicMakerNote::tagList }, - { panaRawIfdId, "PanaRaw", "PanasonicRaw", PanasonicMakerNote::tagListRaw }, - { pentaxIfdId, "Makernote", "Pentax", PentaxMakerNote::tagList }, - { sigmaIfdId, "Makernote", "Sigma", SigmaMakerNote::tagList }, - { sony1IfdId, "Makernote", "Sony1", SonyMakerNote::tagList }, - { sony2IfdId, "Makernote", "Sony2", SonyMakerNote::tagList }, - { sonyMltIfdId, "Makernote", "SonyMinolta", MinoltaMakerNote::tagList }, - { sony1CsIfdId, "Makernote", "Sony1Cs", SonyMakerNote::tagListCs }, - { sony1Cs2IfdId, "Makernote", "Sony1Cs2", SonyMakerNote::tagListCs2 }, - { sony1MltCs7DIfdId, "Makernote", "Sony1MltCs7D", MinoltaMakerNote::tagListCs7D }, - { sony1MltCsOldIfdId,"Makernote", "Sony1MltCsOld",MinoltaMakerNote::tagListCsStd }, - { sony1MltCsNewIfdId,"Makernote", "Sony1MltCsNew",MinoltaMakerNote::tagListCsStd }, - { sony1MltCsA100IfdId,"Makernote","Sony1MltCsA100",MinoltaMakerNote::tagListCsA100}, - { sony2CsIfdId, "Makernote", "Sony2Cs", SonyMakerNote::tagListCs }, - { sony2Cs2IfdId, "Makernote", "Sony2Cs2", SonyMakerNote::tagListCs2 }, - { lastIfdId, "(Last IFD info)", "(Last IFD item)", 0 } + { ifdIdNotSet, "Unknown IFD", "Unknown", 0 }, + { ifd0Id, "IFD0", "Image", ifdTagList }, + { ifd1Id, "IFD1", "Thumbnail", ifdTagList }, + { ifd2Id, "IFD2", "Image2", ifdTagList }, + { ifd3Id, "IFD3", "Image3", ifdTagList }, + { exifId, "Exif", "Photo", exifTagList }, + { gpsId, "GPSInfo", "GPSInfo", gpsTagList }, + { iopId, "Iop", "Iop", iopTagList }, + { subImage1Id, "SubImage1", "SubImage1", ifdTagList }, + { subImage2Id, "SubImage2", "SubImage2", ifdTagList }, + { subImage3Id, "SubImage3", "SubImage3", ifdTagList }, + { subImage4Id, "SubImage4", "SubImage4", ifdTagList }, + { subImage5Id, "SubImage5", "SubImage5", ifdTagList }, + { subImage6Id, "SubImage6", "SubImage6", ifdTagList }, + { subImage7Id, "SubImage7", "SubImage7", ifdTagList }, + { subImage8Id, "SubImage8", "SubImage8", ifdTagList }, + { subImage9Id, "SubImage9", "SubImage9", ifdTagList }, + { panaRawId, "PanaRaw", "PanasonicRaw", PanasonicMakerNote::tagListRaw }, + { mnId, "Makernote", "MakerNote", mnTagList }, + { canonId, "Makernote", "Canon", CanonMakerNote::tagList }, + { canonCsId, "Makernote", "CanonCs", CanonMakerNote::tagListCs }, + { canonSiId, "Makernote", "CanonSi", CanonMakerNote::tagListSi }, + { canonCfId, "Makernote", "CanonCf", CanonMakerNote::tagListCf }, + { canonPiId, "Makernote", "CanonPi", CanonMakerNote::tagListPi }, + { canonFiId, "Makernote", "CanonFi", CanonMakerNote::tagListFi }, + { canonPaId, "Makernote", "CanonPa", CanonMakerNote::tagListPa }, + { canonPrId, "Makernote", "CanonPr", CanonMakerNote::tagListPr }, + { fujiId, "Makernote", "Fujifilm", FujiMakerNote::tagList }, + { minoltaId, "Makernote", "Minolta", MinoltaMakerNote::tagList }, + { minoltaCs5DId, "Makernote", "MinoltaCs5D", MinoltaMakerNote::tagListCs5D }, + { minoltaCs7DId, "Makernote", "MinoltaCs7D", MinoltaMakerNote::tagListCs7D }, + { minoltaCsOldId, "Makernote", "MinoltaCsOld", MinoltaMakerNote::tagListCsStd }, + { minoltaCsNewId, "Makernote", "MinoltaCsNew", MinoltaMakerNote::tagListCsStd }, + { nikon1Id, "Makernote", "Nikon1", Nikon1MakerNote::tagList }, + { nikon2Id, "Makernote", "Nikon2", Nikon2MakerNote::tagList }, + { nikon3Id, "Makernote", "Nikon3", Nikon3MakerNote::tagList }, + { nikonPvId, "Makernote", "NikonPreview", ifdTagList }, + { nikonVrId, "Makernote", "NikonVr", Nikon3MakerNote::tagListVr }, + { nikonPcId, "Makernote", "NikonPc", Nikon3MakerNote::tagListPc }, + { nikonWtId, "Makernote", "NikonWt", Nikon3MakerNote::tagListWt }, + { nikonIiId, "Makernote", "NikonIi", Nikon3MakerNote::tagListIi }, + { nikonAfId, "Makernote", "NikonAf", Nikon3MakerNote::tagListAf }, + { nikonAf2Id, "Makernote", "NikonAf2", Nikon3MakerNote::tagListAf2 }, + { nikonFiId, "Makernote", "NikonFi", Nikon3MakerNote::tagListFi }, + { nikonMeId, "Makernote", "NikonMe", Nikon3MakerNote::tagListMe }, + { nikonFl1Id, "Makernote", "NikonFl1", Nikon3MakerNote::tagListFl1 }, + { nikonFl2Id, "Makernote", "NikonFl2", Nikon3MakerNote::tagListFl2 }, + { nikonFl3Id, "Makernote", "NikonFl3", Nikon3MakerNote::tagListFl3 }, + { nikonSi1Id, "Makernote", "NikonSiD80", Nikon3MakerNote::tagListSi1 }, + { nikonSi2Id, "Makernote", "NikonSiD40", Nikon3MakerNote::tagListSi2 }, + { nikonSi3Id, "Makernote", "NikonSiD300a", Nikon3MakerNote::tagListSi3 }, + { nikonSi4Id, "Makernote", "NikonSiD300b", Nikon3MakerNote::tagListSi4 }, + { nikonSi5Id, "Makernote", "NikonSi02xx", Nikon3MakerNote::tagListSi5 }, + { nikonSi6Id, "Makernote", "NikonSi01xx", Nikon3MakerNote::tagListSi5 }, + { nikonCb1Id, "Makernote", "NikonCb1", Nikon3MakerNote::tagListCb1 }, + { nikonCb2Id, "Makernote", "NikonCb2", Nikon3MakerNote::tagListCb2 }, + { nikonCb2aId, "Makernote", "NikonCb2a", Nikon3MakerNote::tagListCb2a }, + { nikonCb2bId, "Makernote", "NikonCb2b", Nikon3MakerNote::tagListCb2b }, + { nikonCb3Id, "Makernote", "NikonCb3", Nikon3MakerNote::tagListCb3 }, + { nikonCb4Id, "Makernote", "NikonCb4", Nikon3MakerNote::tagListCb4 }, + { nikonLd1Id, "Makernote", "NikonLd1", Nikon3MakerNote::tagListLd1 }, + { nikonLd2Id, "Makernote", "NikonLd2", Nikon3MakerNote::tagListLd2 }, + { nikonLd3Id, "Makernote", "NikonLd3", Nikon3MakerNote::tagListLd3 }, + { olympusId, "Makernote", "Olympus", OlympusMakerNote::tagList }, + { olympus2Id, "Makernote", "Olympus2", OlympusMakerNote::tagList }, + { olympusCsId, "Makernote", "OlympusCs", OlympusMakerNote::tagListCs }, + { olympusEqId, "Makernote", "OlympusEq", OlympusMakerNote::tagListEq }, + { olympusRdId, "Makernote", "OlympusRd", OlympusMakerNote::tagListRd }, + { olympusRd2Id, "Makernote", "OlympusRd2", OlympusMakerNote::tagListRd2 }, + { olympusIpId, "Makernote", "OlympusIp", OlympusMakerNote::tagListIp }, + { olympusFiId, "Makernote", "OlympusFi", OlympusMakerNote::tagListFi }, + { olympusFe1Id, "Makernote", "OlympusFe1", OlympusMakerNote::tagListFe }, + { olympusFe2Id, "Makernote", "OlympusFe2", OlympusMakerNote::tagListFe }, + { olympusFe3Id, "Makernote", "OlympusFe3", OlympusMakerNote::tagListFe }, + { olympusFe4Id, "Makernote", "OlympusFe4", OlympusMakerNote::tagListFe }, + { olympusFe5Id, "Makernote", "OlympusFe5", OlympusMakerNote::tagListFe }, + { olympusFe6Id, "Makernote", "OlympusFe6", OlympusMakerNote::tagListFe }, + { olympusFe7Id, "Makernote", "OlympusFe7", OlympusMakerNote::tagListFe }, + { olympusFe8Id, "Makernote", "OlympusFe8", OlympusMakerNote::tagListFe }, + { olympusFe9Id, "Makernote", "OlympusFe9", OlympusMakerNote::tagListFe }, + { olympusRiId, "Makernote", "OlympusRi", OlympusMakerNote::tagListRi }, + { panasonicId, "Makernote", "Panasonic", PanasonicMakerNote::tagList }, + { pentaxId, "Makernote", "Pentax", PentaxMakerNote::tagList }, + { sigmaId, "Makernote", "Sigma", SigmaMakerNote::tagList }, + { sony1Id, "Makernote", "Sony1", SonyMakerNote::tagList }, + { sony2Id, "Makernote", "Sony2", SonyMakerNote::tagList }, + { sonyMltId, "Makernote", "SonyMinolta", MinoltaMakerNote::tagList }, + { sony1CsId, "Makernote", "Sony1Cs", SonyMakerNote::tagListCs }, + { sony1Cs2Id, "Makernote", "Sony1Cs2", SonyMakerNote::tagListCs2 }, + { sony1MltCs7DId, "Makernote", "Sony1MltCs7D", MinoltaMakerNote::tagListCs7D }, + { sony1MltCsOldId, "Makernote", "Sony1MltCsOld",MinoltaMakerNote::tagListCsStd }, + { sony1MltCsNewId, "Makernote", "Sony1MltCsNew",MinoltaMakerNote::tagListCsStd }, + { sony1MltCsA100Id,"Makernote","Sony1MltCsA100",MinoltaMakerNote::tagListCsA100}, + { sony2CsId, "Makernote", "Sony2Cs", SonyMakerNote::tagListCs }, + { sony2Cs2Id, "Makernote", "Sony2Cs2", SonyMakerNote::tagListCs2 }, + { lastId, "(Last IFD info)", "(Last IFD item)", 0 } }; //! List of all defined Exif sections. @@ -1352,39 +1352,39 @@ namespace Exiv2 { static const TagInfo exifTagInfo[] = { TagInfo(0x829a, "ExposureTime", N_("Exposure Time"), N_("Exposure time, given in seconds (sec)."), - exifIfdId, captureCond, unsignedRational, 1, print0x829a), + exifId, captureCond, unsignedRational, 1, print0x829a), TagInfo(0x829d, "FNumber", N_("FNumber"), N_("The F number."), - exifIfdId, captureCond, unsignedRational, 1, print0x829d), + exifId, captureCond, unsignedRational, 1, print0x829d), TagInfo(0x8822, "ExposureProgram", N_("Exposure Program"), N_("The class of the program used by the camera to set exposure " "when the picture is taken."), - exifIfdId, captureCond, unsignedShort, 1, print0x8822), + exifId, captureCond, unsignedShort, 1, print0x8822), TagInfo(0x8824, "SpectralSensitivity", N_("Spectral Sensitivity"), N_("Indicates the spectral sensitivity of each channel of the " "camera used. The tag value is an ASCII string compatible " "with the standard developed by the ASTM Technical Committee."), - exifIfdId, captureCond, asciiString, 0, printValue), + exifId, captureCond, asciiString, 0, printValue), TagInfo(0x8827, "ISOSpeedRatings", N_("ISO Speed Ratings"), N_("Indicates the ISO Speed and ISO Latitude of the camera or " "input device as specified in ISO 12232."), - exifIfdId, captureCond, unsignedShort, 0, print0x8827), + exifId, captureCond, unsignedShort, 0, print0x8827), TagInfo(0x8828, "OECF", N_("Opto-Electoric Conversion Function"), N_("Indicates the Opto-Electoric Conversion Function (OECF) " "specified in ISO 14524. is the relationship between " "the camera optical input and the image values."), - exifIfdId, captureCond, undefined, 0, printValue), + exifId, captureCond, undefined, 0, printValue), TagInfo(0x9000, "ExifVersion", N_("Exif Version"), N_("The version of this standard supported. Nonexistence of this " "field is taken to mean nonconformance to the standard."), - exifIfdId, exifVersion, undefined, 4, printExifVersion), + exifId, exifVersion, undefined, 4, printExifVersion), TagInfo(0x9003, "DateTimeOriginal", N_("Date and Time (original)"), N_("The date and time when the original image data was generated. " "For a digital still camera the date and time the picture was taken are recorded."), - exifIfdId, dateTime, asciiString, 20, printValue), + exifId, dateTime, asciiString, 20, printValue), TagInfo(0x9004, "DateTimeDigitized", N_("Date and Time (digitized)"), N_("The date and time when the image was stored as digital data."), - exifIfdId, dateTime, asciiString, 20, printValue), + exifId, dateTime, asciiString, 20, printValue), TagInfo(0x9101, "ComponentsConfiguration", N_("Components Configuration"), N_("Information specific to compressed data. The channels of " "each component are arranged in order from the 1st " @@ -1394,72 +1394,72 @@ namespace Exiv2 { "express the order of Y, Cb and Cr, this tag is provided " "for cases when compressed data uses components other than " "Y, Cb, and Cr and to enable support of other sequences."), - exifIfdId, imgConfig, undefined, 4, print0x9101), + exifId, imgConfig, undefined, 4, print0x9101), TagInfo(0x9102, "CompressedBitsPerPixel", N_("Compressed Bits per Pixel"), N_("Information specific to compressed data. The compression mode " "used for a compressed image is indicated in unit bits per pixel."), - exifIfdId, imgConfig, unsignedRational, 1, printFloat), + exifId, imgConfig, unsignedRational, 1, printFloat), TagInfo(0x9201, "ShutterSpeedValue", N_("Shutter speed"), N_("Shutter speed. The unit is the APEX (Additive System of " "Photographic Exposure) setting."), - exifIfdId, captureCond, signedRational, 1, print0x9201), + exifId, captureCond, signedRational, 1, print0x9201), TagInfo(0x9202, "ApertureValue", N_("Aperture"), N_("The lens aperture. The unit is the APEX value."), - exifIfdId, captureCond, unsignedRational, 1, print0x9202), + exifId, captureCond, unsignedRational, 1, print0x9202), TagInfo(0x9203, "BrightnessValue", N_("Brightness"), N_("The value of brightness. The unit is the APEX value. " "Ordinarily it is given in the range of -99.99 to 99.99."), - exifIfdId, captureCond, signedRational, 1, printFloat), + exifId, captureCond, signedRational, 1, printFloat), TagInfo(0x9204, "ExposureBiasValue", N_("Exposure Bias"), N_("The exposure bias. The units is the APEX value. Ordinarily " "it is given in the range of -99.99 to 99.99."), - exifIfdId, captureCond, signedRational, 1, print0x9204), + exifId, captureCond, signedRational, 1, print0x9204), TagInfo(0x9205, "MaxApertureValue", N_("Max Aperture Value"), N_("The smallest F number of the lens. The unit is the APEX value. " "Ordinarily it is given in the range of 00.00 to 99.99, " "but it is not limited to this range."), - exifIfdId, captureCond, unsignedRational, 1, print0x9202), + exifId, captureCond, unsignedRational, 1, print0x9202), TagInfo(0x9206, "SubjectDistance", N_("Subject Distance"), N_("The distance to the subject, given in meters."), - exifIfdId, captureCond, unsignedRational, 1, print0x9206), + exifId, captureCond, unsignedRational, 1, print0x9206), TagInfo(0x9207, "MeteringMode", N_("Metering Mode"), N_("The metering mode."), - exifIfdId, captureCond, unsignedShort, 1, print0x9207), + exifId, captureCond, unsignedShort, 1, print0x9207), TagInfo(0x9208, "LightSource", N_("Light Source"), N_("The kind of light source."), - exifIfdId, captureCond, unsignedShort, 1, print0x9208), + exifId, captureCond, unsignedShort, 1, print0x9208), TagInfo(0x9209, "Flash", N_("Flash"), N_("This tag is recorded when an image is taken using a strobe light (flash)."), - exifIfdId, captureCond, unsignedShort, 1, EXV_PRINT_TAG(exifFlash)), + exifId, captureCond, unsignedShort, 1, EXV_PRINT_TAG(exifFlash)), TagInfo(0x920a, "FocalLength", N_("Focal Length"), N_("The actual focal length of the lens, in mm. Conversion is not " "made to the focal length of a 35 mm film camera."), - exifIfdId, captureCond, unsignedRational, 1, print0x920a), + exifId, captureCond, unsignedRational, 1, print0x920a), TagInfo(0x9214, "SubjectArea", N_("Subject Area"), N_("This tag indicates the location and area of the main subject " "in the overall scene."), - exifIfdId, captureCond, unsignedShort, -1, printValue), + exifId, captureCond, unsignedShort, -1, printValue), TagInfo(0x927c, "MakerNote", N_("Maker Note"), N_("A tag for manufacturers of Exif writers to record any desired " "information. The contents are up to the manufacturer."), - exifIfdId, userInfo, undefined, 0, printValue), + exifId, userInfo, undefined, 0, printValue), TagInfo(0x9286, "UserComment", N_("User Comment"), N_("A tag for Exif users to write keywords or comments on the image " "besides those in , and without the " "character code limitations of the tag."), - exifIfdId, userInfo, comment, 0, print0x9286), + exifId, userInfo, comment, 0, print0x9286), TagInfo(0x9290, "SubSecTime", N_("Sub-seconds Time"), N_("A tag used to record fractions of seconds for the tag."), - exifIfdId, dateTime, asciiString, 0, printValue), + exifId, dateTime, asciiString, 0, printValue), TagInfo(0x9291, "SubSecTimeOriginal", N_("Sub-seconds Time Original"), N_("A tag used to record fractions of seconds for the tag."), - exifIfdId, dateTime, asciiString, 0, printValue), + exifId, dateTime, asciiString, 0, printValue), TagInfo(0x9292, "SubSecTimeDigitized", N_("Sub-seconds Time Digitized"), N_("A tag used to record fractions of seconds for the tag."), - exifIfdId, dateTime, asciiString, 0, printValue), + exifId, dateTime, asciiString, 0, printValue), TagInfo(0xa000, "FlashpixVersion", N_("FlashPix Version"), N_("The FlashPix format version supported by a FPXR file."), - exifIfdId, exifVersion, undefined, 4, printExifVersion), + exifId, exifVersion, undefined, 4, printExifVersion), TagInfo(0xa001, "ColorSpace", N_("Color Space"), N_("The color space information tag is always " "recorded as the color space specifier. Normally sRGB " @@ -1468,14 +1468,14 @@ namespace Exiv2 { "sRGB is used, Uncalibrated is set. Image data " "recorded as Uncalibrated can be treated as sRGB when it is " "converted to FlashPix."), - exifIfdId, imgCharacter, unsignedShort, 1, print0xa001), + exifId, imgCharacter, unsignedShort, 1, print0xa001), TagInfo(0xa002, "PixelXDimension", N_("Pixel X Dimension"), N_("Information specific to compressed data. When a " "compressed file is recorded, the valid width of the " "meaningful image must be recorded in this tag, whether or " "not there is padding data or a restart marker. This tag " "should not exist in an uncompressed file."), - exifIfdId, imgConfig, unsignedLong, 1, printValue), + exifId, imgConfig, unsignedLong, 1, printValue), TagInfo(0xa003, "PixelYDimension", N_("Pixel Y Dimension"), N_("Information specific to compressed data. When a compressed " "file is recorded, the valid height of the meaningful image " @@ -1484,14 +1484,14 @@ namespace Exiv2 { "uncompressed file. Since data padding is unnecessary in the vertical " "direction, the number of lines recorded in this valid image height tag " "will in fact be the same as that recorded in the SOF."), - exifIfdId, imgConfig, unsignedLong, 1, printValue), + exifId, imgConfig, unsignedLong, 1, printValue), TagInfo(0xa004, "RelatedSoundFile", N_("Related Sound File"), N_("This tag is used to record the name of an audio file related " "to the image data. The only relational information " "recorded here is the Exif audio file name and extension (an " "ASCII string consisting of 8 characters + '.' + 3 " "characters). The path is not recorded."), - exifIfdId, relatedFile, asciiString, 13, printValue), + exifId, relatedFile, asciiString, 13, printValue), TagInfo(0xa005, "InteroperabilityTag", N_("Interoperability IFD Pointer"), N_("Interoperability IFD is composed of tags which stores the " "information to ensure the Interoperability and pointed " @@ -1499,119 +1499,119 @@ namespace Exiv2 { "The Interoperability structure of Interoperability IFD is " "the same as TIFF defined IFD structure but does not contain the " "image data characteristically compared with normal TIFF IFD."), - exifIfdId, exifFormat, unsignedLong, 1, printValue), + exifId, exifFormat, unsignedLong, 1, printValue), TagInfo(0xa20b, "FlashEnergy", N_("Flash Energy"), N_("Indicates the strobe energy at the time the image is " "captured, as measured in Beam Candle Power Seconds (BCPS)."), - exifIfdId, captureCond, unsignedRational, 1, printValue), + exifId, captureCond, unsignedRational, 1, printValue), TagInfo(0xa20c, "SpatialFrequencyResponse", N_("Spatial Frequency Response"), N_("This tag records the camera or input device spatial frequency " "table and SFR values in the direction of image width, " "image height, and diagonal direction, as specified in ISO 12233."), - exifIfdId, captureCond, undefined, 0, printValue), + exifId, captureCond, undefined, 0, printValue), TagInfo(0xa20e, "FocalPlaneXResolution", N_("Focal Plane X-Resolution"), N_("Indicates the number of pixels in the image width (X) direction " "per on the camera focal plane."), - exifIfdId, captureCond, unsignedRational, 1, printFloat), + exifId, captureCond, unsignedRational, 1, printFloat), TagInfo(0xa20f, "FocalPlaneYResolution", N_("Focal Plane Y-Resolution"), N_("Indicates the number of pixels in the image height (V) direction " "per on the camera focal plane."), - exifIfdId, captureCond, unsignedRational, 1, printFloat), + exifId, captureCond, unsignedRational, 1, printFloat), TagInfo(0xa210, "FocalPlaneResolutionUnit", N_("Focal Plane Resolution Unit"), N_("Indicates the unit for measuring and " ". This value is the same as the ."), - exifIfdId, captureCond, unsignedShort, 1, printExifUnit), + exifId, captureCond, unsignedShort, 1, printExifUnit), TagInfo(0xa214, "SubjectLocation", N_("Subject Location"), N_("Indicates the location of the main subject in the scene. The " "value of this tag represents the pixel at the center of the " "main subject relative to the left edge, prior to rotation " "processing as per the tag. The first value " "indicates the X column number and second indicates the Y row number."), - exifIfdId, captureCond, unsignedShort, 2, printValue), + exifId, captureCond, unsignedShort, 2, printValue), TagInfo(0xa215, "ExposureIndex", N_("Exposure index"), N_("Indicates the exposure index selected on the camera or " "input device at the time the image is captured."), - exifIfdId, captureCond, unsignedRational, 1, printValue), + exifId, captureCond, unsignedRational, 1, printValue), TagInfo(0xa217, "SensingMethod", N_("Sensing Method"), N_("Indicates the image sensor type on the camera or input device."), - exifIfdId, captureCond, unsignedShort, 1, print0xa217), + exifId, captureCond, unsignedShort, 1, print0xa217), TagInfo(0xa300, "FileSource", N_("File Source"), N_("Indicates the image source. If a DSC recorded the image, " "this tag value of this tag always be set to 3, indicating " "that the image was recorded on a DSC."), - exifIfdId, captureCond, undefined, 1, print0xa300), + exifId, captureCond, undefined, 1, print0xa300), TagInfo(0xa301, "SceneType", N_("Scene Type"), N_("Indicates the type of scene. If a DSC recorded the image, " "this tag value must always be set to 1, indicating that the " "image was directly photographed."), - exifIfdId, captureCond, undefined, 1, print0xa301), + exifId, captureCond, undefined, 1, print0xa301), TagInfo(0xa302, "CFAPattern", N_("Color Filter Array Pattern"), N_("Indicates the color filter array (CFA) geometric pattern of the " "image sensor when a one-chip color area sensor is used. " "It does not apply to all sensing methods."), - exifIfdId, captureCond, undefined, 0, printValue), + exifId, captureCond, undefined, 0, printValue), TagInfo(0xa401, "CustomRendered", N_("Custom Rendered"), N_("This tag indicates the use of special processing on image " "data, such as rendering geared to output. When special " "processing is performed, the reader is expected to disable " "or minimize any further processing."), - exifIfdId, captureCond, unsignedShort, 1, print0xa401), + exifId, captureCond, unsignedShort, 1, print0xa401), TagInfo(0xa402, "ExposureMode", N_("Exposure Mode"), N_("This tag indicates the exposure mode set when the image was " "shot. In auto-bracketing mode, the camera shoots a series of " "frames of the same scene at different exposure settings."), - exifIfdId, captureCond, unsignedShort, 1, print0xa402), + exifId, captureCond, unsignedShort, 1, print0xa402), TagInfo(0xa403, "WhiteBalance", N_("White Balance"), N_("This tag indicates the white balance mode set when the image was shot."), - exifIfdId, captureCond, unsignedShort, 1, print0xa403), + exifId, captureCond, unsignedShort, 1, print0xa403), TagInfo(0xa404, "DigitalZoomRatio", N_("Digital Zoom Ratio"), N_("This tag indicates the digital zoom ratio when the image was " "shot. If the numerator of the recorded value is 0, this " "indicates that digital zoom was not used."), - exifIfdId, captureCond, unsignedRational, 1, print0xa404), + exifId, captureCond, unsignedRational, 1, print0xa404), TagInfo(0xa405, "FocalLengthIn35mmFilm", N_("Focal Length In 35mm Film"), N_("This tag indicates the equivalent focal length assuming a " "35mm film camera, in mm. A value of 0 means the focal " "length is unknown. Note that this tag differs from the " " tag."), - exifIfdId, captureCond, unsignedShort, 1, print0xa405), + exifId, captureCond, unsignedShort, 1, print0xa405), TagInfo(0xa406, "SceneCaptureType", N_("Scene Capture Type"), N_("This tag indicates the type of scene that was shot. It can " "also be used to record the mode in which the image was " "shot. Note that this differs from the tag."), - exifIfdId, captureCond, unsignedShort, 1, print0xa406), + exifId, captureCond, unsignedShort, 1, print0xa406), TagInfo(0xa407, "GainControl", N_("Gain Control"), N_("This tag indicates the degree of overall image gain adjustment."), - exifIfdId, captureCond, unsignedShort, 1, print0xa407), + exifId, captureCond, unsignedShort, 1, print0xa407), TagInfo(0xa408, "Contrast", N_("Contrast"), N_("This tag indicates the direction of contrast processing " "applied by the camera when the image was shot."), - exifIfdId, captureCond, unsignedShort, 1, printNormalSoftHard), + exifId, captureCond, unsignedShort, 1, printNormalSoftHard), TagInfo(0xa409, "Saturation", N_("Saturation"), N_("This tag indicates the direction of saturation processing " "applied by the camera when the image was shot."), - exifIfdId, captureCond, unsignedShort, 1, print0xa409), + exifId, captureCond, unsignedShort, 1, print0xa409), TagInfo(0xa40a, "Sharpness", N_("Sharpness"), N_("This tag indicates the direction of sharpness processing " "applied by the camera when the image was shot."), - exifIfdId, captureCond, unsignedShort, 1, printNormalSoftHard), + exifId, captureCond, unsignedShort, 1, printNormalSoftHard), TagInfo(0xa40b, "DeviceSettingDescription", N_("Device Setting Description"), N_("This tag indicates information on the picture-taking " "conditions of a particular camera model. The tag is used " "only to indicate the picture-taking conditions in the reader."), - exifIfdId, captureCond, undefined, 0, printValue), + exifId, captureCond, undefined, 0, printValue), TagInfo(0xa40c, "SubjectDistanceRange", N_("Subject Distance Range"), N_("This tag indicates the distance to the subject."), - exifIfdId, captureCond, unsignedShort, 1, print0xa40c), + exifId, captureCond, unsignedShort, 1, print0xa40c), TagInfo(0xa420, "ImageUniqueID", N_("Image Unique ID"), N_("This tag indicates an identifier assigned uniquely to " "each image. It is recorded as an ASCII string equivalent " "to hexadecimal notation and 128-bit fixed length."), - exifIfdId, otherTags, asciiString, 33, printValue), + exifId, otherTags, asciiString, 33, printValue), // End of list marker TagInfo(0xffff, "(UnknownExifTag)", N_("Unknown Exif tag"), N_("Unknown Exif tag"), - exifIfdId, sectionIdNotSet, asciiString, -1, printValue) + exifId, sectionIdNotSet, asciiString, -1, printValue) }; const TagInfo* exifTagList() @@ -1683,11 +1683,11 @@ namespace Exiv2 { "present. (Note: The tag is given in bytes, " "unlike the tag. When the version is " "2.0.0.0, the tag value is 02000000.H)."), - gpsIfdId, gpsTags, unsignedByte, 4, print0x0000), + gpsId, gpsTags, unsignedByte, 4, print0x0000), TagInfo(0x0001, "GPSLatitudeRef", N_("GPS Latitude Reference"), N_("Indicates whether the latitude is north or south latitude. The " "ASCII value 'N' indicates north latitude, and 'S' is south latitude."), - gpsIfdId, gpsTags, asciiString, 2, EXV_PRINT_TAG(exifGPSLatitudeRef)), + gpsId, gpsTags, asciiString, 2, EXV_PRINT_TAG(exifGPSLatitudeRef)), TagInfo(0x0002, "GPSLatitude", N_("GPS Latitude"), N_("Indicates the latitude. The latitude is expressed as three " "RATIONAL values giving the degrees, minutes, and seconds, " @@ -1695,11 +1695,11 @@ namespace Exiv2 { "the format is dd/1,mm/1,ss/1. When degrees and minutes are used " "and, for example, fractions of minutes are given up to two " "decimal places, the format is dd/1,mmmm/100,0/1."), - gpsIfdId, gpsTags, unsignedRational, 3, printDegrees), + gpsId, gpsTags, unsignedRational, 3, printDegrees), TagInfo(0x0003, "GPSLongitudeRef", N_("GPS Longitude Reference"), N_("Indicates whether the longitude is east or west longitude. " "ASCII 'E' indicates east longitude, and 'W' is west longitude."), - gpsIfdId, gpsTags, asciiString, 2, EXV_PRINT_TAG(exifGPSLongitudeRef)), + gpsId, gpsTags, asciiString, 2, EXV_PRINT_TAG(exifGPSLongitudeRef)), TagInfo(0x0004, "GPSLongitude", N_("GPS Longitude"), N_("Indicates the longitude. The longitude is expressed as three " "RATIONAL values giving the degrees, minutes, and seconds, " @@ -1707,7 +1707,7 @@ namespace Exiv2 { "the format is ddd/1,mm/1,ss/1. When degrees and minutes are " "used and, for example, fractions of minutes are given up to " "two decimal places, the format is ddd/1,mmmm/100,0/1."), - gpsIfdId, gpsTags, unsignedRational, 3, printDegrees), + gpsId, gpsTags, unsignedRational, 3, printDegrees), TagInfo(0x0005, "GPSAltitudeRef", N_("GPS Altitude Reference"), N_("Indicates the altitude used as the reference altitude. If the " "reference is sea level and the altitude is above sea level, 0 " @@ -1715,67 +1715,67 @@ namespace Exiv2 { "and the altitude is indicated as an absolute value in the " "GSPAltitude tag. The reference unit is meters. Note that this tag " "is BYTE type, unlike other reference tags."), - gpsIfdId, gpsTags, unsignedByte, 1, print0x0005), + gpsId, gpsTags, unsignedByte, 1, print0x0005), TagInfo(0x0006, "GPSAltitude", N_("GPS Altitude"), N_("Indicates the altitude based on the reference in GPSAltitudeRef. " "Altitude is expressed as one RATIONAL value. The reference unit is meters."), - gpsIfdId, gpsTags, unsignedRational, 1, print0x0006), + gpsId, gpsTags, unsignedRational, 1, print0x0006), TagInfo(0x0007, "GPSTimeStamp", N_("GPS Time Stamp"), N_("Indicates the time as UTC (Coordinated Universal Time). " " is expressed as three RATIONAL values " "giving the hour, minute, and second (atomic clock)."), - gpsIfdId, gpsTags, unsignedRational, 3, print0x0007), + gpsId, gpsTags, unsignedRational, 3, print0x0007), TagInfo(0x0008, "GPSSatellites", N_("GPS Satellites"), N_("Indicates the GPS satellites used for measurements. This tag can be used " "to describe the number of satellites, their ID number, angle of elevation, " "azimuth, SNR and other information in ASCII notation. The format is not " "specified. If the GPS receiver is incapable of taking measurements, value " "of the tag is set to NULL."), - gpsIfdId, gpsTags, asciiString, 0, printValue), + gpsId, gpsTags, asciiString, 0, printValue), TagInfo(0x0009, "GPSStatus", N_("GPS Status"), N_("Indicates the status of the GPS receiver when the image is recorded. " "\"A\" means measurement is in progress, and \"V\" means the measurement " "is Interoperability."), - gpsIfdId, gpsTags, asciiString, 2, print0x0009), + gpsId, gpsTags, asciiString, 2, print0x0009), TagInfo(0x000a, "GPSMeasureMode", N_("GPS Measure Mode"), N_("Indicates the GPS measurement mode. \"2\" means two-dimensional measurement and \"3\" " "means three-dimensional measurement is in progress."), - gpsIfdId, gpsTags, asciiString, 2, print0x000a), + gpsId, gpsTags, asciiString, 2, print0x000a), TagInfo(0x000b, "GPSDOP", N_("GPS Data Degree of Precision"), N_("Indicates the GPS DOP (data degree of precision). An HDOP value is written " "during two-dimensional measurement, and PDOP during three-dimensional measurement."), - gpsIfdId, gpsTags, unsignedRational, 1, printValue), + gpsId, gpsTags, unsignedRational, 1, printValue), TagInfo(0x000c, "GPSSpeedRef", N_("GPS Speed Reference"), N_("Indicates the unit used to express the GPS receiver speed of movement. " "\"K\" \"M\" and \"N\" represents kilometers per hour, miles per hour, and knots."), - gpsIfdId, gpsTags, asciiString, 2, print0x000c), + gpsId, gpsTags, asciiString, 2, print0x000c), TagInfo(0x000d, "GPSSpeed", N_("GPS Speed"), N_("Indicates the speed of GPS receiver movement."), - gpsIfdId, gpsTags, unsignedRational, 1, printValue), + gpsId, gpsTags, unsignedRational, 1, printValue), TagInfo(0x000e, "GPSTrackRef", N_("GPS Track Ref"), N_("Indicates the reference for giving the direction of GPS receiver movement. " "\"T\" denotes true direction and \"M\" is magnetic direction."), - gpsIfdId, gpsTags, asciiString, 2, printGPSDirRef), + gpsId, gpsTags, asciiString, 2, printGPSDirRef), TagInfo(0x000f, "GPSTrack", N_("GPS Track"), N_("Indicates the direction of GPS receiver movement. The range of values is " "from 0.00 to 359.99."), - gpsIfdId, gpsTags, unsignedRational, 1, printValue), + gpsId, gpsTags, unsignedRational, 1, printValue), TagInfo(0x0010, "GPSImgDirectionRef", N_("GPS Image Direction Reference"), N_("Indicates the reference for giving the direction of the image when it is captured. " "\"T\" denotes true direction and \"M\" is magnetic direction."), - gpsIfdId, gpsTags, asciiString, 2, printGPSDirRef), + gpsId, gpsTags, asciiString, 2, printGPSDirRef), TagInfo(0x0011, "GPSImgDirection", N_("GPS Image Direction"), N_("Indicates the direction of the image when it was captured. The range of values " "is from 0.00 to 359.99."), - gpsIfdId, gpsTags, unsignedRational, 1, printValue), + gpsId, gpsTags, unsignedRational, 1, printValue), TagInfo(0x0012, "GPSMapDatum", N_("GPS Map Datum"), N_("Indicates the geodetic survey data used by the GPS receiver. If the survey data " "is restricted to Japan, the value of this tag is \"TOKYO\" or \"WGS-84\"."), - gpsIfdId, gpsTags, asciiString, 0, printValue), + gpsId, gpsTags, asciiString, 0, printValue), TagInfo(0x0013, "GPSDestLatitudeRef", N_("GPS Destination Latitude Refeference"), N_("Indicates whether the latitude of the destination point is north or south latitude. " "The ASCII value \"N\" indicates north latitude, and \"S\" is south latitude."), - gpsIfdId, gpsTags, asciiString, 2, EXV_PRINT_TAG(exifGPSLatitudeRef)), + gpsId, gpsTags, asciiString, 2, EXV_PRINT_TAG(exifGPSLatitudeRef)), TagInfo(0x0014, "GPSDestLatitude", N_("GPS Destination Latitude"), N_("Indicates the latitude of the destination point. The latitude is expressed as " "three RATIONAL values giving the degrees, minutes, and seconds, respectively. " @@ -1783,53 +1783,53 @@ namespace Exiv2 { "be dd/1,mm/1,ss/1. When degrees and minutes are used and, for example, " "fractions of minutes are given up to two decimal places, the format would be " "dd/1,mmmm/100,0/1."), - gpsIfdId, gpsTags, unsignedRational, 3, printDegrees), + gpsId, gpsTags, unsignedRational, 3, printDegrees), TagInfo(0x0015, "GPSDestLongitudeRef", N_("GPS Destination Longitude Reference"), N_("Indicates whether the longitude of the destination point is east or west longitude. " "ASCII \"E\" indicates east longitude, and \"W\" is west longitude."), - gpsIfdId, gpsTags, asciiString, 2, EXV_PRINT_TAG(exifGPSLongitudeRef)), + gpsId, gpsTags, asciiString, 2, EXV_PRINT_TAG(exifGPSLongitudeRef)), TagInfo(0x0016, "GPSDestLongitude", N_("GPS Destination Longitude"), N_("Indicates the longitude of the destination point. The longitude is expressed " "as three RATIONAL values giving the degrees, minutes, and seconds, respectively. " "If longitude is expressed as degrees, minutes and seconds, a typical format would be " "ddd/1,mm/1,ss/1. When degrees and minutes are used and, for example, fractions of " "minutes are given up to two decimal places, the format would be ddd/1,mmmm/100,0/1."), - gpsIfdId, gpsTags, unsignedRational, 3, printDegrees), + gpsId, gpsTags, unsignedRational, 3, printDegrees), TagInfo(0x0017, "GPSDestBearingRef", N_("GPS Destination Bearing Reference"), N_("Indicates the reference used for giving the bearing to the destination point. " "\"T\" denotes true direction and \"M\" is magnetic direction."), - gpsIfdId, gpsTags, asciiString, 2, printGPSDirRef), + gpsId, gpsTags, asciiString, 2, printGPSDirRef), TagInfo(0x0018, "GPSDestBearing", N_("GPS Destination Bearing"), N_("Indicates the bearing to the destination point. The range of values is from " "0.00 to 359.99."), - gpsIfdId, gpsTags, unsignedRational, 1, printValue), + gpsId, gpsTags, unsignedRational, 1, printValue), TagInfo(0x0019, "GPSDestDistanceRef", N_("GPS Destination Distance Reference"), N_("Indicates the unit used to express the distance to the destination point. " "\"K\", \"M\" and \"N\" represent kilometers, miles and knots."), - gpsIfdId, gpsTags, asciiString, 2, print0x0019), + gpsId, gpsTags, asciiString, 2, print0x0019), TagInfo(0x001a, "GPSDestDistance", N_("GPS Destination Distance"), N_("Indicates the distance to the destination point."), - gpsIfdId, gpsTags, unsignedRational, 1, printValue), + gpsId, gpsTags, unsignedRational, 1, printValue), TagInfo(0x001b, "GPSProcessingMethod", N_("GPS Processing Method"), N_("A character string recording the name of the method used for location finding. " "The first byte indicates the character code used, and this is followed by the name " "of the method."), - gpsIfdId, gpsTags, undefined, 0, printValue), + gpsId, gpsTags, undefined, 0, printValue), TagInfo(0x001c, "GPSAreaInformation", N_("GPS Area Information"), N_("A character string recording the name of the GPS area. The first byte indicates " "the character code used, and this is followed by the name of the GPS area."), - gpsIfdId, gpsTags, undefined, 0, printValue), + gpsId, gpsTags, undefined, 0, printValue), TagInfo(0x001d, "GPSDateStamp", N_("GPS Date Stamp"), N_("A character string recording date and time information relative to UTC " "(Coordinated Universal Time). The format is \"YYYY:MM:DD.\"."), - gpsIfdId, gpsTags, asciiString, 11, printValue), + gpsId, gpsTags, asciiString, 11, printValue), TagInfo(0x001e, "GPSDifferential", N_("GPS Differential"), N_("Indicates whether differential correction is applied to the GPS receiver."), - gpsIfdId, gpsTags, unsignedShort, 1, print0x001e), + gpsId, gpsTags, unsignedShort, 1, print0x001e), // End of list marker TagInfo(0xffff, "(UnknownGpsTag)", N_("Unknown GPSInfo tag"), N_("Unknown GPSInfo tag"), - gpsIfdId, gpsTags, asciiString, -1, printValue) + gpsId, gpsTags, asciiString, -1, printValue) }; const TagInfo* gpsTagList() @@ -1845,23 +1845,23 @@ namespace Exiv2 { "including the termination code (NULL). see the separate " "volume of Recommended Exif Interoperability Rules (ExifR98) " "for other tags used for ExifR98."), - iopIfdId, iopTags, asciiString, 0, printValue), + iopId, iopTags, asciiString, 0, printValue), TagInfo(0x0002, "InteroperabilityVersion", N_("Interoperability Version"), N_("Interoperability version"), - iopIfdId, iopTags, undefined, -1, printExifVersion), + iopId, iopTags, undefined, -1, printExifVersion), TagInfo(0x1000, "RelatedImageFileFormat", N_("Related Image File Format"), N_("File format of image file"), - iopIfdId, iopTags, asciiString, 0, printValue), + iopId, iopTags, asciiString, 0, printValue), TagInfo(0x1001, "RelatedImageWidth", N_("Related Image Width"), N_("Image width"), - iopIfdId, iopTags, unsignedLong, 1, printValue), + iopId, iopTags, unsignedLong, 1, printValue), TagInfo(0x1002, "RelatedImageLength", N_("Related Image Length"), N_("Image height"), - iopIfdId, iopTags, unsignedLong, 1, printValue), + iopId, iopTags, unsignedLong, 1, printValue), // End of list marker TagInfo(0xffff, "(UnknownIopTag)", N_("Unknown Exif Interoperability tag"), N_("Unknown Exif Interoperability tag"), - iopIfdId, iopTags, asciiString, -1, printValue) + iopId, iopTags, asciiString, -1, printValue) }; const TagInfo* iopTagList() @@ -1873,14 +1873,14 @@ namespace Exiv2 { static const TagInfo mnTagInfo[] = { TagInfo(0x0001, "Offset", N_("Offset"), N_("Offset of the makernote from the start of the TIFF header."), - mnIfdId, makerTags, unsignedLong, 1, printValue), + mnId, makerTags, unsignedLong, 1, printValue), TagInfo(0x0002, "ByteOrder", N_("Byte Order"), N_("Byte order used to encode MakerNote tags, 'MM' (big-endian) or 'II' (little-endian)."), - mnIfdId, makerTags, asciiString, 0, printValue), + mnId, makerTags, asciiString, 0, printValue), // End of list marker TagInfo(0xffff, "(UnknownMnTag)", N_("Unknown Exiv2 Makernote info tag"), N_("Unknown Exiv2 Makernote info tag"), - mnIfdId, makerTags, asciiString, -1, printValue) + mnId, makerTags, asciiString, -1, printValue) }; const TagInfo* mnTagList() @@ -1898,10 +1898,10 @@ namespace Exiv2 { return os << value; } - IfdId ifdIdByIfdItem(const std::string& ifdItem) + IfdId groupId(const std::string& groupName) { IfdId ifdId = ifdIdNotSet; - const GroupInfo* ii = find(groupInfo, GroupInfo::Item(ifdItem)); + const GroupInfo* ii = find(groupInfo, GroupInfo::GroupName(groupName)); if (ii != 0) ifdId = static_cast(ii->ifdId_); return ifdId; } @@ -1909,22 +1909,22 @@ namespace Exiv2 { const char* ifdName(IfdId ifdId) { const GroupInfo* ii = find(groupInfo, ifdId); - if (ii == 0) return groupInfo[0].name_; - return ii->name_; + if (ii == 0) return groupInfo[0].ifdName_; + return ii->ifdName_; } // ifdName - const char* ifdItem(IfdId ifdId) + const char* groupName(IfdId ifdId) { const GroupInfo* ii = find(groupInfo, ifdId); - if (ii == 0) return groupInfo[0].item_; - return ii->item_; - } // ifdItem + if (ii == 0) return groupInfo[0].groupName_; + return ii->groupName_; + } // groupName bool isMakerIfd(IfdId ifdId) { bool rc = false; const GroupInfo* ii = find(groupInfo, ifdId); - if (ii != 0 && 0 == strcmp(ii->name_, "Makernote")) { + if (ii != 0 && 0 == strcmp(ii->ifdName_, "Makernote")) { rc = true; } return rc; @@ -1935,9 +1935,9 @@ namespace Exiv2 { bool rc; switch (ifdId) { case ifd0Id: - case exifIfdId: - case gpsIfdId: - case iopIfdId: + case exifId: + case gpsId: + case iopId: case ifd1Id: case ifd2Id: case ifd3Id: @@ -1950,7 +1950,7 @@ namespace Exiv2 { case subImage7Id: case subImage8Id: case subImage9Id: - case panaRawIfdId: rc = true; break; + case panaRawId: rc = true; break; default: rc = false; break; } return rc; @@ -2591,9 +2591,9 @@ namespace Exiv2 { namespace Exiv2 { //! @cond IGNORE - GroupInfo::Item::Item(const std::string& item) + GroupInfo::GroupName::GroupName(const std::string& groupName) { - i_ = item; + g_ = groupName; } //! @endcond @@ -2602,9 +2602,9 @@ namespace Exiv2 { return ifdId_ == ifdId; } - bool GroupInfo::operator==(const Item& item) const + bool GroupInfo::operator==(const GroupName& groupName) const { - return 0 == strcmp(item.i_.c_str(), item_); + return 0 == strcmp(groupName.g_.c_str(), groupName_); } TagInfo::TagInfo( @@ -2628,22 +2628,22 @@ namespace Exiv2 { return groupInfo + 1; // +1 to skip the first (ifdIdNotSet) entry } - const TagInfo* ExifTags::tagList(const std::string& group) + const TagInfo* ExifTags::tagList(const std::string& groupName) { - const GroupInfo* ii = find(groupInfo, GroupInfo::Item(group)); + const GroupInfo* ii = find(groupInfo, GroupInfo::GroupName(groupName)); if (ii == 0 || ii->tagList_ == 0) return 0; return ii->tagList_(); } // ExifTags::tagList - bool ExifTags::isMakerGroup(const std::string& group) + bool ExifTags::isMakerGroup(const std::string& groupName) { - IfdId ifdId = Internal::ifdIdByIfdItem(group); + IfdId ifdId = Internal::groupId(groupName); return Internal::isMakerIfd(ifdId); } - bool ExifTags::isExifGroup(const std::string& group) + bool ExifTags::isExifGroup(const std::string& groupName) { - IfdId ifdId = Internal::ifdIdByIfdItem(group); + IfdId ifdId = Internal::groupId(groupName); return Internal::isExifIfd(ifdId); } @@ -2663,9 +2663,9 @@ namespace Exiv2 { } } // ExifTags::taglist - void ExifTags::taglist(std::ostream& os, const std::string& group) + void ExifTags::taglist(std::ostream& os, const std::string& groupName) { - IfdId ifdId = Internal::ifdIdByIfdItem(group); + IfdId ifdId = Internal::groupId(groupName); Internal::taglist(os, ifdId); } @@ -2680,7 +2680,7 @@ namespace Exiv2 { //@{ /*! @brief Set the key corresponding to the \em tag, \em ifdId and \em tagInfo. - The key is of the form 'Exif.ifdItem.tagName'. + The key is of the form 'Exif.groupName.tagName'. */ void makeKey(uint16_t tag, IfdId ifdId, const TagInfo* tagInfo); /*! @@ -2706,7 +2706,7 @@ namespace Exiv2 { uint16_t tag_; //!< Tag value IfdId ifdId_; //!< The IFD associated with this tag int idx_; //!< Unique id of the Exif key in the image - std::string ifdItem_; //!< The IFD item + std::string groupName_; //!< The group name std::string key_; //!< %Key }; @@ -2740,13 +2740,13 @@ namespace Exiv2 { std::string::size_type pos0 = pos1 + 1; pos1 = key.find('.', pos0); if (pos1 == std::string::npos) throw Error(6, key); - std::string ifdItem = key.substr(pos0, pos1 - pos0); - if (ifdItem == "") throw Error(6, key); + std::string groupName = key.substr(pos0, pos1 - pos0); + if (groupName == "") throw Error(6, key); std::string tn = key.substr(pos1 + 1); if (tn == "") throw Error(6, key); // Find IfdId - IfdId ifdId = ifdIdByIfdItem(ifdItem); + IfdId ifdId = groupId(groupName); if (ifdId == ifdIdNotSet) throw Error(6, key); if (!Internal::isExifIfd(ifdId) && !Internal::isMakerIfd(ifdId)) { throw Error(6, key); @@ -2759,9 +2759,9 @@ namespace Exiv2 { tag_ = tag; ifdId_ = ifdId; - ifdItem_ = ifdItem; + groupName_ = groupName; // tagName() translates hex tag name (0xabcd) to a real tag name if there is one - key_ = familyName + "." + ifdItem + "." + tagName(); + key_ = familyName + "." + groupName + "." + tagName(); } void ExifKey::Impl::makeKey(uint16_t tag, IfdId ifdId, const TagInfo* tagInfo) @@ -2771,13 +2771,13 @@ namespace Exiv2 { tagInfo_ = tagInfo; tag_ = tag; ifdId_ = ifdId; - key_ = std::string(familyName_) + "." + ifdItem_ + "." + tagName(); + key_ = std::string(familyName_) + "." + groupName_ + "." + tagName(); } - ExifKey::ExifKey(uint16_t tag, const std::string& ifdItem) + ExifKey::ExifKey(uint16_t tag, const std::string& groupName) : p_(new Impl) { - IfdId ifdId = ifdIdByIfdItem(ifdItem); + IfdId ifdId = groupId(groupName); // Todo: Test if this condition can be removed if (!Internal::isExifIfd(ifdId) && !Internal::isMakerIfd(ifdId)) { throw Error(23, ifdId); @@ -2786,7 +2786,7 @@ namespace Exiv2 { if (ti == 0) { throw Error(23, ifdId); } - p_->ifdItem_ = ifdItem; + p_->groupName_ = groupName; p_->makeKey(tag, ifdId, ti); } @@ -2797,7 +2797,7 @@ namespace Exiv2 { if (!Internal::isExifIfd(ifdId) && !Internal::isMakerIfd(ifdId)) { throw Error(23, ifdId); } - p_->ifdItem_ = ifdItem(ifdId); + p_->groupName_ = Exiv2::groupName(ifdId); p_->makeKey(tagInfo.tag_, ifdId, &tagInfo); } @@ -2842,7 +2842,7 @@ namespace Exiv2 { std::string ExifKey::groupName() const { - return p_->ifdItem_; // Todo: rename ifdItem to groupName + return p_->groupName_; } const char* ExifKey::ifdName() const diff --git a/src/tags.hpp b/src/tags.hpp index 74707ed9..d7095024 100644 --- a/src/tags.hpp +++ b/src/tags.hpp @@ -61,21 +61,21 @@ namespace Exiv2 { // ***************************************************************************** // class definitions - //! The details of an IFD. + //! The details of an Exif group. Groups include IFDs and binary arrays. struct EXIV2API GroupInfo { - struct Item; - bool operator==(int ifdId) const; //!< Comparison operator for IFD id - bool operator==(const Item& item) const; //!< Comparison operator for IFD item - int ifdId_; //!< IFD id - const char* name_; //!< IFD name - const char* item_; //!< Related IFD item. This is also an IFD name, unique for each IFD. - TagListFct tagList_; //!< Tag list + struct GroupName; + bool operator==(int ifdId) const; //!< Comparison operator for IFD id + bool operator==(const GroupName& groupName) const; //!< Comparison operator for group name + int ifdId_; //!< IFD id + const char* ifdName_; //!< IFD name + const char* groupName_; //!< Group name, unique for each group. + TagListFct tagList_; //!< Tag list }; - //! Search key to find a GroupInfo by its IFD item. - struct EXIV2API GroupInfo::Item { - Item(const std::string& item); //!< Constructor - std::string i_; //!< IFD item + //! Search key to find a GroupInfo by its group name. + struct EXIV2API GroupInfo::GroupName { + GroupName(const std::string& groupName); //!< Constructor + std::string g_; //!< Group name }; //! Tag information @@ -115,30 +115,29 @@ namespace Exiv2 { public: //! Return read-only list of build-in groups static const GroupInfo* groupList(); - //! Return read-only list of built-in \em group tags. - static const TagInfo* tagList(const std::string& group); + //! Return read-only list of built-in \em groupName tags. + static const TagInfo* tagList(const std::string& groupName); //! Print a list of all standard Exif tags to output stream static void taglist(std::ostream& os); - //! Print the list of tags for \em group - static void taglist(std::ostream& os, const std::string& group); + //! Print the list of tags for \em groupName + static void taglist(std::ostream& os, const std::string& groupName); /*! - @brief Return true if \em group is a makernote group which is - a makernote group. + @brief Return true if \em groupName is a makernote group. */ - static bool isMakerGroup(const std::string& group); + static bool isMakerGroup(const std::string& groupName); /*! - @brief Return true if \em group is a TIFF or Exif IFD, else false. + @brief Return true if \em groupName is a TIFF or Exif IFD, else false. This is used to differentiate between standard Exif IFDs and IFDs associated with the makernote. */ - static bool isExifGroup(const std::string& group); + static bool isExifGroup(const std::string& groupName); }; // class ExifTags /*! - @brief Concrete keys for Exif metadata. + @brief Concrete keys for Exif metadata and access to Exif tag reference data. */ class EXIV2API ExifKey : public Key { public: @@ -153,24 +152,23 @@ namespace Exiv2 { @param key The key string. @throw Error if the first part of the key is not 'Exif' or the remainin parts of the key cannot be parsed and - converted to an ifd-item and tag name. + converted to a group name and tag name. */ explicit ExifKey(const std::string& key); /*! - @brief Constructor to create an Exif key from a tag and IFD item - string. + @brief Constructor to create an Exif key from the tag number and + group name. @param tag The tag value - @param ifdItem The IFD string. For MakerNote tags, this must be the - IFD item of the specific MakerNote. "MakerNote" is not allowed. - @throw Error if the key cannot be constructed from the tag and IFD - item parameters. + @param groupName The name of the group, i.e., the second part of + the Exif key. + @throw Error if the key cannot be constructed from the tag number + and group name. */ - ExifKey(uint16_t tag, const std::string& ifdItem); + ExifKey(uint16_t tag, const std::string& groupName); /*! @brief Constructor to create an Exif key from a tag info structure @param tagInfo The tag info structure - @throw Error if the key cannot be constructed from the tag and IFD - item parameters. + @throw Error if the key cannot be constructed from the tag info structure */ explicit ExifKey(const TagInfo& tagInfo); //! Copy constructor @@ -193,18 +191,14 @@ namespace Exiv2 { //@{ virtual std::string key() const; virtual const char* familyName() const; - /*! - @brief Return the name of the group (the second part of the key). - For Exif keys, the group name is the IFD item. - */ virtual std::string groupName() const; virtual std::string tagName() const; virtual std::string tagLabel() const; //! Return the tag description. - std::string tagDesc() const; // Todo: should be in the base class + std::string tagDesc() const; // Todo: should be in the base class //! Return the default type id for this tag. - TypeId defaultTypeId() const; // Todo: should be in the base class - //! Return the default number of components (not bytes!) this tag has. (0=any, -1=count not known.) + TypeId defaultTypeId() const; // Todo: should be in the base class + //! Return the default number of components (not bytes!) this tag has. (0=any, -1=count not known) uint16_t defaultCount() const; virtual uint16_t tag() const; diff --git a/src/tags_int.hpp b/src/tags_int.hpp index baf34133..37c4c31e 100644 --- a/src/tags_int.hpp +++ b/src/tags_int.hpp @@ -33,6 +33,7 @@ // ***************************************************************************** // included header files #include "types.hpp" +#include "tags.hpp" #include "value.hpp" // + standard includes @@ -55,12 +56,12 @@ namespace Exiv2 { enum IfdId { ifdIdNotSet, ifd0Id, - exifIfdId, - gpsIfdId, - iopIfdId, ifd1Id, ifd2Id, ifd3Id, + exifId, + gpsId, + iopId, subImage1Id, subImage2Id, subImage3Id, @@ -70,85 +71,86 @@ namespace Exiv2 { subImage7Id, subImage8Id, subImage9Id, - mnIfdId, - canonIfdId, - canonCsIfdId, - canonSiIfdId, - canonCfIfdId, - canonPiIfdId, - canonPaIfdId, - canonFiIfdId, - canonPrIfdId, - fujiIfdId, - minoltaIfdId, - minoltaCs5DIfdId, - minoltaCs7DIfdId, - minoltaCsOldIfdId, - minoltaCsNewIfdId, - nikon1IfdId, - nikon2IfdId, - nikon3IfdId, - nikonPvIfdId, - nikonVrIfdId, - nikonPcIfdId, - nikonWtIfdId, - nikonIiIfdId, - nikonAfIfdId, - nikonAf2IfdId, - nikonFiIfdId, - nikonMeIfdId, - nikonFl1IfdId, - nikonFl2IfdId, - nikonFl3IfdId, - nikonSi1IfdId, - nikonSi2IfdId, - nikonSi3IfdId, - nikonSi4IfdId, - nikonSi5IfdId, - nikonSi6IfdId, - nikonLd1IfdId, - nikonLd2IfdId, - nikonLd3IfdId, - nikonCb1IfdId, - nikonCb2IfdId, - nikonCb2aIfdId, - nikonCb2bIfdId, - nikonCb3IfdId, - nikonCb4IfdId, - olympusIfdId, - olympus2IfdId, - olympusCsIfdId, - olympusEqIfdId, - olympusRdIfdId, - olympusRd2IfdId, - olympusIpIfdId, - olympusFiIfdId, - olympusFe1IfdId, - olympusFe2IfdId, - olympusFe3IfdId, - olympusFe4IfdId, - olympusFe5IfdId, - olympusFe6IfdId, - olympusFe7IfdId, - olympusFe8IfdId, - olympusFe9IfdId, - olympusRiIfdId, - panasonicIfdId, - panaRawIfdId, - pentaxIfdId, - sigmaIfdId, - sony1IfdId, - sony2IfdId, - sonyMltIfdId, - sony1CsIfdId, - sony1Cs2IfdId, - sony2CsIfdId, - sony2Cs2IfdId, - sony1MltCs7DIfdId, - sony1MltCsOldIfdId, - sony1MltCsNewIfdId, - sony1MltCsA100IfdId, - lastIfdId + panaRawId, + mnId, + canonId, + canonCsId, + canonSiId, + canonCfId, + canonPiId, + canonPaId, + canonFiId, + canonPrId, + fujiId, + minoltaId, + minoltaCs5DId, + minoltaCs7DId, + minoltaCsOldId, + minoltaCsNewId, + nikon1Id, + nikon2Id, + nikon3Id, + nikonPvId, + nikonVrId, + nikonPcId, + nikonWtId, + nikonIiId, + nikonAfId, + nikonAf2Id, + nikonFiId, + nikonMeId, + nikonFl1Id, + nikonFl2Id, + nikonFl3Id, + nikonSi1Id, + nikonSi2Id, + nikonSi3Id, + nikonSi4Id, + nikonSi5Id, + nikonSi6Id, + nikonLd1Id, + nikonLd2Id, + nikonLd3Id, + nikonCb1Id, + nikonCb2Id, + nikonCb2aId, + nikonCb2bId, + nikonCb3Id, + nikonCb4Id, + olympusId, + olympus2Id, + olympusCsId, + olympusEqId, + olympusRdId, + olympusRd2Id, + olympusIpId, + olympusFiId, + olympusFe1Id, + olympusFe2Id, + olympusFe3Id, + olympusFe4Id, + olympusFe5Id, + olympusFe6Id, + olympusFe7Id, + olympusFe8Id, + olympusFe9Id, + olympusRiId, + panasonicId, + pentaxId, + sigmaId, + sony1Id, + sony2Id, + sonyMltId, + sony1CsId, + sony1Cs2Id, + sony2CsId, + sony2Cs2Id, + sony1MltCs7DId, + sony1MltCsOldId, + sony1MltCsNewId, + sony1MltCsA100Id, + lastId, + ignoreId = lastId }; /*! @@ -295,12 +297,12 @@ namespace Exiv2 { //! Return read-only list of built-in Exiv2 Makernote info tags const TagInfo* mnTagList(); - //! Return the IFD id for an IFD item - IfdId ifdIdByIfdItem(const std::string& ifdItem); + //! Return the group id for a group name + IfdId groupId(const std::string& groupName); //! Return the name of the IFD const char* ifdName(IfdId ifdId); - //! Return the related image item (image or thumbnail) - const char* ifdItem(IfdId ifdId); + //! Return the group name for a group id + const char* groupName(IfdId ifdId); //! Return true if \em ifdId is a makernote IFD id. (Note: returns false for makerIfd) bool isMakerIfd(IfdId ifdId); @@ -314,7 +316,7 @@ namespace Exiv2 { //! Return the tag info for \em tag and \em ifdId const TagInfo* tagInfo(uint16_t tag, IfdId ifdId); //! Return the tag info for \em tagName and \em ifdId - const TagInfo* tagInfo(const std::string& tagName, IfdId ifdId); // Todo: do we really need this??? + const TagInfo* tagInfo(const std::string& tagName, IfdId ifdId); /*! @brief Return the tag number for one combination of IFD id and tagName. If the tagName is not known, it expects tag names in the diff --git a/src/tiffcomposite.cpp b/src/tiffcomposite.cpp index 73d4c4ff..58fd6ea2 100644 --- a/src/tiffcomposite.cpp +++ b/src/tiffcomposite.cpp @@ -61,145 +61,6 @@ namespace { namespace Exiv2 { namespace Internal { - //! Structure for group and group name info - struct TiffGroupInfo { - //! Comparison operator for group (id) - bool operator==(const uint16_t& group) const; - //! Comparison operator for group name - bool operator==(const std::string& groupName) const; - - uint16_t group_; //!< group - const char* name_; //!< group name - }; - - // Todo: This mapping table probably belongs somewhere else - move it - // Note: Names must be unique and match those in the third column of - // ExifTags::ifdInfo_[] (tags.cpp)! - //! List of groups and their names. - extern const TiffGroupInfo tiffGroupInfo[] = { - { 1, "Image" }, - { 2, "Thumbnail" }, - { 3, "Image2" }, - { 4, "Image3" }, - { 5, "Photo" }, - { 6, "GPSInfo" }, - { 7, "Iop" }, - { 8, "SubImage1" }, - { 9, "SubImage2" }, - { 10, "SubImage3" }, - { 11, "SubImage4" }, - { 12, "SubImage5" }, - { 13, "SubImage6" }, - { 14, "SubImage7" }, - { 15, "SubImage8" }, - { 16, "SubImage9" }, - { 64, "PanasonicRaw" }, - { 256, "MakerNote" }, - // 257 not needed (olympmn) - { 258, "Fujifilm" }, - { 259, "Canon" }, - { 260, "CanonCs" }, - { 261, "CanonSi" }, - { 262, "CanonCf" }, - // 263 not needed (nikonmn) - { 264, "Nikon1" }, - { 265, "Nikon2" }, - { 266, "Nikon3" }, - { 267, "Panasonic" }, - { 268, "Sigma" }, - // 269 not needed (sonymn) - { 270, "Sony1" }, - { 271, "Sony2" }, - { 272, "Minolta" }, - { 273, "MinoltaCsOld" }, - { 274, "MinoltaCsNew" }, - { 275, "MinoltaCs5D" }, - { 276, "MinoltaCs7D" }, - { 277, "CanonPi" }, - { 278, "CanonPa" }, - { 279, "Pentax" }, - { 280, "NikonPreview" }, - { 281, "Olympus" }, - { 282, "Olympus2" }, - { 283, "OlympusCs" }, - { 284, "OlympusEq" }, - { 285, "OlympusRd" }, - { 286, "OlympusRd2" }, - { 287, "OlympusIp" }, - { 288, "OlympusFi" }, - { 289, "OlympusFe1" }, - { 290, "OlympusFe2" }, - { 291, "OlympusFe3" }, - { 292, "OlympusFe4" }, - { 293, "OlympusFe5" }, - { 294, "OlympusFe6" }, - { 295, "OlympusFe7" }, - { 296, "OlympusFe8" }, - { 297, "OlympusFe9" }, - { 298, "OlympusRi" }, - { 299, "NikonWt" }, - { 300, "NikonIi" }, - { 301, "NikonLd1" }, - { 302, "NikonLd2" }, - { 303, "NikonLd3" }, - { 304, "NikonCb1" }, - { 305, "NikonCb2" }, - { 306, "NikonCb2a" }, - { 307, "NikonCb2b" }, - { 308, "NikonCb3" }, - { 309, "NikonCb4" }, - { 310, "NikonVr" }, - { 311, "NikonPc" }, - { 312, "NikonAf" }, - { 313, "NikonSiD80" }, - { 314, "NikonSiD40" }, - { 315, "NikonSiD300a" }, - { 316, "NikonSiD300b" }, - { 317, "NikonSi02xx" }, - { 318, "NikonSi01xx" }, - { 320, "CanonFi" }, - { 330, "SonyMinolta" }, - { 331, "Sony1Cs" }, - { 332, "Sony1Cs2" }, - { 333, "Sony1MltCsOld"}, - { 334, "Sony1MltCsNew"}, - { 335, "Sony1MltCsA100" }, - { 336, "Sony1MltCs7D" }, - { 337, "Sony2Cs" }, - { 338, "Sony2Cs2" }, - { 362, "NikonFi" }, - { 363, "NikonAf2" }, - { 364, "NikonMe" }, - { 365, "NikonFl1" }, - { 366, "NikonFl2" }, - { 367, "NikonFl3" }, - { 368, "CanonPr" }, - }; - - bool TiffGroupInfo::operator==(const uint16_t& group) const - { - return group_ == group; - } - - bool TiffGroupInfo::operator==(const std::string& groupName) const - { - return 0 == strcmp(name_, groupName.c_str()); - } - - const char* tiffGroupName(uint16_t group) - { - const TiffGroupInfo* gi = find(tiffGroupInfo, group); - if (!gi) return "Unknown"; - return gi->name_; - } - - uint16_t tiffGroupId(const std::string& groupName) - { - const TiffGroupInfo* gi = find(tiffGroupInfo, groupName); - if (!gi) return 0; - return gi->group_; - } - bool TiffMappingInfo::operator==(const TiffMappingInfo::Key& key) const { return ( 0 == strcmp("*", make_) @@ -232,12 +93,12 @@ namespace Exiv2 { return io_.putb(data); } - TiffComponent::TiffComponent(uint16_t tag, uint16_t group) + TiffComponent::TiffComponent(uint16_t tag, IfdId group) : tag_(tag), group_(group), pStart_(0) { } - TiffEntryBase::TiffEntryBase(uint16_t tag, uint16_t group, TiffType tiffType) + TiffEntryBase::TiffEntryBase(uint16_t tag, IfdId group, TiffType tiffType) : TiffComponent(tag, group), tiffType_(tiffType), count_(0), offset_(0), size_(0), pData_(0), isMalloced_(false), idx_(0), @@ -245,19 +106,19 @@ namespace Exiv2 { { } - TiffSubIfd::TiffSubIfd(uint16_t tag, uint16_t group, uint16_t newGroup) + TiffSubIfd::TiffSubIfd(uint16_t tag, IfdId group, IfdId newGroup) : TiffEntryBase(tag, group, ttUnsignedLong), newGroup_(newGroup) { } - TiffMnEntry::TiffMnEntry(uint16_t tag, uint16_t group, uint16_t mnGroup) + TiffMnEntry::TiffMnEntry(uint16_t tag, IfdId group, IfdId mnGroup) : TiffEntryBase(tag, group, ttUndefined), mnGroup_(mnGroup), mn_(0) { } TiffIfdMakernote::TiffIfdMakernote(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, MnHeader* pHeader, bool hasNext) : TiffComponent(tag, group), @@ -269,7 +130,7 @@ namespace Exiv2 { } TiffBinaryArray::TiffBinaryArray(uint16_t tag, - uint16_t group, + IfdId group, const ArrayCfg* arrayCfg, const ArrayDef* arrayDef, int defSize) @@ -288,7 +149,7 @@ namespace Exiv2 { } TiffBinaryArray::TiffBinaryArray(uint16_t tag, - uint16_t group, + IfdId group, const ArraySet* arraySet, int setSize, CfgSelFct cfgSelFct) @@ -308,8 +169,7 @@ namespace Exiv2 { assert(arraySet_ != 0); } - TiffBinaryElement::TiffBinaryElement(uint16_t tag, - uint16_t group) + TiffBinaryElement::TiffBinaryElement(uint16_t tag, IfdId group) : TiffEntryBase(tag, group) { } @@ -540,7 +400,7 @@ namespace Exiv2 { if (!pValue() || !pSize) { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: " - << "Directory " << tiffGroupName(group()) + << "Directory " << groupName(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << ": Size or data offset value not set, ignoring them.\n"; @@ -550,7 +410,7 @@ namespace Exiv2 { if (pValue()->count() == 0) { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: " - << "Directory " << tiffGroupName(group()) + << "Directory " << groupName(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << ": Data offset entry value is empty, ignoring it.\n"; @@ -560,7 +420,7 @@ namespace Exiv2 { if (pValue()->count() != pSize->count()) { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: " - << "Directory " << tiffGroupName(group()) + << "Directory " << groupName(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << ": Size and data offset entries have different" @@ -580,7 +440,7 @@ namespace Exiv2 { - offset != size) { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: " - << "Directory " << tiffGroupName(group()) + << "Directory " << groupName(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << ": Data area is not contiguous, ignoring it.\n"; @@ -592,7 +452,7 @@ namespace Exiv2 { || baseOffset + offset > sizeData - size) { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: " - << "Directory " << tiffGroupName(group()) + << "Directory " << groupName(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << ": Data area exceeds data buffer, ignoring it.\n"; @@ -612,7 +472,7 @@ namespace Exiv2 { if (!pValue() || !pSize) { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: " - << "Directory " << tiffGroupName(group()) + << "Directory " << groupName(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << ": Size or data offset value not set, ignoring them.\n"; @@ -622,7 +482,7 @@ namespace Exiv2 { if (pValue()->count() != pSize->count()) { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: " - << "Directory " << tiffGroupName(group()) + << "Directory " << groupName(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << ": Size and data offset entries have different" @@ -640,7 +500,7 @@ namespace Exiv2 { || baseOffset + offset > sizeData - size) { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: " - << "Directory " << tiffGroupName(group()) + << "Directory " << groupName(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << ": Strip " << std::dec << i @@ -704,13 +564,13 @@ namespace Exiv2 { return pHeader_->write(ioWrapper, byteOrder); } - uint32_t ArrayDef::size(uint16_t tag, uint16_t group) const + uint32_t ArrayDef::size(uint16_t tag, IfdId group) const { TypeId typeId = toTypeId(tiffType_, tag, group); return count_ * TypeInfo::typeSize(typeId); } - bool TiffBinaryArray::initialize(uint16_t group) + bool TiffBinaryArray::initialize(IfdId group) { if (arrayCfg_ != 0) return true; // Not a complex array or already initialized @@ -802,7 +662,7 @@ namespace Exiv2 { // This is used to prevent duplicate entries. Sub-IFDs also, but the > 1 // condition takes care of them, see below. if ( tiffPath.size() > 1 - || (tpi.extendedTag() == 0x927c && tpi.group() == Group::exif)) { + || (tpi.extendedTag() == 0x927c && tpi.group() == exifId)) { if (tpi.extendedTag() == Tag::next) { tc = pNext_; } @@ -1220,7 +1080,7 @@ namespace Exiv2 { // Number of components to write const uint32_t compCount = count(); - if (compCount > 0xffff) throw Error(49, tiffGroupName(group())); + if (compCount > 0xffff) throw Error(49, groupName(group())); // Size of next IFD, if any uint32_t sizeNext = 0; @@ -1234,7 +1094,7 @@ namespace Exiv2 { // TIFF standard requires IFD entries to be sorted in ascending order by tag. // Not sorting makernote directories sometimes preserves them better. - if (group() < Group::mn) { + if (group() < mnId) { std::sort(components_.begin(), components_.end(), cmpTagLt); } // Size of IFD values and additional data @@ -1436,9 +1296,9 @@ namespace Exiv2 { { uint32_t o2 = imageIdx; // For makernotes, write TIFF image data to the data area - if (group() > Group::mn) o2 = offset + dataIdx; + if (group() > mnId) o2 = offset + dataIdx; #ifdef DEBUG - std::cerr << "TiffImageEntry, Directory " << tiffGroupName(group()) + std::cerr << "TiffImageEntry, Directory " << ifdItem(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << std::dec << ": Writing offset " << o2 << "\n"; @@ -1449,7 +1309,7 @@ namespace Exiv2 { idx += writeOffset(buf.pData_ + idx, o2, tiffType(), byteOrder); o2 += i->second; o2 += i->second & 1; // Align strip data to word boundary - if (!(group() > Group::mn)) { + if (!(group() > mnId)) { // Todo: FIX THIS!! SHOULDN'T USE > imageIdx += i->second; imageIdx += i->second & 1; // Align strip data to word boundary } @@ -1623,7 +1483,7 @@ namespace Exiv2 { { uint32_t len = 0; // For makernotes, write TIFF image data to the data area - if (group() > Group::mn) { + if (group() > mnId) { // Todo: FIX THIS HACK!!! len = writeImage(ioWrapper, byteOrder); } return len; @@ -1734,7 +1594,7 @@ namespace Exiv2 { uint32_t len = pValue()->sizeDataArea(); if (len > 0) { #ifdef DEBUG - std::cerr << "TiffImageEntry, Directory " << tiffGroupName(group()) + std::cerr << "TiffImageEntry, Directory " << ifdItem(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << std::dec << ": Writing data area, size = " << len; @@ -1747,7 +1607,7 @@ namespace Exiv2 { } else { #ifdef DEBUG - std::cerr << "TiffImageEntry, Directory " << tiffGroupName(group()) + std::cerr << "TiffImageEntry, Directory " << ifdItem(group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << tag() << std::dec << ": Writing " << strips_.size() << " strips"; @@ -1873,7 +1733,7 @@ namespace Exiv2 { { uint32_t len = 0; // For makernotes, TIFF image data is written to the data area - if (group() > Group::mn) { + if (group() > mnId) { // Todo: Fix this hack!! len = sizeImage(); } return len; @@ -1950,11 +1810,11 @@ namespace Exiv2 { // ************************************************************************* // free functions - TypeId toTypeId(TiffType tiffType, uint16_t tag, uint16_t group) + TypeId toTypeId(TiffType tiffType, uint16_t tag, IfdId group) { TypeId ti = TypeId(tiffType); // On the fly type conversion for Exif.Photo.UserComment - if (tag == 0x9286 && group == Group::exif && ti == undefined) { + if (tag == 0x9286 && group == exifId && ti == undefined) { ti = comment; } return ti; @@ -1988,17 +1848,17 @@ namespace Exiv2 { return lhs->group() < rhs->group(); } - TiffComponent::AutoPtr newTiffEntry(uint16_t tag, uint16_t group) + TiffComponent::AutoPtr newTiffEntry(uint16_t tag, IfdId group) { return TiffComponent::AutoPtr(new TiffEntry(tag, group)); } - TiffComponent::AutoPtr newTiffMnEntry(uint16_t tag, uint16_t group) + TiffComponent::AutoPtr newTiffMnEntry(uint16_t tag, IfdId group) { - return TiffComponent::AutoPtr(new TiffMnEntry(tag, group, Group::mn)); + return TiffComponent::AutoPtr(new TiffMnEntry(tag, group, mnId)); } - TiffComponent::AutoPtr newTiffBinaryElement(uint16_t tag, uint16_t group) + TiffComponent::AutoPtr newTiffBinaryElement(uint16_t tag, IfdId group) { return TiffComponent::AutoPtr(new TiffBinaryElement(tag, group)); } diff --git a/src/tiffcomposite_int.hpp b/src/tiffcomposite_int.hpp index 73e8499c..79f2f56a 100644 --- a/src/tiffcomposite_int.hpp +++ b/src/tiffcomposite_int.hpp @@ -70,48 +70,12 @@ namespace Exiv2 { const TiffType ttTiffIfd =13; //!< TIFF IFD type //! Convert the \em tiffType of a \em tag and \em group to an Exiv2 \em typeId. - TypeId toTypeId(TiffType tiffType, uint16_t tag, uint16_t group); + TypeId toTypeId(TiffType tiffType, uint16_t tag, IfdId group); //! Convert the %Exiv2 \em typeId to a TIFF value type. TiffType toTiffType(TypeId typeId); - /*! - Known TIFF groups - - Todo: what exactly are these and where should they go? - Are they going to be mapped to the second part of an Exif key or are they - the second part of the key? - - @note Groups with ids > mn are Makernote groups and get treated slightly - differently. - */ - namespace Group { - const uint16_t none = 0; //!< Dummy group - const uint16_t ifd0 = 1; //!< Exif IFD0 - const uint16_t ifd1 = 2; //!< Thumbnail IFD - const uint16_t ifd2 = 3; //!< IFD2 - const uint16_t ifd3 = 4; //!< IFD3 - const uint16_t exif = 5; //!< Exif IFD - const uint16_t gps = 6; //!< GPS IFD - const uint16_t iop = 7; //!< Interoperability IFD - const uint16_t subimg1 = 8; //!< 1st TIFF SubIFD in IFD0 - const uint16_t subimg2 = 9; //!< 2nd TIFF SubIFD in IFD0 - const uint16_t subimg3 = 10; //!< 3rd TIFF SubIFD in IFD0 - const uint16_t subimg4 = 11; //!< 4th TIFF SubIFD in IFD0 - const uint16_t subimg5 = 12; //!< 5th TIFF SubIFD in IFD0 - const uint16_t subimg6 = 13; //!< 6th TIFF SubIFD in IFD0 - const uint16_t subimg7 = 14; //!< 7th TIFF SubIFD in IFD0 - const uint16_t subimg8 = 15; //!< 8th TIFF SubIFD in IFD0 - const uint16_t subimg9 = 16; //!< 9th TIFF SubIFD in IFD0 - const uint16_t subimgX = 17; //!< End of SubIFD list marker, not a valid group - const uint16_t panaraw = 64; //!< IFD0 of Panasonic RAW images - const uint16_t mn = 256; //!< Makernote - const uint16_t ignr = 511; //!< Read but do not decode - } - /*! Special TIFF tags for the use in TIFF structures only - - Todo: Same Q as above... */ namespace Tag { const uint32_t none = 0x10000; //!< Dummy tag @@ -130,7 +94,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Constructor - TiffPathItem(uint32_t extendedTag, uint16_t group) + TiffPathItem(uint32_t extendedTag, IfdId group) : extendedTag_(extendedTag), group_(group) {} //@} @@ -141,13 +105,13 @@ namespace Exiv2 { //! Return the extended tag (32 bit so that it can contain special tags) uint32_t extendedTag() const { return extendedTag_; } //! Return the group - uint16_t group() const { return group_; } + IfdId group() const { return group_; } //@} private: // DATA uint32_t extendedTag_; - uint16_t group_; + IfdId group_; }; // class TiffPathItem /*! @@ -216,7 +180,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Constructor - TiffComponent(uint16_t tag, uint16_t group); + TiffComponent(uint16_t tag, IfdId group); //! Virtual destructor. virtual ~TiffComponent(); //@} @@ -292,9 +256,9 @@ namespace Exiv2 { //! Return the tag of this entry. uint16_t tag() const { return tag_; } //! Return the group id of this component - uint16_t group() const { return group_; } + IfdId group() const { return group_; } //! Return a pointer to the start of the binary representation of the component - byte* start() const { return pStart_; } + byte* start() const { return pStart_; } /*! @brief Return an auto-pointer to a copy of itself (deep copy, but without any children). The caller owns this copy and the @@ -398,7 +362,7 @@ namespace Exiv2 { private: // DATA uint16_t tag_; //!< Tag that identifies the component - uint16_t group_; //!< Group id for this component + IfdId group_; //!< Group id for this component /*! Pointer to the start of the binary representation of the component in a memory buffer. The buffer is allocated and freed outside of this class. @@ -425,7 +389,7 @@ namespace Exiv2 { // DATA const char* make_; //!< Camera make for which these mapping functions apply uint32_t extendedTag_; //!< Tag (32 bit so that it can contain special tags) - uint16_t group_; //!< Group that contains the tag + IfdId group_; //!< Group that contains the tag DecoderFct decoderFct_; //!< Decoder function for matching tags EncoderFct encoderFct_; //!< Encoder function for matching tags @@ -434,10 +398,10 @@ namespace Exiv2 { //! Search key for TIFF mapping structures. struct TiffMappingInfo::Key { //! Constructor - Key(const std::string& m, uint32_t e, uint16_t g) : m_(m), e_(e), g_(g) {} + Key(const std::string& m, uint32_t e, IfdId g) : m_(m), e_(e), g_(g) {} std::string m_; //!< Camera make uint32_t e_; //!< Extended tag - uint16_t g_; //!< %Group + IfdId g_; //!< %Group }; /*! @@ -454,7 +418,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Default constructor. - TiffEntryBase(uint16_t tag, uint16_t group, TiffType tiffType =ttUndefined); + TiffEntryBase(uint16_t tag, IfdId group, TiffType tiffType =ttUndefined); //! Virtual destructor. virtual ~TiffEntryBase(); //@} @@ -603,7 +567,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Constructor - TiffEntry(uint16_t tag, uint16_t group) : TiffEntryBase(tag, group) {} + TiffEntry(uint16_t tag, IfdId group) : TiffEntryBase(tag, group) {} //! Virtual destructor. virtual ~TiffEntry(); //@} @@ -635,7 +599,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Constructor - TiffDataEntryBase(uint16_t tag, uint16_t group, uint16_t szTag, uint16_t szGroup) + TiffDataEntryBase(uint16_t tag, IfdId group, uint16_t szTag, IfdId szGroup) : TiffEntryBase(tag, group), szTag_(szTag), szGroup_(szGroup) {} //! Virtual destructor. @@ -662,15 +626,15 @@ namespace Exiv2 { //! @name Accessors //@{ //! Return the group of the entry which has the size - uint16_t szTag() const { return szTag_; } + uint16_t szTag() const { return szTag_; } //! Return the group of the entry which has the size - uint16_t szGroup() const { return szGroup_; } + IfdId szGroup() const { return szGroup_; } //@} private: // DATA const uint16_t szTag_; //!< Tag of the entry with the size - const uint16_t szGroup_; //!< Group of the entry with the size + const IfdId szGroup_; //!< Group of the entry with the size }; // class TiffDataEntryBase @@ -691,7 +655,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Constructor - TiffDataEntry(uint16_t tag, uint16_t group, uint16_t szTag, uint16_t szGroup) + TiffDataEntry(uint16_t tag, IfdId group, uint16_t szTag, IfdId szGroup) : TiffDataEntryBase(tag, group, szTag, szGroup), pDataArea_(0), sizeDataArea_(0) {} //! Virtual destructor. @@ -774,7 +738,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Constructor - TiffImageEntry(uint16_t tag, uint16_t group, uint16_t szTag, uint16_t szGroup) + TiffImageEntry(uint16_t tag, IfdId group, uint16_t szTag, IfdId szGroup) : TiffDataEntryBase(tag, group, szTag, szGroup) {} //! Virtual destructor. virtual ~TiffImageEntry(); @@ -856,7 +820,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Constructor - TiffSizeEntry(uint16_t tag, uint16_t group, uint16_t dtTag, uint16_t dtGroup) + TiffSizeEntry(uint16_t tag, IfdId group, uint16_t dtTag, IfdId dtGroup) : TiffEntryBase(tag, group), dtTag_(dtTag), dtGroup_(dtGroup) {} //! Virtual destructor. virtual ~TiffSizeEntry(); @@ -865,9 +829,9 @@ namespace Exiv2 { //! @name Accessors //@{ //! Return the group of the related entry which has the data area - uint16_t dtTag() const { return dtTag_; } + uint16_t dtTag() const { return dtTag_; } //! Return the group of the related entry which has the data area - uint16_t dtGroup() const { return dtGroup_; } + IfdId dtGroup() const { return dtGroup_; } //@} protected: @@ -885,7 +849,7 @@ namespace Exiv2 { private: // DATA const uint16_t dtTag_; //!< Tag of the entry with the data area - const uint16_t dtGroup_; //!< Group of the entry with the data area + const IfdId dtGroup_; //!< Group of the entry with the data area }; // class TiffSizeEntry @@ -899,7 +863,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Default constructor - TiffDirectory(uint16_t tag, uint16_t group, bool hasNext =true) + TiffDirectory(uint16_t tag, IfdId group, bool hasNext =true) : TiffComponent(tag, group), hasNext_(hasNext), pNext_(0) {} //! Virtual destructor virtual ~TiffDirectory(); @@ -1022,7 +986,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Default constructor - TiffSubIfd(uint16_t tag, uint16_t group, uint16_t newGroup); + TiffSubIfd(uint16_t tag, IfdId group, IfdId newGroup); //! Virtual destructor virtual ~TiffSubIfd(); //@} @@ -1093,7 +1057,7 @@ namespace Exiv2 { typedef std::vector Ifds; // DATA - uint16_t newGroup_; //!< Start of the range of group numbers for the sub-IFDs + IfdId newGroup_; //!< Start of the range of group numbers for the sub-IFDs Ifds ifds_; //!< The subdirectories }; // class TiffSubIfd @@ -1113,7 +1077,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Default constructor - TiffMnEntry(uint16_t tag, uint16_t group, uint16_t mnGroup); + TiffMnEntry(uint16_t tag, IfdId group, IfdId mnGroup); //! Virtual destructor virtual ~TiffMnEntry(); //@} @@ -1167,7 +1131,7 @@ namespace Exiv2 { //@} // DATA - uint16_t mnGroup_; //!< New group for concrete mn + IfdId mnGroup_; //!< New group for concrete mn TiffComponent* mn_; //!< The Makernote }; // class TiffMnEntry @@ -1188,8 +1152,8 @@ namespace Exiv2 { //@{ //! Default constructor TiffIfdMakernote(uint16_t tag, - uint16_t group, - uint16_t mnGroup, + IfdId group, + IfdId mnGroup, MnHeader* pHeader, bool hasNext =true); //! Virtual destructor @@ -1351,7 +1315,7 @@ namespace Exiv2 { //! Comparison with idx bool operator==(uint32_t idx) const { return idx_ == idx; } //! Get the size in bytes of a tag. - uint32_t size(uint16_t tag, uint16_t group) const; + uint32_t size(uint16_t tag, IfdId group) const; // DATA uint32_t idx_; //!< Index in bytes from the start TiffType tiffType_; //!< TIFF type of the element @@ -1366,7 +1330,7 @@ namespace Exiv2 { */ uint32_t tagStep() const { return elDefaultDef_.size(0, group_); } //DATA - uint16_t group_; //!< Group for the elements + IfdId group_; //!< Group for the elements ByteOrder byteOrder_; //!< Byte order, invalidByteOrder to inherit TiffType elTiffType_; //!< Type for the array entry and the size element, if any CryptFct cryptFct_; //!< Crypt function, 0 if not used @@ -1394,13 +1358,13 @@ namespace Exiv2 { //@{ //! Constructor TiffBinaryArray(uint16_t tag, - uint16_t group, + IfdId group, const ArrayCfg* arrayCfg, const ArrayDef* arrayDef, int defSize); //! Constructor for a complex binary array TiffBinaryArray(uint16_t tag, - uint16_t group, + IfdId group, const ArraySet* arraySet, int setSize, CfgSelFct cfgSelFct); @@ -1423,7 +1387,7 @@ namespace Exiv2 { @param group Group to setup the binary array for. @return true if the initialization succeeded, else false. */ - bool initialize(uint16_t group); + bool initialize(IfdId group); /*! @brief Setup cfg and def for the component, in case of a complex binary array. Else do nothing. Return true if the initialization succeeded, else false. @@ -1527,8 +1491,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Constructor - TiffBinaryElement(uint16_t tag, - uint16_t group); + TiffBinaryElement(uint16_t tag, IfdId group); //! Virtual destructor. virtual ~TiffBinaryElement(); //@} @@ -1613,38 +1576,32 @@ namespace Exiv2 { */ bool cmpGroupLt(TiffComponent const* lhs, TiffComponent const* rhs); - //! Return the group name for a group - const char* tiffGroupName(uint16_t group); - - //! Return the TIFF group id for a group name - uint16_t tiffGroupId(const std::string& groupName); - //! Function to create and initialize a new TIFF entry - TiffComponent::AutoPtr newTiffEntry(uint16_t tag, uint16_t group); + TiffComponent::AutoPtr newTiffEntry(uint16_t tag, IfdId group); //! Function to create and initialize a new TIFF makernote entry - TiffComponent::AutoPtr newTiffMnEntry(uint16_t tag, uint16_t group); + TiffComponent::AutoPtr newTiffMnEntry(uint16_t tag, IfdId group); //! Function to create and initialize a new binary array element - TiffComponent::AutoPtr newTiffBinaryElement(uint16_t tag, uint16_t group); + TiffComponent::AutoPtr newTiffBinaryElement(uint16_t tag, IfdId group); //! Function to create and initialize a new TIFF directory - template - TiffComponent::AutoPtr newTiffDirectory(uint16_t tag, uint16_t /*group*/) + template + TiffComponent::AutoPtr newTiffDirectory(uint16_t tag, IfdId /*group*/) { return TiffComponent::AutoPtr(new TiffDirectory(tag, newGroup)); } //! Function to create and initialize a new TIFF sub-directory - template - TiffComponent::AutoPtr newTiffSubIfd(uint16_t tag, uint16_t group) + template + TiffComponent::AutoPtr newTiffSubIfd(uint16_t tag, IfdId group) { return TiffComponent::AutoPtr(new TiffSubIfd(tag, group, newGroup)); } //! Function to create and initialize a new binary array entry template - TiffComponent::AutoPtr newTiffBinaryArray0(uint16_t tag, uint16_t group) + TiffComponent::AutoPtr newTiffBinaryArray0(uint16_t tag, IfdId group) { // *& acrobatics is a workaround for a MSVC 7.1 bug return TiffComponent::AutoPtr( @@ -1653,7 +1610,7 @@ namespace Exiv2 { //! Function to create and initialize a new simple binary array entry template - TiffComponent::AutoPtr newTiffBinaryArray1(uint16_t tag, uint16_t group) + TiffComponent::AutoPtr newTiffBinaryArray1(uint16_t tag, IfdId group) { return TiffComponent::AutoPtr( new TiffBinaryArray(tag, group, arrayCfg, 0, 0)); @@ -1661,39 +1618,39 @@ namespace Exiv2 { //! Function to create and initialize a new complex binary array entry template - TiffComponent::AutoPtr newTiffBinaryArray2(uint16_t tag, uint16_t group) + TiffComponent::AutoPtr newTiffBinaryArray2(uint16_t tag, IfdId group) { return TiffComponent::AutoPtr( new TiffBinaryArray(tag, group, arraySet, N, cfgSelFct)); } //! Function to create and initialize a new TIFF entry for a thumbnail (data) - template - TiffComponent::AutoPtr newTiffThumbData(uint16_t tag, uint16_t group) + template + TiffComponent::AutoPtr newTiffThumbData(uint16_t tag, IfdId group) { return TiffComponent::AutoPtr( new TiffDataEntry(tag, group, szTag, szGroup)); } //! Function to create and initialize a new TIFF entry for a thumbnail (size) - template - TiffComponent::AutoPtr newTiffThumbSize(uint16_t tag, uint16_t group) + template + TiffComponent::AutoPtr newTiffThumbSize(uint16_t tag, IfdId group) { return TiffComponent::AutoPtr( new TiffSizeEntry(tag, group, dtTag, dtGroup)); } //! Function to create and initialize a new TIFF entry for image data - template - TiffComponent::AutoPtr newTiffImageData(uint16_t tag, uint16_t group) + template + TiffComponent::AutoPtr newTiffImageData(uint16_t tag, IfdId group) { return TiffComponent::AutoPtr( new TiffImageEntry(tag, group, szTag, szGroup)); } //! Function to create and initialize a new TIFF entry for image data (size) - template - TiffComponent::AutoPtr newTiffImageSize(uint16_t tag, uint16_t group) + template + TiffComponent::AutoPtr newTiffImageSize(uint16_t tag, IfdId group) { // Todo: Same as newTiffThumbSize - consolidate (rename)? return TiffComponent::AutoPtr( diff --git a/src/tifffwd_int.hpp b/src/tifffwd_int.hpp index 7fd63d65..b848dfdf 100644 --- a/src/tifffwd_int.hpp +++ b/src/tifffwd_int.hpp @@ -32,6 +32,7 @@ // ***************************************************************************** // included header files #include "types.hpp" +#include "tags_int.hpp" // + standard includes #include @@ -91,27 +92,27 @@ namespace Exiv2 { */ typedef DecoderFct (*FindDecoderFct)(const std::string& make, uint32_t extendedTag, - uint16_t group); + IfdId group); /*! @brief Type for a function pointer for a function to encode a TIFF component. */ typedef EncoderFct (*FindEncoderFct)( const std::string& make, uint32_t extendedTag, - uint16_t group + IfdId group ); /*! @brief Type for a function pointer for a function to create a TIFF component. Use TiffComponent::AutoPtr, it is not used in this declaration only to reduce dependencies. */ - typedef std::auto_ptr (*NewTiffCompFct)(uint16_t tag, uint16_t group); + typedef std::auto_ptr (*NewTiffCompFct)(uint16_t tag, IfdId group); //! Stack to hold a path from the TIFF root element to a TIFF entry typedef std::stack TiffPath; //! Type for a list of primary image groups - typedef std::vector PrimaryGroups; + typedef std::vector PrimaryGroups; }} // namespace Internal, Exiv2 diff --git a/src/tiffimage.cpp b/src/tiffimage.cpp index 76e53996..c602d68a 100644 --- a/src/tiffimage.cpp +++ b/src/tiffimage.cpp @@ -222,7 +222,7 @@ namespace Exiv2 { // Delete IFDs which do not occur in TIFF images static const IfdId filteredIfds[] = { - panaRawIfdId + panaRawId }; for (unsigned int i = 0; i < EXV_COUNTOF(filteredIfds); ++i) { #ifdef DEBUG @@ -288,7 +288,7 @@ namespace Exiv2 { //! Canon Camera Settings binary array - configuration extern const ArrayCfg canonCsCfg = { - Group::canoncs, // Group for the elements + canonCsId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUnsignedShort, // Type for array entry and size element notEncrypted, // Not encrypted @@ -304,7 +304,7 @@ namespace Exiv2 { //! Canon Shot Info binary array - configuration extern const ArrayCfg canonSiCfg = { - Group::canonsi, // Group for the elements + canonSiId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUnsignedShort, // Type for array entry and size element notEncrypted, // Not encrypted @@ -316,7 +316,7 @@ namespace Exiv2 { //! Canon Panorama binary array - configuration extern const ArrayCfg canonPaCfg = { - Group::canonpa, // Group for the elements + canonPaId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUnsignedShort, // Type for array entry and size element notEncrypted, // Not encrypted @@ -328,7 +328,7 @@ namespace Exiv2 { //! Canon Custom Function binary array - configuration extern const ArrayCfg canonCfCfg = { - Group::canoncf, // Group for the elements + canonCfId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUnsignedShort, // Type for array entry and size element notEncrypted, // Not encrypted @@ -340,7 +340,7 @@ namespace Exiv2 { //! Canon Picture Info binary array - configuration extern const ArrayCfg canonPiCfg = { - Group::canonpi, // Group for the elements + canonPiId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUnsignedShort, // Type for array entry and size element notEncrypted, // Not encrypted @@ -352,7 +352,7 @@ namespace Exiv2 { //! Canon File Info binary array - configuration extern const ArrayCfg canonFiCfg = { - Group::canonfi, // Group for the elements + canonFiId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUnsignedShort, // Type for array entry and size element notEncrypted, // Not encrypted @@ -368,7 +368,7 @@ namespace Exiv2 { //! Canon Processing Info binary array - configuration extern const ArrayCfg canonPrCfg = { - Group::canonpr, // Group for the elements + canonPrId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUnsignedShort, // Type for array entry and size element notEncrypted, // Not encrypted @@ -380,7 +380,7 @@ namespace Exiv2 { //! Nikon Vibration Reduction binary array - configuration extern const ArrayCfg nikonVrCfg = { - Group::nikonvr, // Group for the elements + nikonVrId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -397,7 +397,7 @@ namespace Exiv2 { //! Nikon Picture Control binary array - configuration extern const ArrayCfg nikonPcCfg = { - Group::nikonpc, // Group for the elements + nikonPcId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -425,7 +425,7 @@ namespace Exiv2 { //! Nikon World Time binary array - configuration extern const ArrayCfg nikonWtCfg = { - Group::nikonwt, // Group for the elements + nikonWtId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -443,7 +443,7 @@ namespace Exiv2 { //! Nikon ISO info binary array - configuration extern const ArrayCfg nikonIiCfg = { - Group::nikonii, // Group for the elements + nikonIiId, // Group for the elements bigEndian, // Byte order ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -463,7 +463,7 @@ namespace Exiv2 { //! Nikon Auto Focus binary array - configuration extern const ArrayCfg nikonAfCfg = { - Group::nikonaf, // Group for the elements + nikonAfId, // Group for the elements littleEndian, // Byte order ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -481,7 +481,7 @@ namespace Exiv2 { //! Nikon Auto Focus 2 binary array - configuration extern const ArrayCfg nikonAf2Cfg = { - Group::nikonaf2, // Group for the elements + nikonAf2Id, // Group for the elements littleEndian, // Byte order ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -509,7 +509,7 @@ namespace Exiv2 { //! Nikon File Info binary array - configuration extern const ArrayCfg nikonFiCfg = { - Group::nikonfi, // Group for the elements + nikonFiId, // Group for the elements littleEndian, // Byte order ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -527,7 +527,7 @@ namespace Exiv2 { //! Nikon Multi Exposure binary array - configuration extern const ArrayCfg nikonMeCfg = { - Group::nikonme, // Group for the elements + nikonMeId, // Group for the elements littleEndian, // Byte order ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -546,7 +546,7 @@ namespace Exiv2 { //! Nikon Flash Info binary array - configuration 1 extern const ArrayCfg nikonFl1Cfg = { - Group::nikonfl1, // Group for the elements + nikonFl1Id, // Group for the elements littleEndian, // Byte order ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -566,11 +566,11 @@ namespace Exiv2 { { 13, ttUnsignedByte, 1 }, // RepeatingFlashCount { 14, ttUnsignedByte, 1 }, // FlashGNDistance { 15, ttUnsignedByte, 1 }, // FlashGroupAControlMode - { 16, ttUnsignedByte, 1 } // FlashGroupBControlMode + { 16, ttUnsignedByte, 1 } // FlashGroupBControlMode }; //! Nikon Flash Info binary array - configuration 2 extern const ArrayCfg nikonFl2Cfg = { - Group::nikonfl2, // Group for the elements + nikonFl2Id, // Group for the elements littleEndian, // Byte order ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -592,7 +592,7 @@ namespace Exiv2 { }; //! Nikon Flash Info binary array - configuration 3 extern const ArrayCfg nikonFl3Cfg = { - Group::nikonfl3, // Group for the elements + nikonFl3Id, // Group for the elements littleEndian, // Byte order ttUndefined, // Type for array entry notEncrypted, // Not encrypted @@ -622,7 +622,7 @@ namespace Exiv2 { //! Nikon Shot Info binary array - configuration 1 (D80) extern const ArrayCfg nikonSi1Cfg = { - Group::nikonsi1, // Group for the elements + nikonSi1Id, // Group for the elements bigEndian, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -639,7 +639,7 @@ namespace Exiv2 { }; //! Nikon Shot Info binary array - configuration 2 (D40) extern const ArrayCfg nikonSi2Cfg = { - Group::nikonsi2, // Group for the elements + nikonSi2Id, // Group for the elements bigEndian, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -657,7 +657,7 @@ namespace Exiv2 { }; //! Nikon Shot Info binary array - configuration 3 (D300a) extern const ArrayCfg nikonSi3Cfg = { - Group::nikonsi3, // Group for the elements + nikonSi3Id, // Group for the elements bigEndian, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -676,7 +676,7 @@ namespace Exiv2 { }; //! Nikon Shot Info binary array - configuration 4 (D300b) extern const ArrayCfg nikonSi4Cfg = { - Group::nikonsi4, // Group for the elements + nikonSi4Id, // Group for the elements bigEndian, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -694,7 +694,7 @@ namespace Exiv2 { }; //! Nikon Shot Info binary array - configuration 5 (ver 02.xx) extern const ArrayCfg nikonSi5Cfg = { - Group::nikonsi5, // Group for the elements + nikonSi5Id, // Group for the elements bigEndian, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -717,7 +717,7 @@ namespace Exiv2 { }; //! Nikon Shot Info binary array - configuration 6 (ver 01.xx) extern const ArrayCfg nikonSi6Cfg = { - Group::nikonsi6, // Group for the elements + nikonSi6Id, // Group for the elements bigEndian, // Use byte order from parent ttUndefined, // Type for array entry notEncrypted, // Encryption function @@ -738,7 +738,7 @@ namespace Exiv2 { //! Nikon Lens Data binary array - configuration 1 extern const ArrayCfg nikonLd1Cfg = { - Group::nikonld1, // Group for the elements + nikonLd1Id, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry notEncrypted, // Encryption function @@ -749,7 +749,7 @@ namespace Exiv2 { }; //! Nikon Lens Data binary array - configuration 2 extern const ArrayCfg nikonLd2Cfg = { - Group::nikonld2, // Group for the elements + nikonLd2Id, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -760,7 +760,7 @@ namespace Exiv2 { }; //! Nikon Lens Data binary array - configuration 3 extern const ArrayCfg nikonLd3Cfg = { - Group::nikonld3, // Group for the elements + nikonLd3Id, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -782,7 +782,7 @@ namespace Exiv2 { //! Nikon Color Balance binary array - configuration 1 extern const ArrayCfg nikonCb1Cfg = { - Group::nikoncb1, // Group for the elements + nikonCb1Id, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry notEncrypted, // Encryption function @@ -793,7 +793,7 @@ namespace Exiv2 { }; //! Nikon Color Balance binary array - configuration 2 extern const ArrayCfg nikonCb2Cfg = { - Group::nikoncb2, // Group for the elements + nikonCb2Id, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -804,7 +804,7 @@ namespace Exiv2 { }; //! Nikon Color Balance binary array - configuration 2a extern const ArrayCfg nikonCb2aCfg = { - Group::nikoncb2a, // Group for the elements + nikonCb2aId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -815,7 +815,7 @@ namespace Exiv2 { }; //! Nikon Color Balance binary array - configuration 2b extern const ArrayCfg nikonCb2bCfg = { - Group::nikoncb2b, // Group for the elements + nikonCb2bId, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -826,7 +826,7 @@ namespace Exiv2 { }; //! Nikon Color Balance binary array - configuration 3 extern const ArrayCfg nikonCb3Cfg = { - Group::nikoncb3, // Group for the elements + nikonCb3Id, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry notEncrypted, // Encryption function @@ -837,7 +837,7 @@ namespace Exiv2 { }; //! Nikon Color Balance binary array - configuration 4 extern const ArrayCfg nikonCb4Cfg = { - Group::nikoncb4, // Group for the elements + nikonCb4Id, // Group for the elements invalidByteOrder, // Use byte order from parent ttUndefined, // Type for array entry nikonCrypt, // Encryption function @@ -892,7 +892,7 @@ namespace Exiv2 { //! Minolta Camera Settings (old) binary array - configuration extern const ArrayCfg minoCsoCfg = { - Group::minocso, // Group for the elements + minoltaCsOldId, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -904,7 +904,7 @@ namespace Exiv2 { //! Minolta Camera Settings (new) binary array - configuration extern const ArrayCfg minoCsnCfg = { - Group::minocsn, // Group for the elements + minoltaCsNewId, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -916,7 +916,7 @@ namespace Exiv2 { //! Minolta 7D Camera Settings binary array - configuration extern const ArrayCfg minoCs7Cfg = { - Group::minocs7, // Group for the elements + minoltaCs7DId, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -933,7 +933,7 @@ namespace Exiv2 { //! Minolta 5D Camera Settings binary array - configuration extern const ArrayCfg minoCs5Cfg = { - Group::minocs5, // Group for the elements + minoltaCs5DId, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -954,7 +954,7 @@ namespace Exiv2 { //! Sony1 Camera Settings binary array - configuration extern const ArrayCfg sony1CsCfg = { - Group::sony1cs, // Group for the elements + sony1CsId, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -965,7 +965,7 @@ namespace Exiv2 { }; //! Sony1 Camera Settings 2 binary array - configuration extern const ArrayCfg sony1Cs2Cfg = { - Group::sony1cs2, // Group for the elements + sony1Cs2Id, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -980,7 +980,7 @@ namespace Exiv2 { }; //! Sony2 Camera Settings binary array - configuration extern const ArrayCfg sony2CsCfg = { - Group::sony2cs, // Group for the elements + sony2CsId, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -991,7 +991,7 @@ namespace Exiv2 { }; //! Sony2 Camera Settings 2 binary array - configuration extern const ArrayCfg sony2Cs2Cfg = { - Group::sony2cs2, // Group for the elements + sony2Cs2Id, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -1017,7 +1017,7 @@ namespace Exiv2 { //! Sony Minolta Camera Settings (old) binary array - configuration extern const ArrayCfg sony1MCsoCfg = { - Group::sony1mcso, // Group for the elements + sony1MltCsOldId, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -1029,7 +1029,7 @@ namespace Exiv2 { //! Sony Minolta Camera Settings (new) binary array - configuration extern const ArrayCfg sony1MCsnCfg = { - Group::sony1mcsn, // Group for the elements + sony1MltCsNewId, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -1041,7 +1041,7 @@ namespace Exiv2 { //! Sony Minolta 7D Camera Settings binary array - configuration extern const ArrayCfg sony1MCs7Cfg = { - Group::sony1mcs7, // Group for the elements + sony1MltCs7DId, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -1053,7 +1053,7 @@ namespace Exiv2 { //! Sony Minolta A100 Camera Settings binary array - configuration extern const ArrayCfg sony1MCsA100Cfg = { - Group::sony1mcsa100, // Group for the elements + sony1MltCsA100Id, // Group for the elements bigEndian, // Big endian ttUndefined, // Type for array entry and size element notEncrypted, // Not encrypted @@ -1081,105 +1081,105 @@ namespace Exiv2 { const TiffTreeStruct TiffCreator::tiffTreeStruct_[] = { // root group parent group parent tag //--------- ----------------- ----------------- ---------- - { Tag::root, Group::none, Group::none, Tag::root }, - { Tag::root, Group::ifd0, Group::none, Tag::root }, - { Tag::root, Group::subimg1, Group::ifd0, 0x014a }, - { Tag::root, Group::subimg2, Group::ifd0, 0x014a }, - { Tag::root, Group::subimg3, Group::ifd0, 0x014a }, - { Tag::root, Group::subimg4, Group::ifd0, 0x014a }, - { Tag::root, Group::subimg5, Group::ifd0, 0x014a }, - { Tag::root, Group::subimg6, Group::ifd0, 0x014a }, - { Tag::root, Group::subimg7, Group::ifd0, 0x014a }, - { Tag::root, Group::subimg8, Group::ifd0, 0x014a }, - { Tag::root, Group::subimg9, Group::ifd0, 0x014a }, - { Tag::root, Group::exif, Group::ifd0, 0x8769 }, - { Tag::root, Group::gps, Group::ifd0, 0x8825 }, - { Tag::root, Group::iop, Group::exif, 0xa005 }, - { Tag::root, Group::ifd1, Group::ifd0, Tag::next }, - { Tag::root, Group::ifd2, Group::ifd1, Tag::next }, - { Tag::root, Group::ifd3, Group::ifd2, Tag::next }, - { Tag::root, Group::olymp1mn, Group::exif, 0x927c }, - { Tag::root, Group::olymp2mn, Group::exif, 0x927c }, - { Tag::root, Group::olympeq, Group::olymp2mn, 0x2010 }, - { Tag::root, Group::olympcs, Group::olymp2mn, 0x2020 }, - { Tag::root, Group::olymprd, Group::olymp2mn, 0x2030 }, - { Tag::root, Group::olymprd2, Group::olymp2mn, 0x2031 }, - { Tag::root, Group::olympip, Group::olymp2mn, 0x2040 }, - { Tag::root, Group::olympfi, Group::olymp2mn, 0x2050 }, - { Tag::root, Group::olympfe1, Group::olymp2mn, 0x2100 }, - { Tag::root, Group::olympfe2, Group::olymp2mn, 0x2200 }, - { Tag::root, Group::olympfe3, Group::olymp2mn, 0x2300 }, - { Tag::root, Group::olympfe4, Group::olymp2mn, 0x2400 }, - { Tag::root, Group::olympfe5, Group::olymp2mn, 0x2500 }, - { Tag::root, Group::olympfe6, Group::olymp2mn, 0x2600 }, - { Tag::root, Group::olympfe7, Group::olymp2mn, 0x2700 }, - { Tag::root, Group::olympfe8, Group::olymp2mn, 0x2800 }, - { Tag::root, Group::olympfe9, Group::olymp2mn, 0x2900 }, - { Tag::root, Group::olympri, Group::olymp2mn, 0x3000 }, - { Tag::root, Group::fujimn, Group::exif, 0x927c }, - { Tag::root, Group::canonmn, Group::exif, 0x927c }, - { Tag::root, Group::canoncs, Group::canonmn, 0x0001 }, - { Tag::root, Group::canonsi, Group::canonmn, 0x0004 }, - { Tag::root, Group::canonpa, Group::canonmn, 0x0005 }, - { Tag::root, Group::canoncf, Group::canonmn, 0x000f }, - { Tag::root, Group::canonpi, Group::canonmn, 0x0012 }, - { Tag::root, Group::canonfi, Group::canonmn, 0x0093 }, - { Tag::root, Group::canonpr, Group::canonmn, 0x00a0 }, - { Tag::root, Group::nikon1mn, Group::exif, 0x927c }, - { Tag::root, Group::nikon2mn, Group::exif, 0x927c }, - { Tag::root, Group::nikon3mn, Group::exif, 0x927c }, - { Tag::root, Group::nikonpv, Group::nikon3mn, 0x0011 }, - { Tag::root, Group::nikonvr, Group::nikon3mn, 0x001f }, - { Tag::root, Group::nikonpc, Group::nikon3mn, 0x0023 }, - { Tag::root, Group::nikonwt, Group::nikon3mn, 0x0024 }, - { Tag::root, Group::nikonii, Group::nikon3mn, 0x0025 }, - { Tag::root, Group::nikonaf, Group::nikon3mn, 0x0088 }, - { Tag::root, Group::nikonsi1, Group::nikon3mn, 0x0091 }, - { Tag::root, Group::nikonsi2, Group::nikon3mn, 0x0091 }, - { Tag::root, Group::nikonsi3, Group::nikon3mn, 0x0091 }, - { Tag::root, Group::nikonsi4, Group::nikon3mn, 0x0091 }, - { Tag::root, Group::nikonsi5, Group::nikon3mn, 0x0091 }, - { Tag::root, Group::nikonsi6, Group::nikon3mn, 0x0091 }, - { Tag::root, Group::nikoncb1, Group::nikon3mn, 0x0097 }, - { Tag::root, Group::nikoncb2, Group::nikon3mn, 0x0097 }, - { Tag::root, Group::nikoncb2a, Group::nikon3mn, 0x0097 }, - { Tag::root, Group::nikoncb2b, Group::nikon3mn, 0x0097 }, - { Tag::root, Group::nikoncb3, Group::nikon3mn, 0x0097 }, - { Tag::root, Group::nikoncb4, Group::nikon3mn, 0x0097 }, - { Tag::root, Group::nikonld1, Group::nikon3mn, 0x0098 }, - { Tag::root, Group::nikonld2, Group::nikon3mn, 0x0098 }, - { Tag::root, Group::nikonld3, Group::nikon3mn, 0x0098 }, - { Tag::root, Group::nikonme, Group::nikon3mn, 0x00b0 }, - { Tag::root, Group::nikonaf2, Group::nikon3mn, 0x00b7 }, - { Tag::root, Group::nikonfi, Group::nikon3mn, 0x00b8 }, - { Tag::root, Group::nikonfl1, Group::nikon3mn, 0x00a8 }, - { Tag::root, Group::nikonfl2, Group::nikon3mn, 0x00a8 }, - { Tag::root, Group::nikonfl3, Group::nikon3mn, 0x00a8 }, - { Tag::root, Group::panamn, Group::exif, 0x927c }, - { Tag::root, Group::pentaxmn, Group::exif, 0x927c }, - { Tag::root, Group::sigmamn, Group::exif, 0x927c }, - { Tag::root, Group::sony1mn, Group::exif, 0x927c }, - { Tag::root, Group::sony1cs, Group::sony1mn, 0x0114 }, - { Tag::root, Group::sony1cs2, Group::sony1mn, 0x0114 }, - { Tag::root, Group::sonymltmn, Group::sony1mn, 0xb028 }, - { Tag::root, Group::sony1mcso, Group::sonymltmn, 0x0001 }, - { Tag::root, Group::sony1mcsn, Group::sonymltmn, 0x0003 }, - { Tag::root, Group::sony1mcs7, Group::sonymltmn, 0x0004 }, - { Tag::root, Group::sony1mcsa100, Group::sonymltmn, 0x0114 }, - { Tag::root, Group::sony2mn, Group::exif, 0x927c }, - { Tag::root, Group::sony2cs, Group::sony2mn, 0x0114 }, - { Tag::root, Group::sony2cs2, Group::sony2mn, 0x0114 }, - { Tag::root, Group::minoltamn, Group::exif, 0x927c }, - { Tag::root, Group::minocso, Group::minoltamn, 0x0001 }, - { Tag::root, Group::minocsn, Group::minoltamn, 0x0003 }, - { Tag::root, Group::minocs7, Group::minoltamn, 0x0004 }, - { Tag::root, Group::minocs5, Group::minoltamn, 0x0114 }, + { Tag::root, ifdIdNotSet, ifdIdNotSet, Tag::root }, + { Tag::root, ifd0Id, ifdIdNotSet, Tag::root }, + { Tag::root, subImage1Id, ifd0Id, 0x014a }, + { Tag::root, subImage2Id, ifd0Id, 0x014a }, + { Tag::root, subImage3Id, ifd0Id, 0x014a }, + { Tag::root, subImage4Id, ifd0Id, 0x014a }, + { Tag::root, subImage5Id, ifd0Id, 0x014a }, + { Tag::root, subImage6Id, ifd0Id, 0x014a }, + { Tag::root, subImage7Id, ifd0Id, 0x014a }, + { Tag::root, subImage8Id, ifd0Id, 0x014a }, + { Tag::root, subImage9Id, ifd0Id, 0x014a }, + { Tag::root, exifId, ifd0Id, 0x8769 }, + { Tag::root, gpsId, ifd0Id, 0x8825 }, + { Tag::root, iopId, exifId, 0xa005 }, + { Tag::root, ifd1Id, ifd0Id, Tag::next }, + { Tag::root, ifd2Id, ifd1Id, Tag::next }, + { Tag::root, ifd3Id, ifd2Id, Tag::next }, + { Tag::root, olympusId, exifId, 0x927c }, + { Tag::root, olympus2Id, exifId, 0x927c }, + { Tag::root, olympusEqId, olympus2Id, 0x2010 }, + { Tag::root, olympusCsId, olympus2Id, 0x2020 }, + { Tag::root, olympusRdId, olympus2Id, 0x2030 }, + { Tag::root, olympusRd2Id, olympus2Id, 0x2031 }, + { Tag::root, olympusIpId, olympus2Id, 0x2040 }, + { Tag::root, olympusFiId, olympus2Id, 0x2050 }, + { Tag::root, olympusFe1Id, olympus2Id, 0x2100 }, + { Tag::root, olympusFe2Id, olympus2Id, 0x2200 }, + { Tag::root, olympusFe3Id, olympus2Id, 0x2300 }, + { Tag::root, olympusFe4Id, olympus2Id, 0x2400 }, + { Tag::root, olympusFe5Id, olympus2Id, 0x2500 }, + { Tag::root, olympusFe6Id, olympus2Id, 0x2600 }, + { Tag::root, olympusFe7Id, olympus2Id, 0x2700 }, + { Tag::root, olympusFe8Id, olympus2Id, 0x2800 }, + { Tag::root, olympusFe9Id, olympus2Id, 0x2900 }, + { Tag::root, olympusRiId, olympus2Id, 0x3000 }, + { Tag::root, fujiId, exifId, 0x927c }, + { Tag::root, canonId, exifId, 0x927c }, + { Tag::root, canonCsId, canonId, 0x0001 }, + { Tag::root, canonSiId, canonId, 0x0004 }, + { Tag::root, canonPaId, canonId, 0x0005 }, + { Tag::root, canonCfId, canonId, 0x000f }, + { Tag::root, canonPiId, canonId, 0x0012 }, + { Tag::root, canonFiId, canonId, 0x0093 }, + { Tag::root, canonPrId, canonId, 0x00a0 }, + { Tag::root, nikon1Id, exifId, 0x927c }, + { Tag::root, nikon2Id, exifId, 0x927c }, + { Tag::root, nikon3Id, exifId, 0x927c }, + { Tag::root, nikonPvId, nikon3Id, 0x0011 }, + { Tag::root, nikonVrId, nikon3Id, 0x001f }, + { Tag::root, nikonPcId, nikon3Id, 0x0023 }, + { Tag::root, nikonWtId, nikon3Id, 0x0024 }, + { Tag::root, nikonIiId, nikon3Id, 0x0025 }, + { Tag::root, nikonAfId, nikon3Id, 0x0088 }, + { Tag::root, nikonSi1Id, nikon3Id, 0x0091 }, + { Tag::root, nikonSi2Id, nikon3Id, 0x0091 }, + { Tag::root, nikonSi3Id, nikon3Id, 0x0091 }, + { Tag::root, nikonSi4Id, nikon3Id, 0x0091 }, + { Tag::root, nikonSi5Id, nikon3Id, 0x0091 }, + { Tag::root, nikonSi6Id, nikon3Id, 0x0091 }, + { Tag::root, nikonCb1Id, nikon3Id, 0x0097 }, + { Tag::root, nikonCb2Id, nikon3Id, 0x0097 }, + { Tag::root, nikonCb2aId, nikon3Id, 0x0097 }, + { Tag::root, nikonCb2bId, nikon3Id, 0x0097 }, + { Tag::root, nikonCb3Id, nikon3Id, 0x0097 }, + { Tag::root, nikonCb4Id, nikon3Id, 0x0097 }, + { Tag::root, nikonLd1Id, nikon3Id, 0x0098 }, + { Tag::root, nikonLd2Id, nikon3Id, 0x0098 }, + { Tag::root, nikonLd3Id, nikon3Id, 0x0098 }, + { Tag::root, nikonMeId, nikon3Id, 0x00b0 }, + { Tag::root, nikonAf2Id, nikon3Id, 0x00b7 }, + { Tag::root, nikonFiId, nikon3Id, 0x00b8 }, + { Tag::root, nikonFl1Id, nikon3Id, 0x00a8 }, + { Tag::root, nikonFl2Id, nikon3Id, 0x00a8 }, + { Tag::root, nikonFl3Id, nikon3Id, 0x00a8 }, + { Tag::root, panasonicId, exifId, 0x927c }, + { Tag::root, pentaxId, exifId, 0x927c }, + { Tag::root, sigmaId, exifId, 0x927c }, + { Tag::root, sony1Id, exifId, 0x927c }, + { Tag::root, sony1CsId, sony1Id, 0x0114 }, + { Tag::root, sony1Cs2Id, sony1Id, 0x0114 }, + { Tag::root, sonyMltId, sony1Id, 0xb028 }, + { Tag::root, sony1MltCsOldId, sonyMltId, 0x0001 }, + { Tag::root, sony1MltCsNewId, sonyMltId, 0x0003 }, + { Tag::root, sony1MltCs7DId, sonyMltId, 0x0004 }, + { Tag::root, sony1MltCsA100Id, sonyMltId, 0x0114 }, + { Tag::root, sony2Id, exifId, 0x927c }, + { Tag::root, sony2CsId, sony2Id, 0x0114 }, + { Tag::root, sony2Cs2Id, sony2Id, 0x0114 }, + { Tag::root, minoltaId, exifId, 0x927c }, + { Tag::root, minoltaCsOldId, minoltaId, 0x0001 }, + { Tag::root, minoltaCsNewId, minoltaId, 0x0003 }, + { Tag::root, minoltaCs7DId, minoltaId, 0x0004 }, + { Tag::root, minoltaCs5DId, minoltaId, 0x0114 }, // --------------------------------------------------------- // Panasonic RW2 raw images - { Tag::pana, Group::none, Group::none, Tag::pana }, - { Tag::pana, Group::panaraw, Group::none, Tag::pana }, - { Tag::pana, Group::exif, Group::panaraw, 0x8769 }, - { Tag::pana, Group::gps, Group::panaraw, 0x8825 } + { Tag::pana, ifdIdNotSet, ifdIdNotSet, Tag::pana }, + { Tag::pana, panaRawId, ifdIdNotSet, Tag::pana }, + { Tag::pana, exifId, panaRawId, 0x8769 }, + { Tag::pana, gpsId, panaRawId, 0x8825 } }; /* @@ -1197,433 +1197,433 @@ namespace Exiv2 { // ext. tag group create function //--------- ----------------- ----------------------------------------- // Root directory - { Tag::root, Group::none, newTiffDirectory }, + { Tag::root, ifdIdNotSet, newTiffDirectory }, // IFD0 - { 0x8769, Group::ifd0, newTiffSubIfd }, - { 0x8825, Group::ifd0, newTiffSubIfd }, - { 0x0111, Group::ifd0, newTiffImageData<0x0117, Group::ifd0> }, - { 0x0117, Group::ifd0, newTiffImageSize<0x0111, Group::ifd0> }, - { 0x0144, Group::ifd0, newTiffImageData<0x0145, Group::ifd0> }, - { 0x0145, Group::ifd0, newTiffImageSize<0x0144, Group::ifd0> }, - { 0x0201, Group::ifd0, newTiffImageData<0x0202, Group::ifd0> }, - { 0x0202, Group::ifd0, newTiffImageSize<0x0201, Group::ifd0> }, - { 0x014a, Group::ifd0, newTiffSubIfd }, - { Tag::next, Group::ifd0, newTiffDirectory }, - { Tag::all, Group::ifd0, newTiffEntry }, - - // Subdir subimg1 - { 0x0111, Group::subimg1, newTiffImageData<0x0117, Group::subimg1> }, - { 0x0117, Group::subimg1, newTiffImageSize<0x0111, Group::subimg1> }, - { 0x0144, Group::subimg1, newTiffImageData<0x0145, Group::subimg1> }, - { 0x0145, Group::subimg1, newTiffImageSize<0x0144, Group::subimg1> }, - { 0x0201, Group::subimg1, newTiffImageData<0x0202, Group::subimg1> }, - { 0x0202, Group::subimg1, newTiffImageSize<0x0201, Group::subimg1> }, - { Tag::next, Group::subimg1, newTiffDirectory }, - { Tag::all, Group::subimg1, newTiffEntry }, - - // Subdir subimg2 - { 0x0111, Group::subimg2, newTiffImageData<0x0117, Group::subimg2> }, - { 0x0117, Group::subimg2, newTiffImageSize<0x0111, Group::subimg2> }, - { 0x0144, Group::subimg2, newTiffImageData<0x0145, Group::subimg2> }, - { 0x0145, Group::subimg2, newTiffImageSize<0x0144, Group::subimg2> }, - { 0x0201, Group::subimg2, newTiffImageData<0x0202, Group::subimg2> }, - { 0x0202, Group::subimg2, newTiffImageSize<0x0201, Group::subimg2> }, - { Tag::next, Group::subimg2, newTiffDirectory }, - { Tag::all, Group::subimg2, newTiffEntry }, - - // Subdir subimg3 - { 0x0111, Group::subimg3, newTiffImageData<0x0117, Group::subimg3> }, - { 0x0117, Group::subimg3, newTiffImageSize<0x0111, Group::subimg3> }, - { 0x0144, Group::subimg3, newTiffImageData<0x0145, Group::subimg3> }, - { 0x0145, Group::subimg3, newTiffImageSize<0x0144, Group::subimg3> }, - { 0x0201, Group::subimg3, newTiffImageData<0x0202, Group::subimg3> }, - { 0x0202, Group::subimg3, newTiffImageSize<0x0201, Group::subimg3> }, - { Tag::next, Group::subimg3, newTiffDirectory }, - { Tag::all, Group::subimg3, newTiffEntry }, - - // Subdir subimg4 - { 0x0111, Group::subimg4, newTiffImageData<0x0117, Group::subimg4> }, - { 0x0117, Group::subimg4, newTiffImageSize<0x0111, Group::subimg4> }, - { 0x0144, Group::subimg4, newTiffImageData<0x0145, Group::subimg4> }, - { 0x0145, Group::subimg4, newTiffImageSize<0x0144, Group::subimg4> }, - { 0x0201, Group::subimg4, newTiffImageData<0x0202, Group::subimg4> }, - { 0x0202, Group::subimg4, newTiffImageSize<0x0201, Group::subimg4> }, - { Tag::next, Group::subimg4, newTiffDirectory }, - { Tag::all, Group::subimg4, newTiffEntry }, - - // Subdir subimg5 - { 0x0111, Group::subimg5, newTiffImageData<0x0117, Group::subimg5> }, - { 0x0117, Group::subimg5, newTiffImageSize<0x0111, Group::subimg5> }, - { 0x0144, Group::subimg5, newTiffImageData<0x0145, Group::subimg5> }, - { 0x0145, Group::subimg5, newTiffImageSize<0x0144, Group::subimg5> }, - { 0x0201, Group::subimg5, newTiffImageData<0x0202, Group::subimg5> }, - { 0x0202, Group::subimg5, newTiffImageSize<0x0201, Group::subimg5> }, - { Tag::next, Group::subimg5, newTiffDirectory }, - { Tag::all, Group::subimg5, newTiffEntry }, - - // Subdir subimg6 - { 0x0111, Group::subimg6, newTiffImageData<0x0117, Group::subimg6> }, - { 0x0117, Group::subimg6, newTiffImageSize<0x0111, Group::subimg6> }, - { 0x0144, Group::subimg6, newTiffImageData<0x0145, Group::subimg6> }, - { 0x0145, Group::subimg6, newTiffImageSize<0x0144, Group::subimg6> }, - { 0x0201, Group::subimg6, newTiffImageData<0x0202, Group::subimg6> }, - { 0x0202, Group::subimg6, newTiffImageSize<0x0201, Group::subimg6> }, - { Tag::next, Group::subimg6, newTiffDirectory }, - { Tag::all, Group::subimg6, newTiffEntry }, - - // Subdir subimg7 - { 0x0111, Group::subimg7, newTiffImageData<0x0117, Group::subimg7> }, - { 0x0117, Group::subimg7, newTiffImageSize<0x0111, Group::subimg7> }, - { 0x0144, Group::subimg7, newTiffImageData<0x0145, Group::subimg7> }, - { 0x0145, Group::subimg7, newTiffImageSize<0x0144, Group::subimg7> }, - { 0x0201, Group::subimg7, newTiffImageData<0x0202, Group::subimg7> }, - { 0x0202, Group::subimg7, newTiffImageSize<0x0201, Group::subimg7> }, - { Tag::next, Group::subimg7, newTiffDirectory }, - { Tag::all, Group::subimg7, newTiffEntry }, - - // Subdir subimg8 - { 0x0111, Group::subimg8, newTiffImageData<0x0117, Group::subimg8> }, - { 0x0117, Group::subimg8, newTiffImageSize<0x0111, Group::subimg8> }, - { 0x0144, Group::subimg8, newTiffImageData<0x0145, Group::subimg8> }, - { 0x0145, Group::subimg8, newTiffImageSize<0x0144, Group::subimg8> }, - { 0x0201, Group::subimg8, newTiffImageData<0x0202, Group::subimg8> }, - { 0x0202, Group::subimg8, newTiffImageSize<0x0201, Group::subimg8> }, - { Tag::next, Group::subimg8, newTiffDirectory }, - { Tag::all, Group::subimg8, newTiffEntry }, - - // Subdir subimg9 - { 0x0111, Group::subimg9, newTiffImageData<0x0117, Group::subimg9> }, - { 0x0117, Group::subimg9, newTiffImageSize<0x0111, Group::subimg9> }, - { 0x0144, Group::subimg9, newTiffImageData<0x0145, Group::subimg9> }, - { 0x0145, Group::subimg9, newTiffImageSize<0x0144, Group::subimg9> }, - { 0x0201, Group::subimg9, newTiffImageData<0x0202, Group::subimg9> }, - { 0x0202, Group::subimg9, newTiffImageSize<0x0201, Group::subimg9> }, - { Tag::next, Group::subimg9, newTiffDirectory }, - { Tag::all, Group::subimg9, newTiffEntry }, + { 0x8769, ifd0Id, newTiffSubIfd }, + { 0x8825, ifd0Id, newTiffSubIfd }, + { 0x0111, ifd0Id, newTiffImageData<0x0117, ifd0Id> }, + { 0x0117, ifd0Id, newTiffImageSize<0x0111, ifd0Id> }, + { 0x0144, ifd0Id, newTiffImageData<0x0145, ifd0Id> }, + { 0x0145, ifd0Id, newTiffImageSize<0x0144, ifd0Id> }, + { 0x0201, ifd0Id, newTiffImageData<0x0202, ifd0Id> }, + { 0x0202, ifd0Id, newTiffImageSize<0x0201, ifd0Id> }, + { 0x014a, ifd0Id, newTiffSubIfd }, + { Tag::next, ifd0Id, newTiffDirectory }, + { Tag::all, ifd0Id, newTiffEntry }, + + // Subdir subImage1 + { 0x0111, subImage1Id, newTiffImageData<0x0117, subImage1Id> }, + { 0x0117, subImage1Id, newTiffImageSize<0x0111, subImage1Id> }, + { 0x0144, subImage1Id, newTiffImageData<0x0145, subImage1Id> }, + { 0x0145, subImage1Id, newTiffImageSize<0x0144, subImage1Id> }, + { 0x0201, subImage1Id, newTiffImageData<0x0202, subImage1Id> }, + { 0x0202, subImage1Id, newTiffImageSize<0x0201, subImage1Id> }, + { Tag::next, subImage1Id, newTiffDirectory }, + { Tag::all, subImage1Id, newTiffEntry }, + + // Subdir subImage2 + { 0x0111, subImage2Id, newTiffImageData<0x0117, subImage2Id> }, + { 0x0117, subImage2Id, newTiffImageSize<0x0111, subImage2Id> }, + { 0x0144, subImage2Id, newTiffImageData<0x0145, subImage2Id> }, + { 0x0145, subImage2Id, newTiffImageSize<0x0144, subImage2Id> }, + { 0x0201, subImage2Id, newTiffImageData<0x0202, subImage2Id> }, + { 0x0202, subImage2Id, newTiffImageSize<0x0201, subImage2Id> }, + { Tag::next, subImage2Id, newTiffDirectory }, + { Tag::all, subImage2Id, newTiffEntry }, + + // Subdir subImage3 + { 0x0111, subImage3Id, newTiffImageData<0x0117, subImage3Id> }, + { 0x0117, subImage3Id, newTiffImageSize<0x0111, subImage3Id> }, + { 0x0144, subImage3Id, newTiffImageData<0x0145, subImage3Id> }, + { 0x0145, subImage3Id, newTiffImageSize<0x0144, subImage3Id> }, + { 0x0201, subImage3Id, newTiffImageData<0x0202, subImage3Id> }, + { 0x0202, subImage3Id, newTiffImageSize<0x0201, subImage3Id> }, + { Tag::next, subImage3Id, newTiffDirectory }, + { Tag::all, subImage3Id, newTiffEntry }, + + // Subdir subImage4 + { 0x0111, subImage4Id, newTiffImageData<0x0117, subImage4Id> }, + { 0x0117, subImage4Id, newTiffImageSize<0x0111, subImage4Id> }, + { 0x0144, subImage4Id, newTiffImageData<0x0145, subImage4Id> }, + { 0x0145, subImage4Id, newTiffImageSize<0x0144, subImage4Id> }, + { 0x0201, subImage4Id, newTiffImageData<0x0202, subImage4Id> }, + { 0x0202, subImage4Id, newTiffImageSize<0x0201, subImage4Id> }, + { Tag::next, subImage4Id, newTiffDirectory }, + { Tag::all, subImage4Id, newTiffEntry }, + + // Subdir subImage5 + { 0x0111, subImage5Id, newTiffImageData<0x0117, subImage5Id> }, + { 0x0117, subImage5Id, newTiffImageSize<0x0111, subImage5Id> }, + { 0x0144, subImage5Id, newTiffImageData<0x0145, subImage5Id> }, + { 0x0145, subImage5Id, newTiffImageSize<0x0144, subImage5Id> }, + { 0x0201, subImage5Id, newTiffImageData<0x0202, subImage5Id> }, + { 0x0202, subImage5Id, newTiffImageSize<0x0201, subImage5Id> }, + { Tag::next, subImage5Id, newTiffDirectory }, + { Tag::all, subImage5Id, newTiffEntry }, + + // Subdir subImage6 + { 0x0111, subImage6Id, newTiffImageData<0x0117, subImage6Id> }, + { 0x0117, subImage6Id, newTiffImageSize<0x0111, subImage6Id> }, + { 0x0144, subImage6Id, newTiffImageData<0x0145, subImage6Id> }, + { 0x0145, subImage6Id, newTiffImageSize<0x0144, subImage6Id> }, + { 0x0201, subImage6Id, newTiffImageData<0x0202, subImage6Id> }, + { 0x0202, subImage6Id, newTiffImageSize<0x0201, subImage6Id> }, + { Tag::next, subImage6Id, newTiffDirectory }, + { Tag::all, subImage6Id, newTiffEntry }, + + // Subdir subImage7 + { 0x0111, subImage7Id, newTiffImageData<0x0117, subImage7Id> }, + { 0x0117, subImage7Id, newTiffImageSize<0x0111, subImage7Id> }, + { 0x0144, subImage7Id, newTiffImageData<0x0145, subImage7Id> }, + { 0x0145, subImage7Id, newTiffImageSize<0x0144, subImage7Id> }, + { 0x0201, subImage7Id, newTiffImageData<0x0202, subImage7Id> }, + { 0x0202, subImage7Id, newTiffImageSize<0x0201, subImage7Id> }, + { Tag::next, subImage7Id, newTiffDirectory }, + { Tag::all, subImage7Id, newTiffEntry }, + + // Subdir subImage8 + { 0x0111, subImage8Id, newTiffImageData<0x0117, subImage8Id> }, + { 0x0117, subImage8Id, newTiffImageSize<0x0111, subImage8Id> }, + { 0x0144, subImage8Id, newTiffImageData<0x0145, subImage8Id> }, + { 0x0145, subImage8Id, newTiffImageSize<0x0144, subImage8Id> }, + { 0x0201, subImage8Id, newTiffImageData<0x0202, subImage8Id> }, + { 0x0202, subImage8Id, newTiffImageSize<0x0201, subImage8Id> }, + { Tag::next, subImage8Id, newTiffDirectory }, + { Tag::all, subImage8Id, newTiffEntry }, + + // Subdir subImage9 + { 0x0111, subImage9Id, newTiffImageData<0x0117, subImage9Id> }, + { 0x0117, subImage9Id, newTiffImageSize<0x0111, subImage9Id> }, + { 0x0144, subImage9Id, newTiffImageData<0x0145, subImage9Id> }, + { 0x0145, subImage9Id, newTiffImageSize<0x0144, subImage9Id> }, + { 0x0201, subImage9Id, newTiffImageData<0x0202, subImage9Id> }, + { 0x0202, subImage9Id, newTiffImageSize<0x0201, subImage9Id> }, + { Tag::next, subImage9Id, newTiffDirectory }, + { Tag::all, subImage9Id, newTiffEntry }, // Exif subdir - { 0xa005, Group::exif, newTiffSubIfd }, - { 0x927c, Group::exif, newTiffMnEntry }, - { Tag::next, Group::exif, newTiffDirectory }, - { Tag::all, Group::exif, newTiffEntry }, + { 0xa005, exifId, newTiffSubIfd }, + { 0x927c, exifId, newTiffMnEntry }, + { Tag::next, exifId, newTiffDirectory }, + { Tag::all, exifId, newTiffEntry }, // GPS subdir - { Tag::next, Group::gps, newTiffDirectory }, - { Tag::all, Group::gps, newTiffEntry }, + { Tag::next, gpsId, newTiffDirectory }, + { Tag::all, gpsId, newTiffEntry }, // IOP subdir - { Tag::next, Group::iop, newTiffDirectory }, - { Tag::all, Group::iop, newTiffEntry }, + { Tag::next, iopId, newTiffDirectory }, + { Tag::all, iopId, newTiffEntry }, // IFD1 - { 0x0111, Group::ifd1, newTiffThumbData<0x0117, Group::ifd1> }, - { 0x0117, Group::ifd1, newTiffThumbSize<0x0111, Group::ifd1> }, - { 0x0144, Group::ifd1, newTiffImageData<0x0145, Group::ifd1> }, - { 0x0145, Group::ifd1, newTiffImageSize<0x0144, Group::ifd1> }, - { 0x0201, Group::ifd1, newTiffThumbData<0x0202, Group::ifd1> }, - { 0x0202, Group::ifd1, newTiffThumbSize<0x0201, Group::ifd1> }, - { Tag::next, Group::ifd1, newTiffDirectory }, - { Tag::all, Group::ifd1, newTiffEntry }, + { 0x0111, ifd1Id, newTiffThumbData<0x0117, ifd1Id> }, + { 0x0117, ifd1Id, newTiffThumbSize<0x0111, ifd1Id> }, + { 0x0144, ifd1Id, newTiffImageData<0x0145, ifd1Id> }, + { 0x0145, ifd1Id, newTiffImageSize<0x0144, ifd1Id> }, + { 0x0201, ifd1Id, newTiffThumbData<0x0202, ifd1Id> }, + { 0x0202, ifd1Id, newTiffThumbSize<0x0201, ifd1Id> }, + { Tag::next, ifd1Id, newTiffDirectory }, + { Tag::all, ifd1Id, newTiffEntry }, // IFD2 (eg, in Pentax PEF and Canon CR2 files) - { 0x0111, Group::ifd2, newTiffImageData<0x0117, Group::ifd2> }, - { 0x0117, Group::ifd2, newTiffImageSize<0x0111, Group::ifd2> }, - { 0x0144, Group::ifd1, newTiffImageData<0x0145, Group::ifd2> }, - { 0x0145, Group::ifd1, newTiffImageSize<0x0144, Group::ifd2> }, - { 0x0201, Group::ifd2, newTiffImageData<0x0202, Group::ifd2> }, - { 0x0202, Group::ifd2, newTiffImageSize<0x0201, Group::ifd2> }, - { Tag::next, Group::ifd2, newTiffDirectory }, - { Tag::all, Group::ifd2, newTiffEntry }, + { 0x0111, ifd2Id, newTiffImageData<0x0117, ifd2Id> }, + { 0x0117, ifd2Id, newTiffImageSize<0x0111, ifd2Id> }, + { 0x0144, ifd1Id, newTiffImageData<0x0145, ifd2Id> }, + { 0x0145, ifd1Id, newTiffImageSize<0x0144, ifd2Id> }, + { 0x0201, ifd2Id, newTiffImageData<0x0202, ifd2Id> }, + { 0x0202, ifd2Id, newTiffImageSize<0x0201, ifd2Id> }, + { Tag::next, ifd2Id, newTiffDirectory }, + { Tag::all, ifd2Id, newTiffEntry }, // IFD3 (eg, in Canon CR2 files) - { 0x0111, Group::ifd3, newTiffImageData<0x0117, Group::ifd3> }, - { 0x0117, Group::ifd3, newTiffImageSize<0x0111, Group::ifd3> }, - { 0x0144, Group::ifd1, newTiffImageData<0x0145, Group::ifd3> }, - { 0x0145, Group::ifd1, newTiffImageSize<0x0144, Group::ifd3> }, - { 0x0201, Group::ifd3, newTiffImageData<0x0202, Group::ifd3> }, - { 0x0202, Group::ifd3, newTiffImageSize<0x0201, Group::ifd3> }, - { Tag::next, Group::ifd3, newTiffDirectory }, - { Tag::all, Group::ifd3, newTiffEntry }, + { 0x0111, ifd3Id, newTiffImageData<0x0117, ifd3Id> }, + { 0x0117, ifd3Id, newTiffImageSize<0x0111, ifd3Id> }, + { 0x0144, ifd1Id, newTiffImageData<0x0145, ifd3Id> }, + { 0x0145, ifd1Id, newTiffImageSize<0x0144, ifd3Id> }, + { 0x0201, ifd3Id, newTiffImageData<0x0202, ifd3Id> }, + { 0x0202, ifd3Id, newTiffImageSize<0x0201, ifd3Id> }, + { Tag::next, ifd3Id, newTiffDirectory }, + { Tag::all, ifd3Id, newTiffEntry }, // Olympus makernote - some Olympus cameras use Minolta structures // Todo: Adding such tags will not work (maybe result in a Minolta makernote), need separate groups - { 0x0001, Group::olymp1mn, EXV_SIMPLE_BINARY_ARRAY(minoCsoCfg) }, - { 0x0003, Group::olymp1mn, EXV_SIMPLE_BINARY_ARRAY(minoCsnCfg) }, - { Tag::next, Group::olymp1mn, newTiffDirectory }, - { Tag::all, Group::olymp1mn, newTiffEntry }, + { 0x0001, olympusId, EXV_SIMPLE_BINARY_ARRAY(minoCsoCfg) }, + { 0x0003, olympusId, EXV_SIMPLE_BINARY_ARRAY(minoCsnCfg) }, + { Tag::next, olympusId, newTiffDirectory }, + { Tag::all, olympusId, newTiffEntry }, // Olympus2 makernote - { 0x0001, Group::olymp2mn, EXV_SIMPLE_BINARY_ARRAY(minoCsoCfg) }, - { 0x0003, Group::olymp2mn, EXV_SIMPLE_BINARY_ARRAY(minoCsnCfg) }, - { 0x2010, Group::olymp2mn, newTiffSubIfd }, - { 0x2020, Group::olymp2mn, newTiffSubIfd }, - { 0x2030, Group::olymp2mn, newTiffSubIfd }, - { 0x2031, Group::olymp2mn, newTiffSubIfd }, - { 0x2040, Group::olymp2mn, newTiffSubIfd }, - { 0x2050, Group::olymp2mn, newTiffSubIfd }, - { 0x2100, Group::olymp2mn, newTiffSubIfd }, - { 0x2200, Group::olymp2mn, newTiffSubIfd }, - { 0x2300, Group::olymp2mn, newTiffSubIfd }, - { 0x2400, Group::olymp2mn, newTiffSubIfd }, - { 0x2500, Group::olymp2mn, newTiffSubIfd }, - { 0x2600, Group::olymp2mn, newTiffSubIfd }, - { 0x2700, Group::olymp2mn, newTiffSubIfd }, - { 0x2800, Group::olymp2mn, newTiffSubIfd }, - { 0x2900, Group::olymp2mn, newTiffSubIfd }, - { 0x3000, Group::olymp2mn, newTiffSubIfd }, - { Tag::next, Group::olymp2mn, newTiffDirectory }, - { Tag::all, Group::olymp2mn, newTiffEntry }, + { 0x0001, olympus2Id, EXV_SIMPLE_BINARY_ARRAY(minoCsoCfg) }, + { 0x0003, olympus2Id, EXV_SIMPLE_BINARY_ARRAY(minoCsnCfg) }, + { 0x2010, olympus2Id, newTiffSubIfd }, + { 0x2020, olympus2Id, newTiffSubIfd }, + { 0x2030, olympus2Id, newTiffSubIfd }, + { 0x2031, olympus2Id, newTiffSubIfd }, + { 0x2040, olympus2Id, newTiffSubIfd }, + { 0x2050, olympus2Id, newTiffSubIfd }, + { 0x2100, olympus2Id, newTiffSubIfd }, + { 0x2200, olympus2Id, newTiffSubIfd }, + { 0x2300, olympus2Id, newTiffSubIfd }, + { 0x2400, olympus2Id, newTiffSubIfd }, + { 0x2500, olympus2Id, newTiffSubIfd }, + { 0x2600, olympus2Id, newTiffSubIfd }, + { 0x2700, olympus2Id, newTiffSubIfd }, + { 0x2800, olympus2Id, newTiffSubIfd }, + { 0x2900, olympus2Id, newTiffSubIfd }, + { 0x3000, olympus2Id, newTiffSubIfd }, + { Tag::next, olympus2Id, newTiffDirectory }, + { Tag::all, olympus2Id, newTiffEntry }, // Olympus2 equipment subdir - { Tag::all, Group::olympeq, newTiffEntry }, + { Tag::all, olympusEqId, newTiffEntry }, // Olympus2 camera settings subdir - { 0x0101, Group::olympcs, newTiffImageData<0x0102, Group::olympcs> }, - { 0x0102, Group::olympcs, newTiffImageSize<0x0101, Group::olympcs> }, - { Tag::all, Group::olympcs, newTiffEntry }, + { 0x0101, olympusCsId, newTiffImageData<0x0102, olympusCsId> }, + { 0x0102, olympusCsId, newTiffImageSize<0x0101, olympusCsId> }, + { Tag::all, olympusCsId, newTiffEntry }, // Olympus2 raw development subdir - { Tag::all, Group::olymprd, newTiffEntry }, + { Tag::all, olympusRdId, newTiffEntry }, // Olympus2 raw development 2 subdir - { Tag::all, Group::olymprd2, newTiffEntry }, + { Tag::all, olympusRd2Id, newTiffEntry }, // Olympus2 image processing subdir - { Tag::all, Group::olympip, newTiffEntry }, + { Tag::all, olympusIpId, newTiffEntry }, // Olympus2 focus info subdir - { Tag::all, Group::olympfi, newTiffEntry }, + { Tag::all, olympusFiId, newTiffEntry }, // Olympus2 FE 1 subdir - { Tag::all, Group::olympfe1, newTiffEntry }, + { Tag::all, olympusFe1Id, newTiffEntry }, // Olympus2 FE 2 subdir - { Tag::all, Group::olympfe2, newTiffEntry }, + { Tag::all, olympusFe2Id, newTiffEntry }, // Olympus2 FE 3 subdir - { Tag::all, Group::olympfe3, newTiffEntry }, + { Tag::all, olympusFe3Id, newTiffEntry }, // Olympus2 FE 4 subdir - { Tag::all, Group::olympfe4, newTiffEntry }, + { Tag::all, olympusFe4Id, newTiffEntry }, // Olympus2 FE 5 subdir - { Tag::all, Group::olympfe5, newTiffEntry }, + { Tag::all, olympusFe5Id, newTiffEntry }, // Olympus2 FE 6 subdir - { Tag::all, Group::olympfe6, newTiffEntry }, + { Tag::all, olympusFe6Id, newTiffEntry }, // Olympus2 FE 7 subdir - { Tag::all, Group::olympfe7, newTiffEntry }, + { Tag::all, olympusFe7Id, newTiffEntry }, // Olympus2 FE 8 subdir - { Tag::all, Group::olympfe8, newTiffEntry }, + { Tag::all, olympusFe8Id, newTiffEntry }, // Olympus2 FE 9 subdir - { Tag::all, Group::olympfe9, newTiffEntry }, + { Tag::all, olympusFe9Id, newTiffEntry }, // Olympus2 Raw Info subdir - { Tag::all, Group::olympri, newTiffEntry }, + { Tag::all, olympusRiId, newTiffEntry }, // Fujifilm makernote - { Tag::next, Group::fujimn, newTiffDirectory }, - { Tag::all, Group::fujimn, newTiffEntry }, + { Tag::next, fujiId, newTiffDirectory }, + { Tag::all, fujiId, newTiffEntry }, // Canon makernote - { 0x0001, Group::canonmn, EXV_BINARY_ARRAY(canonCsCfg, canonCsDef) }, - { 0x0004, Group::canonmn, EXV_SIMPLE_BINARY_ARRAY(canonSiCfg) }, - { 0x0005, Group::canonmn, EXV_SIMPLE_BINARY_ARRAY(canonPaCfg) }, - { 0x000f, Group::canonmn, EXV_SIMPLE_BINARY_ARRAY(canonCfCfg) }, - { 0x0012, Group::canonmn, EXV_SIMPLE_BINARY_ARRAY(canonPiCfg) }, - { 0x0093, Group::canonmn, EXV_BINARY_ARRAY(canonFiCfg, canonFiDef) }, - { 0x00a0, Group::canonmn, EXV_SIMPLE_BINARY_ARRAY(canonPrCfg) }, - { Tag::next, Group::canonmn, newTiffDirectory }, - { Tag::all, Group::canonmn, newTiffEntry }, + { 0x0001, canonId, EXV_BINARY_ARRAY(canonCsCfg, canonCsDef) }, + { 0x0004, canonId, EXV_SIMPLE_BINARY_ARRAY(canonSiCfg) }, + { 0x0005, canonId, EXV_SIMPLE_BINARY_ARRAY(canonPaCfg) }, + { 0x000f, canonId, EXV_SIMPLE_BINARY_ARRAY(canonCfCfg) }, + { 0x0012, canonId, EXV_SIMPLE_BINARY_ARRAY(canonPiCfg) }, + { 0x0093, canonId, EXV_BINARY_ARRAY(canonFiCfg, canonFiDef) }, + { 0x00a0, canonId, EXV_SIMPLE_BINARY_ARRAY(canonPrCfg) }, + { Tag::next, canonId, newTiffDirectory }, + { Tag::all, canonId, newTiffEntry }, // Canon makernote composite tags - { Tag::all, Group::canoncs, newTiffBinaryElement }, - { Tag::all, Group::canonsi, newTiffBinaryElement }, - { Tag::all, Group::canonpa, newTiffBinaryElement }, - { Tag::all, Group::canoncf, newTiffBinaryElement }, - { Tag::all, Group::canonpi, newTiffBinaryElement }, - { Tag::all, Group::canonfi, newTiffBinaryElement }, - { Tag::all, Group::canonpr, newTiffBinaryElement }, + { Tag::all, canonCsId, newTiffBinaryElement }, + { Tag::all, canonSiId, newTiffBinaryElement }, + { Tag::all, canonPaId, newTiffBinaryElement }, + { Tag::all, canonCfId, newTiffBinaryElement }, + { Tag::all, canonPiId, newTiffBinaryElement }, + { Tag::all, canonFiId, newTiffBinaryElement }, + { Tag::all, canonPrId, newTiffBinaryElement }, // Nikon1 makernote - { Tag::next, Group::nikon1mn, newTiffDirectory }, - { Tag::all, Group::nikon1mn, newTiffEntry }, + { Tag::next, nikon1Id, newTiffDirectory }, + { Tag::all, nikon1Id, newTiffEntry }, // Nikon2 makernote - { Tag::next, Group::nikon2mn, newTiffDirectory }, - { Tag::all, Group::nikon2mn, newTiffEntry }, + { Tag::next, nikon2Id, newTiffDirectory }, + { Tag::all, nikon2Id, newTiffEntry }, // Nikon3 makernote - { Tag::next, Group::nikon3mn, newTiffDirectory }, - { 0x0011, Group::nikon3mn, newTiffSubIfd }, - { 0x001f, Group::nikon3mn, EXV_BINARY_ARRAY(nikonVrCfg, nikonVrDef) }, - { 0x0023, Group::nikon3mn, EXV_BINARY_ARRAY(nikonPcCfg, nikonPcDef) }, - { 0x0024, Group::nikon3mn, EXV_BINARY_ARRAY(nikonWtCfg, nikonWtDef) }, - { 0x0025, Group::nikon3mn, EXV_BINARY_ARRAY(nikonIiCfg, nikonIiDef) }, - { 0x0088, Group::nikon3mn, EXV_BINARY_ARRAY(nikonAfCfg, nikonAfDef) }, - { 0x0091, Group::nikon3mn, EXV_COMPLEX_BINARY_ARRAY(nikonSiSet, nikonSelector) }, - { 0x0097, Group::nikon3mn, EXV_COMPLEX_BINARY_ARRAY(nikonCbSet, nikonSelector) }, - { 0x0098, Group::nikon3mn, EXV_COMPLEX_BINARY_ARRAY(nikonLdSet, nikonSelector) }, - { 0x00a8, Group::nikon3mn, EXV_COMPLEX_BINARY_ARRAY(nikonFlSet, nikonSelector) }, - { 0x00b0, Group::nikon3mn, EXV_BINARY_ARRAY(nikonMeCfg, nikonMeDef) }, - { 0x00b7, Group::nikon3mn, EXV_BINARY_ARRAY(nikonAf2Cfg, nikonAf2Def) }, - { 0x00b8, Group::nikon3mn, EXV_BINARY_ARRAY(nikonFiCfg, nikonFiDef) }, - { Tag::all, Group::nikon3mn, newTiffEntry }, + { Tag::next, nikon3Id, newTiffDirectory }, + { 0x0011, nikon3Id, newTiffSubIfd }, + { 0x001f, nikon3Id, EXV_BINARY_ARRAY(nikonVrCfg, nikonVrDef) }, + { 0x0023, nikon3Id, EXV_BINARY_ARRAY(nikonPcCfg, nikonPcDef) }, + { 0x0024, nikon3Id, EXV_BINARY_ARRAY(nikonWtCfg, nikonWtDef) }, + { 0x0025, nikon3Id, EXV_BINARY_ARRAY(nikonIiCfg, nikonIiDef) }, + { 0x0088, nikon3Id, EXV_BINARY_ARRAY(nikonAfCfg, nikonAfDef) }, + { 0x0091, nikon3Id, EXV_COMPLEX_BINARY_ARRAY(nikonSiSet, nikonSelector) }, + { 0x0097, nikon3Id, EXV_COMPLEX_BINARY_ARRAY(nikonCbSet, nikonSelector) }, + { 0x0098, nikon3Id, EXV_COMPLEX_BINARY_ARRAY(nikonLdSet, nikonSelector) }, + { 0x00a8, nikon3Id, EXV_COMPLEX_BINARY_ARRAY(nikonFlSet, nikonSelector) }, + { 0x00b0, nikon3Id, EXV_BINARY_ARRAY(nikonMeCfg, nikonMeDef) }, + { 0x00b7, nikon3Id, EXV_BINARY_ARRAY(nikonAf2Cfg, nikonAf2Def)}, + { 0x00b8, nikon3Id, EXV_BINARY_ARRAY(nikonFiCfg, nikonFiDef) }, + { Tag::all, nikon3Id, newTiffEntry }, // Nikon3 makernote preview subdir - { 0x0201, Group::nikonpv, newTiffThumbData<0x0202, Group::nikonpv> }, - { 0x0202, Group::nikonpv, newTiffThumbSize<0x0201, Group::nikonpv> }, - { Tag::next, Group::nikonpv, newTiffDirectory }, - { Tag::all, Group::nikonpv, newTiffEntry }, + { 0x0201, nikonPvId, newTiffThumbData<0x0202, nikonPvId> }, + { 0x0202, nikonPvId, newTiffThumbSize<0x0201, nikonPvId> }, + { Tag::next, nikonPvId, newTiffDirectory }, + { Tag::all, nikonPvId, newTiffEntry }, // Nikon3 vibration reduction - { Tag::all, Group::nikonvr, newTiffBinaryElement }, + { Tag::all, nikonVrId, newTiffBinaryElement }, // Nikon3 picture control - { Tag::all, Group::nikonpc, newTiffBinaryElement }, + { Tag::all, nikonPcId, newTiffBinaryElement }, // Nikon3 world time - { Tag::all, Group::nikonwt, newTiffBinaryElement }, + { Tag::all, nikonWtId, newTiffBinaryElement }, // Nikon3 ISO info - { Tag::all, Group::nikonii, newTiffBinaryElement }, + { Tag::all, nikonIiId, newTiffBinaryElement }, // Nikon3 auto focus - { Tag::all, Group::nikonaf, newTiffBinaryElement }, + { Tag::all, nikonAfId, newTiffBinaryElement }, // Nikon3 auto focus 2 - { Tag::all, Group::nikonaf2, newTiffBinaryElement }, + { Tag::all, nikonAf2Id, newTiffBinaryElement }, // Nikon3 file info - { Tag::all, Group::nikonfi, newTiffBinaryElement }, + { Tag::all, nikonFiId, newTiffBinaryElement }, // Nikon3 multi exposure - { Tag::all, Group::nikonme, newTiffBinaryElement }, + { Tag::all, nikonMeId, newTiffBinaryElement }, // Nikon3 flash info - { Tag::all, Group::nikonfl1, newTiffBinaryElement }, - { Tag::all, Group::nikonfl2, newTiffBinaryElement }, - { Tag::all, Group::nikonfl3, newTiffBinaryElement }, + { Tag::all, nikonFl1Id, newTiffBinaryElement }, + { Tag::all, nikonFl2Id, newTiffBinaryElement }, + { Tag::all, nikonFl3Id, newTiffBinaryElement }, // Nikon3 shot info - { Tag::all, Group::nikonsi1, newTiffBinaryElement }, - { Tag::all, Group::nikonsi2, newTiffBinaryElement }, - { Tag::all, Group::nikonsi3, newTiffBinaryElement }, - { Tag::all, Group::nikonsi4, newTiffBinaryElement }, - { Tag::all, Group::nikonsi5, newTiffBinaryElement }, - { Tag::all, Group::nikonsi6, newTiffBinaryElement }, + { Tag::all, nikonSi1Id, newTiffBinaryElement }, + { Tag::all, nikonSi2Id, newTiffBinaryElement }, + { Tag::all, nikonSi3Id, newTiffBinaryElement }, + { Tag::all, nikonSi4Id, newTiffBinaryElement }, + { Tag::all, nikonSi5Id, newTiffBinaryElement }, + { Tag::all, nikonSi6Id, newTiffBinaryElement }, // Nikon3 color balance - { Tag::all, Group::nikoncb1, newTiffBinaryElement }, - { Tag::all, Group::nikoncb2, newTiffBinaryElement }, - { Tag::all, Group::nikoncb2a, newTiffBinaryElement }, - { Tag::all, Group::nikoncb2b, newTiffBinaryElement }, - { Tag::all, Group::nikoncb3, newTiffBinaryElement }, - { Tag::all, Group::nikoncb4, newTiffBinaryElement }, + { Tag::all, nikonCb1Id, newTiffBinaryElement }, + { Tag::all, nikonCb2Id, newTiffBinaryElement }, + { Tag::all, nikonCb2aId, newTiffBinaryElement }, + { Tag::all, nikonCb2bId, newTiffBinaryElement }, + { Tag::all, nikonCb3Id, newTiffBinaryElement }, + { Tag::all, nikonCb4Id, newTiffBinaryElement }, // Nikon3 lens data - { Tag::all, Group::nikonld1, newTiffBinaryElement }, - { Tag::all, Group::nikonld2, newTiffBinaryElement }, - { Tag::all, Group::nikonld3, newTiffBinaryElement }, + { Tag::all, nikonLd1Id, newTiffBinaryElement }, + { Tag::all, nikonLd2Id, newTiffBinaryElement }, + { Tag::all, nikonLd3Id, newTiffBinaryElement }, // Panasonic makernote - { Tag::next, Group::panamn, newTiffDirectory }, - { Tag::all, Group::panamn, newTiffEntry }, + { Tag::next, panasonicId, newTiffDirectory }, + { Tag::all, panasonicId, newTiffEntry }, // Pentax makernote - { 0x0003, Group::pentaxmn, newTiffThumbSize<0x0004, Group::pentaxmn> }, - { 0x0004, Group::pentaxmn, newTiffThumbData<0x0003, Group::pentaxmn> }, - { Tag::next, Group::pentaxmn, newTiffDirectory }, - { Tag::all, Group::pentaxmn, newTiffEntry }, + { 0x0003, pentaxId, newTiffThumbSize<0x0004, pentaxId> }, + { 0x0004, pentaxId, newTiffThumbData<0x0003, pentaxId> }, + { Tag::next, pentaxId, newTiffDirectory }, + { Tag::all, pentaxId, newTiffEntry }, // Sigma/Foveon makernote - { Tag::next, Group::sigmamn, newTiffDirectory }, - { Tag::all, Group::sigmamn, newTiffEntry }, + { Tag::next, sigmaId, newTiffDirectory }, + { Tag::all, sigmaId, newTiffEntry }, // Sony1 makernote - { 0x0114, Group::sony1mn, EXV_COMPLEX_BINARY_ARRAY(sony1CsSet, sonyCsSelector) }, - { 0xb028, Group::sony1mn, newTiffSubIfd }, - { Tag::next, Group::sony1mn, newTiffDirectory }, - { Tag::all, Group::sony1mn, newTiffEntry }, + { 0x0114, sony1Id, EXV_COMPLEX_BINARY_ARRAY(sony1CsSet, sonyCsSelector) }, + { 0xb028, sony1Id, newTiffSubIfd }, + { Tag::next, sony1Id, newTiffDirectory }, + { Tag::all, sony1Id, newTiffEntry }, // Sony1 camera settings - { Tag::all, Group::sony1cs, newTiffBinaryElement }, - { Tag::all, Group::sony1cs2, newTiffBinaryElement }, + { Tag::all, sony1CsId, newTiffBinaryElement }, + { Tag::all, sony1Cs2Id, newTiffBinaryElement }, // Sony2 makernote - { 0x0114, Group::sony2mn, EXV_COMPLEX_BINARY_ARRAY(sony2CsSet, sonyCsSelector) }, - { Tag::next, Group::sony2mn, newTiffDirectory }, - { Tag::all, Group::sony2mn, newTiffEntry }, + { 0x0114, sony2Id, EXV_COMPLEX_BINARY_ARRAY(sony2CsSet, sonyCsSelector) }, + { Tag::next, sony2Id, newTiffDirectory }, + { Tag::all, sony2Id, newTiffEntry }, // Sony2 camera settings - { Tag::all, Group::sony2cs, newTiffBinaryElement }, - { Tag::all, Group::sony2cs2, newTiffBinaryElement }, + { Tag::all, sony2CsId, newTiffBinaryElement }, + { Tag::all, sony2Cs2Id, newTiffBinaryElement }, // Sony1 Minolta makernote - { 0x0001, Group::sonymltmn, EXV_SIMPLE_BINARY_ARRAY(sony1MCsoCfg) }, - { 0x0003, Group::sonymltmn, EXV_SIMPLE_BINARY_ARRAY(sony1MCsnCfg) }, - { 0x0004, Group::sonymltmn, EXV_BINARY_ARRAY(sony1MCs7Cfg, minoCs7Def)}, // minoCs7Def [sic] - { 0x0088, Group::sonymltmn, newTiffThumbData<0x0089, Group::sonymltmn>}, - { 0x0089, Group::sonymltmn, newTiffThumbSize<0x0088, Group::sonymltmn>}, - { 0x0114, Group::sonymltmn, EXV_BINARY_ARRAY(sony1MCsA100Cfg, sony1MCsA100Def)}, - { Tag::next, Group::sonymltmn, newTiffDirectory }, - { Tag::all, Group::sonymltmn, newTiffEntry }, + { 0x0001, sonyMltId, EXV_SIMPLE_BINARY_ARRAY(sony1MCsoCfg) }, + { 0x0003, sonyMltId, EXV_SIMPLE_BINARY_ARRAY(sony1MCsnCfg) }, + { 0x0004, sonyMltId, EXV_BINARY_ARRAY(sony1MCs7Cfg, minoCs7Def)}, // minoCs7Def [sic] + { 0x0088, sonyMltId, newTiffThumbData<0x0089, sonyMltId> }, + { 0x0089, sonyMltId, newTiffThumbSize<0x0088, sonyMltId> }, + { 0x0114, sonyMltId, EXV_BINARY_ARRAY(sony1MCsA100Cfg, sony1MCsA100Def)}, + { Tag::next, sonyMltId, newTiffDirectory }, + { Tag::all, sonyMltId, newTiffEntry }, // Sony1 Minolta makernote composite tags - { Tag::all, Group::sony1mcso, newTiffBinaryElement }, - { Tag::all, Group::sony1mcsn, newTiffBinaryElement }, - { Tag::all, Group::sony1mcs7, newTiffBinaryElement }, - { Tag::all, Group::sony1mcsa100,newTiffBinaryElement }, + { Tag::all, sony1MltCsOldId, newTiffBinaryElement }, + { Tag::all, sony1MltCsNewId, newTiffBinaryElement }, + { Tag::all, sony1MltCs7DId, newTiffBinaryElement }, + { Tag::all, sony1MltCsA100Id, newTiffBinaryElement }, // Minolta makernote - { 0x0001, Group::minoltamn, EXV_SIMPLE_BINARY_ARRAY(minoCsoCfg) }, - { 0x0003, Group::minoltamn, EXV_SIMPLE_BINARY_ARRAY(minoCsnCfg) }, - { 0x0004, Group::minoltamn, EXV_BINARY_ARRAY(minoCs7Cfg, minoCs7Def) }, - { 0x0088, Group::minoltamn, newTiffThumbData<0x0089, Group::minoltamn>}, - { 0x0089, Group::minoltamn, newTiffThumbSize<0x0088, Group::minoltamn>}, - { 0x0114, Group::minoltamn, EXV_BINARY_ARRAY(minoCs5Cfg, minoCs5Def) }, - { Tag::next, Group::minoltamn, newTiffDirectory }, - { Tag::all, Group::minoltamn, newTiffEntry }, + { 0x0001, minoltaId, EXV_SIMPLE_BINARY_ARRAY(minoCsoCfg) }, + { 0x0003, minoltaId, EXV_SIMPLE_BINARY_ARRAY(minoCsnCfg) }, + { 0x0004, minoltaId, EXV_BINARY_ARRAY(minoCs7Cfg, minoCs7Def) }, + { 0x0088, minoltaId, newTiffThumbData<0x0089, minoltaId> }, + { 0x0089, minoltaId, newTiffThumbSize<0x0088, minoltaId> }, + { 0x0114, minoltaId, EXV_BINARY_ARRAY(minoCs5Cfg, minoCs5Def) }, + { Tag::next, minoltaId, newTiffDirectory }, + { Tag::all, minoltaId, newTiffEntry }, // Minolta makernote composite tags - { Tag::all, Group::minocso, newTiffBinaryElement }, - { Tag::all, Group::minocsn, newTiffBinaryElement }, - { Tag::all, Group::minocs7, newTiffBinaryElement }, - { Tag::all, Group::minocs5, newTiffBinaryElement }, + { Tag::all, minoltaCsOldId, newTiffBinaryElement }, + { Tag::all, minoltaCsNewId, newTiffBinaryElement }, + { Tag::all, minoltaCs7DId, newTiffBinaryElement }, + { Tag::all, minoltaCs5DId, newTiffBinaryElement }, // ----------------------------------------------------------------------- // Root directory of Panasonic RAW images - { Tag::pana, Group::none, newTiffDirectory }, + { Tag::pana, ifdIdNotSet, newTiffDirectory }, // IFD0 of Panasonic RAW images - { 0x8769, Group::panaraw, newTiffSubIfd }, - { 0x8825, Group::panaraw, newTiffSubIfd }, -// { 0x0111, Group::panaraw, newTiffImageData<0x0117, Group::panaraw> }, -// { 0x0117, Group::panaraw, newTiffImageSize<0x0111, Group::panaraw> }, - { Tag::next, Group::panaraw, newTiffDirectory }, - { Tag::all, Group::panaraw, newTiffEntry }, + { 0x8769, panaRawId, newTiffSubIfd }, + { 0x8825, panaRawId, newTiffSubIfd }, +// { 0x0111, panaRawId, newTiffImageData<0x0117, panaRawId> }, +// { 0x0117, panaRawId, newTiffImageSize<0x0111, panaRawId> }, + { Tag::next, panaRawId, newTiffDirectory }, + { Tag::all, panaRawId, newTiffEntry }, // ----------------------------------------------------------------------- // Tags which are not de/encoded - { Tag::next, Group::ignr, newTiffDirectory }, - { Tag::all, Group::ignr, newTiffEntry } + { Tag::next, ignoreId, newTiffDirectory }, + { Tag::all, ignoreId, newTiffEntry } }; // TIFF mapping table for special decoding and encoding requirements const TiffMappingInfo TiffMapping::tiffMappingInfo_[] = { - { "*", Tag::all, Group::ignr, 0, 0 }, // Do not decode tags with group == Group::ignr - { "*", 0x02bc, Group::ifd0, &TiffDecoder::decodeXmp, 0 /*done before the tree is traversed*/ }, - { "*", 0x83bb, Group::ifd0, &TiffDecoder::decodeIptc, 0 /*done before the tree is traversed*/ }, - { "*", 0x8649, Group::ifd0, &TiffDecoder::decodeIptc, 0 /*done before the tree is traversed*/ } + { "*", Tag::all, ignoreId, 0, 0 }, // Do not decode tags with group == ignoreId + { "*", 0x02bc, ifd0Id, &TiffDecoder::decodeXmp, 0 /*done before the tree is traversed*/ }, + { "*", 0x83bb, ifd0Id, &TiffDecoder::decodeIptc, 0 /*done before the tree is traversed*/ }, + { "*", 0x8649, ifd0Id, &TiffDecoder::decodeIptc, 0 /*done before the tree is traversed*/ } }; DecoderFct TiffMapping::findDecoder(const std::string& make, uint32_t extendedTag, - uint16_t group) + IfdId group) { DecoderFct decoderFct = &TiffDecoder::decodeStdTiffEntry; const TiffMappingInfo* td = find(tiffMappingInfo_, @@ -1638,7 +1638,7 @@ namespace Exiv2 { EncoderFct TiffMapping::findEncoder( const std::string& make, uint32_t extendedTag, - uint16_t group + IfdId group ) { EncoderFct encoderFct = 0; @@ -1657,7 +1657,7 @@ namespace Exiv2 { } TiffComponent::AutoPtr TiffCreator::create(uint32_t extendedTag, - uint16_t group) + IfdId group) { TiffComponent::AutoPtr tc(0); uint16_t tag = static_cast(extendedTag & 0xffff); @@ -1676,7 +1676,7 @@ namespace Exiv2 { } std::cerr << "extended tag 0x" << std::setw(4) << std::setfill('0') << std::hex << std::right << extendedTag - << ", group " << tiffGroupName(group) << "\n"; + << ", group " << ifdItem(group) << "\n"; } #endif return tc; @@ -1684,7 +1684,7 @@ namespace Exiv2 { void TiffCreator::getPath(TiffPath& tiffPath, uint32_t extendedTag, - uint16_t group, + IfdId group, uint32_t root) { const TiffTreeStruct* ts = 0; @@ -1694,7 +1694,7 @@ namespace Exiv2 { assert(ts != 0); extendedTag = ts->parentExtTag_; group = ts->parentGroup_; - } while (!(ts->root_ == root && ts->group_ == Group::none)); + } while (!(ts->root_ == root && ts->group_ == ifdIdNotSet)); } // TiffCreator::getPath @@ -1767,7 +1767,7 @@ namespace Exiv2 { if (!encoder.dirty()) writeMethod = wmNonIntrusive; } if (writeMethod == wmIntrusive) { - TiffComponent::AutoPtr createdTree = TiffCreator::create(root, Group::none); + TiffComponent::AutoPtr createdTree = TiffCreator::create(root, ifdIdNotSet); if (0 != parsedTree.get()) { // Copy image tags from the original image to the composite TiffCopier copier(createdTree.get(), root, pHeader, &primaryGroups); @@ -1819,7 +1819,7 @@ namespace Exiv2 { if (!pHeader->read(pData, size) || pHeader->offset() >= size) { throw Error(3, "TIFF"); } - TiffComponent::AutoPtr rootDir = TiffCreator::create(root, Group::none); + TiffComponent::AutoPtr rootDir = TiffCreator::create(root, ifdIdNotSet); if (0 != rootDir.get()) { rootDir->setStart(pData + pHeader->offset()); TiffRwState::AutoPtr state( @@ -1837,20 +1837,20 @@ namespace Exiv2 { { if (0 == pSourceDir) return; - const uint16_t imageGroups[] = { - Group::ifd0, - Group::ifd1, - Group::ifd2, - Group::ifd3, - Group::subimg1, - Group::subimg2, - Group::subimg3, - Group::subimg4, - Group::subimg5, - Group::subimg6, - Group::subimg7, - Group::subimg8, - Group::subimg9 + const IfdId imageGroups[] = { + ifd0Id, + ifd1Id, + ifd2Id, + ifd3Id, + subImage1Id, + subImage2Id, + subImage3Id, + subImage4Id, + subImage5Id, + subImage6Id, + subImage7Id, + subImage8Id, + subImage9Id }; for (unsigned int i = 0; i < EXV_COUNTOF(imageGroups); ++i) { @@ -1967,8 +1967,8 @@ namespace Exiv2 { return tag_; } - bool TiffHeaderBase::isImageTag(uint16_t /*tag*/, - uint16_t /*group*/, + bool TiffHeaderBase::isImageTag( uint16_t /*tag*/, + IfdId /*group*/, const PrimaryGroups* /*primaryGroups*/) const { return false; @@ -1985,76 +1985,76 @@ namespace Exiv2 { } bool TiffHeader::isImageTag( uint16_t tag, - uint16_t group, + IfdId group, const PrimaryGroups* pPrimaryGroups) const { //! List of TIFF image tags static const TiffImgTagStruct tiffImageTags[] = { - { 0x00fe, Group::ifd0 }, // Exif.Image.NewSubfileType - { 0x00ff, Group::ifd0 }, // Exif.Image.SubfileType - { 0x0100, Group::ifd0 }, // Exif.Image.ImageWidth - { 0x0101, Group::ifd0 }, // Exif.Image.ImageLength - { 0x0102, Group::ifd0 }, // Exif.Image.BitsPerSample - { 0x0103, Group::ifd0 }, // Exif.Image.Compression - { 0x0106, Group::ifd0 }, // Exif.Image.PhotometricInterpretation - { 0x010a, Group::ifd0 }, // Exif.Image.FillOrder - { 0x0111, Group::ifd0 }, // Exif.Image.StripOffsets - { 0x0115, Group::ifd0 }, // Exif.Image.SamplesPerPixel - { 0x0116, Group::ifd0 }, // Exif.Image.RowsPerStrip - { 0x0117, Group::ifd0 }, // Exif.Image.StripByteCounts - { 0x011a, Group::ifd0 }, // Exif.Image.XResolution - { 0x011b, Group::ifd0 }, // Exif.Image.YResolution - { 0x011c, Group::ifd0 }, // Exif.Image.PlanarConfiguration - { 0x0122, Group::ifd0 }, // Exif.Image.GrayResponseUnit - { 0x0123, Group::ifd0 }, // Exif.Image.GrayResponseCurve - { 0x0124, Group::ifd0 }, // Exif.Image.T4Options - { 0x0125, Group::ifd0 }, // Exif.Image.T6Options - { 0x0128, Group::ifd0 }, // Exif.Image.ResolutionUnit - { 0x012d, Group::ifd0 }, // Exif.Image.TransferFunction - { 0x013d, Group::ifd0 }, // Exif.Image.Predictor - { 0x013e, Group::ifd0 }, // Exif.Image.WhitePoint - { 0x013f, Group::ifd0 }, // Exif.Image.PrimaryChromaticities - { 0x0140, Group::ifd0 }, // Exif.Image.ColorMap - { 0x0141, Group::ifd0 }, // Exif.Image.HalftoneHints - { 0x0142, Group::ifd0 }, // Exif.Image.TileWidth - { 0x0143, Group::ifd0 }, // Exif.Image.TileLength - { 0x0144, Group::ifd0 }, // Exif.Image.TileOffsets - { 0x0145, Group::ifd0 }, // Exif.Image.TileByteCounts - { 0x014c, Group::ifd0 }, // Exif.Image.InkSet - { 0x014d, Group::ifd0 }, // Exif.Image.InkNames - { 0x014e, Group::ifd0 }, // Exif.Image.NumberOfInks - { 0x0150, Group::ifd0 }, // Exif.Image.DotRange - { 0x0151, Group::ifd0 }, // Exif.Image.TargetPrinter - { 0x0152, Group::ifd0 }, // Exif.Image.ExtraSamples - { 0x0153, Group::ifd0 }, // Exif.Image.SampleFormat - { 0x0154, Group::ifd0 }, // Exif.Image.SMinSampleValue - { 0x0155, Group::ifd0 }, // Exif.Image.SMaxSampleValue - { 0x0156, Group::ifd0 }, // Exif.Image.TransferRange - { 0x0157, Group::ifd0 }, // Exif.Image.ClipPath - { 0x0158, Group::ifd0 }, // Exif.Image.XClipPathUnits - { 0x0159, Group::ifd0 }, // Exif.Image.YClipPathUnits - { 0x015a, Group::ifd0 }, // Exif.Image.Indexed - { 0x015b, Group::ifd0 }, // Exif.Image.JPEGTables - { 0x0200, Group::ifd0 }, // Exif.Image.JPEGProc - { 0x0201, Group::ifd0 }, // Exif.Image.JPEGInterchangeFormat - { 0x0202, Group::ifd0 }, // Exif.Image.JPEGInterchangeFormatLength - { 0x0203, Group::ifd0 }, // Exif.Image.JPEGRestartInterval - { 0x0205, Group::ifd0 }, // Exif.Image.JPEGLosslessPredictors - { 0x0206, Group::ifd0 }, // Exif.Image.JPEGPointTransforms - { 0x0207, Group::ifd0 }, // Exif.Image.JPEGQTables - { 0x0208, Group::ifd0 }, // Exif.Image.JPEGDCTables - { 0x0209, Group::ifd0 }, // Exif.Image.JPEGACTables - { 0x0211, Group::ifd0 }, // Exif.Image.YCbCrCoefficients - { 0x0212, Group::ifd0 }, // Exif.Image.YCbCrSubSampling - { 0x0213, Group::ifd0 }, // Exif.Image.YCbCrPositioning - { 0x0214, Group::ifd0 }, // Exif.Image.ReferenceBlackWhite - { 0x828d, Group::ifd0 }, // Exif.Image.CFARepeatPatternDim - { 0x828e, Group::ifd0 }, // Exif.Image.CFAPattern - { 0x8773, Group::ifd0 }, // Exif.Image.InterColorProfile - { 0x8824, Group::ifd0 }, // Exif.Image.SpectralSensitivity - { 0x8828, Group::ifd0 }, // Exif.Image.OECF - { 0x9102, Group::ifd0 }, // Exif.Image.CompressedBitsPerPixel - { 0x9217, Group::ifd0 }, // Exif.Image.SensingMethod + { 0x00fe, ifd0Id }, // Exif.Image.NewSubfileType + { 0x00ff, ifd0Id }, // Exif.Image.SubfileType + { 0x0100, ifd0Id }, // Exif.Image.ImageWidth + { 0x0101, ifd0Id }, // Exif.Image.ImageLength + { 0x0102, ifd0Id }, // Exif.Image.BitsPerSample + { 0x0103, ifd0Id }, // Exif.Image.Compression + { 0x0106, ifd0Id }, // Exif.Image.PhotometricInterpretation + { 0x010a, ifd0Id }, // Exif.Image.FillOrder + { 0x0111, ifd0Id }, // Exif.Image.StripOffsets + { 0x0115, ifd0Id }, // Exif.Image.SamplesPerPixel + { 0x0116, ifd0Id }, // Exif.Image.RowsPerStrip + { 0x0117, ifd0Id }, // Exif.Image.StripByteCounts + { 0x011a, ifd0Id }, // Exif.Image.XResolution + { 0x011b, ifd0Id }, // Exif.Image.YResolution + { 0x011c, ifd0Id }, // Exif.Image.PlanarConfiguration + { 0x0122, ifd0Id }, // Exif.Image.GrayResponseUnit + { 0x0123, ifd0Id }, // Exif.Image.GrayResponseCurve + { 0x0124, ifd0Id }, // Exif.Image.T4Options + { 0x0125, ifd0Id }, // Exif.Image.T6Options + { 0x0128, ifd0Id }, // Exif.Image.ResolutionUnit + { 0x012d, ifd0Id }, // Exif.Image.TransferFunction + { 0x013d, ifd0Id }, // Exif.Image.Predictor + { 0x013e, ifd0Id }, // Exif.Image.WhitePoint + { 0x013f, ifd0Id }, // Exif.Image.PrimaryChromaticities + { 0x0140, ifd0Id }, // Exif.Image.ColorMap + { 0x0141, ifd0Id }, // Exif.Image.HalftoneHints + { 0x0142, ifd0Id }, // Exif.Image.TileWidth + { 0x0143, ifd0Id }, // Exif.Image.TileLength + { 0x0144, ifd0Id }, // Exif.Image.TileOffsets + { 0x0145, ifd0Id }, // Exif.Image.TileByteCounts + { 0x014c, ifd0Id }, // Exif.Image.InkSet + { 0x014d, ifd0Id }, // Exif.Image.InkNames + { 0x014e, ifd0Id }, // Exif.Image.NumberOfInks + { 0x0150, ifd0Id }, // Exif.Image.DotRange + { 0x0151, ifd0Id }, // Exif.Image.TargetPrinter + { 0x0152, ifd0Id }, // Exif.Image.ExtraSamples + { 0x0153, ifd0Id }, // Exif.Image.SampleFormat + { 0x0154, ifd0Id }, // Exif.Image.SMinSampleValue + { 0x0155, ifd0Id }, // Exif.Image.SMaxSampleValue + { 0x0156, ifd0Id }, // Exif.Image.TransferRange + { 0x0157, ifd0Id }, // Exif.Image.ClipPath + { 0x0158, ifd0Id }, // Exif.Image.XClipPathUnits + { 0x0159, ifd0Id }, // Exif.Image.YClipPathUnits + { 0x015a, ifd0Id }, // Exif.Image.Indexed + { 0x015b, ifd0Id }, // Exif.Image.JPEGTables + { 0x0200, ifd0Id }, // Exif.Image.JPEGProc + { 0x0201, ifd0Id }, // Exif.Image.JPEGInterchangeFormat + { 0x0202, ifd0Id }, // Exif.Image.JPEGInterchangeFormatLength + { 0x0203, ifd0Id }, // Exif.Image.JPEGRestartInterval + { 0x0205, ifd0Id }, // Exif.Image.JPEGLosslessPredictors + { 0x0206, ifd0Id }, // Exif.Image.JPEGPointTransforms + { 0x0207, ifd0Id }, // Exif.Image.JPEGQTables + { 0x0208, ifd0Id }, // Exif.Image.JPEGDCTables + { 0x0209, ifd0Id }, // Exif.Image.JPEGACTables + { 0x0211, ifd0Id }, // Exif.Image.YCbCrCoefficients + { 0x0212, ifd0Id }, // Exif.Image.YCbCrSubSampling + { 0x0213, ifd0Id }, // Exif.Image.YCbCrPositioning + { 0x0214, ifd0Id }, // Exif.Image.ReferenceBlackWhite + { 0x828d, ifd0Id }, // Exif.Image.CFARepeatPatternDim + { 0x828e, ifd0Id }, // Exif.Image.CFAPattern + { 0x8773, ifd0Id }, // Exif.Image.InterColorProfile + { 0x8824, ifd0Id }, // Exif.Image.SpectralSensitivity + { 0x8828, ifd0Id }, // Exif.Image.OECF + { 0x9102, ifd0Id }, // Exif.Image.CompressedBitsPerPixel + { 0x9217, ifd0Id }, // Exif.Image.SensingMethod }; if (!hasImageTags_) { @@ -2064,7 +2064,7 @@ namespace Exiv2 { return false; } #ifdef DEBUG - ExifKey key(tag, tiffGroupName(group)); + ExifKey key(tag, ifdItem(group)); #endif // If there are primary groups and none matches group, we're done if ( pPrimaryGroups != 0 @@ -2080,9 +2080,9 @@ namespace Exiv2 { // image tags. That should take care of NEFs until we know better. if ( pPrimaryGroups != 0 && !pPrimaryGroups->empty() - && group != Group::ifd0) { + && group != ifd0Id) { #ifdef DEBUG - ExifKey key(tag, tiffGroupName(group)); + ExifKey key(tag, ifdItem(group)); std::cerr << "Image tag: " << key << " (2)\n"; #endif return true; @@ -2090,7 +2090,7 @@ namespace Exiv2 { // If tag, group is one of the image tags listed above -> bingo! if (find(tiffImageTags, TiffImgTagStruct::Key(tag, group))) { #ifdef DEBUG - ExifKey key(tag, tiffGroupName(group)); + ExifKey key(tag, ifdItem(group)); std::cerr << "Image tag: " << key << " (3)\n"; #endif return true; diff --git a/src/tiffimage_int.hpp b/src/tiffimage_int.hpp index 5a22d76d..b0cf577e 100644 --- a/src/tiffimage_int.hpp +++ b/src/tiffimage_int.hpp @@ -127,7 +127,7 @@ namespace Exiv2 { @return The default implementation returns \c false. */ virtual bool isImageTag( uint16_t tag, - uint16_t group, + IfdId group, const PrimaryGroups* pPrimaryGroups) const; //@} @@ -156,8 +156,8 @@ namespace Exiv2 { //@} //@{ //! @name Accessors - bool isImageTag( uint16_t tag, - uint16_t group, + bool isImageTag( uint16_t tag, + IfdId group, const PrimaryGroups* pPrimaryGroups) const; //@} @@ -173,9 +173,9 @@ namespace Exiv2 { //! Search key for TIFF image tag structure. struct Key { //! Constructor - Key(uint16_t t, uint16_t g) : t_(t), g_(g) {} + Key(uint16_t t, IfdId g) : t_(t), g_(g) {} uint16_t t_; //!< %Tag - uint16_t g_; //!< %Group + IfdId g_; //!< %Group }; //! Comparison operator to compare a TiffImgTagStruct with a TiffImgTagStruct::Key @@ -186,7 +186,7 @@ namespace Exiv2 { // DATA uint16_t tag_; //!< Image tag - uint16_t group_; //!< Group that contains the image tag + IfdId group_; //!< Group that contains the image tag }; // struct TiffImgTagStruct /*! @@ -197,9 +197,9 @@ namespace Exiv2 { //! Search key for TIFF group structure. struct Key { //! Constructor - Key(uint32_t e, uint16_t g) : e_(e), g_(g) {} + Key(uint32_t e, IfdId g) : e_(e), g_(g) {} uint32_t e_; //!< Extended tag - uint16_t g_; //!< %Group + IfdId g_; //!< %Group }; //! Comparison operator to compare a TiffGroupStruct with a TiffGroupStruct::Key @@ -213,7 +213,7 @@ namespace Exiv2 { // DATA uint32_t extendedTag_; //!< Tag (32 bit so that it can contain special tags) - uint16_t group_; //!< Group that contains the tag + IfdId group_; //!< Group that contains the tag NewTiffCompFct newTiffCompFct_; //!< Function to create the correct TIFF component }; @@ -229,17 +229,17 @@ namespace Exiv2 { // DATA uint32_t root_; //!< Tree root element, identifies a tree - uint16_t group_; //!< Each group is a node in the tree - uint16_t parentGroup_; //!< Parent group + IfdId group_; //!< Each group is a node in the tree + IfdId parentGroup_; //!< Parent group uint32_t parentExtTag_; //!< Parent tag (32 bit so that it can contain special tags) }; //! Search key for TIFF tree structure. struct TiffTreeStruct::Key { //! Constructor - Key(uint32_t r, uint16_t g) : r_(r), g_(g) {} + Key(uint32_t r, IfdId g) : r_(r), g_(g) {} uint32_t r_; //!< Root - uint16_t g_; //!< %Group + IfdId g_; //!< %Group }; /*! @@ -254,7 +254,7 @@ namespace Exiv2 { is 0, then the TIFF entry should be ignored. */ static std::auto_ptr create(uint32_t extendedTag, - uint16_t group); + IfdId group); /*! @brief Get the path, i.e., a list of extended tag and group pairs, from the \em root TIFF element to the TIFF entry \em extendedTag and @@ -262,7 +262,7 @@ namespace Exiv2 { */ static void getPath(TiffPath& tiffPath, uint32_t extendedTag, - uint16_t group, + IfdId group, uint32_t root); private: @@ -388,7 +388,7 @@ namespace Exiv2 { */ static DecoderFct findDecoder(const std::string& make, uint32_t extendedTag, - uint16_t group); + IfdId group); /*! @brief Find special encoder function for a key. @@ -405,7 +405,7 @@ namespace Exiv2 { static EncoderFct findEncoder( const std::string& make, uint32_t extendedTag, - uint16_t group + IfdId group ); private: @@ -413,6 +413,7 @@ namespace Exiv2 { }; // class TiffMapping + // Todo: Move this class to metadatum_int.hpp or tags_int.hpp //! Unary predicate that matches an Exifdatum with a given IfdId. class FindExifdatum { public: diff --git a/src/tiffvisitor.cpp b/src/tiffvisitor.cpp index 67db77ef..f8451851 100644 --- a/src/tiffvisitor.cpp +++ b/src/tiffvisitor.cpp @@ -59,8 +59,8 @@ namespace { class FindExifdatum2 { public: //! Constructor, initializes the object with the group and index to look for. - FindExifdatum2(uint16_t group, int idx) - : groupName_(Exiv2::Internal::tiffGroupName(group)), idx_(idx) {} + FindExifdatum2(Exiv2::Internal::IfdId group, int idx) + : groupName_(Exiv2::Internal::groupName(group)), idx_(idx) {} //! Returns true if group and index match. bool operator()(const Exiv2::Exifdatum& md) const { @@ -127,7 +127,7 @@ namespace Exiv2 { { } - void TiffFinder::init(uint16_t tag, uint16_t group) + void TiffFinder::init(uint16_t tag, IfdId group) { tag_ = tag; group_ = group; @@ -226,7 +226,7 @@ namespace Exiv2 { TiffCreator::getPath(tiffPath, object->tag(), object->group(), root_); pRoot_->addPath(object->tag(), tiffPath, pRoot_, clone); #ifdef DEBUG - ExifKey key(object->tag(), tiffGroupName(object->group())); + ExifKey key(object->tag(), groupName(object->group())); std::cerr << "Copied " << key << "\n"; #endif } @@ -303,7 +303,7 @@ namespace Exiv2 { xmpData_.clear(); // Find camera make - TiffFinder finder(0x010f, Group::ifd0); + TiffFinder finder(0x010f, ifd0Id); pRoot_->accept(finder); TiffEntryBase* te = dynamic_cast(finder.result()); if (te && te->pValue()) { @@ -372,7 +372,7 @@ namespace Exiv2 { void TiffDecoder::getObjData(byte const*& pData, long& size, uint16_t tag, - uint16_t group, + IfdId group, const TiffEntryBase* object) { if (object && object->tag() == tag && object->group() == group) { @@ -397,7 +397,7 @@ namespace Exiv2 { byte const* pData = 0; long size = 0; - getObjData(pData, size, 0x02bc, Group::ifd0, object); + getObjData(pData, size, 0x02bc, ifd0Id, object); if (pData) { std::string xmpPacket; xmpPacket.assign(reinterpret_cast(pData), size); @@ -431,7 +431,7 @@ namespace Exiv2 { // 1st choice: IPTCNAA byte const* pData = 0; long size = 0; - getObjData(pData, size, 0x83bb, Group::ifd0, object); + getObjData(pData, size, 0x83bb, ifd0Id, object); if (pData) { if (0 == IptcParser::decode(iptcData_, pData, size)) { return; @@ -448,7 +448,7 @@ namespace Exiv2 { // ImageResources pData = 0; size = 0; - getObjData(pData, size, 0x8649, Group::ifd0, object); + getObjData(pData, size, 0x8649, ifd0Id, object); if (pData) { byte const* record = 0; uint32_t sizeHdr = 0; @@ -488,9 +488,7 @@ namespace Exiv2 { void TiffDecoder::decodeStdTiffEntry(const TiffEntryBase* object) { assert(object != 0); - // Todo: ExifKey should have an appropriate c'tor, it should not be - // necessary to use groupName here - ExifKey key(object->tag(), tiffGroupName(object->group())); + ExifKey key(object->tag(), groupName(object->group())); key.setIdx(object->idx()); exifData_.add(key, object->pValue()); @@ -548,7 +546,7 @@ namespace Exiv2 { make_ = pos->toString(); } if (make_.empty() && pRoot_) { - TiffFinder finder(0x010f, Group::ifd0); + TiffFinder finder(0x010f, ifd0Id); pRoot_->accept(finder); TiffEntryBase* te = dynamic_cast(finder.result()); if (te && te->pValue()) { @@ -725,7 +723,7 @@ namespace Exiv2 { } else if (del_) { // The makernote is made up of decoded tags, delete binary tag - ExifKey key(object->tag(), tiffGroupName(object->group())); + ExifKey key(object->tag(), groupName(object->group())); ExifData::iterator pos = exifData_.findKey(key); if (pos != exifData_.end()) exifData_.erase(pos); } @@ -804,7 +802,7 @@ namespace Exiv2 { byteOrder_ = boOrig; } - bool TiffEncoder::isImageTag(uint16_t tag, uint16_t group) const + bool TiffEncoder::isImageTag(uint16_t tag, IfdId group) const { if (!isNewImage_ && pHeader_->isImageTag(tag, group, pPrimaryGroups_)) { return true; @@ -827,7 +825,7 @@ namespace Exiv2 { const Exifdatum* ed = datum; if (ed == 0) { // Non-intrusive writing: find matching tag - ExifKey key(object->tag(), tiffGroupName(object->group())); + ExifKey key(object->tag(), groupName(object->group())); pos = exifData_.findKey(key); if (pos != exifData_.end()) { ed = &(*pos); @@ -894,7 +892,7 @@ namespace Exiv2 { if ( object->sizeDataArea_ < static_cast(object->pValue()->sizeDataArea())) { #ifdef DEBUG - ExifKey key(object->tag(), tiffGroupName(object->group())); + ExifKey key(object->tag(), groupName(object->group())); std::cerr << "DATAAREA GREW " << key << "\n"; #endif setDirty(); @@ -902,7 +900,7 @@ namespace Exiv2 { else { // Write the new dataarea, fill with 0x0 #ifdef DEBUG - ExifKey key(object->tag(), tiffGroupName(object->group())); + ExifKey key(object->tag(), groupName(object->group())); std::cerr << "Writing data area for " << key << "\n"; #endif DataBuf buf = object->pValue()->dataArea(); @@ -939,7 +937,7 @@ namespace Exiv2 { std::cerr << "\t DATAAREA IS SET (INTRUSIVE WRITING)"; #endif // Set pseudo strips (without a data pointer) from the size tag - ExifKey key(object->szTag(), tiffGroupName(object->szGroup())); + ExifKey key(object->szTag(), groupName(object->szGroup())); ExifData::const_iterator pos = exifData_.findKey(key); const byte* zero = 0; if (pos == exifData_.end()) { @@ -960,7 +958,7 @@ namespace Exiv2 { } if (sizeTotal != sizeDataArea) { #ifndef SUPPRESS_WARNINGS - ExifKey key2(object->tag(), tiffGroupName(object->group())); + ExifKey key2(object->tag(), groupName(object->group())); std::cerr << "Error: Sum of all sizes of " << key << " != data size of " << key2 << ". " << "This results in an invalid image.\n"; @@ -985,7 +983,7 @@ namespace Exiv2 { } #ifndef SUPPRESS_WARNINGS else { - ExifKey key2(object->tag(), tiffGroupName(object->group())); + ExifKey key2(object->tag(), groupName(object->group())); std::cerr << "Warning: No image data to encode " << key2 << ".\n"; } #endif @@ -1026,7 +1024,7 @@ namespace Exiv2 { } object->updateValue(datum->getValue(), byteOrder()); // clones the value #ifdef DEBUG - ExifKey key(object->tag(), tiffGroupName(object->group())); + ExifKey key(object->tag(), groupName(object->group())); std::cerr << "UPDATING DATA " << key; if (tooLarge) { std::cerr << "\t\t\t ALLOCATED " << std::dec << object->size_ << " BYTES"; @@ -1044,7 +1042,7 @@ namespace Exiv2 { setDirty(); object->updateValue(datum->getValue(), byteOrder()); // clones the value #ifdef DEBUG - ExifKey key(object->tag(), tiffGroupName(object->group())); + ExifKey key(object->tag(), groupName(object->group())); std::cerr << "UPDATING DATA " << key; std::cerr << "\t\t\t ALLOCATED " << object->size() << " BYTES"; #endif @@ -1052,7 +1050,7 @@ namespace Exiv2 { else { object->setValue(datum->getValue()); // clones the value #ifdef DEBUG - ExifKey key(object->tag(), tiffGroupName(object->group())); + ExifKey key(object->tag(), groupName(object->group())); std::cerr << "NOT UPDATING " << key; std::cerr << "\t\t\t PRESERVE VALUE DATA"; #endif @@ -1079,9 +1077,9 @@ namespace Exiv2 { for (ExifData::const_iterator i = exifData_.begin(); i != exifData_.end(); ++i) { - uint16_t group = tiffGroupId(i->groupName()); + IfdId group = groupId(i->groupName()); // Skip synthesized info tags - if (group == Group::mn) { + if (group == mnId) { if (i->tag() == 0x0002) { posBo = i; } @@ -1119,7 +1117,7 @@ namespace Exiv2 { */ if (posBo == exifData_.end()) return; - TiffFinder finder(0x927c, Group::exif); + TiffFinder finder(0x927c, exifId); pRootDir->accept(finder); TiffMnEntry* te = dynamic_cast(finder.result()); if (te) { @@ -1224,14 +1222,14 @@ namespace Exiv2 { } } - bool TiffReader::circularReference(const byte* start, uint16_t group) + bool TiffReader::circularReference(const byte* start, IfdId group) { DirList::const_iterator pos = dirList_.find(start); if (pos != dirList_.end()) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: " - << tiffGroupName(group) << " pointer references previously read " - << tiffGroupName(pos->second) << " directory. Ignored.\n"; + << groupName(group) << " pointer references previously read " + << groupName(pos->second) << " directory. Ignored.\n"; #endif return true; } @@ -1239,7 +1237,7 @@ namespace Exiv2 { return false; } - int TiffReader::nextIdx(uint16_t group) + int TiffReader::nextIdx(IfdId group) { return ++idxSeq_[group]; } @@ -1265,7 +1263,7 @@ namespace Exiv2 { if (p + 2 > pLast_) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: " - << "Directory " << tiffGroupName(object->group()) + << "Directory " << groupName(object->group()) << ": IFD exceeds data buffer, cannot read entry count.\n"; #endif return; @@ -1276,7 +1274,7 @@ namespace Exiv2 { if (n > 256) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: " - << "Directory " << tiffGroupName(object->group()) << " with " + << "Directory " << groupName(object->group()) << " with " << n << " entries considered invalid; not read.\n"; #endif return; @@ -1285,7 +1283,7 @@ namespace Exiv2 { if (p + 12 > pLast_) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: " - << "Directory " << tiffGroupName(object->group()) + << "Directory " << groupName(object->group()) << ": IFD entry " << i << " lies outside of the data buffer.\n"; #endif @@ -1305,7 +1303,7 @@ namespace Exiv2 { if (p + 4 > pLast_) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: " - << "Directory " << tiffGroupName(object->group()) + << "Directory " << groupName(object->group()) << ": IFD exceeds data buffer, cannot read next pointer.\n"; #endif return; @@ -1317,7 +1315,7 @@ namespace Exiv2 { #ifndef SUPPRESS_WARNINGS if (tc.get() == 0) { std::cerr << "Warning: " - << "Directory " << tiffGroupName(object->group()) + << "Directory " << groupName(object->group()) << " has an unhandled next pointer.\n"; } #endif @@ -1326,7 +1324,7 @@ namespace Exiv2 { if (baseOffset() + next > size_) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: " - << "Directory " << tiffGroupName(object->group()) + << "Directory " << groupName(object->group()) << ": Next pointer is out of bounds; ignored.\n"; #endif return; @@ -1352,7 +1350,7 @@ namespace Exiv2 { || static_cast(baseOffset()) + offset < 0) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: " - << "Directory " << tiffGroupName(object->group()) + << "Directory " << groupName(object->group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << object->tag() << " Sub-IFD pointer " << i @@ -1360,10 +1358,10 @@ namespace Exiv2 { #endif return; } - if (object->newGroup_ + i == Group::subimgX) { + if (object->newGroup_ + i == subImage9Id + 1) { #ifndef SUPPRESS_WARNINGS std::cerr << "Warning: " - << "Directory " << tiffGroupName(object->group()) + << "Directory " << groupName(object->group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << object->tag() << ": Skipping sub-IFDs beyond the first " << i << ".\n"; @@ -1372,7 +1370,7 @@ namespace Exiv2 { } // If there are multiple dirs, group is incremented for each TiffComponent::AutoPtr td(new TiffDirectory(object->tag(), - object->newGroup_ + i)); + static_cast(object->newGroup_ + i))); td->setStart(pData_ + baseOffset() + offset); object->addChild(td); } @@ -1380,7 +1378,7 @@ namespace Exiv2 { #ifndef SUPPRESS_WARNINGS else { std::cerr << "Warning: " - << "Directory " << tiffGroupName(object->group()) + << "Directory " << groupName(object->group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << object->tag() << " doesn't look like a sub-IFD.\n"; @@ -1395,7 +1393,7 @@ namespace Exiv2 { readTiffEntry(object); // Find camera make - TiffFinder finder(0x010f, Group::ifd0); + TiffFinder finder(0x010f, ifd0Id); pRoot_->accept(finder); TiffEntryBase* te = dynamic_cast(finder.result()); std::string make; @@ -1424,7 +1422,7 @@ namespace Exiv2 { byteOrder())) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: Failed to read " - << tiffGroupName(object->ifd_.group()) + << groupName(object->ifd_.group()) << " IFD Makernote header.\n"; #ifdef DEBUG if (static_cast(pLast_ - object->start()) >= 16) { @@ -1462,7 +1460,7 @@ namespace Exiv2 { if (p + 12 > pLast_) { #ifndef SUPPRESS_WARNINGS - std::cerr << "Error: Entry in directory " << tiffGroupName(object->group()) + std::cerr << "Error: Entry in directory " << groupName(object->group()) << "requests access to memory beyond the data buffer. " << "Skipping entry.\n"; #endif @@ -1475,7 +1473,7 @@ namespace Exiv2 { long typeSize = TypeInfo::typeSize(typeId); if (0 == typeSize) { #ifndef SUPPRESS_WARNINGS - std::cerr << "Warning: Directory " << tiffGroupName(object->group()) + std::cerr << "Warning: Directory " << groupName(object->group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << object->tag() << " has unknown Exif (TIFF) type " << std::dec << tiffType @@ -1487,7 +1485,7 @@ namespace Exiv2 { uint32_t count = getULong(p, byteOrder()); if (count >= 0x10000000) { #ifndef SUPPRESS_WARNINGS - std::cerr << "Error: Directory " << tiffGroupName(object->group()) + std::cerr << "Error: Directory " << groupName(object->group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << object->tag() << " has invalid size " @@ -1505,7 +1503,7 @@ namespace Exiv2 { || static_cast(baseOffset()) + offset <= 0)) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: Offset of " - << "directory " << tiffGroupName(object->group()) + << "directory " << groupName(object->group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << object->tag() << " is out of bounds: " @@ -1520,7 +1518,7 @@ namespace Exiv2 { if (size > static_cast(pLast_ - pData)) { #ifndef SUPPRESS_WARNINGS std::cerr << "Error: Upper boundary of data for " - << "directory " << tiffGroupName(object->group()) + << "directory " << groupName(object->group()) << ", entry 0x" << std::setw(4) << std::setfill('0') << std::hex << object->tag() << " is out of bounds: " diff --git a/src/tiffvisitor_int.hpp b/src/tiffvisitor_int.hpp index 8b3c55b1..73bf2496 100644 --- a/src/tiffvisitor_int.hpp +++ b/src/tiffvisitor_int.hpp @@ -168,7 +168,7 @@ namespace Exiv2 { //! @name Creators //@{ //! Constructor, taking \em tag and \em group of the component to find. - TiffFinder(uint16_t tag, uint16_t group) + TiffFinder(uint16_t tag, IfdId group) : tag_(tag), group_(group), tiffComponent_(0) {} //! Virtual destructor virtual ~TiffFinder(); @@ -200,7 +200,7 @@ namespace Exiv2 { //! Check if \em object matches \em tag and \em group void findObject(TiffComponent* object); //! Initialize the Finder for a new search. - void init(uint16_t tag, uint16_t group); + void init(uint16_t tag, IfdId group); //@} //! @name Accessors @@ -214,7 +214,7 @@ namespace Exiv2 { private: uint16_t tag_; - uint16_t group_; + IfdId group_; TiffComponent* tiffComponent_; }; // class TiffFinder @@ -350,7 +350,7 @@ namespace Exiv2 { void getObjData(byte const*& pData, long& size, uint16_t tag, - uint16_t group, + IfdId group, const TiffEntryBase* object); //@} @@ -556,7 +556,7 @@ namespace Exiv2 { is considered an image tag of this image - whether or not it's actually present in the existing image doesn't matter. */ - bool isImageTag(uint16_t tag, uint16_t group) const; + bool isImageTag(uint16_t tag, IfdId group) const; //@} private: @@ -687,9 +687,9 @@ namespace Exiv2 { //! Reset the state to the original state as set in the constructor. void resetState(); //! Check IFD directory pointer \em start for circular reference - bool circularReference(const byte* start, uint16_t group); + bool circularReference(const byte* start, IfdId group); //! Return the next idx sequence number for \em group - int nextIdx(uint16_t group); + int nextIdx(IfdId group); /*! @brief Read deferred components. @@ -712,7 +712,7 @@ namespace Exiv2 { //@} private: - typedef std::map DirList; + typedef std::map DirList; typedef std::map IdxSeq; typedef std::vector PostList;