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:

Include dependency graph

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

Included by dependency graph

Namespaces

namespace  Exiv2

Classes

struct  Exiv2::IfdInfo
 The details of an IFD. More...
struct  Exiv2::IfdInfo
 The details of an IFD. 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...

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 &(* PrintFct )(std::ostream &, const Value &, const ExifData *pExifData)
 Type for a function pointer for functions interpreting the tag value.
typedef const TagInfo *(* TagListFct )()
 A function returning a tag list.

Enumerations

enum  SectionId {
  sectionIdNotSet, imgStruct, recOffset, imgCharacter,
  otherTags, exifFormat, exifVersion, imgConfig,
  userInfo, relatedFile, dateTime, captureCond,
  gpsTags, iopTags, makerTags, dngTags,
  panaRaw, tiffEp, 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 & 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 & 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 & 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.

Detailed Description

Exif tag and type information.

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

Generated on Thu Dec 31 03:57:49 2009 for Exiv2 by  doxygen 1.3.9.1