1: #ifndef _dic_main_h_included_
2: #define _dic_main_h_included_
3:
4: #include <anthy/dic.h>
5: #include <anthy/word_dic.h>
6: #include <anthy/wtype.h>
7: #include <anthy/xstr.h>
8:
9:
10:
11: #define FREQ_RATIO 8
12:
13:
14:
15: int anthy_init_dic_cache(void);
16: struct seq_ent *anthy_cache_get_seq_ent(xstr *x, int is_reverse);
17:
18:
19:
20:
21: struct gang_elm {
22: char *key;
23: xstr xs;
24: union {
25:
26: int idx;
27: struct gang_elm *next;
28: } tmp;
29: };
30: struct seq_ent *anthy_cache_get_seq_ent(xstr *xs, int is_reverse);
31: struct seq_ent *anthy_validate_seq_ent(struct seq_ent *seq, xstr *xs,
32: int is_reverse);
33:
34:
35:
36: void anthy_init_word_dic(void);
37: struct word_dic* anthy_create_word_dic(void);
38: void anthy_release_word_dic(struct word_dic *);
39: void anthy_gang_fill_seq_ent(struct word_dic *wd,
40: struct gang_elm **array, int nr,
41: int is_reverse);
42:
43:
44:
45: void anthy_init_use_dic(void);
46: void anthy_quit_use_dic(void);
47: int anthy_word_dic_check_word_relation(struct word_dic *,
48: int from, int to);
49:
50: struct dic_session *anthy_create_session(void);
51: void anthy_activate_session(struct dic_session *);
52: void anthy_release_session(struct dic_session *);
53: int anthy_get_current_session_mask(void);
54:
55:
56: void anthy_init_mem_dic(void);
57: void anthy_quit_mem_dic(void);
58: struct mem_dic * anthy_create_mem_dic(void);
59: void anthy_release_mem_dic(struct mem_dic * );
60:
61: struct seq_ent *anthy_mem_dic_alloc_seq_ent_by_xstr(struct mem_dic * d,
62: xstr *, int is_reverse);
63:
64: struct seq_ent *anthy_mem_dic_find_seq_ent_by_xstr(struct mem_dic * d,
65: xstr *, int is_reverse);
66:
67: void anthy_mem_dic_push_back_dic_ent(struct seq_ent *se, int is_compound,
68: xstr *xs, wtype_t wt,
69: const char *wt_name, int freq,
70: int feature);
71: void anthy_mem_dic_release_seq_ent(struct mem_dic * d, xstr *, int is_reverse);
72:
73:
74:
75: void anthy_init_private_dic(const char *id);
76: void anthy_copy_words_from_private_dic(struct seq_ent *seq, xstr *xs,
77: int is_reverse);
78: void anthy_release_private_dic(void);
79: void anthy_check_user_dir(void);
80: void anthy_priv_dic_lock(void);
81: void anthy_priv_dic_unlock(void);
82: void anthy_priv_dic_update(void);
83: struct word_line {
84: char wt[10];
85: int freq;
86: const char *word;
87: };
88: int anthy_parse_word_line(const char *line, struct word_line *res);
89: struct textdict;
90: void anthy_ask_scan(void (*request_scan)(struct textdict *, void *),
91: void *arg);
92:
93: #endif