tags.hpp File Reference

Exif tag and type information. More...

#include "metadatum.hpp"
#include "types.hpp"
#include "value.hpp"
#include <string>
#include <utility>
#include <iostream>
#include <memory>

Include dependency graph for tags.hpp:

This graph shows which files directly or indirectly include this file:


Namespaces

namespace  Exiv2

Classes

struct  Exiv2::IfdInfo
 The details of an IFD. More...
struct  Exiv2::IfdInfo
 Search key to find an IfdInfo by its IFD item. More...
struct  Exiv2::SectionInfo
 The details of a section. More...
struct  Exiv2::TagInfo
 Tag information. More...
struct  Exiv2::TagDetails
 Helper structure for lookup tables for translations of numeric tag values to human readable labels. More...
struct  Exiv2::TagDetailsBitmask
 Helper structure for lookup tables for translations of bitmask values to human readable labels. More...
struct  Exiv2::TagVocabulary
 Helper structure for lookup tables for translations of controlled vocabulary strings to their descriptions. More...
class  Exiv2::ExifTags
 Exif tag reference, implemented as a static class. More...
class  Exiv2::ExifKey
 Concrete keys for Exif metadata. More...

Functions printing interpreted tag values

std::ostream & Exiv2::printValue (std::ostream &os, const Value &value, const ExifData *)
 Default print function, using the Value output operator.
std::ostream & Exiv2::printLong (std::ostream &os, const Value &value, const ExifData *)
 Print the value converted to a long.
std::ostream & Exiv2::printFloat (std::ostream &os, const Value &value, const ExifData *)
 Print a Rational or URational value in floating point format.
std::ostream & Exiv2::printDegrees (std::ostream &os, const Value &value, const ExifData *)
 Print a longitude or latitude value.
std::ostream & Exiv2::printUcs2 (std::ostream &os, const Value &value, const ExifData *)
 Print function converting from UCS-2LE to UTF-8.
std::ostream & Exiv2::printExifUnit (std::ostream &os, const Value &value, const ExifData *)
 Print function for Exif units.
std::ostream & Exiv2::print0x0000 (std::ostream &os, const Value &value, const ExifData *)
 Print GPS version.
std::ostream & Exiv2::print0x0005 (std::ostream &os, const Value &value, const ExifData *)
 Print GPS altitude ref.
std::ostream & Exiv2::print0x0006 (std::ostream &os, const Value &value, const ExifData *)
 Print GPS altitude.
std::ostream & Exiv2::print0x0007 (std::ostream &os, const Value &value, const ExifData *)
 Print GPS timestamp.
std::ostream & Exiv2::print0x0009 (std::ostream &os, const Value &value, const ExifData *)
 Print GPS status.
std::ostream & Exiv2::print0x000a (std::ostream &os, const Value &value, const ExifData *)
 Print GPS measurement mode.
std::ostream & Exiv2::print0x000c (std::ostream &os, const Value &value, const ExifData *)
 Print GPS speed ref.
std::ostream & Exiv2::print0x0019 (std::ostream &os, const Value &value, const ExifData *)
 Print GPS destination distance ref.
std::ostream & Exiv2::print0x001e (std::ostream &os, const Value &value, const ExifData *)
 Print GPS differential correction.
std::ostream & Exiv2::print0x0112 (std::ostream &os, const Value &value, const ExifData *)
 Print orientation.
std::ostream & Exiv2::print0x0213 (std::ostream &os, const Value &value, const ExifData *)
 Print YCbCrPositioning.
std::ostream & Exiv2::print0x8298 (std::ostream &os, const Value &value, const ExifData *)
 Print the copyright.
std::ostream & Exiv2::print0x829a (std::ostream &os, const Value &value, const ExifData *)
 Print the exposure time.
std::ostream & Exiv2::print0x829d (std::ostream &os, const Value &value, const ExifData *)
 Print the f-number.
std::ostream & Exiv2::print0x8822 (std::ostream &os, const Value &value, const ExifData *)
 Print exposure program.
std::ostream & Exiv2::print0x8827 (std::ostream &os, const Value &value, const ExifData *)
 Print ISO speed ratings.
std::ostream & Exiv2::print0x9101 (std::ostream &os, const Value &value, const ExifData *)
 Print components configuration specific to compressed data.
std::ostream & Exiv2::print0x9201 (std::ostream &os, const Value &value, const ExifData *)
 Print exposure time converted from APEX shutter speed value.
std::ostream & Exiv2::print0x9202 (std::ostream &os, const Value &value, const ExifData *)
 Print f-number converted from APEX aperture value.
std::ostream & Exiv2::print0x9204 (std::ostream &os, const Value &value, const ExifData *)
 Print the exposure bias value.
std::ostream & Exiv2::print0x9206 (std::ostream &os, const Value &value, const ExifData *)
 Print the subject distance.
std::ostream & Exiv2::print0x9207 (std::ostream &os, const Value &value, const ExifData *)
 Print metering mode.
std::ostream & Exiv2::print0x9208 (std::ostream &os, const Value &value, const ExifData *)
 Print light source.
std::ostream & Exiv2::print0x920a (std::ostream &os, const Value &value, const ExifData *)
 Print the actual focal length of the lens.
