aboutsummaryrefslogtreecommitdiffstats
path: root/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2014-10-01 09:25:23 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-10-01 09:25:23 +0000
commit9186dd3492464aecc57e843fab4b58d40e4e3861 (patch)
tree683a81fc53e171a7056f96b23ae080eb41ab5da8 /native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
parentb4233779b18c0090d49a249ada8072e2d7d20a72 (diff)
parentbcb439e702081a54c9a96d3b6bf466e11bd69375 (diff)
downloadlatinime-9186dd3492464aecc57e843fab4b58d40e4e3861.tar.gz
latinime-9186dd3492464aecc57e843fab4b58d40e4e3861.tar.xz
latinime-9186dd3492464aecc57e843fab4b58d40e4e3861.zip
am bcb439e7: Merge "Add jni method to update entries for a word efficiently."
* commit 'bcb439e702081a54c9a96d3b6bf466e11bd69375': Add jni method to update entries for a word efficiently.
Diffstat (limited to 'native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp')
-rw-r--r--native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
index da8c2ac03..1e6baa5ec 100644
--- a/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
+++ b/native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp
@@ -427,6 +427,19 @@ static bool latinime_BinaryDictionary_removeNgramEntry(JNIEnv *env, jclass clazz
CodePointArrayView(wordCodePoints, codePointCount));
}
+static bool latinime_BinaryDictionary_updateCounter(JNIEnv *env, jclass clazz, jlong dict,
+ jobjectArray prevWordCodePointArrays, jbooleanArray isBeginningOfSentenceArray,
+ jintArray word, jboolean isValidWord, jint count, jint timestamp) {
+ Dictionary *dictionary = reinterpret_cast<Dictionary *>(dict);
+ if (!dictionary) {
+ return false;
+ }
+ jsize wordLength = env->GetArrayLength(word);
+ int wordCodePoints[wordLength];
+ env->GetIntArrayRegion(word, 0, wordLength, wordCodePoints);
+ return false;
+}
+
// Returns how many language model params are processed.
static int latinime_BinaryDictionary_addMultipleDictionaryEntries(JNIEnv *env, jclass clazz,
jlong dict, jobjectArray languageModelParams, jint startIndex) {
@@ -725,6 +738,11 @@ static const JNINativeMethod sMethods[] = {
reinterpret_cast<void *>(latinime_BinaryDictionary_removeNgramEntry)
},
{
+ const_cast<char *>("updateCounterNative"),
+ const_cast<char *>("(J[[I[Z[IZII)Z"),
+ reinterpret_cast<void *>(latinime_BinaryDictionary_updateCounter)
+ },
+ {
const_cast<char *>("addMultipleDictionaryEntriesNative"),
const_cast<char *>(
"(J[Lcom/android/inputmethod/latin/utils/LanguageModelParam;I)I"),