aboutsummaryrefslogtreecommitdiffstats
path: root/native/jni/src
diff options
context:
space:
mode:
Diffstat (limited to 'native/jni/src')
-rw-r--r--native/jni/src/additional_proximity_chars.cpp10
-rw-r--r--native/jni/src/additional_proximity_chars.h15
-rw-r--r--native/jni/src/bigram_dictionary.cpp8
-rw-r--r--native/jni/src/binary_format.h2
-rw-r--r--native/jni/src/dictionary.cpp8
-rw-r--r--native/jni/src/dictionary.h6
-rw-r--r--native/jni/src/proximity_info.cpp20
-rw-r--r--native/jni/src/proximity_info.h16
8 files changed, 39 insertions, 46 deletions
diff --git a/native/jni/src/additional_proximity_chars.cpp b/native/jni/src/additional_proximity_chars.cpp
index f59492741..661c50e91 100644
--- a/native/jni/src/additional_proximity_chars.cpp
+++ b/native/jni/src/additional_proximity_chars.cpp
@@ -21,23 +21,23 @@ namespace latinime {
// TODO: Have proximity character informations in each language's binary dictionary.
const char *AdditionalProximityChars::LOCALE_EN_US = "en";
-const int32_t AdditionalProximityChars::EN_US_ADDITIONAL_A[EN_US_ADDITIONAL_A_SIZE] = {
+const int AdditionalProximityChars::EN_US_ADDITIONAL_A[EN_US_ADDITIONAL_A_SIZE] = {
'e', 'i', 'o', 'u'
};
-const int32_t AdditionalProximityChars::EN_US_ADDITIONAL_E[EN_US_ADDITIONAL_E_SIZE] = {
+const int AdditionalProximityChars::EN_US_ADDITIONAL_E[EN_US_ADDITIONAL_E_SIZE] = {
'a', 'i', 'o', 'u'
};
-const int32_t AdditionalProximityChars::EN_US_ADDITIONAL_I[EN_US_ADDITIONAL_I_SIZE] = {
+const int AdditionalProximityChars::EN_US_ADDITIONAL_I[EN_US_ADDITIONAL_I_SIZE] = {
'a', 'e', 'o', 'u'
};
-const int32_t AdditionalProximityChars::EN_US_ADDITIONAL_O[EN_US_ADDITIONAL_O_SIZE] = {
+const int AdditionalProximityChars::EN_US_ADDITIONAL_O[EN_US_ADDITIONAL_O_SIZE] = {
'a', 'e', 'i', 'u'
};
-const int32_t AdditionalProximityChars::EN_US_ADDITIONAL_U[EN_US_ADDITIONAL_U_SIZE] = {
+const int AdditionalProximityChars::EN_US_ADDITIONAL_U[EN_US_ADDITIONAL_U_SIZE] = {
'a', 'e', 'i', 'o'
};
} // namespace latinime
diff --git a/native/jni/src/additional_proximity_chars.h b/native/jni/src/additional_proximity_chars.h
index 0333c2dbd..21eb0bf8d 100644
--- a/native/jni/src/additional_proximity_chars.h
+++ b/native/jni/src/additional_proximity_chars.h
@@ -18,7 +18,6 @@
#define LATINIME_ADDITIONAL_PROXIMITY_CHARS_H
#include <cstring>
-#include <stdint.h>
#include "defines.h"
@@ -29,15 +28,15 @@ class AdditionalProximityChars {
DISALLOW_IMPLICIT_CONSTRUCTORS(AdditionalProximityChars);
static const char *LOCALE_EN_US;
static const int EN_US_ADDITIONAL_A_SIZE = 4;
- static const int32_t EN_US_ADDITIONAL_A[];
+ static const int EN_US_ADDITIONAL_A[];
static const int EN_US_ADDITIONAL_E_SIZE = 4;
- static const int32_t EN_US_ADDITIONAL_E[];
+ static const int EN_US_ADDITIONAL_E[];
static const int EN_US_ADDITIONAL_I_SIZE = 4;
- static const int32_t EN_US_ADDITIONAL_I[];
+ static const int EN_US_ADDITIONAL_I[];
static const int EN_US_ADDITIONAL_O_SIZE = 4;
- static const int32_t EN_US_ADDITIONAL_O[];
+ static const int EN_US_ADDITIONAL_O[];
static const int EN_US_ADDITIONAL_U_SIZE = 4;
- static const int32_t EN_US_ADDITIONAL_U[];
+ static const int EN_US_ADDITIONAL_U[];
AK_FORCE_INLINE static bool isEnLocale(const char *localeStr) {
const size_t LOCALE_EN_US_SIZE = strlen(LOCALE_EN_US);
@@ -46,7 +45,7 @@ class AdditionalProximityChars {
}
public:
- static int getAdditionalCharsSize(const char *localeStr, const int32_t c) {
+ static int getAdditionalCharsSize(const char *localeStr, const int c) {
if (!isEnLocale(localeStr)) {
return 0;
}
@@ -66,7 +65,7 @@ class AdditionalProximityChars {
}
}
- static const int32_t *getAdditionalChars(const char *localeStr, const int32_t c) {
+ static const int *getAdditionalChars(const char *localeStr, const int c) {
if (!isEnLocale(localeStr)) {
return 0;
}
diff --git a/native/jni/src/bigram_dictionary.cpp b/native/jni/src/bigram_dictionary.cpp
index f89dd1615..e62ae6fd9 100644
--- a/native/jni/src/bigram_dictionary.cpp
+++ b/native/jni/src/bigram_dictionary.cpp
@@ -146,8 +146,8 @@ int BigramDictionary::getBigrams(const int *prevWord, int prevWordLength, int *i
// Returns a pointer to the start of the bigram list.
// If the word is not found or has no bigrams, this function returns 0.
-int BigramDictionary::getBigramListPositionForWord(const int32_t *prevWord,
- const int prevWordLength, const bool forceLowerCaseSearch) const {
+int BigramDictionary::getBigramListPositionForWord(const int *prevWord, const int prevWordLength,
+ const bool forceLowerCaseSearch) const {
if (0 >= prevWordLength) return 0;
const uint8_t *const root = DICT;
int pos = BinaryFormat::getTerminalPosition(root, prevWord, prevWordLength,
@@ -167,7 +167,7 @@ int BigramDictionary::getBigramListPositionForWord(const int32_t *prevWord,
return pos;
}
-void BigramDictionary::fillBigramAddressToFrequencyMapAndFilter(const int32_t *prevWord,
+void BigramDictionary::fillBigramAddressToFrequencyMapAndFilter(const int *prevWord,
const int prevWordLength, std::map<int, int> *map, uint8_t *filter) const {
memset(filter, 0, BIGRAM_FILTER_BYTE_SIZE);
const uint8_t *const root = DICT;
@@ -207,7 +207,7 @@ bool BigramDictionary::checkFirstCharacter(int *word, int *inputCodes) const {
return false;
}
-bool BigramDictionary::isValidBigram(const int32_t *word1, int length1, const int32_t *word2,
+bool BigramDictionary::isValidBigram(const int *word1, int length1, const int *word2,
int length2) const {
const uint8_t *const root = DICT;
int pos = getBigramListPositionForWord(word1, length1, false /* forceLowerCaseSearch */);
diff --git a/native/jni/src/binary_format.h b/native/jni/src/binary_format.h
index d1e8316de..400389615 100644
--- a/native/jni/src/binary_format.h
+++ b/native/jni/src/binary_format.h
@@ -201,7 +201,6 @@ inline void BinaryFormat::readHeaderValue(const uint8_t *const dict, const char
outValue[outValueIndex++] = codePoint;
codePoint = getCodePointAndForwardPointer(dict, &index);
}
- if (outValueIndex < outValueIndex) outValue[outValueIndex] = 0;
// Finished copying. Break to go to the termination code.
break;
}
@@ -219,7 +218,6 @@ inline void BinaryFormat::readHeaderValue(const uint8_t *const dict, const char
// Put a terminator 0 if possible at all (always unless outValueSize is <= 0)
if (outValueIndex >= outValueSize) outValueIndex = outValueSize - 1;
if (outValueIndex >= 0) outValue[outValueIndex] = 0;
- return;
}
inline int BinaryFormat::readHeaderValueInt(const uint8_t *const dict, const char *const key) {
diff --git a/native/jni/src/dictionary.cpp b/native/jni/src/dictionary.cpp
index 963ba4645..8210aa0ff 100644
--- a/native/jni/src/dictionary.cpp
+++ b/native/jni/src/dictionary.cpp
@@ -28,7 +28,6 @@
namespace latinime {
-// TODO: Change the type of all keyCodes to uint32_t
Dictionary::Dictionary(void *dict, int dictSize, int mmapFd, int dictBufAdjust, int maxWordLength,
int maxWords, int maxPredictions)
: mDict(static_cast<unsigned char *>(dict)),
@@ -81,19 +80,18 @@ int Dictionary::getSuggestions(ProximityInfo *proximityInfo, void *traverseSessi
}
}
-int Dictionary::getBigrams(const int32_t *word, int length, int *codes, int codesSize,
+int Dictionary::getBigrams(const int *word, int length, int *codes, int codesSize,
int *outWords, int *frequencies, int *outputTypes) const {
if (length <= 0) return 0;
return mBigramDictionary->getBigrams(word, length, codes, codesSize, outWords, frequencies,
outputTypes);
}
-int Dictionary::getFrequency(const int32_t *word, int length) const {
+int Dictionary::getFrequency(const int *word, int length) const {
return mUnigramDictionary->getFrequency(word, length);
}
-bool Dictionary::isValidBigram(const int32_t *word1, int length1, const int32_t *word2,
- int length2) const {
+bool Dictionary::isValidBigram(const int *word1, int length1, const int *word2, int length2) const {
return mBigramDictionary->isValidBigram(word1, length1, word2, length2);
}
} // namespace latinime
diff --git a/native/jni/src/dictionary.h b/native/jni/src/dictionary.h
index dd97e9a88..e9660002e 100644
--- a/native/jni/src/dictionary.h
+++ b/native/jni/src/dictionary.h
@@ -50,11 +50,11 @@ class Dictionary {
bool useFullEditDistance, int *outWords, int *frequencies, int *spaceIndices,
int *outputTypes) const;
- int getBigrams(const int32_t *word, int length, int *codes, int codesSize, int *outWords,
+ int getBigrams(const int *word, int length, int *codes, int codesSize, int *outWords,
int *frequencies, int *outputTypes) const;
- int getFrequency(const int32_t *word, int length) const;
- bool isValidBigram(const int32_t *word1, int length1, const int32_t *word2, int length2) const;
+ int getFrequency(const int *word, int length) const;
+ bool isValidBigram(const int *word1, int length1, const int *word2, int length2) const;
const uint8_t *getDict() const { // required to release dictionary buffer
return mDict;
}
diff --git a/native/jni/src/proximity_info.cpp b/native/jni/src/proximity_info.cpp
index 84db7c196..d38ea670c 100644
--- a/native/jni/src/proximity_info.cpp
+++ b/native/jni/src/proximity_info.cpp
@@ -66,7 +66,7 @@ ProximityInfo::ProximityInfo(JNIEnv *env, const jstring localeJStr, const int ma
HAS_TOUCH_POSITION_CORRECTION_DATA(keyCount > 0 && keyXCoordinates && keyYCoordinates
&& keyWidths && keyHeights && keyCharCodes && sweetSpotCenterXs
&& sweetSpotCenterYs && sweetSpotRadii),
- mProximityCharsArray(new int32_t[GRID_WIDTH * GRID_HEIGHT * MAX_PROXIMITY_CHARS_SIZE
+ mProximityCharsArray(new int[GRID_WIDTH * GRID_HEIGHT * MAX_PROXIMITY_CHARS_SIZE
/* proximityGridLength */]),
mCodeToKeyMap() {
const int proximityGridLength = GRID_WIDTH * GRID_HEIGHT * MAX_PROXIMITY_CHARS_SIZE;
@@ -115,7 +115,7 @@ bool ProximityInfo::hasSpaceProximity(const int x, const int y) const {
if (DEBUG_PROXIMITY_INFO) {
AKLOGI("hasSpaceProximity: index %d, %d, %d", startIndex, x, y);
}
- int32_t *proximityCharsArray = mProximityCharsArray;
+ int *proximityCharsArray = mProximityCharsArray;
for (int i = 0; i < MAX_PROXIMITY_CHARS_SIZE; ++i) {
if (DEBUG_PROXIMITY_INFO) {
AKLOGI("Index: %d", mProximityCharsArray[startIndex + i]);
@@ -163,14 +163,14 @@ int ProximityInfo::squaredDistanceToEdge(const int keyId, const int x, const int
}
void ProximityInfo::calculateNearbyKeyCodes(
- const int x, const int y, const int32_t primaryKey, int *inputCodes) const {
- int32_t *proximityCharsArray = mProximityCharsArray;
+ const int x, const int y, const int primaryKey, int *inputCodes) const {
+ int *proximityCharsArray = mProximityCharsArray;
int insertPos = 0;
inputCodes[insertPos++] = primaryKey;
const int startIndex = getStartIndexFromCoordinates(x, y);
if (startIndex >= 0) {
for (int i = 0; i < MAX_PROXIMITY_CHARS_SIZE; ++i) {
- const int32_t c = proximityCharsArray[startIndex + i];
+ const int c = proximityCharsArray[startIndex + i];
if (c < KEYCODE_SPACE || c == primaryKey) {
continue;
}
@@ -198,13 +198,13 @@ void ProximityInfo::calculateNearbyKeyCodes(
return;
}
- const int32_t *additionalProximityChars =
+ const int *additionalProximityChars =
AdditionalProximityChars::getAdditionalChars(mLocaleStr, primaryKey);
for (int j = 0; j < additionalProximitySize; ++j) {
- const int32_t ac = additionalProximityChars[j];
+ const int ac = additionalProximityChars[j];
int k = 0;
for (; k < insertPos; ++k) {
- if (static_cast<int>(ac) == inputCodes[k]) {
+ if (ac == inputCodes[k]) {
break;
}
}
@@ -235,7 +235,7 @@ int ProximityInfo::getKeyIndexOf(const int c) const {
if (c == NOT_A_CODE_POINT) {
return NOT_AN_INDEX;
}
- const int lowerCode = static_cast<int>(toLowerCase(c));
+ const int lowerCode = toLowerCase(c);
hash_map_compat<int, int>::const_iterator mapPos = mCodeToKeyMap.find(lowerCode);
if (mapPos != mCodeToKeyMap.end()) {
return mapPos->second;
@@ -254,7 +254,7 @@ void ProximityInfo::initializeG() {
// TODO: Optimize
for (int i = 0; i < KEY_COUNT; ++i) {
const int code = mKeyCodePoints[i];
- const int lowerCode = static_cast<int>(toLowerCase(code));
+ const int lowerCode = toLowerCase(code);
mCenterXsG[i] = mKeyXCoordinates[i] + mKeyWidths[i] / 2;
mCenterYsG[i] = mKeyYCoordinates[i] + mKeyHeights[i] / 2;
mCodeToKeyMap[lowerCode] = i;
diff --git a/native/jni/src/proximity_info.h b/native/jni/src/proximity_info.h
index 7ee15d578..d00228359 100644
--- a/native/jni/src/proximity_info.h
+++ b/native/jni/src/proximity_info.h
@@ -17,8 +17,6 @@
#ifndef LATINIME_PROXIMITY_INFO_H
#define LATINIME_PROXIMITY_INFO_H
-#include <stdint.h>
-
#include "defines.h"
#include "hash_map_compat.h"
#include "jni.h"
@@ -59,7 +57,7 @@ class ProximityInfo {
return mSweetSpotCenterYs[keyIndex];
}
void calculateNearbyKeyCodes(
- const int x, const int y, const int32_t primaryKey, int *inputCodes) const;
+ const int x, const int y, const int primaryKey, int *inputCodes) const;
bool hasTouchPositionCorrectionData() const {
return HAS_TOUCH_POSITION_CORRECTION_DATA;
@@ -141,12 +139,12 @@ class ProximityInfo {
const int KEYBOARD_HEIGHT;
const bool HAS_TOUCH_POSITION_CORRECTION_DATA;
char mLocaleStr[MAX_LOCALE_STRING_LENGTH];
- int32_t *mProximityCharsArray;
- int32_t mKeyXCoordinates[MAX_KEY_COUNT_IN_A_KEYBOARD];
- int32_t mKeyYCoordinates[MAX_KEY_COUNT_IN_A_KEYBOARD];
- int32_t mKeyWidths[MAX_KEY_COUNT_IN_A_KEYBOARD];
- int32_t mKeyHeights[MAX_KEY_COUNT_IN_A_KEYBOARD];
- int32_t mKeyCodePoints[MAX_KEY_COUNT_IN_A_KEYBOARD];
+ int *mProximityCharsArray;
+ int mKeyXCoordinates[MAX_KEY_COUNT_IN_A_KEYBOARD];
+ int mKeyYCoordinates[MAX_KEY_COUNT_IN_A_KEYBOARD];
+ int mKeyWidths[MAX_KEY_COUNT_IN_A_KEYBOARD];
+ int mKeyHeights[MAX_KEY_COUNT_IN_A_KEYBOARD];
+ int mKeyCodePoints[MAX_KEY_COUNT_IN_A_KEYBOARD];
float mSweetSpotCenterXs[MAX_KEY_COUNT_IN_A_KEYBOARD];
float mSweetSpotCenterYs[MAX_KEY_COUNT_IN_A_KEYBOARD];
float mSweetSpotRadii[MAX_KEY_COUNT_IN_A_KEYBOARD];