diff options
author | Peng Wu <alexepico@gmail.com> | 2011-08-10 12:09:36 +0800 |
---|---|---|
committer | Peng Wu <alexepico@gmail.com> | 2011-08-10 12:09:36 +0800 |
commit | e4fa0bfd58813a248674bd41b5dcf61e9be3bdeb (patch) | |
tree | a6a9be6736720d3adc1859b02b057493a2ce274a /src/storage/phrase_index.h | |
parent | 46a79d1e62a25c81f151e2e68244429ffdcf6731 (diff) | |
download | libpinyin-e4fa0bfd58813a248674bd41b5dcf61e9be3bdeb.tar.gz libpinyin-e4fa0bfd58813a248674bd41b5dcf61e9be3bdeb.tar.xz libpinyin-e4fa0bfd58813a248674bd41b5dcf61e9be3bdeb.zip |
write phrase index logger in progress
Diffstat (limited to 'src/storage/phrase_index.h')
-rw-r--r-- | src/storage/phrase_index.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/storage/phrase_index.h b/src/storage/phrase_index.h index 2dcad26..f2648e8 100644 --- a/src/storage/phrase_index.h +++ b/src/storage/phrase_index.h @@ -168,6 +168,10 @@ public: bool store(MemoryChunk * new_chunk, table_offset_t offset, table_offset_t & end); + /* switch to logger format to reduce user storage */ + bool diff(SubPhraseIndex * oldone, PhraseIndexLogger * logger); + bool merge(PhraseIndexLogger * logger); + /* get token range in this sub phrase */ int get_range(/* out */ PhraseIndexRange & range); @@ -183,6 +187,7 @@ public: * from m_total_freq */ int remove_phrase_item(phrase_token_t token, /* out */ PhraseItem * & item); + }; class FacadePhraseIndex{ @@ -211,6 +216,12 @@ public: bool store(guint8 phrase_index, MemoryChunk * new_chunk); bool unload(guint8 phrase_index); + /* load/store logger format. + the ownership of oldchunk and log is transfered to here. */ + bool diff(guint8 phrase_index, MemoryChunk * oldchunk, + MemoryChunk * newlog); + bool merge(guint8 phrase_index, MemoryChunk * log); + /* compat all SubPhraseIndex m_phrase_content memory usage.*/ bool compat(); @@ -262,6 +273,7 @@ public: m_total_freq -= item->get_unigram_frequency(); return result; } + }; }; |