#ifndef _WC_CES_H #define _WC_CES_H #include "ccs.h" #define WC_CES_T_INDEX 0x0000ff #define WC_CES_T_TYPE 0x31ff00 #define WC_CES_T_NASCII 0x01fe00 #define WC_CES_T_8BIT 0x100000 #define WC_CES_T_MBYTE 0x200000 #define WC_CES_T_ASCII 0x000100 #define WC_CES_T_ISO_8859 0x000200 #define WC_CES_T_PRIV1 0x000400 #define WC_CES_T_ISO_2022 0x000800 #define WC_CES_T_EUC 0x001000 #define WC_CES_T_PRIV2 0x002000 #define WC_CES_T_VIET 0x004000 #define WC_CES_T_UTF 0x008000 #define WC_CES_T_WTF 0x010000 #define WC_CES_E_ISO_8859 (WC_CES_T_ISO_8859|WC_CES_T_8BIT) #define WC_CES_E_PRIV1 (WC_CES_T_PRIV1|WC_CES_T_8BIT) #define WC_CES_E_ISO_2022 (WC_CES_T_ISO_2022|WC_CES_T_MBYTE) #define WC_CES_E_EUC (WC_CES_T_EUC|WC_CES_T_8BIT|WC_CES_T_MBYTE) #define WC_CES_E_PRIV2 (WC_CES_T_PRIV2|WC_CES_T_8BIT|WC_CES_T_MBYTE) #define WC_CES_E_VIET (WC_CES_T_VIET|WC_CES_T_PRIV1|WC_CES_T_8BIT) #define WC_CES_WTF (WC_CES_T_WTF|WC_CES_T_8BIT|WC_CES_T_MBYTE) #define WC_CES_INDEX(c) ((c)&WC_CES_T_INDEX) #define WC_CES_TYPE(c) ((c)&WC_CES_T_TYPE) enum { WC_CES_N_US_ASCII, WC_CES_N_ISO_8859_1, WC_CES_N_ISO_8859_2, WC_CES_N_ISO_8859_3, WC_CES_N_ISO_8859_4, WC_CES_N_ISO_8859_5, WC_CES_N_ISO_8859_6, WC_CES_N_ISO_8859_7, WC_CES_N_ISO_8859_8, WC_CES_N_ISO_8859_9, WC_CES_N_ISO_8859_10, WC_CES_N_ISO_8859_11, WC_CES_N_ISO_8859_12, WC_CES_N_ISO_8859_13, WC_CES_N_ISO_8859_14, WC_CES_N_ISO_8859_15, WC_CES_N_ISO_8859_16, WC_CES_N_ISO_2022_JP, WC_CES_N_ISO_2022_JP_2, WC_CES_N_ISO_2022_JP_3, WC_CES_N_ISO_2022_CN, WC_CES_N_ISO_2022_KR, WC_CES_N_EUC_JP, WC_CES_N_EUC_CN, WC_CES_N_EUC_TW, WC_CES_N_EUC_KR, WC_CES_N_CP437, WC_CES_N_CP737, WC_CES_N_CP775, WC_CES_N_CP850, WC_CES_N_CP852, WC_CES_N_CP855, WC_CES_N_CP856, WC_CES_N_CP857, WC_CES_N_CP860, WC_CES_N_CP861, WC_CES_N_CP862, WC_CES_N_CP863, WC_CES_N_CP864, WC_CES_N_CP865, WC_CES_N_CP866, WC_CES_N_CP869, WC_CES_N_CP874, WC_CES_N_CP1006, WC_CES_N_CP1250, WC_CES_N_CP1251, WC_CES_N_CP1252, WC_CES_N_CP1253, WC_CES_N_CP1254, WC_CES_N_CP1255, WC_CES_N_CP1256, WC_CES_N_CP1257, WC_CES_N_KOI8_R, WC_CES_N_KOI8_U, WC_CES_N_NEXTSTEP, WC_CES_N_RAW, WC_CES_N_SHIFT_JIS, WC_CES_N_SHIFT_JISX0213, WC_CES_N_GBK, WC_CES_N_GB18030, WC_CES_N_HZ_GB_2312, WC_CES_N_BIG5, WC_CES_N_HKSCS, WC_CES_N_UHC, WC_CES_N_JOHAB, WC_CES_N_CP1258, WC_CES_N_TCVN_5712, WC_CES_N_VISCII_11, WC_CES_N_VPS, WC_CES_N_UTF_8, WC_CES_N_UTF_7 }; #define WC_CES_US_ASCII (WC_CES_T_ASCII|WC_CES_N_US_ASCII) #define WC_CES_ISO_8859_1 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_1) #define WC_CES_ISO_8859_2 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_2) #define WC_CES_ISO_8859_3 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_3) #define WC_CES_ISO_8859_4 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_4) #define WC_CES_ISO_8859_5 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_5) #define WC_CES_ISO_8859_6 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_6) #define WC_CES_ISO_8859_7 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_7) #define WC_CES_ISO_8859_8 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_8) #define WC_CES_ISO_8859_9 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_9) #define WC_CES_ISO_8859_10 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_10) #define WC_CES_ISO_8859_11 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_11) #define WC_CES_TIS_620 WC_CES_ISO_8859_11 #define WC_CES_ISO_8859_12 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_12) /* not yet exist */ #define WC_CES_ISO_8859_13 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_13) #define WC_CES_ISO_8859_14 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_14) #define WC_CES_ISO_8859_15 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_15) #define WC_CES_ISO_8859_16 (WC_CES_E_ISO_8859|WC_CES_N_ISO_8859_16) #define WC_CES_ISO_2022_JP (WC_CES_E_ISO_2022|WC_CES_N_ISO_2022_JP) #define WC_CES_ISO_2022_JP_2 (WC_CES_E_ISO_2022|WC_CES_N_ISO_2022_JP_2) #define WC_CES_ISO_2022_JP_3 (WC_CES_E_ISO_2022|WC_CES_N_ISO_2022_JP_3) #define WC_CES_ISO_2022_CN (WC_CES_E_ISO_2022|WC_CES_N_ISO_2022_CN) #define WC_CES_ISO_2022_KR (WC_CES_E_ISO_2022|WC_CES_N_ISO_2022_KR) #define WC_CES_EUC_JP (WC_CES_E_EUC|WC_CES_N_EUC_JP) #define WC_CES_EUC_CN (WC_CES_E_EUC|WC_CES_N_EUC_CN) #define WC_CES_EUC_TW (WC_CES_E_EUC|WC_CES_N_EUC_TW) #define WC_CES_EUC_KR (WC_CES_E_EUC|WC_CES_N_EUC_KR) #define WC_CES_CP437 (WC_CES_E_PRIV1|WC_CES_N_CP437) #define WC_CES_CP737 (WC_CES_E_PRIV1|WC_CES_N_CP737) #define WC_CES_CP775 (WC_CES_E_PRIV1|WC_CES_N_CP775) #define WC_CES_CP850 (WC_CES_E_PRIV1|WC_CES_N_CP850) #define WC_CES_CP852 (WC_CES_E_PRIV1|WC_CES_N_CP852) #define WC_CES_CP855 (WC_CES_E_PRIV1|WC_CES_N_CP855) #define WC_CES_CP856 (WC_CES_E_PRIV1|WC_CES_N_CP856) #define WC_CES_CP857 (WC_CES_E_PRIV1|WC_CES_N_CP857) #define WC_CES_CP860 (WC_CES_E_PRIV1|WC_CES_N_CP860) #define WC_CES_CP861 (WC_CES_E_PRIV1|WC_CES_N_CP861) #define WC_CES_CP862 (WC_CES_E_PRIV1|WC_CES_N_CP862) #define WC_CES_CP863 (WC_CES_E_PRIV1|WC_CES_N_CP863) #define WC_CES_CP864 (WC_CES_E_PRIV1|WC_CES_N_CP864) #define WC_CES_CP865 (WC_CES_E_PRIV1|WC_CES_N_CP865) #define WC_CES_CP866 (WC_CES_E_PRIV1|WC_CES_N_CP866) #define WC_CES_CP869 (WC_CES_E_PRIV1|WC_CES_N_CP869) #define WC_CES_CP874 (WC_CES_E_PRIV1|WC_CES_N_CP874) #define WC_CES_CP1006 (WC_CES_E_PRIV1|WC_CES_N_CP1006) #define WC_CES_CP1250 (WC_CES_E_PRIV1|WC_CES_N_CP1250) #define WC_CES_CP1251 (WC_CES_E_PRIV1|WC_CES_N_CP1251) #define WC_CES_CP1252 (WC_CES_E_PRIV1|WC_CES_N_CP1252) #define WC_CES_CP1253 (WC_CES_E_PRIV1|WC_CES_N_CP1253) #define WC_CES_CP1254 (WC_CES_E_PRIV1|WC_CES_N_CP1254) #define WC_CES_CP1255 (WC_CES_E_PRIV1|WC_CES_N_CP1255) #define WC_CES_CP1256 (WC_CES_E_PRIV1|WC_CES_N_CP1256) #define WC_CES_CP1257 (WC_CES_E_PRIV1|WC_CES_N_CP1257) #define WC_CES_KOI8_R (WC_CES_E_PRIV1|WC_CES_N_KOI8_R) #define WC_CES_KOI8_U (WC_CES_E_PRIV1|WC_CES_N_KOI8_U) #define WC_CES_NEXTSTEP (WC_CES_E_PRIV1|WC_CES_N_NEXTSTEP) #define WC_CES_RAW (WC_CES_E_PRIV1|WC_CES_N_RAW) #define WC_CES_SHIFT_JIS (WC_CES_E_PRIV2|WC_CES_N_SHIFT_JIS) #define WC_CES_CP932 WC_CES_SHIFT_JIS #define WC_CES_CP943 WC_CES_SHIFT_JIS #define WC_CES_SHIFT_JISX0213 (WC_CES_E_PRIV2|WC_CES_N_SHIFT_JISX0213) #define WC_CES_GBK (WC_CES_E_PRIV2|WC_CES_N_GBK) #define WC_CES_CP936 WC_CES_GBK #define WC_CES_GB18030 (WC_CES_E_PRIV2|WC_CES_N_GB18030) #define WC_CES_HZ_GB_2312 (WC_CES_T_PRIV2|WC_CES_T_MBYTE|WC_CES_N_HZ_GB_2312) #define WC_CES_BIG5 (WC_CES_E_PRIV2|WC_CES_N_BIG5) #define WC_CES_CP950 WC_CES_BIG5 #define WC_CES_HKSCS (WC_CES_E_PRIV2|WC_CES_N_HKSCS) #define WC_CES_UHC (WC_CES_E_PRIV2|WC_CES_N_UHC) #define WC_CES_CP949 WC_CES_UHC #define WC_CES_JOHAB (WC_CES_E_PRIV2|WC_CES_N_JOHAB) #define WC_CES_CP1258 (WC_CES_E_PRIV1|WC_CES_N_CP1258) #define WC_CES_TCVN_5712 (WC_CES_E_VIET|WC_CES_N_TCVN_5712) #define WC_CES_VISCII_11 (WC_CES_E_VIET|WC_CES_N_VISCII_11) #define WC_CES_VPS (WC_CES_E_VIET|WC_CES_N_VPS) #define WC_CES_UTF_8 (WC_CES_T_UTF|WC_CES_T_8BIT|WC_CES_T_MBYTE|WC_CES_N_UTF_8) #define WC_CES_UTF_7 (WC_CES_T_UTF|WC_CES_T_MBYTE|WC_CES_N_UTF_7) #define WC_CES_END WC_CES_N_UTF_7 #endif