diff options
author | Peng Wu <alexepico@gmail.com> | 2013-04-08 11:52:24 +0800 |
---|---|---|
committer | Peng Wu <alexepico@gmail.com> | 2013-04-08 11:55:01 +0800 |
commit | 2b6bbbf8d0f60ed83aec91db3cc0c6796c079d29 (patch) | |
tree | 22b56345f405f0ed4f3506bea6a78a31d0824148 | |
parent | 415ccb56e84167f11bead9a1ca27be2e5216ba10 (diff) | |
download | libpinyin-2b6bbbf8d0f60ed83aec91db3cc0c6796c079d29.tar.gz libpinyin-2b6bbbf8d0f60ed83aec91db3cc0c6796c079d29.tar.xz libpinyin-2b6bbbf8d0f60ed83aec91db3cc0c6796c079d29.zip |
fixes compile
-rw-r--r-- | src/include/novel_types.h | 11 | ||||
-rw-r--r-- | src/storage/Makefile.am | 6 | ||||
-rw-r--r-- | src/storage/phrase_index.cpp | 24 | ||||
-rw-r--r-- | src/storage/phrase_index.h | 17 | ||||
-rw-r--r-- | src/storage/table_info.cpp | 26 | ||||
-rw-r--r-- | src/storage/table_info.h | 19 |
6 files changed, 37 insertions, 66 deletions
diff --git a/src/include/novel_types.h b/src/include/novel_types.h index 6dcacb7..0ef845f 100644 --- a/src/include/novel_types.h +++ b/src/include/novel_types.h @@ -147,17 +147,6 @@ typedef enum { GB_DICTIONARY = 1, GBK_DICTIONARY = 2, MERGED_DICTIONARY = 3, - ART_DICTIONARY, - CULTURE_DICTIONARY, - ECONOMY_DICTIONARY, - GEOLOGY_DICTIONARY, - HISTORY_DICTIONARY, - LIFE_DICTIONARY, - NATURE_DICTIONARY, - SCITECH_DICTIONARY, - SOCIETY_DICTIONARY, - SPORT_DICTIONARY, - RESERVED1, USER_DICTIONARY = 15 } PHRASE_INDEX_LIBRARIES; diff --git a/src/storage/Makefile.am b/src/storage/Makefile.am index 8e78568..d805f18 100644 --- a/src/storage/Makefile.am +++ b/src/storage/Makefile.am @@ -39,7 +39,8 @@ noinst_HEADERS = chewing_enum.h \ pinyin_phrase2.h \ chewing_large_table.h \ facade_chewing_table.h \ - facade_phrase_table2.h + facade_phrase_table2.h \ + table_info.h noinst_LTLIBRARIES = libstorage.la @@ -53,5 +54,6 @@ libstorage_la_SOURCES = phrase_index.cpp \ ngram.cpp \ tag_utility.cpp \ pinyin_parser2.cpp \ - chewing_large_table.cpp + chewing_large_table.cpp \ + table_info.cpp diff --git a/src/storage/phrase_index.cpp b/src/storage/phrase_index.cpp index c462fef..5f468b3 100644 --- a/src/storage/phrase_index.cpp +++ b/src/storage/phrase_index.cpp @@ -699,30 +699,6 @@ bool FacadePhraseIndex::mask_out(guint8 phrase_index, } namespace pinyin{ -const pinyin_table_info_t pinyin_phrase_files[PHRASE_INDEX_LIBRARY_COUNT] = - { - {RESERVED, NULL, NULL, NULL, NOT_USED}, - {GB_DICTIONARY, "gb_char.table", "gb_char.bin", "gb_char.dbin", SYSTEM_FILE}, - {GBK_DICTIONARY, "gbk_char.table", "gbk_char.bin", "gbk_char.dbin", SYSTEM_FILE}, - - {MERGED_DICTIONARY, "merged.table", "merged.bin", "merged.dbin", SYSTEM_FILE}, - - {ART_DICTIONARY, "art.table", "art.bin", "art.dbin", DICTIONARY}, - {CULTURE_DICTIONARY, "culture.table", "culture.bin", "culture.dbin", DICTIONARY}, - {ECONOMY_DICTIONARY, "economy.table", "economy.bin", "economy.dbin", DICTIONARY}, - {GEOLOGY_DICTIONARY, "geology.table", "geology.bin", "geology.dbin", DICTIONARY}, - {HISTORY_DICTIONARY, "history.table", "history.bin", "history.dbin", DICTIONARY}, - - {LIFE_DICTIONARY, "life.table", "life.bin", "life.dbin", DICTIONARY}, - {NATURE_DICTIONARY, "nature.table", "nature.bin", "nature.dbin", DICTIONARY}, - {SCITECH_DICTIONARY, "scitech.table", "scitech.bin", "scitech.dbin", DICTIONARY}, - {SOCIETY_DICTIONARY, "society.table", "society.bin", "society.dbin", DICTIONARY}, - {SPORT_DICTIONARY, "sport.table", "sport.bin", "sport.dbin", DICTIONARY}, - - {RESERVED1, NULL, NULL, NULL, NOT_USED}, - - {USER_DICTIONARY, NULL, NULL, "user.bin", USER_FILE} - }; static bool _peek_header(PhraseIndexLogger * logger, diff --git a/src/storage/phrase_index.h b/src/storage/phrase_index.h index 0ecfbec..e1dad0b 100644 --- a/src/storage/phrase_index.h +++ b/src/storage/phrase_index.h @@ -831,23 +831,6 @@ public: } }; -typedef enum { - NOT_USED, /* not used. */ - SYSTEM_FILE, /* system phrase file. */ - DICTIONARY, /* professional dictionary. */ - USER_FILE, /* user only phrase file. */ -} PHRASE_FILE_TYPE; - -typedef struct { - const guint8 m_dict_index; /* for assert purpose. */ - const char * m_table_filename; - const char * m_system_filename; - const char * m_user_filename; - PHRASE_FILE_TYPE m_file_type; -} pinyin_table_info_t; - -extern const pinyin_table_info_t pinyin_phrase_files[PHRASE_INDEX_LIBRARY_COUNT]; - PhraseIndexLogger * mask_out_phrase_index_logger (PhraseIndexLogger * oldlogger, phrase_token_t mask, phrase_token_t value); diff --git a/src/storage/table_info.cpp b/src/storage/table_info.cpp index 12cd970..fd2d2f4 100644 --- a/src/storage/table_info.cpp +++ b/src/storage/table_info.cpp @@ -22,6 +22,7 @@ #include "table_info.h" #include <stdio.h> #include <assert.h> +#include <string.h> using namespace pinyin; @@ -67,12 +68,13 @@ void SystemTableInfo::reset() { for (i = 0; i < PHRASE_INDEX_LIBRARY_COUNT; ++i) { pinyin_table_info_t * tableinfo = &m_table_info[i]; - g_free(tableinfo->m_table_filename); + g_free((gchar *)tableinfo->m_table_filename); tableinfo->m_table_filename = NULL; - g_free(tableinfo->m_system_filename); + g_free((gchar *)tableinfo->m_system_filename); tableinfo->m_system_filename = NULL; - g_free(tableinfo->m_user_filename); + g_free((gchar *)tableinfo->m_user_filename); tableinfo->m_user_filename = NULL; + tableinfo->m_file_type = NOT_USED; } } @@ -80,7 +82,7 @@ void SystemTableInfo::reset() { void SystemTableInfo::postfix_tables() { size_t i; for (i = 0; i < G_N_ELEMENTS(reserved_tables); ++i) { - pinyin_table_info_t * postfix = &reserved_tables[i]; + const pinyin_table_info_t * postfix = &reserved_tables[i]; guint8 index = postfix->m_dict_index; pinyin_table_info_t * tableinfo = &m_table_info[index]; @@ -150,8 +152,8 @@ bool SystemTableInfo::load(const char * filename) { int index = 0; char tablefile[256], sysfile[256], userfile[256], filetype[256]; - while (!feof(infile)){ - num = fscanf("%d %s %s %s %s", + while (!feof(input)) { + num = fscanf(input, "%d %s %s %s %s", &index, tablefile, sysfile, userfile, filetype); if (5 != num) @@ -164,11 +166,11 @@ bool SystemTableInfo::load(const char * filename) { pinyin_table_info_t * tableinfo = &m_table_info[index]; assert(index == tableinfo->m_dict_index); - table_info->m_table_filename = to_string(tablefile); - table_info->m_system_filename = to_string(sysfile); - table_info->m_user_filename = to_string(userfile); + tableinfo->m_table_filename = to_string(tablefile); + tableinfo->m_system_filename = to_string(sysfile); + tableinfo->m_user_filename = to_string(userfile); - table_info->m_file_type = to_file_type(filetype); + tableinfo->m_file_type = to_file_type(filetype); } fclose(input); @@ -197,7 +199,7 @@ void UserTableInfo::reset() { m_model_data_version = 0; } -bool UserTableInfo::load(cosnt char * filename) { +bool UserTableInfo::load(const char * filename) { reset(); FILE * input = fopen(filename, "r"); @@ -231,7 +233,7 @@ bool UserTableInfo::load(cosnt char * filename) { bool UserTableInfo::save(const char * filename) { FILE * output = fopen(filename, "w"); if (NULL == output) { - fprintf(stderr, "write %s failed.\n", output); + fprintf(stderr, "write %s failed.\n", filename); return false; } diff --git a/src/storage/table_info.h b/src/storage/table_info.h index 8feee95..8d7fa05 100644 --- a/src/storage/table_info.h +++ b/src/storage/table_info.h @@ -22,8 +22,27 @@ #ifndef TABLE_INFO_H #define TABLE_INFO_H +#include "novel_types.h" + + namespace pinyin{ +typedef enum { + NOT_USED, /* not used. */ + SYSTEM_FILE, /* system phrase file. */ + DICTIONARY, /* professional dictionary. */ + USER_FILE, /* user only phrase file. */ +} PHRASE_FILE_TYPE; + +typedef struct { + guint8 m_dict_index; /* for assert purpose. */ + const gchar * m_table_filename; + const gchar * m_system_filename; + const gchar * m_user_filename; + PHRASE_FILE_TYPE m_file_type; +} pinyin_table_info_t; + + class UserTableInfo; class SystemTableInfo{ |