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
00067 typedef enum{
00068 UNIHAN_INVALID_FIELD=-1,
00069 UNIHAN_FIELD_CODE,
00070 UNIHAN_FIELD_KACCOUNTINGNUMERIC,
00071 UNIHAN_FIELD_KBIGFIVE,
00072 UNIHAN_FIELD_KCANGJIE,
00073 UNIHAN_FIELD_KCANTONESE,
00074 UNIHAN_FIELD_KCCCII,
00075 UNIHAN_FIELD_KCHEUNGBAUER,
00076 UNIHAN_FIELD_KCHEUNGBAUERINDEX,
00077 UNIHAN_FIELD_KCIHAIT,
00078 UNIHAN_FIELD_KCNS1986,
00079 UNIHAN_FIELD_KCNS1992,
00080 UNIHAN_FIELD_KCOMPATIBILITYVARIANT,
00081 UNIHAN_FIELD_KCOWLES,
00082 UNIHAN_FIELD_KDAEJAWEON,
00083 UNIHAN_FIELD_KDEFINITION,
00084 UNIHAN_FIELD_KEACC,
00085 UNIHAN_FIELD_KFENN,
00086 UNIHAN_FIELD_KFENNINDEX,
00087 UNIHAN_FIELD_KFOURCORNERCODE,
00088 UNIHAN_FIELD_KFREQUENCY,
00089 UNIHAN_FIELD_KGB0,
00090 UNIHAN_FIELD_KGB1,
00091 UNIHAN_FIELD_KGB3,
00092 UNIHAN_FIELD_KGB5,
00093 UNIHAN_FIELD_KGB7,
00094 UNIHAN_FIELD_KGB8,
00095
00096 UNIHAN_FIELD_KGRADELEVEL,
00097 UNIHAN_FIELD_KGSR,
00098 UNIHAN_FIELD_KHANGUL,
00099 UNIHAN_FIELD_KHANYU,
00100 UNIHAN_FIELD_KHANYUPINLU,
00101 UNIHAN_FIELD_KHDZRADBREAK,
00102 UNIHAN_FIELD_KHKGLYPH,
00103 UNIHAN_FIELD_KHKSCS,
00104 UNIHAN_FIELD_KIBMJAPAN,
00105 UNIHAN_FIELD_KIICORE,
00106 UNIHAN_FIELD_KIRGDAEJAWEON,
00107 UNIHAN_FIELD_KIRGDAIKANWAZITEN,
00108 UNIHAN_FIELD_KIRGHANYUDAZIDIAN,
00109 UNIHAN_FIELD_KIRGKANGXI,
00110 UNIHAN_FIELD_KIRG_GSOURCE,
00111 UNIHAN_FIELD_KIRG_HSOURCE,
00112 UNIHAN_FIELD_KIRG_JSOURCE,
00113 UNIHAN_FIELD_KIRG_KPSOURCE,
00114 UNIHAN_FIELD_KIRG_KSOURCE,
00115 UNIHAN_FIELD_KIRG_TSOURCE,
00116 UNIHAN_FIELD_KIRG_USOURCE,
00117 UNIHAN_FIELD_KIRG_VSOURCE,
00118 UNIHAN_FIELD_KJAPANESEKUN,
00119 UNIHAN_FIELD_KJAPANESEON,
00120 UNIHAN_FIELD_KJIS0213,
00121 UNIHAN_FIELD_KJIS0,
00122 UNIHAN_FIELD_KJIS1,
00123 UNIHAN_FIELD_KKANGXI,
00124 UNIHAN_FIELD_KKARLGREN,
00125 UNIHAN_FIELD_KKOREAN,
00126 UNIHAN_FIELD_KKPS0,
00127 UNIHAN_FIELD_KKPS1,
00128 UNIHAN_FIELD_KKSC0,
00129 UNIHAN_FIELD_KKSC1,
00130 UNIHAN_FIELD_KLAU,
00131 UNIHAN_FIELD_KMAINLANDTELEGRAPH,
00132 UNIHAN_FIELD_KMANDARIN,
00133 UNIHAN_FIELD_KMATTHEWS,
00134 UNIHAN_FIELD_KMEYERWEMPE,
00135 UNIHAN_FIELD_KMOROHASHI,
00136 UNIHAN_FIELD_KNELSON,
00137 UNIHAN_FIELD_KOTHERNUMERIC,
00138 UNIHAN_FIELD_KPHONETIC,
00139 UNIHAN_FIELD_KPRIMARYNUMERIC,
00140 UNIHAN_FIELD_KPSEUDOGB1,
00141 UNIHAN_FIELD_KRSADOBE_JAPAN1_6,
00142 UNIHAN_FIELD_KRSJAPANESE,
00143 UNIHAN_FIELD_KRSKANGXI,
00144 UNIHAN_FIELD_KRSKANWA,
00145 UNIHAN_FIELD_KRSKOREAN,
00146 UNIHAN_FIELD_KRSUNICODE,
00147 UNIHAN_FIELD_KSBGY,
00148 UNIHAN_FIELD_KSEMANTICVARIANT,
00149 UNIHAN_FIELD_KSIMPLIFIEDVARIANT,
00150 UNIHAN_FIELD_KSPECIALIZEDSEMANTICVARIANT,
00151 UNIHAN_FIELD_KTAIWANTELEGRAPH,
00152 UNIHAN_FIELD_KTANG,
00153 UNIHAN_FIELD_KTOTALSTROKES,
00154 UNIHAN_FIELD_KTRADITIONALVARIANT,
00155 UNIHAN_FIELD_KVIETNAMESE,
00156 UNIHAN_FIELD_KXEROX,
00157 UNIHAN_FIELD_KXHC1983,
00158 UNIHAN_FIELD_KZVARIANT,
00159
00160 UNIHAN_FIELD_UTF8,
00161
00162 UNIHAN_FIELD_IRG_SOURCE_SHORT_NAME,
00163 UNIHAN_FIELD_IRG_SOURCE_MAPPING,
00164
00165 UNIHAN_FIELD_VARIANT_TYPE,
00166 UNIHAN_FIELD_VARIANT_CODE,
00167
00168 UNIHAN_FIELD_FROM_DICT,
00169 UNIHAN_FIELD_SEMANTIC_T,
00170 UNIHAN_FIELD_SEMANTIC_B,
00171 UNIHAN_FIELD_SEMANTIC_Z,
00172
00173 UNIHAN_FIELD_RADICAL_INDEX,
00174 UNIHAN_FIELD_ADDITIONAL_STROKE_COUNT,
00175
00176 UNIHAN_FIELD_ADOBE_CID_CV,
00177 UNIHAN_FIELD_ADOBE_CID,
00178 UNIHAN_FIELD_ADOBE_CID_RADICAL_STROKE_COUNT,
00179
00180 UNIHAN_FIELD_KANGXI_PAGE,
00181 UNIHAN_FIELD_KANGXI_CHARNUM,
00182 UNIHAN_FIELD_KANGXI_VIRTUAL,
00183
00184 UNIHAN_FIELD_FREQ_RANK,
00185
00186 UNIHAN_FIELD_PINYIN,
00187 UNIHAN_FIELD_PINYIN_FREQ,
00188
00189 UNIHAN_FIELD_ZVARIANT_SOURCE,
00190
00191 UNIHAN_FIELD_ZHUYIN
00192 } UnihanField;
00193
00197 #define UNIHAN_FIELDS_COUNT UNIHAN_FIELD_ZHUYIN+1
00198
00199
00248 typedef enum{
00249 UNIHAN_NOT_A_TABLE=-3,
00250 UNIHAN_INVALID_TABLE=-2,
00251 UNIHAN_AMBIGUOUS_TABLE=-1,
00252 UNIHAN_TABLE_KACCOUNTINGNUMERIC,
00253 UNIHAN_TABLE_KBIGFIVE,
00254 UNIHAN_TABLE_KCANGJIE,
00255 UNIHAN_TABLE_KCANTONESE,
00256 UNIHAN_TABLE_KCCCII,
00257 UNIHAN_TABLE_KCHEUNGBAUER,
00258 UNIHAN_TABLE_KCHEUNGBAUERINDEX,
00259 UNIHAN_TABLE_KCIHAIT,
00260 UNIHAN_TABLE_KCNS1986,
00261 UNIHAN_TABLE_KCNS1992,
00262 UNIHAN_TABLE_KCOMPATIBILITYVARIANT,
00263 UNIHAN_TABLE_KCOWLES,
00264 UNIHAN_TABLE_KDAEJAWEON,
00265 UNIHAN_TABLE_KDEFINITION,
00266 UNIHAN_TABLE_KEACC,
00267 UNIHAN_TABLE_KFENN,
00268 UNIHAN_TABLE_KFENNINDEX,
00269 UNIHAN_TABLE_KFOURCORNERCODE,
00270 UNIHAN_TABLE_KFREQUENCY,
00271 UNIHAN_TABLE_KGB0,
00272 UNIHAN_TABLE_KGB1,
00273 UNIHAN_TABLE_KGB3,
00274 UNIHAN_TABLE_KGB5,
00275 UNIHAN_TABLE_KGB7,
00276 UNIHAN_TABLE_KGB8,
00277 UNIHAN_TABLE_KGRADELEVEL,
00278 UNIHAN_TABLE_KGSR,
00279 UNIHAN_TABLE_KHANGUL,
00280 UNIHAN_TABLE_KHANYU,
00281 UNIHAN_TABLE_KHANYUPINLU,
00282 UNIHAN_TABLE_KHDZRADBREAK,
00283 UNIHAN_TABLE_KHKGLYPH,
00284 UNIHAN_TABLE_KHKSCS,
00285 UNIHAN_TABLE_KIBMJAPAN,
00286 UNIHAN_TABLE_KIICORE,
00287 UNIHAN_TABLE_KIRGDAEJAWEON,
00288 UNIHAN_TABLE_KIRGDAIKANWAZITEN,
00289 UNIHAN_TABLE_KIRGHANYUDAZIDIAN,
00290 UNIHAN_TABLE_KIRGKANGXI,
00291 UNIHAN_TABLE_KJAPANESEKUN,
00292 UNIHAN_TABLE_KJAPANESEON,
00293 UNIHAN_TABLE_KJIS0213,
00294 UNIHAN_TABLE_KJIS0,
00295 UNIHAN_TABLE_KJIS1,
00296 UNIHAN_TABLE_KKANGXI,
00297 UNIHAN_TABLE_KKARLGREN,
00298 UNIHAN_TABLE_KKOREAN,
00299 UNIHAN_TABLE_KKPS0,
00300 UNIHAN_TABLE_KKPS1,
00301 UNIHAN_TABLE_KKSC0,
00302 UNIHAN_TABLE_KKSC1,
00303 UNIHAN_TABLE_KLAU,
00304 UNIHAN_TABLE_KMAINLANDTELEGRAPH,
00305 UNIHAN_TABLE_KMANDARIN,
00306 UNIHAN_TABLE_KMATTHEWS,
00307 UNIHAN_TABLE_KMEYERWEMPE,
00308 UNIHAN_TABLE_KMOROHASHI,
00309 UNIHAN_TABLE_KNELSON,
00310 UNIHAN_TABLE_KOTHERNUMERIC,
00311 UNIHAN_TABLE_KPHONETIC,
00312 UNIHAN_TABLE_KPRIMARYNUMERIC,
00313 UNIHAN_TABLE_KPSEUDOGB1,
00314 UNIHAN_TABLE_KRSADOBE_JAPAN1_6,
00315 UNIHAN_TABLE_KRSJAPANESE,
00316 UNIHAN_TABLE_KRSKANGXI,
00317 UNIHAN_TABLE_KRSKANWA,
00318 UNIHAN_TABLE_KRSKOREAN,
00319 UNIHAN_TABLE_KRSUNICODE,
00320 UNIHAN_TABLE_KSBGY,
00321 UNIHAN_TABLE_KSEMANTICVARIANT,
00322 UNIHAN_TABLE_KSIMPLIFIEDVARIANT,
00323 UNIHAN_TABLE_KSPECIALIZEDSEMANTICVARIANT,
00324 UNIHAN_TABLE_KTAIWANTELEGRAPH,
00325 UNIHAN_TABLE_KTANG,
00326 UNIHAN_TABLE_KTOTALSTROKES,
00327 UNIHAN_TABLE_KTRADITIONALVARIANT,
00328 UNIHAN_TABLE_KVIETNAMESE,
00329 UNIHAN_TABLE_KXEROX,
00330 UNIHAN_TABLE_KXHC1983,
00331 UNIHAN_TABLE_KZVARIANT,
00332
00333 UNIHAN_TABLE_UTF8,
00334 UNIHAN_TABLE_IRG_SOURCE,
00335 UNIHAN_TABLE_IRG_SOURCE_MAPPING,
00336 UNIHAN_TABLE_KSEMANTICVARIANT_EXTRA,
00337 UNIHAN_TABLE_KSPECIALIZEDSEMANTICVARIANT_EXTRA,
00338 UNIHAN_TABLE_KZVARIANT_EXTRA
00339 } UnihanTable;
00340
00344 #define UNIHAN_TABLES_COUNT UNIHAN_TABLE_KZVARIANT_EXTRA +1
00345
00354 typedef enum{
00355 UNIHAN_INVALID_IRG_SOURCE=-1,
00356 UNIHAN_IRG_SOURCE_G,
00357 UNIHAN_IRG_SOURCE_H,
00358 UNIHAN_IRG_SOURCE_J,
00359 UNIHAN_IRG_SOURCE_KP,
00360 UNIHAN_IRG_SOURCE_K,
00361 UNIHAN_IRG_SOURCE_T,
00362 UNIHAN_IRG_SOURCE_U,
00363 UNIHAN_IRG_SOURCE_V
00364 } UnihanIRG_Source;
00365
00369 #define UNIHAN_IRG_SOURCES_COUNT UNIHAN_IRG_SOURCE_V+1
00370
00378 typedef enum{
00379 UNIHAN_INVALID_SOURCEID=-1,
00380 UNIHAN_SOURCE_G0,
00381 UNIHAN_SOURCE_G1,
00382 UNIHAN_SOURCE_G3,
00383 UNIHAN_SOURCE_G5,
00384 UNIHAN_SOURCE_G7,
00385 UNIHAN_SOURCE_GS,
00386 UNIHAN_SOURCE_G8,
00387 UNIHAN_SOURCE_GE,
00388 UNIHAN_SOURCE_G9,
00389 UNIHAN_SOURCE_G4K,
00390 UNIHAN_SOURCE_GBK,
00391 UNIHAN_SOURCE_GCH,
00392 UNIHAN_SOURCE_GCY,
00393 UNIHAN_SOURCE_GFZ,
00394 UNIHAN_SOURCE_GFZ_BK,
00395 UNIHAN_SOURCE_GHC,
00396 UNIHAN_SOURCE_GHZ,
00397 UNIHAN_SOURCE_GKX,
00398
00399 UNIHAN_SOURCE_H,
00400 UNIHAN_SOURCE_J0,
00401 UNIHAN_SOURCE_J1,
00402 UNIHAN_SOURCE_JA,
00403 UNIHAN_SOURCE_J3,
00404 UNIHAN_SOURCE_J3A,
00405 UNIHAN_SOURCE_J4,
00406
00407 UNIHAN_SOURCE_KP0,
00408 UNIHAN_SOURCE_KP1,
00409
00410 UNIHAN_SOURCE_K0,
00411 UNIHAN_SOURCE_K1,
00412 UNIHAN_SOURCE_K2,
00413 UNIHAN_SOURCE_K3,
00414 UNIHAN_SOURCE_K4,
00415
00416 UNIHAN_SOURCE_T1,
00417 UNIHAN_SOURCE_T2,
00418 UNIHAN_SOURCE_T3,
00419 UNIHAN_SOURCE_T4,
00420 UNIHAN_SOURCE_T5,
00421 UNIHAN_SOURCE_T6,
00422 UNIHAN_SOURCE_T7,
00423 UNIHAN_SOURCE_TF,
00424
00425 UNIHAN_SOURCE_U,
00426
00427 UNIHAN_SOURCE_V0,
00428 UNIHAN_SOURCE_V1,
00429 UNIHAN_SOURCE_V2,
00430 UNIHAN_SOURCE_V3,
00431 } UnihanIRG_SourceId;
00432
00436 #define UNIHAN_SOURCES_COUNT UNIHAN_SOURCE_V3+1
00437
00438
00442 typedef enum{
00443 UNIHAN_INVALID_LOCALE=-1,
00444 UNIHAN_LOCALE_JA_JP,
00445 UNIHAN_LOCALE_KO_KP,
00446 UNIHAN_LOCALE_KO_KR,
00447 UNIHAN_LOCALE_ZH_CN,
00448 UNIHAN_LOCALE_ZH_HK,
00449 UNIHAN_LOCALE_ZH_SG,
00450 UNIHAN_LOCALE_ZH_TW,
00451 UNIHAN_LOCALE_VI_VN,
00452 } UnihanLocale;
00456 #define UNIHAN_LOCALES_COUNT UNIHAN_LOCALE_VI_VN+1
00457
00467 typedef enum{
00468 UNIHAN_INVALID_RANGE=-1,
00469 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS_EXT_A,
00470 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS,
00471 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS_4_1,
00472 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS_5_1,
00473 UNIHAN_RANGE_CJK_COMPATIBILITY_UNIFIED_IDEOGRAPHS_A,
00474 UNIHAN_RANGE_CJK_COMPATIBILITY_UNIFIED_IDEOGRAPHS_B,
00475 UNIHAN_RANGE_CJK_COMPATIBILITY_UNIFIED_IDEOGRAPHS_4_1,
00476 UNIHAN_RANGE_CJK_UNIFIED_IDEOGRAPHS_EXT_B,
00477 UNIHAN_RANGE_CJK_COMPATIBILITY_SUPPLEMENT
00478 } UnihanRange;
00482 #define UNIHAN_RANGES_COUNT UNIHAN_RANGE_CJK_COMPATIBILITY_SUPPLEMENT+1
00483
00492 #define LOCALE_JA_JP_SOURCES_COMMON UNIHAN_SOURCE_J0, UNIHAN_INVALID_SOURCEID
00493
00497 #define LOCALE_KO_KP_SOURCES_COMMON UNIHAN_SOURCE_KP0, UNIHAN_INVALID_SOURCEID
00498
00502 #define LOCALE_KO_KR_SOURCES_COMMON UNIHAN_SOURCE_K0, UNIHAN_INVALID_SOURCEID
00503
00507 #define LOCALE_ZH_CN_SOURCES_COMMON UNIHAN_SOURCE_G0, UNIHAN_INVALID_SOURCEID
00508
00512 #define LOCALE_ZH_HK_SOURCES_COMMON UNIHAN_SOURCE_T1, UNIHAN_SOURCE_T2, UNIHAN_SOURCE_H, UNIHAN_INVALID_SOURCEID
00513
00517 #define LOCALE_ZH_SG_SOURCES_COMMON UNIHAN_SOURCE_G0, UNIHAN_SOURCE_GS, UNIHAN_INVALID_SOURCEID
00518
00522 #define LOCALE_ZH_TW_SOURCES_COMMON UNIHAN_SOURCE_T1, UNIHAN_SOURCE_T2, UNIHAN_INVALID_SOURCEID
00523
00527 #define LOCALE_VI_VN_SOURCES_COMMON UNIHAN_SOURCE_V0, UNIHAN_INVALID_SOURCEID
00528
00529 #endif
00530