Mercurial > hg > classical
annotate common/EditDistance.h @ 53:bcea875d8d2f tip
More build fixes
author | Chris Cannam |
---|---|
date | Thu, 16 Oct 2014 19:03:51 +0100 |
parents | 7d8a6167febb |
children |
rev | line source |
---|---|
Chris@11 | 1 |
Chris@11 | 2 #ifndef _EDIT_DISTANCE_H_ |
Chris@11 | 3 #define _EDIT_DISTANCE_H_ |
Chris@11 | 4 |
Chris@11 | 5 #include <alloca.h> |
Chris@11 | 6 |
Chris@11 | 7 #include <QString> |
Chris@11 | 8 |
Chris@11 | 9 namespace ClassicalData { |
Chris@11 | 10 |
Chris@11 | 11 class EditDistance |
Chris@11 | 12 { |
Chris@11 | 13 public: |
Chris@11 | 14 enum TranspositionMode { |
Chris@11 | 15 NoTransposition, |
Chris@11 | 16 RestrictedTransposition |
Chris@11 | 17 }; |
Chris@11 | 18 |
Chris@28 | 19 EditDistance(TranspositionMode tm = RestrictedTransposition) : |
Chris@28 | 20 m_transpositionMode(tm) { } |
Chris@11 | 21 |
Chris@13 | 22 int calculate(QString a, QString b, int threshold = 0); |
Chris@11 | 23 |
Chris@11 | 24 private: |
Chris@11 | 25 TranspositionMode m_transpositionMode; |
Chris@11 | 26 int m_editPenalty; |
Chris@11 | 27 int m_suffixPenalty; |
Chris@11 | 28 bool m_normalise; |
Chris@11 | 29 }; |
Chris@11 | 30 |
Chris@11 | 31 } |
Chris@11 | 32 |
Chris@11 | 33 #endif |
Chris@11 | 34 |
Chris@11 | 35 |