aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java
diff options
context:
space:
mode:
authorYuichiro Hanada <yhanada@google.com>2012-08-16 18:40:14 +0900
committerYuichiro Hanada <yhanada@google.com>2012-08-17 19:05:16 +0900
commitc0a75c8ecbd373c4eaee4f866e4080c0b800470b (patch)
tree1e2d71fc12cda2889a5223c56a5d367d97dcfb98 /java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java
parente2ac3932e390590fca7a3814556331db6a08362c (diff)
downloadlatinime-c0a75c8ecbd373c4eaee4f866e4080c0b800470b.tar.gz
latinime-c0a75c8ecbd373c4eaee4f866e4080c0b800470b.tar.xz
latinime-c0a75c8ecbd373c4eaee4f866e4080c0b800470b.zip
add reconstructBigramFrequency
Change-Id: Iff20dcb9ca0d6064bb118247887fe24b812c0c61
Diffstat (limited to 'java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java')
-rw-r--r--java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java18
1 files changed, 18 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java b/java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java
index 2c3eee74c..273ee329d 100644
--- a/java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java
+++ b/java/src/com/android/inputmethod/latin/makedict/BinaryDictInputOutput.java
@@ -1410,4 +1410,22 @@ public class BinaryDictInputOutput {
return false;
}
}
+
+ /**
+ * Calculate bigram frequency from compressed value
+ *
+ * @see #makeBigramFlags
+ *
+ * @param unigramFrequency
+ * @param bigramFrequency compressed frequency
+ * @return approximate bigram frequency
+ */
+ public static int reconstructBigramFrequency(final int unigramFrequency,
+ final int bigramFrequency) {
+ final float stepSize = (MAX_TERMINAL_FREQUENCY - unigramFrequency)
+ / (1.5f + MAX_BIGRAM_FREQUENCY);
+ final float resultFreqFloat = (float)unigramFrequency
+ + stepSize * (bigramFrequency + 1.0f);
+ return (int)resultFreqFloat;
+ }
}