Mercurial > dedupe
view CachedEditDistance.hpp @ 103:6b997f4f7e19
Support for directly selecting subfolder.
| author | Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no> |
|---|---|
| date | Sat, 15 Feb 2014 13:32:46 +0100 |
| parents | 9744ec195be3 |
| children |
line wrap: on
line source
#ifndef CACHEDEDITDISTANCE_HPP #define CACHEDEDITDISTANCE_HPP #include "DBCache.hpp" #include "EditDistance.hpp" template<typename Value> struct InsertRegulator<OrderedPair<UniqueString>, Value > { uint n; void start() { n = 0; HuffmanString::getSet().setAutoRebuild(false); } static void finish() { HuffmanString::getSet().rebuild(); HuffmanString::getSet().setAutoRebuild(true); } void next() { if (++n == 2048) HuffmanString::getSet().rebuild(); } }; class CachedEditDistance { protected: typedef DBCache<OrderedPair<UniqueString>, int, true> cacheType; public: static int Compute(QString a, QString b, bool removeDiacritics = false); static void removeDiacriticsNoCopy(QString& in) { EditDistance::removeDiacriticsNoCopy(in); } static QString removeDiacritics(const QString& in) { return EditDistance::removeDiacritics(in); } static cacheType* cache; }; #endif //CACHEDEDITDISTANCE_HPP
