00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef USCRIPT_H
00017 #define USCRIPT_H
00018 #include "unicode/utypes.h"
00019
00046 typedef enum UScriptCode {
00047 USCRIPT_INVALID_CODE = -1,
00048 USCRIPT_COMMON = 0,
00049 USCRIPT_INHERITED = 1,
00050 USCRIPT_ARABIC = 2,
00051 USCRIPT_ARMENIAN = 3,
00052 USCRIPT_BENGALI = 4,
00053 USCRIPT_BOPOMOFO = 5,
00054 USCRIPT_CHEROKEE = 6,
00055 USCRIPT_COPTIC = 7,
00056 USCRIPT_CYRILLIC = 8,
00057 USCRIPT_DESERET = 9,
00058 USCRIPT_DEVANAGARI = 10,
00059 USCRIPT_ETHIOPIC = 11,
00060 USCRIPT_GEORGIAN = 12,
00061 USCRIPT_GOTHIC = 13,
00062 USCRIPT_GREEK = 14,
00063 USCRIPT_GUJARATI = 15,
00064 USCRIPT_GURMUKHI = 16,
00065 USCRIPT_HAN = 17,
00066 USCRIPT_HANGUL = 18,
00067 USCRIPT_HEBREW = 19,
00068 USCRIPT_HIRAGANA = 20,
00069 USCRIPT_KANNADA = 21,
00070 USCRIPT_KATAKANA = 22,
00071 USCRIPT_KHMER = 23,
00072 USCRIPT_LAO = 24,
00073 USCRIPT_LATIN = 25,
00074 USCRIPT_MALAYALAM = 26,
00075 USCRIPT_MONGOLIAN = 27,
00076 USCRIPT_MYANMAR = 28,
00077 USCRIPT_OGHAM = 29,
00078 USCRIPT_OLD_ITALIC = 30,
00079 USCRIPT_ORIYA = 31,
00080 USCRIPT_RUNIC = 32,
00081 USCRIPT_SINHALA = 33,
00082 USCRIPT_SYRIAC = 34,
00083 USCRIPT_TAMIL = 35,
00084 USCRIPT_TELUGU = 36,
00085 USCRIPT_THAANA = 37,
00086 USCRIPT_THAI = 38,
00087 USCRIPT_TIBETAN = 39,
00089 USCRIPT_CANADIAN_ABORIGINAL = 40,
00091 USCRIPT_UCAS = USCRIPT_CANADIAN_ABORIGINAL,
00092 USCRIPT_YI = 41,
00093 USCRIPT_TAGALOG = 42,
00094 USCRIPT_HANUNOO = 43,
00095 USCRIPT_BUHID = 44,
00096 USCRIPT_TAGBANWA = 45,
00097
00098
00099 USCRIPT_BRAILLE = 46,
00100 USCRIPT_CYPRIOT = 47,
00101 USCRIPT_LIMBU = 48,
00102 USCRIPT_LINEAR_B = 49,
00103 USCRIPT_OSMANYA = 50,
00104 USCRIPT_SHAVIAN = 51,
00105 USCRIPT_TAI_LE = 52,
00106 USCRIPT_UGARITIC = 53,
00107
00109 USCRIPT_KATAKANA_OR_HIRAGANA = 54,
00110
00111
00112 USCRIPT_BUGINESE = 55,
00113 USCRIPT_GLAGOLITIC = 56,
00114 USCRIPT_KHAROSHTHI = 57,
00115 USCRIPT_SYLOTI_NAGRI = 58,
00116 USCRIPT_NEW_TAI_LUE = 59,
00117 USCRIPT_TIFINAGH = 60,
00118 USCRIPT_OLD_PERSIAN = 61,
00119
00120
00121 USCRIPT_BALINESE = 62,
00122 USCRIPT_BATAK = 63,
00123 USCRIPT_BLISSYMBOLS = 64,
00124 USCRIPT_BRAHMI = 65,
00125 USCRIPT_CHAM = 66,
00126 USCRIPT_CIRTH = 67,
00127 USCRIPT_OLD_CHURCH_SLAVONIC_CYRILLIC = 68,
00128 USCRIPT_DEMOTIC_EGYPTIAN = 69,
00129 USCRIPT_HIERATIC_EGYPTIAN = 70,
00130 USCRIPT_EGYPTIAN_HIEROGLYPHS = 71,
00131 USCRIPT_KHUTSURI = 72,
00132 USCRIPT_SIMPLIFIED_HAN = 73,
00133 USCRIPT_TRADITIONAL_HAN = 74,
00134 USCRIPT_PAHAWH_HMONG = 75,
00135 USCRIPT_OLD_HUNGARIAN = 76,
00136 USCRIPT_HARAPPAN_INDUS = 77,
00137 USCRIPT_JAVANESE = 78,
00138 USCRIPT_KAYAH_LI = 79,
00139 USCRIPT_LATIN_FRAKTUR = 80,
00140 USCRIPT_LATIN_GAELIC = 81,
00141 USCRIPT_LEPCHA = 82,
00142 USCRIPT_LINEAR_A = 83,
00144 USCRIPT_MANDAIC = 84,
00146 USCRIPT_MANDAEAN = USCRIPT_MANDAIC,
00147 USCRIPT_MAYAN_HIEROGLYPHS = 85,
00149 USCRIPT_MEROITIC_HIEROGLYPHS = 86,
00151 USCRIPT_MEROITIC = USCRIPT_MEROITIC_HIEROGLYPHS,
00152 USCRIPT_NKO = 87,
00153 USCRIPT_ORKHON = 88,
00154 USCRIPT_OLD_PERMIC = 89,
00155 USCRIPT_PHAGS_PA = 90,
00156 USCRIPT_PHOENICIAN = 91,
00157 USCRIPT_PHONETIC_POLLARD = 92,
00158 USCRIPT_RONGORONGO = 93,
00159 USCRIPT_SARATI = 94,
00160 USCRIPT_ESTRANGELO_SYRIAC = 95,
00161 USCRIPT_WESTERN_SYRIAC = 96,
00162 USCRIPT_EASTERN_SYRIAC = 97,
00163 USCRIPT_TENGWAR = 98,
00164 USCRIPT_VAI = 99,
00165 USCRIPT_VISIBLE_SPEECH = 100,
00166 USCRIPT_CUNEIFORM = 101,
00167 USCRIPT_UNWRITTEN_LANGUAGES = 102,
00168 USCRIPT_UNKNOWN = 103,
00169
00170
00171 USCRIPT_CARIAN = 104,
00172 USCRIPT_JAPANESE = 105,
00173 USCRIPT_LANNA = 106,
00174 USCRIPT_LYCIAN = 107,
00175 USCRIPT_LYDIAN = 108,
00176 USCRIPT_OL_CHIKI = 109,
00177 USCRIPT_REJANG = 110,
00178 USCRIPT_SAURASHTRA = 111,
00179 USCRIPT_SIGN_WRITING = 112,
00180 USCRIPT_SUNDANESE = 113,
00181 USCRIPT_MOON = 114,
00182 USCRIPT_MEITEI_MAYEK = 115,
00183
00184
00185 USCRIPT_IMPERIAL_ARAMAIC = 116,
00186 USCRIPT_AVESTAN = 117,
00187 USCRIPT_CHAKMA = 118,
00188 USCRIPT_KOREAN = 119,
00189 USCRIPT_KAITHI = 120,
00190 USCRIPT_MANICHAEAN = 121,
00191 USCRIPT_INSCRIPTIONAL_PAHLAVI = 122,
00192 USCRIPT_PSALTER_PAHLAVI = 123,
00193 USCRIPT_BOOK_PAHLAVI = 124,
00194 USCRIPT_INSCRIPTIONAL_PARTHIAN = 125,
00195 USCRIPT_SAMARITAN = 126,
00196 USCRIPT_TAI_VIET = 127,
00197 USCRIPT_MATHEMATICAL_NOTATION = 128,
00198 USCRIPT_SYMBOLS = 129,
00199
00200
00201 USCRIPT_BAMUM = 130,
00202 USCRIPT_LISU = 131,
00203 USCRIPT_NAKHI_GEBA = 132,
00204 USCRIPT_OLD_SOUTH_ARABIAN = 133,
00205
00206
00207 USCRIPT_BASSA_VAH = 134,
00208 USCRIPT_DUPLOYAN_SHORTAND = 135,
00209 USCRIPT_ELBASAN = 136,
00210 USCRIPT_GRANTHA = 137,
00211 USCRIPT_KPELLE = 138,
00212 USCRIPT_LOMA = 139,
00213 USCRIPT_MENDE = 140,
00214 USCRIPT_MEROITIC_CURSIVE = 141,
00215 USCRIPT_OLD_NORTH_ARABIAN = 142,
00216 USCRIPT_NABATAEAN = 143,
00217 USCRIPT_PALMYRENE = 144,
00218 USCRIPT_SINDHI = 145,
00219 USCRIPT_WARANG_CITI = 146,
00220
00221
00222 USCRIPT_CODE_LIMIT = 147
00223 } UScriptCode;
00224
00243 U_STABLE int32_t U_EXPORT2
00244 uscript_getCode(const char* nameOrAbbrOrLocale,UScriptCode* fillIn,int32_t capacity,UErrorCode *err);
00245
00254 U_STABLE const char* U_EXPORT2
00255 uscript_getName(UScriptCode scriptCode);
00256
00265 U_STABLE const char* U_EXPORT2
00266 uscript_getShortName(UScriptCode scriptCode);
00267
00276 U_STABLE UScriptCode U_EXPORT2
00277 uscript_getScript(UChar32 codepoint, UErrorCode *err);
00278
00294 U_DRAFT UBool U_EXPORT2
00295 uscript_hasScript(UChar32 c, UScriptCode sc);
00296
00321 U_DRAFT int32_t U_EXPORT2
00322 uscript_getScriptExtensions(UChar32 c,
00323 UScriptCode *scripts, int32_t capacity,
00324 UErrorCode *pErrorCode);
00325
00326 #endif