diff --git a/src/blackmisc/dictionary.cpp b/src/blackmisc/dictionary.cpp deleted file mode 100644 index 74b7a5e0b..000000000 --- a/src/blackmisc/dictionary.cpp +++ /dev/null @@ -1,46 +0,0 @@ -/* Copyright (C) 2016 - * swift project Community / Contributors - * - * This file is part of swift project. It is subject to the license terms in the LICENSE file found in the top-level - * directory of this distribution. No part of swift project, including this file, may be copied, modified, propagated, - * or distributed except according to the terms contained in the LICENSE file. - */ - -#include "blackmisc/dictionary.h" - -uint BlackMisc::calculateHash(const QList &values, const char *className) -{ - // http://stackoverflow.com/questions/113511/hash-code-implementation/113600#113600 - if (values.isEmpty()) return 0; - uint hash = values.first(); - for (int i = 1; i < values.size(); i++) - { - hash = 37 * hash + values.at(i); - } - - // same values, but different class? - if (className) - { - hash = 37 * hash + qHash(QString(className)); - } - return hash; -} - -uint BlackMisc::calculateHash(const QList &values, const char *className) -{ - QList list; - uint s = 0; - foreach(int i, values) - { - if (i >= 0) - { - list.append(static_cast(i)); - } - else - { - list.append(static_cast(i)); - list.append(s++); - } - } - return calculateHash(list, className); -} diff --git a/src/blackmisc/dictionary.h b/src/blackmisc/dictionary.h index 99cfaaf64..9f787049f 100644 --- a/src/blackmisc/dictionary.h +++ b/src/blackmisc/dictionary.h @@ -537,17 +537,6 @@ namespace BlackMisc }; } - /*! - * Calculate a single hash value based on a list of individual hash values. - * \param values - * \param className Will be hashed and used as an additional value in the list. - */ - //! @{ - BLACKMISC_EXPORT uint calculateHash(const QList &values, const char *className); - - BLACKMISC_EXPORT uint calculateHash(const QList &values, const char *className); - //! @} - } // namespace BlackMisc #endif // BLACKMISC_DICTIONARY_H diff --git a/src/blackmisc/pq/physicalquantity.cpp b/src/blackmisc/pq/physicalquantity.cpp index 5e06dfef1..7e9f89d29 100644 --- a/src/blackmisc/pq/physicalquantity.cpp +++ b/src/blackmisc/pq/physicalquantity.cpp @@ -424,11 +424,9 @@ namespace BlackMisc template uint CPhysicalQuantity::getValueHash() const { - QList hashs; // there is no double qHash // also unit and rounding has to be considered - hashs << qHash(this->valueRoundedWithUnit(MU::defaultUnit())); - return calculateHash(hashs, "PQ"); + return qHash(this->valueRoundedWithUnit(MU::defaultUnit())); } template diff --git a/src/blackmisc/propertyindexvariantmap.cpp b/src/blackmisc/propertyindexvariantmap.cpp index 13b854486..adfe54fa3 100644 --- a/src/blackmisc/propertyindexvariantmap.cpp +++ b/src/blackmisc/propertyindexvariantmap.cpp @@ -149,10 +149,7 @@ namespace BlackMisc uint CPropertyIndexVariantMap::getValueHash() const { // there is no hash for map, so I use this workaround here - const QString s = this->toQString(false); - QList h; - h << qHash(s); - return BlackMisc::calculateHash(h, "CPropertyIndexVariantMap"); + return qHash(this->toQString(false)); } } // namespace