diff options
author | 2013-01-14 19:46:09 -0800 | |
---|---|---|
committer | 2013-01-14 19:46:09 -0800 | |
commit | c995dbcf598730f138e59f989e813b83d585d40b (patch) | |
tree | aec8a6f6d255c0fbb547d88448105c025a5e23bc /java/src/com/android/inputmethod/latin/BinaryDictionary.java | |
parent | 722eeb144f4a0af337784ffa311217432272e19d (diff) | |
parent | 5db594abbad2d9e8d2cf1aa6e417aa50ffc5dfc1 (diff) | |
download | latinime-c995dbcf598730f138e59f989e813b83d585d40b.tar.gz latinime-c995dbcf598730f138e59f989e813b83d585d40b.tar.xz latinime-c995dbcf598730f138e59f989e813b83d585d40b.zip |
Merge "Remove MAX_WORD_LENGTH_INTERNAL"
Diffstat (limited to 'java/src/com/android/inputmethod/latin/BinaryDictionary.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/BinaryDictionary.java | 35 |
1 files changed, 15 insertions, 20 deletions
diff --git a/java/src/com/android/inputmethod/latin/BinaryDictionary.java b/java/src/com/android/inputmethod/latin/BinaryDictionary.java index 878633ee0..27af3d1e0 100644 --- a/java/src/com/android/inputmethod/latin/BinaryDictionary.java +++ b/java/src/com/android/inputmethod/latin/BinaryDictionary.java @@ -35,14 +35,10 @@ public final class BinaryDictionary extends Dictionary { public static final String DICTIONARY_PACK_AUTHORITY = "com.android.inputmethod.latin.dictionarypack"; - /** - * There is a difference between what java and native code can handle. - * This value should only be used in BinaryDictionary.java - * It is necessary to keep it at this value because some languages e.g. German have - * really long words. - */ + // Must be identical to MAX_WORD_LENGTH in native/jni/src/defines.h private static final int MAX_WORD_LENGTH = Constants.Dictionary.MAX_WORD_LENGTH; - private static final int MAX_RESULTS = 18; /* Must be identical to MAX_RESULTS in defines.h */ + // Must be identical to MAX_RESULTS in native/jni/src/defines.h + private static final int MAX_RESULTS = 18; private long mNativeDict; private final Locale mLocale; @@ -94,23 +90,22 @@ public final class BinaryDictionary extends Dictionary { JniUtils.loadNativeLibrary(); } - private native long openNative(String sourceDir, long dictOffset, long dictSize, - int maxWordLength); - private native void closeNative(long dict); - private native int getFrequencyNative(long dict, int[] word); - private native boolean isValidBigramNative(long dict, int[] word1, int[] word2); - private native int getSuggestionsNative(long dict, long proximityInfo, long traverseSession, - int[] xCoordinates, int[] yCoordinates, int[] times, int[] pointerIds, - int[] inputCodePoints, int codesSize, int commitPoint, boolean isGesture, - int[] prevWordCodePointArray, boolean useFullEditDistance, int[] outputCodePoints, - int[] outputScores, int[] outputIndices, int[] outputTypes); + private static native long openNative(String sourceDir, long dictOffset, long dictSize); + private static native void closeNative(long dict); + private static native int getFrequencyNative(long dict, int[] word); + private static native boolean isValidBigramNative(long dict, int[] word1, int[] word2); + private static native int getSuggestionsNative(long dict, long proximityInfo, + long traverseSession, int[] xCoordinates, int[] yCoordinates, int[] times, + int[] pointerIds, int[] inputCodePoints, int inputSize, int commitPoint, + boolean isGesture, int[] prevWordCodePointArray, boolean useFullEditDistance, + int[] outputCodePoints, int[] outputScores, int[] outputIndices, int[] outputTypes); private static native float calcNormalizedScoreNative(int[] before, int[] after, int score); private static native int editDistanceNative(int[] before, int[] after); // TODO: Move native dict into session private final void loadDictionary(final String path, final long startOffset, final long length) { - mNativeDict = openNative(path, startOffset, length, MAX_WORD_LENGTH); + mNativeDict = openNative(path, startOffset, length); } @Override @@ -139,12 +134,12 @@ public final class BinaryDictionary extends Dictionary { } final InputPointers ips = composer.getInputPointers(); - final int codesSize = isGesture ? ips.getPointerSize() : composerSize; + final int inputSize = isGesture ? ips.getPointerSize() : composerSize; // proximityInfo and/or prevWordForBigrams may not be null. final int count = getSuggestionsNative(mNativeDict, proximityInfo.getNativeProximityInfo(), getTraverseSession(sessionId).getSession(), ips.getXCoordinates(), ips.getYCoordinates(), ips.getTimes(), ips.getPointerIds(), mInputCodePoints, - codesSize, 0 /* commitPoint */, isGesture, prevWordCodePointArray, + inputSize, 0 /* commitPoint */, isGesture, prevWordCodePointArray, mUseFullEditDistance, mOutputCodePoints, mOutputScores, mSpaceIndices, mOutputTypes); final ArrayList<SuggestedWordInfo> suggestions = CollectionUtils.newArrayList(); |