diff options
author | 2013-11-28 20:43:15 +0900 | |
---|---|---|
committer | 2013-11-28 20:43:15 +0900 | |
commit | 4fa5588d1bcbb56c8d77f46cf4640fa3ade1b497 (patch) | |
tree | 6c75888913ce7d0270f30fa890bf96cc098fa145 /native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp | |
parent | c7dd2eb7ad6499178a2f1fa600bf21a2e6cb8ba3 (diff) | |
download | latinime-4fa5588d1bcbb56c8d77f46cf4640fa3ade1b497.tar.gz latinime-4fa5588d1bcbb56c8d77f46cf4640fa3ade1b497.tar.xz latinime-4fa5588d1bcbb56c8d77f46cf4640fa3ade1b497.zip |
Add timestamp as an argument to updating methods.
Bug: 11073222
Change-Id: I791787a6af3c920996920cad4e302ac50cf7b568
Diffstat (limited to 'native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp')
-rw-r--r-- | native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp index 5fc20eaa0..81997b71e 100644 --- a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp +++ b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp @@ -291,7 +291,7 @@ static void latinime_BinaryDictionary_addUnigramWord(JNIEnv *env, jclass clazz, if (shortcutTarget) { env->GetIntArrayRegion(shortcutTarget, 0, shortcutLength, shortcutTargetCodePoints); } - dictionary->addUnigramWord(codePoints, wordLength, probability); + dictionary->addUnigramWord(codePoints, wordLength, probability, timeStamp); } static void latinime_BinaryDictionary_addBigramWords(JNIEnv *env, jclass clazz, jlong dict, @@ -307,7 +307,7 @@ static void latinime_BinaryDictionary_addBigramWords(JNIEnv *env, jclass clazz, int word1CodePoints[word1Length]; env->GetIntArrayRegion(word1, 0, word1Length, word1CodePoints); dictionary->addBigramWords(word0CodePoints, word0Length, word1CodePoints, - word1Length, probability); + word1Length, probability, timeStamp); } static void latinime_BinaryDictionary_removeBigramWords(JNIEnv *env, jclass clazz, jlong dict, @@ -342,13 +342,15 @@ static int latinime_BinaryDictionary_addMultipleDictionaryEntries(JNIEnv *env, j jclass languageModelParamClass = env->GetObjectClass(languageModelParam); env->DeleteLocalRef(languageModelParam); - // TODO: Support shortcut, timestamp and flags. + // TODO: Support shortcut and flags. jfieldID word0FieldId = env->GetFieldID(languageModelParamClass, "mWord0", "[I"); jfieldID word1FieldId = env->GetFieldID(languageModelParamClass, "mWord1", "[I"); jfieldID unigramProbabilityFieldId = env->GetFieldID(languageModelParamClass, "mUnigramProbability", "I"); jfieldID bigramProbabilityFieldId = env->GetFieldID(languageModelParamClass, "mBigramProbability", "I"); + jfieldID timeStampFieldId = + env->GetFieldID(languageModelParamClass, "mTimeStamp", "I"); env->DeleteLocalRef(languageModelParamClass); for (int i = startIndex; i < languageModelParamCount; ++i) { @@ -369,11 +371,12 @@ static int latinime_BinaryDictionary_addMultipleDictionaryEntries(JNIEnv *env, j int word1CodePoints[word1Length]; env->GetIntArrayRegion(word1, 0, word1Length, word1CodePoints); jint unigramProbability = env->GetIntField(languageModelParam, unigramProbabilityFieldId); - dictionary->addUnigramWord(word1CodePoints, word1Length, unigramProbability); + jint timeStamp = env->GetIntField(languageModelParam, timeStampFieldId); + dictionary->addUnigramWord(word1CodePoints, word1Length, unigramProbability, timeStamp); if (word0) { jint bigramProbability = env->GetIntField(languageModelParam, bigramProbabilityFieldId); dictionary->addBigramWords(word0CodePoints, word0Length, word1CodePoints, word1Length, - bigramProbability); + bigramProbability, timeStamp); } if (dictionary->needsToRunGC(true /* mindsBlockByGC */)) { return i + 1; |