00001
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef UNIHAN_ENUM_H_
00032 #define UNIHAN_ENUM_H_
00033 #include <glib.h>
00034 #include <sqlite3.h>
00035
00065 typedef enum{
00066 UNIHAN_INVALID_FIELD=-1,
00067 UNIHAN_FIELD_CODE,
00068 UNIHAN_FIELD_KACCOUNTINGNUMERIC,
00069 UNIHAN_FIELD_KBIGFIVE,
00070 UNIHAN_FIELD_KCANGJIE,
00071 UNIHAN_FIELD_KCANTONESE,
00072 UNIHAN_FIELD_KCCCII,
00073 UNIHAN_FIELD_KCHEUNGBAUER,
00074 UNIHAN_FIELD_KCHEUNGBAUERINDEX,
00075 UNIHAN_FIELD_KCIHAIT,
00076 UNIHAN_FIELD_KCNS1986,
00077 UNIHAN_FIELD_KCNS1992,
00078 UNIHAN_FIELD_KCOMPATIBILITYVARIANT,
00079 UNIHAN_FIELD_KCOWLES,
00080 UNIHAN_FIELD_KDAEJAWEON,
00081 UNIHAN_FIELD_KDEFINITION,
00082 UNIHAN_FIELD_KEACC,
00083 UNIHAN_FIELD_KFENN,
00084 UNIHAN_FIELD_KFENNINDEX,
00085 UNIHAN_FIELD_KFOURCORNERCODE,
00086 UNIHAN_FIELD_KFREQUENCY,
00087 UNIHAN_FIELD_KGB0,
00088 UNIHAN_FIELD_KGB1,
00089 UNIHAN_FIELD_KGB3,
00090 UNIHAN_FIELD_KGB5,
00091 UNIHAN_FIELD_KGB7,
00092 UNIHAN_FIELD_KGB8,
00093
00094 UNIHAN_FIELD_KGRADELEVEL,
00095 UNIHAN_FIELD_KGSR,
00096 UNIHAN_FIELD_KHANGUL,
00097 UNIHAN_FIELD_KHANYU,
00098 UNIHAN_FIELD_KHANYUPINLU,
00099 UNIHAN_FIELD_KHDZRADBREAK,
00100 UNIHAN_FIELD_KHKGLYPH,
00101 UNIHAN_FIELD_KHKSCS,
00102 UNIHAN_FIELD_KIBMJAPAN,
00103 UNIHAN_FIELD_KIICORE,
00104 UNIHAN_FIELD_KIRGDAEJAWEON,
00105 UNIHAN_FIELD_KIRGDAIKANWAZITEN,
00106 UNIHAN_FIELD_KIRGHANYUDAZIDIAN,
00107 UNIHAN_FIELD_KIRGKANGXI,
00108 UNIHAN_FIELD_KIRG_GSOURCE,
00109 UNIHAN_FIELD_KIRG_HSOURCE,
00110 UNIHAN_FIELD_KIRG_JSOURCE,
00111 UNIHAN_FIELD_KIRG_KPSOURCE,
00112 UNIHAN_FIELD_KIRG_KSOURCE,
00113 UNIHAN_FIELD_KIRG_TSOURCE,
00114 UNIHAN_FIELD_KIRG_USOURCE,
00115 UNIHAN_FIELD_KIRG_VSOURCE,
00116 UNIHAN_FIELD_KJAPANESEKUN,
00117 UNIHAN_FIELD_KJAPANESEON,
00118 UNIHAN_FIELD_KJIS0213,
00119 UNIHAN_FIELD_KJIS0,
00120 UNIHAN_FIELD_KJIS1,
00121 UNIHAN_FIELD_KKANGXI,
00122 UNIHAN_FIELD_KKARLGREN,
00123 UNIHAN_FIELD_KKOREAN,
00124 UNIHAN_FIELD_KKPS0,
00125 UNIHAN_FIELD_KKPS1,
00126 UNIHAN_FIELD_KKSC0,
00127 UNIHAN_FIELD_KKSC1,
00128 UNIHAN_FIELD_KLAU,
00129 UNIHAN_FIELD_KMAINLANDTELEGRAPH,
00130 UNIHAN_FIELD_KMANDARIN,
00131 UNIHAN_FIELD_KMATTHEWS,
00132 UNIHAN_FIELD_KMEYERWEMPE,
00133 UNIHAN_FIELD_KMOROHASHI,
00134 UNIHAN_FIELD_KNELSON,
00135 UNIHAN_FIELD_KOTHERNUMERIC,
00136 UNIHAN_FIELD_KPHONETIC,
00137 UNIHAN_FIELD_KPRIMARYNUMERIC,
00138 UNIHAN_FIELD_KPSEUDOGB1,
00139 UNIHAN_FIELD_KRSADOBE_JAPAN1_6,
00140 UNIHAN_FIELD_KRSJAPANESE,
00141 UNIHAN_FIELD_KRSKANGXI,
00142 UNIHAN_FIELD_KRSKANWA,
00143 UNIHAN_FIELD_KRSKOREAN,
00144 UNIHAN_FIELD_KRSUNICODE,
00145 UNIHAN_FIELD_KSBGY,
00146 UNIHAN_FIELD_KSEMANTICVARIANT,
00147 UNIHAN_FIELD_KSIMPLIFIEDVARIANT,
00148 UNIHAN_FIELD_KSPECIALIZEDSEMANTICVARIANT,
00149 UNIHAN_FIELD_KTAIWANTELEGRAPH,
00150 UNIHAN_FIELD_KTANG,
00151 UNIHAN_FIELD_KTOTALSTROKES,
00152 UNIHAN_FIELD_KTRADITIONALVARIANT,
00153 UNIHAN_FIELD_KVIETNAMESE,
00154 UNIHAN_FIELD_KXEROX,
00155 UNIHAN_FIELD_KXHC1983,
00156 UNIHAN_FIELD_KZVARIANT,
00157
00158 UNIHAN_FIELD_UTF8,
00159
00160 UNIHAN_FIELD_IRG_SOURCE_SHORT_NAME,
00161 UNIHAN_FIELD_IRG_SOURCE_MAPPING,
00162
00163 UNIHAN_FIELD_VARIANT_TYPE,
00164 UNIHAN_FIELD_VARIANT_CODE,
00165
00166 UNIHAN_FIELD_FROM_DICT,
00167 UNIHAN_FIELD_SEMANTIC_T,
00168 UNIHAN_FIELD_SEMANTIC_B,
00169 UNIHAN_FIELD_SEMANTIC_Z,
00170
00171 UNIHAN_FIELD_RADICAL_INDEX,
00172 UNIHAN_FIELD_ADDITIONAL_STROKE_COUNT,
00173
00174 UNIHAN_FIELD_ADOBE_CID_CV,
00175 UNIHAN_FIELD_ADOBE_CID,
00176 UNIHAN_FIELD_ADOBE_CID_RADICAL_STROKE_COUNT,
00177
00178 UNIHAN_FIELD_KANGXI_PAGE,
00179 UNIHAN_FIELD_KANGXI_CHARNUM,
00180 UNIHAN_FIELD_KANGXI_VIRTUAL,
00181
00182 UNIHAN_FIELD_FREQ_RANK,
00183
00184 UNIHAN_FIELD_PINYIN,
00185 UNIHAN_FIELD_PINYIN_FREQ,
00186
00187 UNIHAN_FIELD_ZVARIANT_SOURCE
00188 } UnihanField;
00189
00193 #define UNIHAN_FIELDS_COUNT UNIHAN_FIELD_ZVARIANT_SOURCE+1
00194
00235 typedef enum{
00236 UNIHAN_INVALID_TABLE=-2,
00237 UNIHAN_AMBIGUOUS_TABLE=-1,
00238 UNIHAN_TABLE_KACCOUNTINGNUMERIC,
00239 UNIHAN_TABLE_KBIGFIVE,
00240 UNIHAN_TABLE_KCANGJIE,
00241 UNIHAN_TABLE_KCANTONESE,
00242 UNIHAN_TABLE_KCCCII,
00243 UNIHAN_TABLE_KCHEUNGBAUER,
00244 UNIHAN_TABLE_KCHEUNGBAUERINDEX,
00245 UNIHAN_TABLE_KCIHAIT,
00246 UNIHAN_TABLE_KCNS1986,
00247 UNIHAN_TABLE_KCNS1992,
00248 UNIHAN_TABLE_KCOMPATIBILITYVARIANT,
00249 UNIHAN_TABLE_KCOWLES,
00250 UNIHAN_TABLE_KDAEJAWEON,
00251 UNIHAN_TABLE_KDEFINITION,
00252 UNIHAN_TABLE_KEACC,
00253 UNIHAN_TABLE_KFENN,
00254 UNIHAN_TABLE_KFENNINDEX,
00255 UNIHAN_TABLE_KFOURCORNERCODE,
00256 UNIHAN_TABLE_KFREQUENCY,
00257 UNIHAN_TABLE_KGB0,
00258 UNIHAN_TABLE_KGB1,
00259 UNIHAN_TABLE_KGB3,
00260 UNIHAN_TABLE_KGB5,
00261 UNIHAN_TABLE_KGB7,
00262 UNIHAN_TABLE_KGB8,
00263 UNIHAN_TABLE_KGRADELEVEL,
00264 UNIHAN_TABLE_KGSR,
00265 UNIHAN_TABLE_KHANGUL,
00266 UNIHAN_TABLE_KHANYU,
00267 UNIHAN_TABLE_KHANYUPINLU,
00268 UNIHAN_TABLE_KHDZRADBREAK,
00269 UNIHAN_TABLE_KHKGLYPH,
00270 UNIHAN_TABLE_KHKSCS,
00271 UNIHAN_TABLE_KIBMJAPAN,
00272 UNIHAN_TABLE_KIICORE,
00273 UNIHAN_TABLE_KIRGDAEJAWEON,
00274 UNIHAN_TABLE_KIRGDAIKANWAZITEN,
00275 UNIHAN_TABLE_KIRGHANYUDAZIDIAN,
00276 UNIHAN_TABLE_KIRGKANGXI,
00277 UNIHAN_TABLE_KJAPANESEKUN,
00278 UNIHAN_TABLE_KJAPANESEON,
00279 UNIHAN_TABLE_KJIS0213,
00280 UNIHAN_TABLE_KJIS0,
00281 UNIHAN_TABLE_KJIS1,
00282 UNIHAN_TABLE_KKANGXI,
00283 UNIHAN_TABLE_KKARLGREN,
00284 UNIHAN_TABLE_KKOREAN,
00285 UNIHAN_TABLE_KKPS0,
00286 UNIHAN_TABLE_KKPS1,
00287 UNIHAN_TABLE_KKSC0,
00288 UNIHAN_TABLE_KKSC1,
00289 UNIHAN_TABLE_KLAU,
00290 UNIHAN_TABLE_KMAINLANDTELEGRAPH,
00291 UNIHAN_TABLE_KMANDARIN,
00292 UNIHAN_TABLE_KMATTHEWS,
00293 UNIHAN_TABLE_KMEYERWEMPE,
00294 UNIHAN_TABLE_KMOROHASHI,
00295 UNIHAN_TABLE_KNELSON,
00296 UNIHAN_TABLE_KOTHERNUMERIC,
00297 UNIHAN_TABLE_KPHONETIC,
00298 UNIHAN_TABLE_KPRIMARYNUMERIC,
00299 UNIHAN_TABLE_KPSEUDOGB1,
00300 UNIHAN_TABLE_KRSADOBE_JAPAN1_6,
00301 UNIHAN_TABLE_KRSJAPANESE,
00302 UNIHAN_TABLE_KRSKANGXI,
00303 UNIHAN_TABLE_KRSKANWA,
00304 UNIHAN_TABLE_KRSKOREAN,
00305 UNIHAN_TABLE_KRSUNICODE,
00306 UNIHAN_TABLE_KSBGY,
00307 UNIHAN_TABLE_KSEMANTICVARIANT,
00308 UNIHAN_TABLE_KSIMPLIFIEDVARIANT,
00309 UNIHAN_TABLE_KSPECIALIZEDSEMANTICVARIANT,
00310 UNIHAN_TABLE_KTAIWANTELEGRAPH,
00311 UNIHAN_TABLE_KTANG,
00312 UNIHAN_TABLE_KTOTALSTROKES,
00313 UNIHAN_TABLE_KTRADITIONALVARIANT,
00314 UNIHAN_TABLE_KVIETNAMESE,
00315 UNIHAN_TABLE_KXEROX,
00316 UNIHAN_TABLE_KXHC1983,
00317 UNIHAN_TABLE_KZVARIANT,
00318
00319 UNIHAN_TABLE_UTF8,
00320 UNIHAN_TABLE_IRG_SOURCE,
00321 UNIHAN_TABLE_IRG_SOURCE_MAPPING,
00322 UNIHAN_TABLE_KSEMANTICVARIANT_EXTRA,
00323 UNIHAN_TABLE_KSPECIALIZEDSEMANTICVARIANT_EXTRA,
00324 UNIHAN_TABLE_KZVARIANT_EXTRA
00325 } UnihanTable;
00326
00330 #define UNIHAN_TABLES_COUNT UNIHAN_TABLE_KZVARIANT_EXTRA +1
00331
00340 typedef enum{
00341 UNIHAN_INVALID_IRG_SOURCE=-1,
00342 UNIHAN_IRG_SOURCE_G,
00343 UNIHAN_IRG_SOURCE_H,
00344 UNIHAN_IRG_SOURCE_J,
00345 UNIHAN_IRG_SOURCE_KP,
00346 UNIHAN_IRG_SOURCE_K,
00347 UNIHAN_IRG_SOURCE_T,
00348 UNIHAN_IRG_SOURCE_U,
00349 UNIHAN_IRG_SOURCE_V
00350 } UnihanIRG_Source;
00351
00355 #define UNIHAN_IRG_SOURCES_COUNT UNIHAN_IRG_SOURCE_V+1
00356
00364 typedef enum{
00365 UNIHAN_INVALID_SOURCEID=-1,
00366 UNIHAN_SOURCE_G0,
00367 UNIHAN_SOURCE_G1,
00368 UNIHAN_SOURCE_G3,
00369 UNIHAN_SOURCE_G5,
00370 UNIHAN_SOURCE_G7,
00371 UNIHAN_SOURCE_GS,
00372 UNIHAN_SOURCE_G8,
00373 UNIHAN_SOURCE_GE,
00374 UNIHAN_SOURCE_G9,
00375 UNIHAN_SOURCE_G4K,
00376 UNIHAN_SOURCE_GBK,
00377 UNIHAN_SOURCE_GCH,
00378 UNIHAN_SOURCE_GCY,
00379 UNIHAN_SOURCE_GFZ,
00380 UNIHAN_SOURCE_GFZ_BK,
00381 UNIHAN_SOURCE_GHC,
00382 UNIHAN_SOURCE_GHZ,
00383 UNIHAN_SOURCE_GKX,
00384
00385 UNIHAN_SOURCE_H,
00386 UNIHAN_SOURCE_J0,
00387 UNIHAN_SOURCE_J1,
00388 UNIHAN_SOURCE_JA,
00389 UNIHAN_SOURCE_J3,
00390 UNIHAN_SOURCE_J3A,
00391 UNIHAN_SOURCE_J4,
00392
00393 UNIHAN_SOURCE_KP0,
00394 UNIHAN_SOURCE_KP1,
00395
00396 UNIHAN_SOURCE_K0,
00397 UNIHAN_SOURCE_K1,
00398 UNIHAN_SOURCE_K2,
00399 UNIHAN_SOURCE_K3,
00400 UNIHAN_SOURCE_K4,
00401
00402 UNIHAN_SOURCE_T1,
00403 UNIHAN_SOURCE_T2,
00404 UNIHAN_SOURCE_T3,
00405 UNIHAN_SOURCE_T4,
00406 UNIHAN_SOURCE_T5,
00407 UNIHAN_SOURCE_T6,
00408 UNIHAN_SOURCE_T7,
00409 UNIHAN_SOURCE_TF,
00410
00411 UNIHAN_SOURCE_U,
00412
00413 UNIHAN_SOURCE_V0,
00414 UNIHAN_SOURCE_V1,
00415 UNIHAN_SOURCE_V2,
00416 UNIHAN_SOURCE_V3,
00417 } UnihanIRG_SourceId;
00418
00422 #define UNIHAN_SOURCES_COUNT UNIHAN_SOURCE_V3+1
00423
00424
00428 typedef enum{
00429 UNIHAN_INVALID_LOCALE=-1,
00430 UNIHAN_LOCALE_JA_JP,
00431 UNIHAN_LOCALE_KO_KP,
00432 UNIHAN_LOCALE_KO_KR,
00433 UNIHAN_LOCALE_ZH_CN,
00434 UNIHAN_LOCALE_ZH_HK,
00435 UNIHAN_LOCALE_ZH_SG,
00436 UNIHAN_LOCALE_ZH_TW,
00437 UNIHAN_LOCALE_VI_VN,
00438 } UnihanLocale;
00442 #define UNIHAN_LOCALES_COUNT UNIHAN_LOCALE_VI_VN+1
00443
00453 typedef enum{
00454 UNIHAN_INVALID_RANGE=-1,
00455 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS_EXT_A,
00456 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS,
00457 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS_4_1,
00458 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS_5_1,
00459 UNIHAN_RANGE_CJK_COMPATIBILITY_UNIFIED_IDEOGRAPHS_A,
00460 UNIHAN_RANGE_CJK_COMPATIBILITY_UNIFIED_IDEOGRAPHS_B,
00461 UNIHAN_RANGE_CJK_COMPATIBILITY_UNIFIED_IDEOGRAPHS_4_1,
00462 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS_EXT_B,
00463 UNIHAN_RANGE_CJK_COMPATIBILITY_SUPPLEMENT
00464 } UnihanRange;
00468 #define UNIHAN_RANGES_COUNT UNIHAN_RANGE_CJK_COMPATIBILITY_SUPPLEMENT+1
00469
00478 #define LOCALE_JA_JP_SOURCES_COMMON UNIHAN_SOURCE_J0, UNIHAN_INVALID_SOURCEID
00479
00483 #define LOCALE_KO_KP_SOURCES_COMMON UNIHAN_SOURCE_KP0, UNIHAN_INVALID_SOURCEID
00484
00488 #define LOCALE_KO_KR_SOURCES_COMMON UNIHAN_SOURCE_K0, UNIHAN_INVALID_SOURCEID
00489
00493 #define LOCALE_ZH_CN_SOURCES_COMMON UNIHAN_SOURCE_G0, UNIHAN_INVALID_SOURCEID
00494
00498 #define LOCALE_ZH_HK_SOURCES_COMMON UNIHAN_SOURCE_T1, UNIHAN_SOURCE_T2, UNIHAN_SOURCE_H, UNIHAN_INVALID_SOURCEID
00499
00503 #define LOCALE_ZH_SG_SOURCES_COMMON UNIHAN_SOURCE_G0, UNIHAN_SOURCE_GS, UNIHAN_INVALID_SOURCEID
00504
00508 #define LOCALE_ZH_TW_SOURCES_COMMON UNIHAN_SOURCE_T1, UNIHAN_SOURCE_T2, UNIHAN_INVALID_SOURCEID
00509
00513 #define LOCALE_VI_VN_SOURCES_COMMON UNIHAN_SOURCE_V0, UNIHAN_INVALID_SOURCEID
00514
00515 #endif
00516