std::ostream & Exiv2::print0x9286 (std::ostream &os, const Value &value, const ExifData *)
 Print the user comment.
std::ostream & Exiv2::print0xa001 (std::ostream &os, const Value &value, const ExifData *)
 Print color space.
std::ostream & Exiv2::print0xa217 (std::ostream &os, const Value &value, const ExifData *)
 Print sensing method.
std::ostream & Exiv2::print0xa300 (std::ostream &os, const Value &value, const ExifData *)
 Print file source.
std::ostream & Exiv2::print0xa301 (std::ostream &os, const Value &value, const ExifData *)
 Print scene type.
std::ostream & Exiv2::print0xa401 (std::ostream &os, const Value &value, const ExifData *)
 Print custom rendered.
std::ostream & Exiv2::print0xa402 (std::ostream &os, const Value &value, const ExifData *)
 Print exposure mode.
std::ostream & Exiv2::print0xa403 (std::ostream &os, const Value &value, const ExifData *)
 Print white balance.
std::ostream & Exiv2::print0xa404 (std::ostream &os, const Value &value, const ExifData *)
 Print digital zoom ratio.
std::ostream & Exiv2::print0xa405 (std::ostream &os, const Value &value, const ExifData *)
 Print 35mm equivalent focal length.
std::ostream & Exiv2::print0xa406 (std::ostream &os, const Value &value, const ExifData *)
 Print scene capture type.
std::ostream & Exiv2::print0xa407 (std::ostream &os, const Value &value, const ExifData *)
 Print gain control.
std::ostream & Exiv2::print0xa409 (std::ostream &os, const Value &value, const ExifData *)
 Print saturation.
std::ostream & Exiv2::print0xa40c (std::ostream &os, const Value &value, const ExifData *)
 Print subject distance range.
std::ostream & Exiv2::printGPSDirRef (std::ostream &os, const Value &value, const ExifData *)
 Print GPS direction ref.
std::ostream & Exiv2::printNormalSoftHard (std::ostream &os, const Value &value, const ExifData *)
 Print contrast, sharpness (normal, soft, hard).
std::ostream & Exiv2::printExifVersion (std::ostream &os, const Value &value, const ExifData *)
 Print any version packed in 4 Bytes format : major major minor minor.
std::ostream & Exiv2::printXmpVersion (std::ostream &os, const Value &value, const ExifData *)
 Print any version encoded in the ASCII string majormajorminorminor.
std::ostream & Exiv2::printXmpDate (std::ostream &os, const Value &value, const ExifData *)
 Print a date following the format YYYY-MM-DDTHH:MM:SSZ.

Defines

#define EXV_PRINT_TAG(array)   printTag<EXV_COUNTOF(array), array>
 Shortcut for the printTag template which requires typing the array name only once.
#define EXV_PRINT_TAG_BITMASK(array)   printTagBitmask<EXV_COUNTOF(array), array>
 Shortcut for the printTagBitmask template which requires typing the array name only once.
#define EXV_PRINT_VOCABULARY(array)   printTagVocabulary<EXV_COUNTOF(array), array>
 Shortcut for the printTagVocabulary template which requires typing the array name only once.

Typedefs

typedef std::ostream &(*) Exiv2::PrintFct (std::ostream &, const Value &, const ExifData *pExifData)
 Type for a function pointer for functions interpreting the tag value.
typedef const TagInfo *(*) Exiv2::TagListFct ()
 A function returning a tag list.

Enumerations

enum  Exiv2::SectionId {
  sectionIdNotSet, imgStruct, recOffset, imgCharacter,
  otherTags, exifFormat, exifVersion, imgConfig,
  userInfo, relatedFile, dateTime, captureCond,
  gpsTags, iopTags, makerTags, dngTags,
  panaRaw, tiffEp, tiffPm6, adobeOpi,
  lastSectionId
}
 Section identifiers to logically group tags. A section consists of nothing more than a name, based on the Exif standard.

Functions

template<int N, const TagDetails & array>
std::ostream & Exiv2::printTag (std::ostream &os, const Value &value, const ExifData *)
 Generic pretty-print function to translate a long value to a description by looking up a reference table.
template<int N, const TagDetailsBitmask & array>
std::ostream & Exiv2::printTagBitmask (std::ostream &os, const Value &value, const ExifData *)
 Generic print function to translate a long value to a description by looking up bitmasks in a reference table.
template<int N, const TagVocabulary & array>
std::ostream & Exiv2::printTagVocabulary (std::ostream &os, const Value &value, const ExifData *)
 Generic pretty-print function to translate a controlled vocabulary value (string) to a description by looking up a reference table.
std::ostream & Exiv2::operator<< (std::ostream &os, const TagInfo &ti)
 Output operator for TagInfo.
float Exiv2::fnumber (float apertureValue)
 Calculate F number from an APEX aperture value.
URational Exiv2::exposureTime (float shutterSpeedValue)
 Calculate the exposure time from an APEX shutter speed value.

Detailed Description

Exif tag and type information.

Version:
Rev
2052
Author:
Andreas Huggel (ahu) ahuggel@gmx.net
Date:
15-Jan-04, ahu: created
11-Feb-04, ahu: isolated as a component

Generated on Tue Jun 1 09:44:06 2010 for Exiv2 by  doxygen 1.4.7