simple synchronization XMP <-> Exif, IPTC
authorVladimir Nadvornik <nadvornik@suse.cz>
Sat, 18 Oct 2008 19:20:27 +0000 (19:20 +0000)
committerVladimir Nadvornik <nadvornik@suse.cz>
Sat, 18 Oct 2008 19:20:27 +0000 (19:20 +0000)
src/exiv2.cc

index 62ad511..3a7d9d9 100644 (file)
 #include <exiv2/preview.hpp>
 #endif
 
+#if EXIV2_TEST_VERSION(0,17,0)
+#include <exiv2/convert.hpp>
+#endif
+
 
 extern "C" {
 #include <glib.h>
@@ -216,6 +220,9 @@ public:
 #endif
                exifData_ = imageData_->exifData();
                iptcData_ = imageData_->iptcData();
+#if EXIV2_TEST_VERSION(0,17,0)
+               syncExifWithXmp(exifData_, xmpData_);
+#endif
        }
 
        virtual ~_ExifDataProcessed()
@@ -231,7 +238,10 @@ public:
 
        virtual void writeMetadata()
        {
-               
+#if EXIV2_TEST_VERSION(0,17,0)
+               syncExifWithXmp(exifData_, xmpData_);
+               copyXmpToIptc(xmpData_, iptcData_); //FIXME it should be configurable
+#endif
                if (sidecarData_) 
                        {
                        sidecarData_->image()->setXmpData(xmpData_);