aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/NgramContext.java
diff options
context:
space:
mode:
authorMohammadinamul Sheik <inamul@google.com>2015-03-17 19:12:37 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-03-17 19:12:37 +0000
commit3136a7c65f71831bf2f7743e909f337fce5ba91f (patch)
tree7968285a8d1831bbc9d38d19d912b4ecd1b3428f /java/src/com/android/inputmethod/latin/NgramContext.java
parent2ec1e12d1f93cafb0d50bafdfa0a5f2ad93c5253 (diff)
parent775d3a8d53067149bbf78d03e8ae132fea8387c0 (diff)
downloadlatinime-3136a7c65f71831bf2f7743e909f337fce5ba91f.tar.gz
latinime-3136a7c65f71831bf2f7743e909f337fce5ba91f.tar.xz
latinime-3136a7c65f71831bf2f7743e909f337fce5ba91f.zip
am 775d3a8d: Merge "Use BinaryDicitonary.MAX_PREV_WORD_COUNT_FOR_NGRAM for D2 dictioanries."
* commit '775d3a8d53067149bbf78d03e8ae132fea8387c0': Use BinaryDicitonary.MAX_PREV_WORD_COUNT_FOR_NGRAM for D2 dictioanries.
Diffstat (limited to 'java/src/com/android/inputmethod/latin/NgramContext.java')
-rw-r--r--java/src/com/android/inputmethod/latin/NgramContext.java14
1 files changed, 12 insertions, 2 deletions
diff --git a/java/src/com/android/inputmethod/latin/NgramContext.java b/java/src/com/android/inputmethod/latin/NgramContext.java
index aeeff6126..f8fba6256 100644
--- a/java/src/com/android/inputmethod/latin/NgramContext.java
+++ b/java/src/com/android/inputmethod/latin/NgramContext.java
@@ -43,6 +43,10 @@ public class NgramContext {
public static final String CONTEXT_SEPARATOR = " ";
+ public static NgramContext getEmptyPrevWordsContext(int maxPrevWordCount) {
+ return new NgramContext(maxPrevWordCount, WordInfo.EMPTY_WORD_INFO);
+ }
+
/**
* Word information used to represent previous words information.
*/
@@ -102,10 +106,17 @@ public class NgramContext {
private final WordInfo[] mPrevWordsInfo;
private final int mPrevWordsCount;
+ private final int mMaxPrevWordCount;
+
// Construct from the previous word information.
public NgramContext(final WordInfo... prevWordsInfo) {
+ this(DecoderSpecificConstants.MAX_PREV_WORD_COUNT_FOR_N_GRAM, prevWordsInfo);
+ }
+
+ public NgramContext(final int maxPrevWordCount, final WordInfo... prevWordsInfo) {
mPrevWordsInfo = prevWordsInfo;
mPrevWordsCount = prevWordsInfo.length;
+ mMaxPrevWordCount = maxPrevWordCount;
}
/**
@@ -113,8 +124,7 @@ public class NgramContext {
*/
@Nonnull
public NgramContext getNextNgramContext(final WordInfo wordInfo) {
- final int nextPrevWordCount = Math.min(
- DecoderSpecificConstants.MAX_PREV_WORD_COUNT_FOR_N_GRAM, mPrevWordsCount + 1);
+ final int nextPrevWordCount = Math.min(mMaxPrevWordCount, mPrevWordsCount + 1);
final WordInfo[] prevWordsInfo = new WordInfo[nextPrevWordCount];
prevWordsInfo[0] = wordInfo;
System.arraycopy(mPrevWordsInfo, 0, prevWordsInfo, 1, nextPrevWordCount - 1);