[SCM] exiv2 packaging branch, master, updated. debian/0.25-3.1-3734-gdcbc29a

Maximiliano Curia maxy at moszumanska.debian.org
Thu Jul 13 17:41:53 UTC 2017


Gitweb-URL: http://git.debian.org/?p=pkg-kde/kde-extras/exiv2.git;a=commitdiff;h=3241738

The following commit has been merged in the master branch:
commit 32417382e309af747a441874299a567de9db1a52
Author: Andreas Huggel <ahuggel at gmx.net>
Date:   Wed Aug 18 15:38:29 2010 +0000

    #719: Added ExifTags::groupList() to access the list of all Exif groups.
---
 src/tags.cpp | 29 +++++++++++++++++------------
 src/tags.hpp | 10 ++++++----
 2 files changed, 23 insertions(+), 16 deletions(-)

diff --git a/src/tags.cpp b/src/tags.cpp
index 8b740cb..b088d26 100644
--- a/src/tags.cpp
+++ b/src/tags.cpp
@@ -2326,24 +2326,24 @@ namespace Exiv2 {
     using namespace Internal;
 
     //! @cond IGNORE
-    IfdInfo::Item::Item(const std::string& item)
+    GroupInfo::Item::Item(const std::string& item)
     {
         i_ = item;
     }
     //! @endcond
 
-    bool IfdInfo::operator==(IfdId ifdId) const
+    bool GroupInfo::operator==(IfdId ifdId) const
     {
         return ifdId_ == ifdId;
     }
 
-    bool IfdInfo::operator==(const Item& item) const
+    bool GroupInfo::operator==(const Item& item) const
     {
         return 0 == strcmp(item.i_.c_str(), item_);
     }
 
     // Important: IFD item must be unique!
-    const IfdInfo ExifTags::ifdInfo_[] = {
+    const GroupInfo ExifTags::groupInfo_[] = {
         { ifdIdNotSet,       "(Unknown IFD)", "(Unknown item)", 0 },
         { ifd0Id,            "IFD0",      "Image",        ExifTags::ifdTagList           },
         { exifIfdId,         "Exif",      "Photo",        ExifTags::exifTagList          }, // just to avoid 'Exif.Exif.*' keys
@@ -2506,16 +2506,21 @@ namespace Exiv2 {
         return mnTagInfo;
     }
 
+    const GroupInfo* ExifTags::groupList()
+    {
+        return groupInfo_ + 1; // +1 to skip the first (ifdIdNotSet) entry
+    }
+
     const TagInfo* ExifTags::tagList(const std::string& group)
     {
-        const IfdInfo* ii = find(ifdInfo_, IfdInfo::Item(group));
+        const GroupInfo* ii = find(groupInfo_, GroupInfo::Item(group));
         if (ii == 0 || ii->tagList_ == 0) return 0;
         return ii->tagList_();
     } // ExifTags::tagList
 
     const TagInfo* ExifTags::tagList(IfdId ifdId)
     {
-        const IfdInfo* ii = find(ifdInfo_, ifdId);
+        const GroupInfo* ii = find(groupInfo_, ifdId);
         if (ii == 0 || ii->tagList_ == 0) return 0;
         return ii->tagList_();
     } // ExifTags::tagList
@@ -2547,7 +2552,7 @@ namespace Exiv2 {
     bool ExifTags::isMakerIfd(IfdId ifdId)
     {
         bool rc = false;
-        const IfdInfo* ii = find(ifdInfo_, ifdId);
+        const GroupInfo* ii = find(groupInfo_, ifdId);
         if (ii != 0 && 0 == strcmp(ii->name_, "Makernote")) {
             rc = true;
         }
@@ -2630,7 +2635,7 @@ namespace Exiv2 {
     IfdId ExifTags::ifdIdByIfdItem(const std::string& ifdItem)
     {
         IfdId ifdId = ifdIdNotSet;
-        const IfdInfo* ii = find(ifdInfo_, IfdInfo::Item(ifdItem));
+        const GroupInfo* ii = find(groupInfo_, GroupInfo::Item(ifdItem));
         if (ii != 0) ifdId = ii->ifdId_;
         return ifdId;
     }
@@ -2651,15 +2656,15 @@ namespace Exiv2 {
 
     const char* ExifTags::ifdName(IfdId ifdId)
     {
-        const IfdInfo* ii = find(ifdInfo_, ifdId);
-        if (ii == 0) return ifdInfo_[0].name_;
+        const GroupInfo* ii = find(groupInfo_, ifdId);
+        if (ii == 0) return groupInfo_[0].name_;
         return ii->name_;
     } // ExifTags::ifdName
 
     const char* ExifTags::ifdItem(IfdId ifdId)
     {
-        const IfdInfo* ii = find(ifdInfo_, ifdId);
-        if (ii == 0) return ifdInfo_[0].item_;
+        const GroupInfo* ii = find(groupInfo_, ifdId);
+        if (ii == 0) return groupInfo_[0].item_;
         return ii->item_;
     } // ExifTags::ifdItem
 
diff --git a/src/tags.hpp b/src/tags.hpp
index 1d4539d..3f44a65 100644
--- a/src/tags.hpp
+++ b/src/tags.hpp
@@ -72,7 +72,7 @@ namespace Exiv2 {
 // class definitions
 
     //! The details of an IFD.
-    struct EXIV2API IfdInfo {
+    struct EXIV2API GroupInfo {
         struct Item;
         bool operator==(IfdId ifdId) const;     //!< Comparison operator for IFD id
         bool operator==(const Item& item) const;       //!< Comparison operator for IFD item
@@ -82,8 +82,8 @@ namespace Exiv2 {
         TagListFct tagList_;                    //!< Tag list
     };
 
-    //! Search key to find an IfdInfo by its IFD item.
-    struct EXIV2API IfdInfo::Item {
+    //! Search key to find a GroupInfo by its IFD item.
+    struct EXIV2API GroupInfo::Item {
         Item(const std::string& item);          //!< Constructor
         std::string i_;                         //!< IFD item
     };
@@ -209,6 +209,8 @@ namespace Exiv2 {
                                       IfdId ifdId,
                                       const Value& value,
                                       const ExifData* pExifData =0);
+        //! Return read-only list of build-in groups
+        static const GroupInfo* groupList();
         //! Return read-only list of built-in \em group tags.
         static const TagInfo* tagList(const std::string& group);
         //! Return read-only list of built-in IFD0/1 tags
@@ -244,7 +246,7 @@ namespace Exiv2 {
         static const TagInfo* tagInfo(uint16_t tag, IfdId ifdId);
         static const TagInfo* tagInfo(const std::string& tagName, IfdId ifdId);
 
-        static const IfdInfo     ifdInfo_[];     //!< All Exif and Makernote tag lists
+        static const GroupInfo   groupInfo_[];   //!< All Exif and Makernote tag lists
         static const SectionInfo sectionInfo_[]; //!< Exif (and one common Makernote) sections
 
     }; // class ExifTags

-- 
exiv2 packaging



More information about the pkg-kde-commits mailing list