Exiv2
Public Types | List of all members
Exiv2::Key Class Referenceabstract

Abstract base class defining the Key of a metadatum. Keys are used to identify and group metadata. More...

#include <metadatum.hpp>

Inheritance diagram for Exiv2::Key:
Inheritance graph
[legend]

Public Types

typedef std::auto_ptr< KeyAutoPtr
 Shortcut for a Key auto pointer.
 

Public Member Functions

Creators
virtual ~Key ()
 Destructor.
 
Accessors
virtual std::string key () const =0
 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. More...
 
virtual const char * familyName () const =0
 Return an identifier for the type of metadata (the first part of the key) More...
 
virtual std::string groupName () const =0
 Return the name of the group (the second part of the key) More...
 
virtual std::string tagName () const =0
 Return the name of the tag (which is also the third part of the key) More...
 
virtual std::string tagLabel () const =0
 Return a label for the tag. More...
 
virtual uint16_t tag () const =0
 Return the tag number. More...
 
AutoPtr clone () const
 Return an auto-pointer to a copy of itself (deep copy). The caller owns this copy and the auto-pointer ensures that it will be deleted.
 
std::ostream & write (std::ostream &os) const
 Write the key to an output stream. You do not usually have to use this function; it is used for the implementation of the output operator for Key, operator<<(std::ostream &os, const Key &key).
 

Manipulators

Keyoperator= (const Key &rhs)
 Assignment operator. Protected so that it can only be used by subclasses but not directly.
 

Detailed Description

Abstract base class defining the Key of a metadatum. Keys are used to identify and group metadata.

Member Function Documentation

◆ familyName()

virtual const char * Exiv2::Key::familyName ( ) const
pure virtual

Return an identifier for the type of metadata (the first part of the key)

Implemented in Exiv2::IptcKey, Exiv2::XmpKey, and Exiv2::ExifKey.

◆ groupName()

virtual std::string Exiv2::Key::groupName ( ) const
pure virtual

Return the name of the group (the second part of the key)

Implemented in Exiv2::IptcKey, Exiv2::XmpKey, and Exiv2::ExifKey.

◆ key()

virtual std::string Exiv2::Key::key ( ) const
pure virtual

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.

Implemented in Exiv2::IptcKey, Exiv2::XmpKey, and Exiv2::ExifKey.

◆ tag()

virtual uint16_t Exiv2::Key::tag ( ) const
pure virtual

Return the tag number.

Implemented in Exiv2::IptcKey, Exiv2::XmpKey, and Exiv2::ExifKey.

◆ tagLabel()

virtual std::string Exiv2::Key::tagLabel ( ) const
pure virtual

Return a label for the tag.

Implemented in Exiv2::IptcKey, Exiv2::XmpKey, and Exiv2::ExifKey.

◆ tagName()

virtual std::string Exiv2::Key::tagName ( ) const
pure virtual

Return the name of the tag (which is also the third part of the key)

Implemented in Exiv2::IptcKey, Exiv2::XmpKey, and Exiv2::ExifKey.


The documentation for this class was generated from the following files: