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

Maximiliano Curia maxy at moszumanska.debian.org
Thu Jul 13 17:37:14 UTC 2017


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

The following commit has been merged in the master branch:
commit 2b55ed40b60540acaa6190c1563c75ab5d6f96c3
Author: Andreas Huggel <ahuggel at gmx.net>
Date:   Sun Sep 11 13:22:52 2005 +0000

    Corrected and renamed Ciff parser class hierarchy
---
 src/crwimage.cpp | 242 ++++++++++++++++++++++++++++---------------------------
 src/crwimage.hpp |  90 ++++++++++++++-------
 2 files changed, 184 insertions(+), 148 deletions(-)

diff --git a/src/crwimage.cpp b/src/crwimage.cpp
index a5c7b67..2c8e6f4 100644
--- a/src/crwimage.cpp
+++ b/src/crwimage.cpp
@@ -168,7 +168,7 @@ namespace Exiv2 {
         if (io_->error() || io_->eof()) throw Error(14);
 
         // Parse the image
-        RawMetadata::AutoPtr parseTree(new CrwHeader);
+        RawMetadata::AutoPtr parseTree(new CiffHeader);
         parseTree->read(image.pData_, image.size_, 0, invalidByteOrder);
 #ifdef DEBUG
         parseTree->print(std::cerr, invalidByteOrder);
@@ -195,41 +195,11 @@ namespace Exiv2 {
         return isCrwType(iIo, advance);
     }
 
-    TypeId CrwEntry::typeId(uint16_t tag)
-    {
-        TypeId ti = invalidTypeId;
-        switch (tag & 0x3800) {
-        case 0x0000: ti = unsignedByte; break;
-        case 0x0800: ti = asciiString; break;
-        case 0x1000: ti = unsignedShort; break;
-        case 0x1800: ti = unsignedLong; break;
-        case 0x2000: ti = undefined; break;
-        case 0x2800: // fallthrough
-        case 0x3000: ti = directory; break;
-        }
-        return ti;
-    } // CrwEntry::typeId
-
-    DataLocId CrwEntry::dataLocation(uint16_t tag)
-    {
-        DataLocId di = invalidDataLocId;
-        switch (tag & 0xc000) {
-        case 0x0000: di = valueData; break;
-        case 0x4000: di = directoryData; break;
-        }
-        return di;
-    } // CrwEntry::dataLocation
-
-    void CrwEntry::add(RawMetadata::AutoPtr component)
-    {
-        throw Error(34, "CrwEntry::add");
-    } // CrwEntry::add
-
-    void CrwEntry::read(const byte* buf, 
-                        size_t len, 
-                        size_t start, 
-                        ByteOrder byteOrder,
-                        long /*shift*/)
+    void CiffComponent::read(const byte* buf, 
+                            size_t len, 
+                            size_t start, 
+                            ByteOrder byteOrder,
+                            long /*shift*/)
     {
         if (len < 10) throw Error(33);
         tag_ = getUShort(buf + start, byteOrder);
@@ -248,16 +218,11 @@ namespace Exiv2 {
             break;
         }
         pData_ = buf + offset_;
-    } // CrwEntry::read
+    } // CiffComponent::read
 
-    void CrwEntry::extract(Image& image, ByteOrder byteOrder) const
-    {
-        CrwMap::extract(*this, image, byteOrder);
-    } // CrwEntry::extract
-    
-    void CrwEntry::print(std::ostream& os, 
-                         ByteOrder byteOrder,
-                         const std::string& prefix) const
+    void CiffComponent::print(std::ostream& os, 
+                             ByteOrder byteOrder,
+                             const std::string& prefix) const
     {
         os << prefix 
            << "tag = 0x" << std::setw(4) << std::setfill('0')
@@ -276,10 +241,44 @@ namespace Exiv2 {
                 os << prefix << *value << "
";
             }
         }
+    } // CiffComponent::print
 
