diff options
author | 2013-01-22 08:56:05 +0000 | |
---|---|---|
committer | 2013-01-22 08:56:05 +0000 | |
commit | 7c7d7115b7cd27c4ff4892b519cce7872031bf79 (patch) | |
tree | f31717f8108dad278c33ea3ff6a8b27d9843b279 /native/jni/src/proximity_info_state_utils.h | |
parent | f008a11ccef84916197b0031a8ed3353c87c10f1 (diff) | |
parent | d7a8fbf6a9ec8828d4b6d1c615a6c605bbe5b72e (diff) | |
download | latinime-7c7d7115b7cd27c4ff4892b519cce7872031bf79.tar.gz latinime-7c7d7115b7cd27c4ff4892b519cce7872031bf79.tar.xz latinime-7c7d7115b7cd27c4ff4892b519cce7872031bf79.zip |
Merge "refactor proximity info state"
Diffstat (limited to 'native/jni/src/proximity_info_state_utils.h')
-rw-r--r-- | native/jni/src/proximity_info_state_utils.h | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/native/jni/src/proximity_info_state_utils.h b/native/jni/src/proximity_info_state_utils.h index 8241eaf89..b67f82cd6 100644 --- a/native/jni/src/proximity_info_state_utils.h +++ b/native/jni/src/proximity_info_state_utils.h @@ -78,7 +78,29 @@ class ProximityInfoStateUtils { static float getPointToKeyByIdLength(const float maxPointToKeyLength, const std::vector<float> *const distanceCache_G, const int keyCount, const int inputIndex, const int keyId); - + static void initGeometricDistanceInfos( + const ProximityInfo *const proximityInfo, const int keyCount, + const int sampledInputSize, const int lastSavedInputSize, + const std::vector<int> *const sampledInputXs, + const std::vector<int> *const sampledInputYs, + std::vector<NearKeycodesSet> *nearKeysVector, + std::vector<NearKeycodesSet> *searchKeysVector, + std::vector<float> *distanceCache_G); + static void initPrimaryInputWord( + const int inputSize, const int *const inputProximities, int *primaryInputWord); + static void initNormalizedSquaredDistances( + const ProximityInfo *const proximityInfo, const int inputSize, + const int *inputXCoordinates, const int *inputYCoordinates, + const int *const inputProximities, const bool hasInputCoordinates, + const std::vector<int> *const sampledInputXs, + const std::vector<int> *const sampledInputYs, + int *normalizedSquaredDistances); + static void dump(const bool isGeometric, const int inputSize, + const int *const inputXCoordinates, const int *const inputYCoordinates, + const int sampledInputSize, const std::vector<int> *const sampledInputXs, + const std::vector<int> *const sampledInputYs, + const std::vector<float> *const sampledSpeedRates, + const std::vector<int> *const sampledBeelineSpeedPercentiles); private: DISALLOW_IMPLICIT_CONSTRUCTORS(ProximityInfoStateUtils); @@ -121,6 +143,13 @@ class ProximityInfoStateUtils { const int sampledInputSize, const std::vector<int> *const lengthCache, const int index0, const int index1, std::vector<hash_map_compat<int, float> > *charProbabilities); + static float calculateSquaredDistanceFromSweetSpotCenter( + const ProximityInfo *const proximityInfo, const std::vector<int> *const sampledInputXs, + const std::vector<int> *const sampledInputYs, const int keyIndex, + const int inputIndex); + static float calculateNormalizedSquaredDistance( + const ProximityInfo *const proximityInfo, const std::vector<int> *const sampledInputXs, + const std::vector<int> *const sampledInputYs, const int keyIndex, const int inputIndex); }; } // namespace latinime #endif // LATINIME_PROXIMITY_INFO_STATE_UTILS_H |