diff options
author | 2013-01-22 17:00:43 +0900 | |
---|---|---|
committer | 2013-01-22 17:54:42 +0900 | |
commit | d7a8fbf6a9ec8828d4b6d1c615a6c605bbe5b72e (patch) | |
tree | 01fe8427a160084fd0286d02a3bee46767059ad8 /native/jni/src/proximity_info_state_utils.h | |
parent | d4828d5053ac30476b884c177235be0cac982c92 (diff) | |
download | latinime-d7a8fbf6a9ec8828d4b6d1c615a6c605bbe5b72e.tar.gz latinime-d7a8fbf6a9ec8828d4b6d1c615a6c605bbe5b72e.tar.xz latinime-d7a8fbf6a9ec8828d4b6d1c615a6c605bbe5b72e.zip |
refactor proximity info state
Change-Id: Iaf0c0fb7858358209fa12145777f158e0285bc27
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 |