A container for IPTC data. This is a top-level class of the Exiv2 library. More...
#include <iptc.hpp>
Public Types | |
using | iterator = IptcMetadata::iterator |
IptcMetadata iterator type. | |
using | const_iterator = IptcMetadata::const_iterator |
IptcMetadata const iterator type. | |
Public Member Functions | |
Manipulators | |
Iptcdatum & | operator[] (const std::string &key) |
Returns a reference to the Iptcdatum that is associated with a particular key. If IptcData does not already contain such an Iptcdatum, operator[] adds object Iptcdatum(key). More... | |
int | add (const IptcKey &key, const Value *value) |
Add an Iptcdatum from the supplied key and value pair. This method copies (clones) the value. A check for non-repeatable datasets is performed. More... | |
int | add (const Iptcdatum &iptcdatum) |
Add a copy of the Iptcdatum to the IPTC metadata. A check for non-repeatable datasets is performed. More... | |
iterator | erase (iterator pos) |
Delete the Iptcdatum at iterator position pos, return the position of the next Iptcdatum. Note that iterators into the metadata, including pos, are potentially invalidated by this call. | |
void | clear () |
Delete all Iptcdatum instances resulting in an empty container. | |
void | sortByKey () |
Sort metadata by key. | |
void | sortByTag () |
Sort metadata by tag (aka dataset) | |
iterator | begin () |
Begin of the metadata. | |
iterator | end () |
End of the metadata. | |
iterator | findKey (const IptcKey &key) |
Find the first Iptcdatum with the given key, return an iterator to it. | |
iterator | findId (uint16_t dataset, uint16_t record=IptcDataSets::application2) |
Find the first Iptcdatum with the given record and dataset it, return a const iterator to it. | |
Accessors | |
const_iterator | begin () const |
Begin of the metadata. | |
const_iterator | end () const |
End of the metadata. | |
const_iterator | findKey (const IptcKey &key) const |
Find the first Iptcdatum with the given key, return a const iterator to it. | |
const_iterator | findId (uint16_t dataset, uint16_t record=IptcDataSets::application2) const |
Find the first Iptcdatum with the given record and dataset number, return a const iterator to it. | |
bool | empty () const |
Return true if there is no IPTC metadata. | |
size_t | count () const |
Get the number of metadata entries. | |
size_t | size () const |
Return the exact size of all contained IPTC metadata. | |
const char * | detectCharset () const |
Return the metadata charset name or 0. | |
static void | printStructure (std::ostream &out, const Slice< byte * > &bytes, size_t depth) |
dump iptc formatted binary data (used by printStructure kpsRecursive) | |
A container for IPTC data. This is a top-level class of the Exiv2 library.
Provide high-level access to the IPTC data of an image:
int Exiv2::IptcData::add | ( | const Iptcdatum & | iptcdatum | ) |
Add a copy of the Iptcdatum to the IPTC metadata. A check for non-repeatable datasets is performed.
Add an Iptcdatum from the supplied key and value pair. This method copies (clones) the value. A check for non-repeatable datasets is performed.
Iptcdatum& Exiv2::IptcData::operator[] | ( | const std::string & | key | ) |
Returns a reference to the Iptcdatum that is associated with a particular key. If IptcData does not already contain such an Iptcdatum, operator[] adds object Iptcdatum(key).