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

Maximiliano Curia maxy at moszumanska.debian.org
Thu Jul 13 17:38:40 UTC 2017


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

The following commit has been merged in the master branch:
commit 088679c64f3855f122cd96f8bfb36c35812cd844
Author: Andreas Huggel <ahuggel at gmx.net>
Date:   Fri Aug 31 08:28:43 2007 +0000

    Added XMP "Phase 1" functionality: New Image interface to get/set/clear the raw XMP packet. (Merged revisions 1151-1153 and 1196-1197 from branches/xmp plus bugfix which will be in revision 1199.)
---
 src/Makefile        |  3 +-
 src/cr2image.cpp    |  1 +
 src/image.cpp       | 11 +++++++
 src/image.hpp       | 17 +++++++++++
 src/jpgimage.cpp    | 85 ++++++++++++++++++++++++++++++++++++++++-------------
 src/jpgimage.hpp    |  1 +
 src/tiffparser.cpp  |  1 +
 src/tiffvisitor.cpp | 14 +++++++++
 src/tiffvisitor.hpp |  2 ++
 src/xmpdump.cpp     | 35 ++++++++++++++++++++++
 10 files changed, 149 insertions(+), 21 deletions(-)

diff --git a/src/Makefile b/src/Makefile
index ae9217d..a9c4a37 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -117,7 +117,8 @@ BINSRC = addmoddel.cpp        \
          taglist.cpp          \
          write-test.cpp       \
          write2-test.cpp      \
-         tiffparse.cpp
+         tiffparse.cpp        \
+         xmpdump.cpp
 
 # Main source file of the Exiv2 application
 EXIV2MAIN = exiv2.cpp
diff --git a/src/cr2image.cpp b/src/cr2image.cpp
index 8c15560..399d14b 100644
--- a/src/cr2image.cpp
+++ b/src/cr2image.cpp
@@ -69,6 +69,7 @@ namespace Exiv2 {
         { "*",         0x011a, Group::ifd0,    0 },
         { "*",         0x011b, Group::ifd0,    0 },
         { "*",         0x0128, Group::ifd0,    0 },
+        { "*",         0x02bc, Group::ifd0,    &TiffMetadataDecoder::decodeXmp  },
         { "*",         0x83bb, Group::ifd0,    &TiffMetadataDecoder::decodeIptc },
         { "*",         0x8649, Group::ifd0,    &TiffMetadataDecoder::decodeIptc }
     };
diff --git a/src/image.cpp b/src/image.cpp
index 027d853..777dc79 100644
--- a/src/image.cpp
+++ b/src/image.cpp
@@ -109,6 +109,7 @@ namespace Exiv2 {
     {
         clearExifData();
         clearIptcData();
+        clearXmpPacket();
         clearComment();
     }
 
@@ -139,6 +140,16 @@ namespace Exiv2 {
         iptcData_ = iptcData;
     }
 
+    void Image::clearXmpPacket()
+    {
+        xmpPacket_.clear();
+    }
+
+    void Image::setXmpPacket(const std::string& xmpPacket)
+    {
+        xmpPacket_ = xmpPacket;
+    }
+
     void Image::clearComment()
     {
         comment_.erase();
diff --git a/src/image.hpp b/src/image.hpp
index efa3132..866f1f2 100644
--- a/src/image.hpp
+++ b/src/image.hpp
@@ -144,6 +144,14 @@ namespace Exiv2 {
          */
         virtual void clearIptcData();
         /*!
+          @brief Set the raw XMP packet to \em xmpPacket.
+         */
+        virtual void setXmpPacket(const std::string& xmpPacket);
+        /*!
+          @brief Set the raw XMP packet to \em xmpPacket.
+         */
+        virtual void clearXmpPacket();
+        /*!
           @brief Set the image comment. The new comment is not written
               to the image until the writeMetadata() method is called.
           @param comment String containing comment.
@@ -190,6 +198,10 @@ namespace Exiv2 {
           @return modifiable IptcData instance containing IPTC values
          */
         virtual IptcData& iptcData() { return iptcData_; }
+        /*!
+          @brief Return a modifiable reference to the raw XMP packet.
+         */
+        virtual std::string& xmpPacket() { return xmpPacket_; }
         //@}
 
         //! @name Accessors
@@ -240,6 +252,10 @@ namespace Exiv2 {
          */
         virtual std::string comment() const { return comment_; }
         /*!
+          @brief Return the raw XMP packet as a string.
+         */
+        virtual const std::string& xmpPacket() const { return xmpPacket_; }
+        /*!
           @brief Return a reference to the BasicIo instance being used for Io.
 
           This refence is particularly useful to reading the results of
@@ -274,6 +290,7 @@ namespace Exiv2 {
         ExifData          exifData_;          //!< Exif data container
         IptcData          iptcData_;          //!< IPTC data container
         std::string       comment_;           //!< User comment
+        std::string       xmpPacket_;         //!< XMP packet
 
     private:
         //! @name NOT implemented
diff --git a/src/jpgimage.cpp b/src/jpgimage.cpp
index c84a362..93177d6 100644
--- a/src/jpgimage.cpp
+++ b/src/jpgimage.cpp
@@ -59,6 +59,7 @@ namespace Exiv2 {
     const byte     JpegBase::com_      = 0xfe;
     const char     JpegBase::exifId_[] = "Exif

-- 
exiv2 packaging



More information about the pkg-kde-commits mailing list