Loading native/jni/src/suggest/core/policy/dictionary_header_structure_policy.h +0 −2 Original line number Diff line number Diff line Loading @@ -44,8 +44,6 @@ class DictionaryHeaderStructurePolicy { virtual float getMultiWordCostMultiplier() const = 0; virtual int getLastDecayedTime() const = 0; virtual void readHeaderValueOrQuestionMark(const char *const key, int *outValue, int outValueSize) const = 0; Loading native/jni/src/suggest/policyimpl/dictionary/bigram/ver4_bigram_list_policy.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -37,7 +37,8 @@ void Ver4BigramListPolicy::getNextBigram(int *const outBigramPos, int *const out if (outProbability) { if (bigramEntry.hasHistoricalInfo()) { *outProbability = ForgettingCurveUtils::decodeProbability(bigramEntry.getHistoricalInfo()); ForgettingCurveUtils::decodeProbability(bigramEntry.getHistoricalInfo(), mHeaderPolicy); } else { *outProbability = bigramEntry.getProbability(); } Loading Loading @@ -160,7 +161,7 @@ bool Ver4BigramListPolicy::updateAllBigramEntriesAndDeleteUselessEntries(const i } } else if (bigramEntry.hasHistoricalInfo()) { const HistoricalInfo historicalInfo = ForgettingCurveUtils::createHistoricalInfoToSave( bigramEntry.getHistoricalInfo()); bigramEntry.getHistoricalInfo(), mHeaderPolicy); if (ForgettingCurveUtils::needsToKeep(&historicalInfo)) { const BigramEntry updatedBigramEntry = bigramEntry.updateHistoricalInfoAndGetEntry(&historicalInfo); Loading Loading @@ -230,7 +231,8 @@ const BigramEntry Ver4BigramListPolicy::createUpdatedBigramEntryFrom( if (mHeaderPolicy->hasHistoricalInfoOfWords()) { const HistoricalInfo updatedHistoricalInfo = ForgettingCurveUtils::createUpdatedHistoricalInfo( originalBigramEntry->getHistoricalInfo(), newProbability, timestamp); originalBigramEntry->getHistoricalInfo(), newProbability, timestamp, mHeaderPolicy); return originalBigramEntry->updateHistoricalInfoAndGetEntry(&updatedHistoricalInfo); } else { return originalBigramEntry->updateProbabilityAndGetEntry(newProbability); Loading native/jni/src/suggest/policyimpl/dictionary/header/header_policy.cpp +2 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,8 @@ const char *const HeaderPolicy::HAS_HISTORICAL_INFO_KEY = "HAS_HISTORICAL_INFO"; const char *const HeaderPolicy::LOCALE_KEY = "locale"; // match Java declaration const int HeaderPolicy::DEFAULT_MULTIPLE_WORDS_DEMOTION_RATE = 100; const float HeaderPolicy::MULTIPLE_WORD_COST_MULTIPLIER_SCALE = 100.0f; const int HeaderPolicy::DEFAULT_FORGETTING_CURVE_OCCURRENCES_TO_LEVEL_UP = 4; const int HeaderPolicy::DEFAULT_FORGETTING_CURVE_PROBABILITY_VALUES_TABLE_ID = 0; // Used for logging. Question mark is used to indicate that the key is not found. void HeaderPolicy::readHeaderValueOrQuestionMark(const char *const key, int *outValue, Loading native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h +10 −0 Original line number Diff line number Diff line Loading @@ -159,6 +159,14 @@ class HeaderPolicy : public DictionaryHeaderStructurePolicy { return &mAttributeMap; } AK_FORCE_INLINE int getForgettingCurveOccurrencesToLevelUp() const { return DEFAULT_FORGETTING_CURVE_OCCURRENCES_TO_LEVEL_UP; } AK_FORCE_INLINE int getForgettingCurveProbabilityValuesTableId() const { return DEFAULT_FORGETTING_CURVE_PROBABILITY_VALUES_TABLE_ID; } void readHeaderValueOrQuestionMark(const char *const key, int *outValue, int outValueSize) const; Loading @@ -185,6 +193,8 @@ class HeaderPolicy : public DictionaryHeaderStructurePolicy { static const char *const LOCALE_KEY; static const int DEFAULT_MULTIPLE_WORDS_DEMOTION_RATE; static const float MULTIPLE_WORD_COST_MULTIPLIER_SCALE; static const int DEFAULT_FORGETTING_CURVE_OCCURRENCES_TO_LEVEL_UP; static const int DEFAULT_FORGETTING_CURVE_PROBABILITY_VALUES_TABLE_ID; const FormatUtils::FORMAT_VERSION mDictFormatVersion; const HeaderReadWriteUtils::DictionaryFlags mDictionaryFlags; Loading native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_node_reader.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -65,7 +65,7 @@ const PtNodeParams Ver4PatriciaTrieNodeReader::fetchPtNodeInfoFromBufferAndProce mProbabilityDictContent->getProbabilityEntry(terminalId); if (probabilityEntry.hasHistoricalInfo()) { probability = ForgettingCurveUtils::decodeProbability( probabilityEntry.getHistoricalInfo()); probabilityEntry.getHistoricalInfo(), mHeaderPolicy); } else { probability = probabilityEntry.getProbability(); } Loading Loading
native/jni/src/suggest/core/policy/dictionary_header_structure_policy.h +0 −2 Original line number Diff line number Diff line Loading @@ -44,8 +44,6 @@ class DictionaryHeaderStructurePolicy { virtual float getMultiWordCostMultiplier() const = 0; virtual int getLastDecayedTime() const = 0; virtual void readHeaderValueOrQuestionMark(const char *const key, int *outValue, int outValueSize) const = 0; Loading
native/jni/src/suggest/policyimpl/dictionary/bigram/ver4_bigram_list_policy.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -37,7 +37,8 @@ void Ver4BigramListPolicy::getNextBigram(int *const outBigramPos, int *const out if (outProbability) { if (bigramEntry.hasHistoricalInfo()) { *outProbability = ForgettingCurveUtils::decodeProbability(bigramEntry.getHistoricalInfo()); ForgettingCurveUtils::decodeProbability(bigramEntry.getHistoricalInfo(), mHeaderPolicy); } else { *outProbability = bigramEntry.getProbability(); } Loading Loading @@ -160,7 +161,7 @@ bool Ver4BigramListPolicy::updateAllBigramEntriesAndDeleteUselessEntries(const i } } else if (bigramEntry.hasHistoricalInfo()) { const HistoricalInfo historicalInfo = ForgettingCurveUtils::createHistoricalInfoToSave( bigramEntry.getHistoricalInfo()); bigramEntry.getHistoricalInfo(), mHeaderPolicy); if (ForgettingCurveUtils::needsToKeep(&historicalInfo)) { const BigramEntry updatedBigramEntry = bigramEntry.updateHistoricalInfoAndGetEntry(&historicalInfo); Loading Loading @@ -230,7 +231,8 @@ const BigramEntry Ver4BigramListPolicy::createUpdatedBigramEntryFrom( if (mHeaderPolicy->hasHistoricalInfoOfWords()) { const HistoricalInfo updatedHistoricalInfo = ForgettingCurveUtils::createUpdatedHistoricalInfo( originalBigramEntry->getHistoricalInfo(), newProbability, timestamp); originalBigramEntry->getHistoricalInfo(), newProbability, timestamp, mHeaderPolicy); return originalBigramEntry->updateHistoricalInfoAndGetEntry(&updatedHistoricalInfo); } else { return originalBigramEntry->updateProbabilityAndGetEntry(newProbability); Loading
native/jni/src/suggest/policyimpl/dictionary/header/header_policy.cpp +2 −0 Original line number Diff line number Diff line Loading @@ -35,6 +35,8 @@ const char *const HeaderPolicy::HAS_HISTORICAL_INFO_KEY = "HAS_HISTORICAL_INFO"; const char *const HeaderPolicy::LOCALE_KEY = "locale"; // match Java declaration const int HeaderPolicy::DEFAULT_MULTIPLE_WORDS_DEMOTION_RATE = 100; const float HeaderPolicy::MULTIPLE_WORD_COST_MULTIPLIER_SCALE = 100.0f; const int HeaderPolicy::DEFAULT_FORGETTING_CURVE_OCCURRENCES_TO_LEVEL_UP = 4; const int HeaderPolicy::DEFAULT_FORGETTING_CURVE_PROBABILITY_VALUES_TABLE_ID = 0; // Used for logging. Question mark is used to indicate that the key is not found. void HeaderPolicy::readHeaderValueOrQuestionMark(const char *const key, int *outValue, Loading
native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h +10 −0 Original line number Diff line number Diff line Loading @@ -159,6 +159,14 @@ class HeaderPolicy : public DictionaryHeaderStructurePolicy { return &mAttributeMap; } AK_FORCE_INLINE int getForgettingCurveOccurrencesToLevelUp() const { return DEFAULT_FORGETTING_CURVE_OCCURRENCES_TO_LEVEL_UP; } AK_FORCE_INLINE int getForgettingCurveProbabilityValuesTableId() const { return DEFAULT_FORGETTING_CURVE_PROBABILITY_VALUES_TABLE_ID; } void readHeaderValueOrQuestionMark(const char *const key, int *outValue, int outValueSize) const; Loading @@ -185,6 +193,8 @@ class HeaderPolicy : public DictionaryHeaderStructurePolicy { static const char *const LOCALE_KEY; static const int DEFAULT_MULTIPLE_WORDS_DEMOTION_RATE; static const float MULTIPLE_WORD_COST_MULTIPLIER_SCALE; static const int DEFAULT_FORGETTING_CURVE_OCCURRENCES_TO_LEVEL_UP; static const int DEFAULT_FORGETTING_CURVE_PROBABILITY_VALUES_TABLE_ID; const FormatUtils::FORMAT_VERSION mDictFormatVersion; const HeaderReadWriteUtils::DictionaryFlags mDictionaryFlags; Loading
native/jni/src/suggest/policyimpl/dictionary/structure/v4/ver4_patricia_trie_node_reader.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -65,7 +65,7 @@ const PtNodeParams Ver4PatriciaTrieNodeReader::fetchPtNodeInfoFromBufferAndProce mProbabilityDictContent->getProbabilityEntry(terminalId); if (probabilityEntry.hasHistoricalInfo()) { probability = ForgettingCurveUtils::decodeProbability( probabilityEntry.getHistoricalInfo()); probabilityEntry.getHistoricalInfo(), mHeaderPolicy); } else { probability = probabilityEntry.getProbability(); } Loading