aboutsummaryrefslogtreecommitdiffstats
path: root/native/jni/src
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2014-05-14 19:47:03 +0900
committerKeisuke Kuroyanagi <ksk@google.com>2014-05-14 20:05:15 +0900
commit304a71d171fc1041f5c19b1f05fbe329c6a3ed3f (patch)
treede0e6c24ecedc8dd50b090ee09e45d76fcfff61c /native/jni/src
parente9121a68a67b8723477668130a16d4c72d98f6fe (diff)
downloadlatinime-304a71d171fc1041f5c19b1f05fbe329c6a3ed3f.tar.gz
latinime-304a71d171fc1041f5c19b1f05fbe329c6a3ed3f.tar.xz
latinime-304a71d171fc1041f5c19b1f05fbe329c6a3ed3f.zip
Use JniDataUtils::putXxxToArray() to output a value.
Change-Id: Ifb7bed6623b01acb524566a0fe00dcbdf7273888
Diffstat (limited to 'native/jni/src')
-rw-r--r--native/jni/src/suggest/core/result/suggestion_results.cpp21
-rw-r--r--native/jni/src/utils/jni_data_utils.h9
2 files changed, 17 insertions, 13 deletions
diff --git a/native/jni/src/suggest/core/result/suggestion_results.cpp b/native/jni/src/suggest/core/result/suggestion_results.cpp
index 6594a1292..4c10bd08a 100644
--- a/native/jni/src/suggest/core/result/suggestion_results.cpp
+++ b/native/jni/src/suggest/core/result/suggestion_results.cpp
@@ -32,24 +32,19 @@ void SuggestionResults::outputSuggestions(JNIEnv *env, jintArray outSuggestionCo
JniDataUtils::outputCodePoints(env, outputCodePointsArray, start,
MAX_WORD_LENGTH /* maxLength */, suggestedWord.getCodePoint(),
suggestedWord.getCodePointCount(), true /* needsNullTermination */);
- const int score = suggestedWord.getScore();
- env->SetIntArrayRegion(outScoresArray, outputIndex, 1 /* len */, &score);
- const int indexToPartialCommit = suggestedWord.getIndexToPartialCommit();
- env->SetIntArrayRegion(outSpaceIndicesArray, outputIndex, 1 /* len */,
- &indexToPartialCommit);
- const int type = suggestedWord.getType();
- env->SetIntArrayRegion(outTypesArray, outputIndex, 1 /* len */, &type);
+ JniDataUtils::putIntToArray(env, outScoresArray, outputIndex, suggestedWord.getScore());
+ JniDataUtils::putIntToArray(env, outSpaceIndicesArray, outputIndex,
+ suggestedWord.getIndexToPartialCommit());
+ JniDataUtils::putIntToArray(env, outTypesArray, outputIndex, suggestedWord.getType());
if (mSuggestedWords.size() == 1) {
- const int autoCommitFirstWordConfidence =
- suggestedWord.getAutoCommitFirstWordConfidence();
- env->SetIntArrayRegion(outAutoCommitFirstWordConfidenceArray, 0 /* start */,
- 1 /* len */, &autoCommitFirstWordConfidence);
+ JniDataUtils::putIntToArray(env, outAutoCommitFirstWordConfidenceArray, 0 /* index */,
+ suggestedWord.getAutoCommitFirstWordConfidence());
}
++outputIndex;
mSuggestedWords.pop();
}
- env->SetIntArrayRegion(outSuggestionCount, 0 /* start */, 1 /* len */, &outputIndex);
- env->SetFloatArrayRegion(outLanguageWeight, 0 /* start */, 1 /* len */, &mLanguageWeight);
+ JniDataUtils::putIntToArray(env, outSuggestionCount, 0 /* index */, outputIndex);
+ JniDataUtils::putFloatToArray(env, outLanguageWeight, 0 /* index */, mLanguageWeight);
}
void SuggestionResults::addPrediction(const int *const codePoints, const int codePointCount,
diff --git a/native/jni/src/utils/jni_data_utils.h b/native/jni/src/utils/jni_data_utils.h
index 01a5685b4..67a66fdfe 100644
--- a/native/jni/src/utils/jni_data_utils.h
+++ b/native/jni/src/utils/jni_data_utils.h
@@ -90,6 +90,15 @@ class JniDataUtils {
}
}
+ static void putIntToArray(JNIEnv *env, jintArray array, const int index, const int value) {
+ env->SetIntArrayRegion(array, index, 1 /* len */, &value);
+ }
+
+ static void putFloatToArray(JNIEnv *env, jfloatArray array, const int index,
+ const float value) {
+ env->SetFloatArrayRegion(array, index, 1 /* len */, &value);
+ }
+
private:
DISALLOW_IMPLICIT_CONSTRUCTORS(JniDataUtils);