Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Examples

Exiv2::ExifKey Class Reference

Concrete keys for Exif metadata. More...

#include <exif.hpp>

Inheritance diagram for Exiv2::ExifKey:

Inheritance graph
[legend]
Collaboration diagram for Exiv2::ExifKey:

Collaboration graph
[legend]
List of all members.

Public Member Functions

Creators
 ExifKey (const std::string &key)
 Constructor to create an Exif key from a key string.
 ExifKey (const Entry &e)
 Constructor to build an ExifKey from an IFD entry.
 ExifKey (const ExifKey &rhs)
 Copy constructor.
Manipulators
ExifKeyoperator= (const ExifKey &rhs)
 Assignment operator.
void setMakerNote (MakerNote *pMakerNote)
 Set the makernote pointer.
Accessors
virtual std::string key () const
 Return the key of the metadatum as a string. The key is of the form 'familyName.groupName.tagName'. Note however that the key is not necessarily unique, e.g., an ExifData may contain multiple metadata with the same key.
virtual const char * familyName () const
 Return an identifier for the type of metadata (the first part of the key).
virtual std::string groupName () const
 Return the name of the group (the second part of the key). For Exif keys, the group name is the IFD name.
virtual std::string tagName () const
 Return the name of the tag (which is also the third part of the key).
virtual uint16 tag () const
 Return the tag.
Exceptions:
Error ("Invalid key") if the tag is not set.

virtual ExifKeyclone () const
 Return a pointer to a copy of itself (deep copy). The caller owns this copy and is responsible to delete it!
std::ostream & printTag (std::ostream &os, const Value &value) const
 Interpret and print the value of an Exif tag.
IfdId ifdId () const
 Return the IFD id
Exceptions:
Error ("Invalid key") if the IFD id is not set.

const char * ifdName () const
 Return the name of the IFD.
const char * ifdItem () const
 Return the related image item.
std::string sectionName () const
 Return the name of the Exif section (deprecated).
int idx () const
 Return the index (unique id of this key within the original IFD).
MakerNotemakerNote () const
 Return the pointer to the associated MakerNote.

Protected Member Functions

Manipulators
void decomposeKey ()
 Parse and convert the key string into tag, and IFD Id. Forwards the request to MakerNote::decomposeKey if necessary. Updates key_ and ifdId_ if the string can be decomposed, or throws Error ("Invalid key").

Detailed Description

Concrete keys for Exif metadata.
Examples:

addmoddel.cpp, and exifcomment.cpp.


Constructor & Destructor Documentation

Exiv2::ExifKey::ExifKey const std::string &  key  )  [explicit]
 

Constructor to create an Exif key from a key string.

Parameters:
key The key string.
Exceptions:
Error ("Invalid key") if the key cannot be parsed into three parts or the first part of the key is not 'Exif'.


Member Function Documentation

void Exiv2::ExifKey::decomposeKey  )  [protected]
 

Parse and convert the key string into tag, and IFD Id. Forwards the request to MakerNote::decomposeKey if necessary. Updates key_ and ifdId_ if the string can be decomposed, or throws Error ("Invalid key").

Exceptions:
Error ("Invalid key") if pMakerNote_ is ot 0 and the key cannot be parsed into family name, group name and tag name parts.


The documentation for this class was generated from the following files:
Generated on Mon Sep 13 22:01:42 2004 for Exiv2 by doxygen 1.3.8