 |
Exiv2
|
Go to the documentation of this file.
32 #ifndef CANONMN_INT_HPP_
33 #define CANONMN_INT_HPP_
117 static const TagInfo tagInfo_[];
118 static const TagInfo tagInfoCs_[];
119 static const TagInfo tagInfoSi_[];
120 static const TagInfo tagInfoCf_[];
121 static const TagInfo tagInfoPi_[];
122 static const TagInfo tagInfoTi_[];
123 static const TagInfo tagInfoFi_[];
124 static const TagInfo tagInfoPa_[];
125 static const TagInfo tagInfoPr_[];
151 #endif // #ifndef CANONMN_INT_HPP_
Helper structure for lookup tables for translations of numeric tag values to human readable labels.
Definition: tags_int.hpp:188
const TagDetailsBitmask canonPiAFPointsUsed20D[]
AFPointsUsed20D, tag 0x001a.
static std::ostream & printFiFocusDistance(std::ostream &os, const Value &value, const ExifData *)
Focus Distance.
Definition: canonmn_int.cpp:2126
static const TagInfo * tagListCf()
Return read-only list of built-in Canon Custom Function tags.
Definition: canonmn_int.cpp:1410
static std::ostream & printCsLens(std::ostream &os, const Value &value, const ExifData *)
Camera lens information.
Definition: canonmn_int.cpp:1961
const TagDetails canonCsMeteringMode[]
MeteringMode, tag 0x0011.
float canonEv(long val)
Convert Canon hex-based EV (modulo 0x20) to real number Ported from Phil Harvey's Image::ExifTool::Ca...
Definition: canonmn_int.cpp:2154
float focalLengthMin_
Mininum focal length.
Definition: canonmn_int.cpp:1802
const TagDetails canonCsExposureProgram[]
ExposureProgram, tag 0x0014.
static std::ostream & printFocalLength(std::ostream &os, const Value &value, const ExifData *)
Print the focal length.
Definition: canonmn_int.cpp:1710
Encoding and decoding of Exif data.
static std::ostream & printSi0x0013(std::ostream &os, const Value &value, const ExifData *)
Subject distance.
Definition: canonmn_int.cpp:2058
iterator findKey(const ExifKey &key)
Find the first Exifdatum with the given key, return an iterator to it.
Definition: exif.cpp:581
Common interface for all types of values used with metadata.
Definition: value.hpp:60
static const TagInfo * tagList()
Return read-only list of built-in Canon tags.
Definition: canonmn_int.cpp:450
const TagDetails canonSiFlashBias[]
FlashBias, tag 0x000f.
std::ostream & printCsLensByFocalLengthAndMaxAperture(std::ostream &os, const Value &value, const ExifData *metadata)
Special treatment pretty-print function for non-unique lens ids.
Definition: canonmn_int.cpp:1851
const TagDetails canonCsEasyMode[]
EasyMode, tag 0x000b.
URational exposureTime(float shutterSpeedValue)
Calculate the exposure time from an APEX shutter speed value.
Definition: tags_int.cpp:2172
static std::ostream & printSi0x0009(std::ostream &os, const Value &value, const ExifData *)
Sequence number.
Definition: canonmn_int.cpp:2024
static std::ostream & printSi0x000e(std::ostream &os, const Value &value, const ExifData *pExifData)
AF point used.
Definition: canonmn_int.cpp:2037
Type definitions for Exiv2 and related functionality.
ExifMetadata::const_iterator const_iterator
ExifMetadata const iterator type.
Definition: exif.hpp:439
const TagDetails canonCsManualFlashOutput[]
ManualFlashOutput, tag 0x0029.
Exif UNDEFINED type, an 8-bit byte that may contain anything.
Definition: types.hpp:137
const TagDetails canonColorSpace[]
ColorSpace, tag 0x00b4.
TypeId typeId() const
Return the type identifier (Exif data format type).
Definition: value.hpp:113
const TagDetails canonSiWhiteBalance[]
WhiteBalance, multiple tags.
const TagDetails canonCsMacro[]
Macro, tag 0x0001.
const TagDetailsBitmask canonCsFlashDetails[]
FlashDetails, tag 0x001d.
const TagDetails canonPaDirection[]
PanoramaDirection, tag 0x0005.
Exif SSHORT type, a 16-bit (2-byte) signed (twos-complement) integer.
Definition: types.hpp:138
const TagDetails canonSerialNumberFormat[]
SerialNumberFormat, tag 0x0015.
Exif ASCII type, 8-bit byte.
Definition: types.hpp:132
std::ostream & printCsLensFFFF(std::ostream &os, const Value &value, const ExifData *metadata)
Special treatment pretty-print function for non-unique lens ids.
Definition: canonmn_int.cpp:1778
const TagDetails canonCsLnh[]
Contrast, Saturation Sharpness, tags 0x000d, 0x000e, 0x000f.
const TagDetails canonCsFocusType[]
FocusType, tag 0x0012.
float focalLengthMax_
Maximum focal length.
Definition: canonmn_int.cpp:1803
const TagDetailsBitmask canonPiAFPointsUsed[]
AFPointsUsed, tag 0x0016.
virtual long count() const =0
Return the number of components of the value.
const TagDetails canonCsFocusContinuous[]
FocusContinuous, tag 0x0020.
iterator end()
End of the metadata.
Definition: exif.hpp:492
std::string maxAperture_
Aperture.
Definition: canonmn_int.cpp:1805
const TagDetails canonFilterEffect[]
FilterEffect, tag 0x000e.
const TagDetails canonCsDriveMode[]
DriveMode, tag 0x0005.
int64_t val_
Tag value.
Definition: tags_int.hpp:189
Exif LONG type, 32-bit (4-byte) unsigned integer.
Definition: types.hpp:134
const TagDetails canonNoiseReduction[]
NoiseReduction, tag 0x0008.
std::string focalLength_
Focal length as a string.
Definition: canonmn_int.cpp:1804
static std::ostream & print0x0008(std::ostream &os, const Value &value, const ExifData *)
Print the image number.
Definition: canonmn_int.cpp:1738
const TagDetails canonCsImageStabilization[]
ImageStabilization, tag 0x0022.
static std::ostream & printSi0x0003(std::ostream &os, const Value &value, const ExifData *)
MeasuredEV.
Definition: canonmn_int.cpp:2005
const TagDetails canonOffOn[]
OffOn, multiple tags.
void extractLensFocalLength(LensTypeAndFocalLengthAndMaxAperture <fl, const ExifData *metadata)
extractLensFocalLength from metadata
Definition: canonmn_int.cpp:1816
Canon makernote tags. References: [1] EXIF MakerNote of Canon by David Burren [2] Canon makernote t...
Helper structure for lookup tables for translations of bitmask values to human readable labels.
Definition: tags_int.hpp:200
const LensIdFct lensIdFct[]
List of lens ids which require special treatment with the medicine.
Definition: canonmn_int.cpp:1086
static std::ostream & printFiFileNumber(std::ostream &os, const Value &value, const ExifData *metadata)
Print the FileInfo FileNumber.
Definition: canonmn_int.cpp:1669
virtual float toFloat(long n=0) const =0
Convert the n-th component of the value to a float. The behaviour of this method may be undefined if ...
const TagDetails canonPictureStyle[]
PictureStyle Values.
const TagDetails canonBracketMode[]
BracketMode, tag 0x0003.
std::ostream &(* PrintFct)(std::ostream &, const Value &, const ExifData *pExifData)
Type for a function pointer for functions interpreting the tag value.
Definition: tags.hpp:57
const TagDetails canonToningEffect[]
ToningEffect, tag 0x000e.
static std::ostream & printSi0x0002(std::ostream &os, const Value &value, const ExifData *)
ISO speed used.
Definition: canonmn_int.cpp:1991
const TagDetails canonModelId[]
ModelId, tag 0x0010.
const TagDetails canonSharpnessFrequency[]
Sharpness Frequency Values.
long id_
Lens id.
Definition: canonmn_int.cpp:1079
const TagDetails canonCsFlashMode[]
FlashMode, tag 0x0004.
PrintFct fct_
Pretty-print function Comparison operator for find template.
Definition: canonmn_int.cpp:1080
const TagDetails canonCsAESetting[]
AESetting, tag 0x0021.
const TagDetails canonRawJpgSize[]
RawJpgSize, tag 0x0007.
static std::ostream & printSi0x0017(std::ostream &os, const Value &value, const ExifData *)
MeasuredEV2.
Definition: canonmn_int.cpp:2111
static const TagInfo * tagListPr()
Return read-only list of built-in Canon Processing Info tags.
Definition: canonmn_int.cpp:1609
const TagDetails canonCsDigitalZoom[]
DigitalZoom, tag 0x000c.
const TagDetails canonWBBracketMode[]
WBBracketMode, tag 0x0009.
const TagDetails canonCsQuality[]
Quality, tag 0x0003.
std::ostream & printCsLensByFocalLengthTC(std::ostream &os, const Value &value, const ExifData *metadata)
Special treatment pretty-print function for non-unique lens ids.
Definition: canonmn_int.cpp:1910
std::ostream & printValue(std::ostream &os, const Value &value, const ExifData *)
Default print function, using the Value output operator.
Definition: tags_int.cpp:2162
static std::ostream & printCs0x0002(std::ostream &os, const Value &value, const ExifData *)
Self timer.
Definition: canonmn_int.cpp:1761
const TagDetailsBitmask canonSiAFPointUsed[]
AFPointUsed, tag 0x000e.
Concrete keys for Exif metadata and access to Exif tag reference data.
Definition: tags.hpp:148
std::string toString() const
Return the value as a string. Implemented in terms of write(std::ostream& os) const of the concrete c...
Definition: value.cpp:175
std::ostream & print0x000c(std::ostream &os, const Value &value, const ExifData *metadata)
Print GPS speed ref.
Definition: tags_int.cpp:2358
static const TagInfo * tagListTi()
Return read-only list of built-in Canon Time Info tags.
Definition: canonmn_int.cpp:1664
const char * label_
Translation of the tag value.
Definition: tags_int.hpp:190
const T * find(T(&src)[N], const K &key)
Find an element that matches key in the array src.
Definition: types.hpp:508
const TagDetails canonCsImageSize[]
ImageSize, tag 0x000a.
A lens id and a pretty-print function for special treatment of the id.
Definition: canonmn_int.cpp:1078
static const TagInfo * tagListSi()
Return read-only list of built-in Canon Shot Info tags.
Definition: canonmn_int.cpp:1362
virtual long toLong(long n=0) const =0
Convert the n-th component of the value to a long. The behaviour of this method may be undefined if t...
Exif SHORT type, 16-bit (2-byte) unsigned integer.
Definition: types.hpp:133
long lensType_
Lens type.
Definition: canonmn_int.cpp:1801
Makernote factory and registry, IFD makernote header, and camera vendor specific makernote implementa...
Provides classes and functions to encode and decode Exif and Iptc data. The libexiv2 API consists of ...
Definition: asfvideo.hpp:36
const TagDetails canonSuperMacro[]
SuperMacro, tag 0x001a.
Value interface and concrete subclasses.
Exif SLONG type, a 32-bit (4-byte) signed (twos-complement) integer.
Definition: types.hpp:139
const TagDetails canonCsPhotoEffect[]
PhotoEffect, tag 0x0028.
const TagDetails canonCsSpotMeteringMode[]
SpotMeteringMode, tag 0x0027.
static std::ostream & print0x000c(std::ostream &os, const Value &value, const ExifData *)
Print the serial number of the camera.
Definition: canonmn_int.cpp:1748
const TagDetails canonCsFocusMode[]
FocusMode, tag 0x0007.
Helper structure.
Definition: canonmn_int.cpp:1800
Tag information.
Definition: tags.hpp:82
const TagDetails canonTimeZoneCity[]
canonTimeZoneCity - array of cityID/cityName used by Canon
const TagDetails canonCsAfPoint[]
AFPoint, tag 0x0013.
const TagDetails canonCsLensType[]
LensType, tag 0x0016.
bool operator==(const TagDetails &td, const LensTypeAndFocalLengthAndMaxAperture <fl)
Compare tag details with a lens entry.
Definition: canonmn_int.cpp:1809
static const TagInfo * tagListFi()
Return read-only list of built-in Canon File Info tags.
Definition: canonmn_int.cpp:1543
std::ostream & printCsLensByFocalLength(std::ostream &os, const Value &value, const ExifData *metadata)
Special treatment pretty-print function for non-unique lens ids.
Definition: canonmn_int.cpp:1888
const TagDetails canonToneCurve[]
Tone Curve Values.
std::string readExiv2Config(const std::string §ion, const std::string &value, const std::string &def)
Read value from Exiv2 configuration file.
Definition: makernote_int.cpp:113
std::pair< uint32_t, uint32_t > URational
8 byte unsigned rational type.
Definition: types.hpp:108
static const TagInfo * tagListCs()
Return read-only list of built-in Canon Camera Settings tags.
Definition: canonmn_int.cpp:1271
static const TagInfo * tagListPa()
Return read-only list of built-in Canon Panorama tags.
Definition: canonmn_int.cpp:1384
const TagDetails canonCsISOSpeed[]
ISOSpeeds, tag 0x0010.
static const TagInfo * tagListPi()
Return read-only list of built-in Canon Picture Info tags.
Definition: canonmn_int.cpp:1451
EXIV2API ExifData::const_iterator model(const ExifData &ed)
Return the camera model.
Definition: easyaccess.cpp:436
IPTC string type.
Definition: types.hpp:147
const TagDetails canonCsSRAWQuality[]
SRAWQuality, tag 0x002e.
void convertFocalLength(LensTypeAndFocalLengthAndMaxAperture <fl, double divisor)
convertFocalLength to a human readable string
Definition: canonmn_int.cpp:1837
static std::ostream & printCsLensType(std::ostream &os, const Value &value, const ExifData *metadata)
Camera lens type. For some values, the exact type can only be determined if metadata is provided.
Definition: canonmn_int.cpp:1937
static std::ostream & printSi0x0015(std::ostream &os, const Value &value, const ExifData *)
Aperture.
Definition: canonmn_int.cpp:2077
static std::ostream & printSi0x0016(std::ostream &os, const Value &value, const ExifData *)
Shutter speed.
Definition: canonmn_int.cpp:2094
const TagDetails canonCsFlashActivity[]
FlashActivity, tag 0x001c.
MakerNote for Canon cameras.
Definition: canonmn_int.hpp:56
A container for Exif data. This is a top-level class of the Exiv2 library. The container holds Exifda...
Definition: exif.hpp:434
float fnumber(float apertureValue)
Calculate F number from an APEX aperture value.
Definition: tags_int.cpp:2167