diff options
author | Olivier Tilloy <olivier@tilloy.net> | 2009-11-04 10:05:25 +0100 |
---|---|---|
committer | Olivier Tilloy <olivier@tilloy.net> | 2009-11-04 10:05:25 +0100 |
commit | a40fa3744742d67b87bb5c04d0ad33a426d3f314 (patch) | |
tree | 5e166c4b58e4dda5229b4358c4169cc2d3abbd86 /src/exiv2wrapper.hpp | |
parent | 0104da13ef883e1e7476b5434fca96135ba5aaed (diff) | |
download | pyexiv2-a40fa3744742d67b87bb5c04d0ad33a426d3f314.tar.gz |
Preliminary investigation to implement the *Tag classes in C++.
Diffstat (limited to 'src/exiv2wrapper.hpp')
-rw-r--r-- | src/exiv2wrapper.hpp | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/src/exiv2wrapper.hpp b/src/exiv2wrapper.hpp index 9a728f8..8f593a8 100644 --- a/src/exiv2wrapper.hpp +++ b/src/exiv2wrapper.hpp @@ -155,6 +155,73 @@ private: bool _dataRead; }; + +class ExifTag +{ +public: + // Constructor + ExifTag(const std::string& key); + + void setValue(const std::string& value); + + const std::string getKey(); + const std::string getType(); + const std::string getName(); + const std::string getTitle(); + const std::string getLabel(); + const std::string getDescription(); + const std::string getSectionName(); + const std::string getSectionDescription(); + const std::string getValue(); + +private: + Exiv2::ExifKey _key; + Exiv2::Exifdatum _datum; + std::string _type; + std::string _name; + std::string _title; + std::string _label; + std::string _description; + std::string _sectionName; + std::string _sectionDescription; + std::string _value; +}; + + +class IptcTag +{ +public: + // Constructor + IptcTag(const std::string& key); + + void setValue(const std::string& value); + + const std::string getKey(); + const std::string getType(); + const std::string getName(); + const std::string getTitle(); + const std::string getDescription(); + const std::string getPhotoshopName(); + const bool isRepeatable(); + const std::string getRecordName(); + const std::string getRecordDescription(); + const std::string getValue(); + +private: + Exiv2::IptcKey _key; + Exiv2::Iptcdatum _datum; + std::string _type; + std::string _name; + std::string _title; + std::string _description; + std::string _photoshopName; + bool _repeatable; + std::string _recordName; + std::string _recordDescription; + std::string _value; +}; + + // Translate an Exiv2 generic exception into a Python exception void translateExiv2Error(Exiv2::Error const& error); |