-    } // CrwEntry::print
+    TypeId CiffComponent::typeId(uint16_t tag)
+    {
+        TypeId ti = invalidTypeId;
+        switch (tag & 0x3800) {
+        case 0x0000: ti = unsignedByte; break;
+        case 0x0800: ti = asciiString; break;
+        case 0x1000: ti = unsignedShort; break;
+        case 0x1800: ti = unsignedLong; break;
+        case 0x2000: ti = undefined; break;
+        case 0x2800: // fallthrough
+        case 0x3000: ti = directory; break;
+        }
+        return ti;
+    } // CiffComponent::typeId
+
+    DataLocId CiffComponent::dataLocation(uint16_t tag)
+    {
+        DataLocId di = invalidDataLocId;
+        switch (tag & 0xc000) {
+        case 0x0000: di = valueData; break;
+        case 0x4000: di = directoryData; break;
+        }
+        return di;
+    } // CiffComponent::dataLocation
+
+    void CiffEntry::extract(Image& image, ByteOrder byteOrder) const
+    {
+        CrwMap::extract(*this, image, byteOrder);
+    } // CiffEntry::extract
+    
+    void CiffEntry::add(RawMetadata::AutoPtr component)
+    {
+        throw Error(34, "CiffEntry::add");
+    } // CiffEntry::add
 
-    CrwDirectory::~CrwDirectory()
+    CiffDirectory::~CiffDirectory()
     {
         RawMetadata::Components::iterator b = components_.begin();
         RawMetadata::Components::iterator e = components_.end();
@@ -288,43 +287,43 @@ namespace Exiv2 {
         }
     }
 
-    void CrwDirectory::add(RawMetadata::AutoPtr component)
+    void CiffDirectory::add(RawMetadata::AutoPtr component)
     {
         components_.push_back(component.release());
-    } // CrwEntry::add
+    } // CiffDirectory::add
 
-    void CrwDirectory::read(const byte* buf, 
+    void CiffDirectory::read(const byte* buf, 
                             size_t len, 
                             size_t start, 
                             ByteOrder byteOrder,
                             long /*shift*/)
     {
-        CrwEntry::read(buf, len, start, byteOrder);
+        CiffComponent::read(buf, len, start, byteOrder);
         readDirectory(buf + offset(), size(), 0, byteOrder, 0);
-    } // CrwDirectory::read
+    } // CiffDirectory::read
 
-    void CrwDirectory::extract(Image& image, ByteOrder byteOrder) const
+    void CiffDirectory::extract(Image& image, ByteOrder byteOrder) const
     {
         RawMetadata::Components::const_iterator b = components_.begin();
         RawMetadata::Components::const_iterator e = components_.end();
         for (RawMetadata::Components::const_iterator i = b; i != e; ++i) {
             (*i)->extract(image, byteOrder);
         }
-    } // CrwDirectory::extract
+    } // CiffDirectory::extract
 
-    void CrwDirectory::print(std::ostream& os, 
+    void CiffDirectory::print(std::ostream& os, 
                              ByteOrder byteOrder,
                              const std::string& prefix) const
     {
-        CrwEntry::print(os, byteOrder, prefix);
+        CiffComponent::print(os, byteOrder, prefix);
         RawMetadata::Components::const_iterator b = components_.begin();
         RawMetadata::Components::const_iterator e = components_.end();
         for (RawMetadata::Components::const_iterator i = b; i != e; ++i) {
             (*i)->print(os, byteOrder, prefix + "   ");
         }
-    } // CrwDirectory::print
+    } // CiffDirectory::print
 
