aboutsummaryrefslogtreecommitdiffstats
path: root/native/jni/src
diff options
context:
space:
mode:
authorKeisuke Kuroyanagi <ksk@google.com>2014-07-31 13:40:42 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-07-31 13:40:42 +0000
commit416918e279caa92fcc04cdfd9b69a39fc86638e7 (patch)
tree1ee17ce3631a4d32b09d4db40a9887cba22198c1 /native/jni/src
parente8bd5f9154e25c86a3022e6a261e78753da62339 (diff)
parent7baa9c3b7f8f381f42cb3b8f8b34fb20fc96cd29 (diff)
downloadlatinime-416918e279caa92fcc04cdfd9b69a39fc86638e7.tar.gz
latinime-416918e279caa92fcc04cdfd9b69a39fc86638e7.tar.xz
latinime-416918e279caa92fcc04cdfd9b69a39fc86638e7.zip
am 7baa9c3b: am f9c68364: am de5c3a25: Construct TrieMap from existing buffer.
* commit '7baa9c3b7f8f381f42cb3b8f8b34fb20fc96cd29': Construct TrieMap from existing buffer.
Diffstat (limited to 'native/jni/src')
-rw-r--r--native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp4
-rw-r--r--native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.h2
2 files changed, 6 insertions, 0 deletions
diff --git a/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp b/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp
index ca79c18e5..2904b1e77 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp
+++ b/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.cpp
@@ -43,6 +43,10 @@ TrieMap::TrieMap() : mBuffer(MAX_BUFFER_SIZE) {
writeEntry(EMPTY_BITMAP_ENTRY, ROOT_BITMAP_ENTRY_INDEX);
}
+TrieMap::TrieMap(uint8_t *const buffer, const int bufferSize)
+ : mBuffer(buffer, bufferSize,
+ BufferWithExtendableBuffer::DEFAULT_MAX_ADDITIONAL_BUFFER_SIZE) {}
+
void TrieMap::dump(const int from, const int to) const {
AKLOGI("BufSize: %d", mBuffer.getTailPosition());
for (int i = from; i < to; ++i) {
diff --git a/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.h b/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.h
index db278f5f1..8b33346e6 100644
--- a/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.h
+++ b/native/jni/src/suggest/policyimpl/dictionary/utils/trie_map.h
@@ -160,6 +160,8 @@ class TrieMap {
static const uint64_t MAX_VALUE;
TrieMap();
+ // Construct TrieMap using existing data in the memory region written by save().
+ TrieMap(uint8_t *const buffer, const int bufferSize);
void dump(const int from = 0, const int to = 0) const;
bool isNearSizeLimit() const {