aboutsummaryrefslogtreecommitdiffstats
path: root/native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2013-09-05 12:28:38 +0900
committerKeisuke Kuroyanagi <ksk@google.com>2013-09-05 12:28:38 +0900
commit5901b5e1bda3b1cee4ecfbfda414468a7bfd0e52 (patch)
tree4968a52f0a8329b1d46ddd4281baf528ff1cdcd2 /native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h
parent91486bdb3d1cefc50d0ec8870ec476e60d1f3a7d (diff)
downloadlatinime-5901b5e1bda3b1cee4ecfbfda414468a7bfd0e52.tar.gz
latinime-5901b5e1bda3b1cee4ecfbfda414468a7bfd0e52.tar.xz
latinime-5901b5e1bda3b1cee4ecfbfda414468a7bfd0e52.zip
Check usesForgettingCurve in HeaderPolicy.
Bug: 6669677 Change-Id: I47ebfc50f477b2a6514fba6fad421dd90f29ecb1
Diffstat (limited to 'native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h')
-rw-r--r--native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h22
1 files changed, 21 insertions, 1 deletions
diff --git a/native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h b/native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h
index 571ff9e69..930b475c7 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h
+++ b/native/jni/src/suggest/policyimpl/dictionary/header/header_policy.h
@@ -32,7 +32,9 @@ class HeaderPolicy : public DictionaryHeaderStructurePolicy {
: mDictBuf(dictBuf), mDictionaryFlags(HeaderReadingUtils::getFlags(dictBuf)),
mSize(HeaderReadingUtils::getHeaderSize(dictBuf)),
mAttributeMap(createAttributeMapAndReadAllAttributes(mDictBuf)),
- mMultiWordCostMultiplier(readMultipleWordCostMultiplier()) {}
+ mMultiWordCostMultiplier(readMultipleWordCostMultiplier()),
+ mUsesForgettingCurve(readUsesForgettingCurveFlag()),
+ mLastUpdatedTime(readLastUpdatedTime()) {}
~HeaderPolicy() {}
@@ -57,6 +59,14 @@ class HeaderPolicy : public DictionaryHeaderStructurePolicy {
return mMultiWordCostMultiplier;
}
+ AK_FORCE_INLINE bool usesForgettingCurve() const {
+ return mUsesForgettingCurve;
+ }
+
+ AK_FORCE_INLINE int getLastUpdatedTime() const {
+ return mLastUpdatedTime;
+ }
+
void readHeaderValueOrQuestionMark(const char *const key,
int *outValue, int outValueSize) const;
@@ -64,6 +74,8 @@ class HeaderPolicy : public DictionaryHeaderStructurePolicy {
DISALLOW_IMPLICIT_CONSTRUCTORS(HeaderPolicy);
static const char *const MULTIPLE_WORDS_DEMOTION_RATE_KEY;
+ static const char *const USES_FORGETTING_CURVE_KEY;
+ static const char *const LAST_UPDATED_TIME_KEY;
static const float DEFAULT_MULTIPLE_WORD_COST_MULTIPLIER;
static const float MULTIPLE_WORD_COST_MULTIPLIER_SCALE;
@@ -72,9 +84,17 @@ class HeaderPolicy : public DictionaryHeaderStructurePolicy {
const int mSize;
HeaderReadingUtils::AttributeMap mAttributeMap;
const float mMultiWordCostMultiplier;
+ const bool mUsesForgettingCurve;
+ const int mLastUpdatedTime;
float readMultipleWordCostMultiplier() const;
+ bool readUsesForgettingCurveFlag() const;
+
+ int readLastUpdatedTime() const;
+
+ bool getAttributeValueAsInt(const char *const key, int *const outValue) const;
+
static HeaderReadingUtils::AttributeMap createAttributeMapAndReadAllAttributes(
const uint8_t *const dictBuf);