-    void CrwDirectory::readDirectory(const byte* buf, 
+    void CiffDirectory::readDirectory(const byte* buf, 
                                      size_t len, 
                                      size_t start, 
                                      ByteOrder byteOrder, 
@@ -338,10 +337,10 @@ namespace Exiv2 {
         for (uint16_t i = 0; i < count; ++i) {
             if (o + 10 > len) throw Error(33);
             uint16_t tag = getUShort(buf + o, byteOrder);
-            CrwEntry* p = 0;
-            switch (CrwEntry::typeId(tag)) {
-            case directory: p = new CrwDirectory; break;
-            default: p = new CrwEntry; break;
+            CiffComponent* p = 0;
+            switch (CiffComponent::typeId(tag)) {
+            case directory: p = new CiffDirectory; break;
+            default: p = new CiffEntry; break;
             }
             p->setDir(this->tag());
             RawMetadata::AutoPtr m(p);
@@ -349,21 +348,21 @@ namespace Exiv2 {
             add(m);
             o += 10;
         }
-    }  // CrwDirectory::readDirectory
+    }  // CiffDirectory::readDirectory
 
-    const char CrwHeader::signature_[] = "HEAPCCDR";
+    const char CiffHeader::signature_[] = "HEAPCCDR";
 
-    CrwHeader::~CrwHeader()
+    CiffHeader::~CiffHeader()
     {
         delete rootDirectory_;
     }
 
-    void CrwHeader::add(RawMetadata::AutoPtr component)
+    void CiffHeader::add(RawMetadata::AutoPtr component)
     {
-        throw Error(34, "CrwHeader::add");
-    } // CrwEntry::add
+        throw Error(34, "CiffHeader::add");
+    } // CiffHeader::add
 
-    void CrwHeader::read(const byte* buf, 
+    void CiffHeader::read(const byte* buf, 
                          size_t len, 
                          size_t start, 
                          ByteOrder byteOrder,
@@ -385,17 +384,17 @@ namespace Exiv2 {
             throw Error(33);
         }
 
-        rootDirectory_ = new CrwDirectory;
+        rootDirectory_ = new CiffDirectory;
         rootDirectory_->readDirectory(buf + offset_, len - offset_, 0, byteOrder_);
-    } // CrwHeader::read
+    } // CiffHeader::read
 
-    void CrwHeader::extract(Image& image, ByteOrder byteOrder) const
+    void CiffHeader::extract(Image& image, ByteOrder byteOrder) const
     {
         // Nothing to extract from the header itself, just add correct byte order
         if (rootDirectory_) rootDirectory_->extract(image, byteOrder_);
-    } // CrwHeader::extract
+    } // CiffHeader::extract
 
-    void CrwHeader::print(std::ostream& os, 
+    void CiffHeader::print(std::ostream& os, 
                           ByteOrder byteOrder,
                           const std::string& prefix) const
     {
@@ -403,7 +402,7 @@ namespace Exiv2 {
            << "Header, offset = 0x" << std::setw(8) << std::setfill('0')
            << std::hex << std::right << offset_ << "
";
         if (rootDirectory_) rootDirectory_->print(os, byteOrder_, prefix);
-    } // CrwHeader::print
+    } // CiffHeader::print
 
     const CrwMapInfo CrwMap::crwMapInfos_[] = {
         CrwMapInfo(0x0805, 0x300a, 0, 0x9286, exifIfdId, extract0x0805, 0), 
@@ -437,13 +436,14 @@ namespace Exiv2 {
         CrwMapInfo(0x0000, 0x0000, 0, 0x0000, ifdIdNotSet, extractBasic, 0)
     }; // CrwMap::crwMapInfos_[]
 
-    void CrwMap::extract(const CrwEntry& crwEntry, 
+    void CrwMap::extract(const CiffComponent& ciffComponent, 
                          Image& image,
                          ByteOrder byteOrder)
     {
-        const CrwMapInfo* cmi = crwMapInfo(crwEntry.dir(), crwEntry.tagId());
+        const CrwMapInfo* cmi = crwMapInfo(ciffComponent.dir(),
+                                           ciffComponent.tagId());
         if (cmi && cmi->toExif_) {
-            cmi->toExif_(crwEntry, cmi, image, byteOrder);
+            cmi->toExif_(ciffComponent, cmi, image, byteOrder);
         }
     } // CrwMap::extract
 
@@ -458,52 +458,54 @@ namespace Exiv2 {
         return 0;
     } // CrwMap::crwMapInfo
 
-    void CrwMap::extract0x0805(const CrwEntry& crwEntry,
+    void CrwMap::extract0x0805(const CiffComponent& ciffComponent,
                                const CrwMapInfo* crwMapInfo, 
                                Image& image,
                                ByteOrder /*byteOrder*/)
     {
-        std::string s(reinterpret_cast<const char*>(crwEntry.pData()));
+        std::string s(reinterpret_cast<const char*>(ciffComponent.pData()));
         image.setComment(s);
     } // CrwMap::extract0x0805
 
-    void CrwMap::extract0x080a(const CrwEntry& crwEntry,
+    void CrwMap::extract0x080a(const CiffComponent& ciffComponent,
                                const CrwMapInfo* crwMapInfo, 
                                Image& image,
                                ByteOrder byteOrder)
     {
-        if (crwEntry.typeId() != asciiString) {
-            return extractBasic(crwEntry, crwMapInfo, image, byteOrder);
+        if (ciffComponent.typeId() != asciiString) {
+            return extractBasic(ciffComponent, crwMapInfo, image, byteOrder);
         }
 
         // Make
         ExifKey key1("Exif.Image.Make");
-        Value::AutoPtr value1 = Value::create(crwEntry.typeId());
+        Value::AutoPtr value1 = Value::create(ciffComponent.typeId());
         uint32_t i = 0;
-        for (; i < crwEntry.size() && crwEntry.pData()[i] != '

-- 
exiv2 packaging



More information about the pkg-kde-commits mailing list