 |
Exiv2
|
Go to the documentation of this file.
32 #ifndef CANONMN_INT_HPP_
33 #define CANONMN_INT_HPP_
125 static const TagInfo tagInfo_[];
126 static const TagInfo tagInfoCs_[];
127 static const TagInfo tagInfoSi_[];
128 static const TagInfo tagInfoCf_[];
129 static const TagInfo tagInfoPi_[];
130 static const TagInfo tagInfoTi_[];
131 static const TagInfo tagInfoFi_[];
132 static const TagInfo tagInfoPa_[];
133 static const TagInfo tagInfoPr_[];
159 #endif // #ifndef CANONMN_INT_HPP_
Helper structure for lookup tables for translations of numeric tag values to human readable labels.
Definition: tags_int.hpp:189
const TagDetailsBitmask canonPiAFPointsUsed20D[]
AFPointsUsed20D, tag 0x001a.
static std::ostream & printFiFocusDistance(std::ostream &os, const Value &value, const ExifData *)
Focus Distance.
Definition: canonmn_int.cpp:2346
static const TagInfo * tagListCf()
Return read-only list of built-in Canon Custom Function tags.
Definition: canonmn_int.cpp:1592
static std::ostream & printCsLens(std::ostream &os, const Value &value, const ExifData *)
Camera lens information.
Definition: canonmn_int.cpp:2143
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:2374
float focalLengthMin_
Mininum focal length.
Definition: canonmn_int.cpp:1984
std::ostream & printBitmask(std::ostream &os, const Value &value, const ExifData *metadata)
Print a bitmask as (none) | n | n,m... where: (none) = no bits set | n = bit n from left (0=left-most...
Definition: tags_int.cpp:2170
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:1892
Encoding and decoding of Exif data.
static std::ostream & printSi0x0013(std::ostream &os, const Value &value, const ExifData *)
Subject distance.
Definition: canonmn_int.cpp:2271
iterator findKey(const ExifKey &key)
Find the first Exifdatum with the given key, return an iterator to it.
Definition: exif.cpp:590
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:508
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:2033
const TagDetails canonCsEasyMode[]
EasyMode, tag 0x000b.
static std::ostream & printSi0x000d(std::ostream &os, const Value &value, const ExifData *)
Flash Guide Number.
Definition: canonmn_int.cpp:2241
URational exposureTime(float shutterSpeedValue)
Calculate the exposure time from an APEX shutter speed value.
Definition: tags_int.cpp:2201
static std::ostream & printSi0x0009(std::ostream &os, const Value &value, const ExifData *)
Sequence number.
Definition: canonmn_int.cpp:2219
static std::ostream & printSi0x000e(std::ostream &os, const Value &value, const ExifData *pExifData)
AF point used.
Definition: canonmn_int.cpp:2250
Type definitions for Exiv2 and related functionality.
static std::ostream & printSi0x0018(std::ostream &os, const Value &value, const ExifData *)
Bulb Duration.
Definition: canonmn_int.cpp:2339
ExifMetadata::const_iterator const_iterator
ExifMetadata const iterator type.
Definition: exif.hpp:439
const TagDetails canonCsManualFlashOutput[]
ManualFlashOutput, tag 0x0029.
@ undefined
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.
@ signedShort
Exif SSHORT type, a 16-bit (2-byte) signed (twos-complement) integer.
Definition: types.hpp:138
const TagDetails canonSerialNumberFormat[]
SerialNumberFormat, tag 0x0015.
@ asciiString
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:1960
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:1985
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:1987
const TagDetails canonFilterEffect[]
FilterEffect, tag 0x000e.
const TagDetails canonCsDriveMode[]
DriveMode, tag 0x0005.
int64_t val_
Tag value.
Definition: tags_int.hpp:190
@ unsignedLong
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:1986
static std::ostream & print0x0008(std::ostream &os, const Value &value, const ExifData *)
Print the image number.
Definition: canonmn_int.cpp:1920
const TagDetails canonCsImageStabilization[]
ImageStabilization, tag 0x0022.
static std::ostream & printSi0x0003(std::ostream &os, const Value &value, const ExifData *)
MeasuredEV.
Definition: canonmn_int.cpp:2200
const TagDetails canonOffOn[]
OffOn, multiple tags.
void extractLensFocalLength(LensTypeAndFocalLengthAndMaxAperture <fl, const ExifData *metadata)
extractLensFocalLength from metadata
Definition: canonmn_int.cpp:1998
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:201
const LensIdFct lensIdFct[]
List of lens ids which require special treatment with the medicine.
Definition: canonmn_int.cpp:1241
static std::ostream & printFiFileNumber(std::ostream &os, const Value &value, const ExifData *metadata)
Print the FileInfo FileNumber.
Definition: canonmn_int.cpp:1851
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:2186
const TagDetails canonModelId[]
ModelId, tag 0x0010.
const TagDetails canonSharpnessFrequency[]
Sharpness Frequency Values.
long id_
Lens id.
Definition: canonmn_int.cpp:1234
const TagDetails canonCsFlashMode[]
FlashMode, tag 0x0004.
PrintFct fct_
Pretty-print function Comparison operator for find template.
Definition: canonmn_int.cpp:1235
const TagDetails canonCsAESetting[]
AESetting, tag 0x0021.
const TagDetails canonRawJpgSize[]
RawJpgSize, tag 0x0007.
static std::ostream & printSi0x0001(std::ostream &os, const Value &value, const ExifData *)
AutoISO speed used.
Definition: canonmn_int.cpp:2173
static std::ostream & printSi0x0017(std::ostream &os, const Value &value, const ExifData *)
MeasuredEV2.
Definition: canonmn_int.cpp:2324
static const TagInfo * tagListPr()
Return read-only list of built-in Canon Processing Info tags.
Definition: canonmn_int.cpp:1791
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:2092
std::ostream & printValue(std::ostream &os, const Value &value, const ExifData *)
Default print function, using the Value output operator.
Definition: tags_int.cpp:2165
static std::ostream & printCs0x0002(std::ostream &os, const Value &value, const ExifData *)
Self timer.
Definition: canonmn_int.cpp:1943
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:2372
static const TagInfo * tagListTi()
Return read-only list of built-in Canon Time Info tags.
Definition: canonmn_int.cpp:1846
const char * label_
Translation of the tag value.
Definition: tags_int.hpp:191
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:1233
static const TagInfo * tagListSi()
Return read-only list of built-in Canon Shot Info tags.
Definition: canonmn_int.cpp:1544
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...
@ unsignedShort
Exif SHORT type, 16-bit (2-byte) unsigned integer.
Definition: types.hpp:133
long lensType_
Lens type.
Definition: canonmn_int.cpp:1983
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.
@ signedLong
Exif SLONG type, a 32-bit (4-byte) signed (twos-complement) integer.
Definition: types.hpp:139
const TagDetails canonCsPhotoEffect[]
PhotoEffect, tag 0x0028.
static std::ostream & printSi0x000c(std::ostream &os, const Value &value, const ExifData *)
Ambient Temperature.
Definition: canonmn_int.cpp:2232
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:1930
const TagDetails canonCsFocusMode[]
FocusMode, tag 0x0007.
Helper structure.
Definition: canonmn_int.cpp:1982
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:1991
static const TagInfo * tagListFi()
Return read-only list of built-in Canon File Info tags.
Definition: canonmn_int.cpp:1725
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:2070
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:1427
static const TagInfo * tagListPa()
Return read-only list of built-in Canon Panorama tags.
Definition: canonmn_int.cpp:1566
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:1633
EXIV2API ExifData::const_iterator model(const ExifData &ed)
Return the camera model.
Definition: easyaccess.cpp:436
@ string
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:2019
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:2119
static std::ostream & printSi0x0015(std::ostream &os, const Value &value, const ExifData *)
Aperture.
Definition: canonmn_int.cpp:2290
static std::ostream & printSi0x0016(std::ostream &os, const Value &value, const ExifData *)
Shutter speed.
Definition: canonmn_int.cpp:2307
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:2196