diff options
author | 2014-10-01 17:40:20 +0900 | |
---|---|---|
committer | 2014-10-01 17:40:20 +0900 | |
commit | ce5fd94b9714f0b8bf3c28eef7176a30b9334bcb (patch) | |
tree | 70a3fd6c74537c10e4450afd69602e91ae57da55 /native | |
parent | 287e155e44b4e937f2a62d010805702bc813c43b (diff) | |
download | latinime-ce5fd94b9714f0b8bf3c28eef7176a30b9334bcb.tar.gz latinime-ce5fd94b9714f0b8bf3c28eef7176a30b9334bcb.tar.xz latinime-ce5fd94b9714f0b8bf3c28eef7176a30b9334bcb.zip |
Add jni method to update entries for a word efficiently.
Bug: 14425059
Change-Id: Ic628939ea68cdee17573409883a8403c73b78905
Diffstat (limited to 'native')
-rw-r--r-- | native/jni/com_android_inputmethod_latin_BinaryDictionary.cpp | 18 |
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"), |