4 * Copyright (c) 2010 - 2015 Samsung Electronics Co., Ltd. All rights reserved.
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
19 #ifndef __CTSVC_LOCALIZE_UTILS_H__
20 #define __CTSVC_LOCALIZE_UTILS_H__
22 #include <unicode/utypes.h>
25 CTSVC_LANG_NUMBER = 0,
26 CTSVC_LANG_DEFAULT = 1,
27 CTSVC_LANG_SECONDARY = 2,
28 CTSVC_LANG_ENGLISH = 3,
29 CTSVC_LANG_KOREAN = 4, /* always last-first */
30 CTSVC_LANG_CHINESE = 5,
31 CTSVC_LANG_JAPANESE = 6,
32 CTSVC_LANG_FRENCH = 7,
33 CTSVC_LANG_GERMAN = 8,
34 CTSVC_LANG_ITALIAN = 9,
35 CTSVC_LANG_RUSSIAN = 10,
36 CTSVC_LANG_DUTCH = 11,
37 CTSVC_LANG_PORTUGUESE = 12,
38 CTSVC_LANG_TURKISH = 13,
39 CTSVC_LANG_GREEK = 14,
40 CTSVC_LANG_SPANISH = 15,
41 CTSVC_LANG_DANISH = 16,
42 CTSVC_LANG_AZERBAIJAN = 17,
43 CTSVC_LANG_ARABIC = 18,
44 CTSVC_LANG_BULGARIAN = 19,
45 CTSVC_LANG_CATALAN = 20,
46 CTSVC_LANG_CZECH = 21,
47 CTSVC_LANG_ESTONIAN = 22,
48 CTSVC_LANG_BASQUE = 23,
49 CTSVC_LANG_FINNISH = 24,
50 CTSVC_LANG_IRISH = 25,
51 CTSVC_LANG_GALICIAN = 26,
52 CTSVC_LANG_HINDI = 27,
53 CTSVC_LANG_CROATIAN = 28,
54 CTSVC_LANG_HUNGARIAN = 29,
55 CTSVC_LANG_ARMENIAN = 30,
56 CTSVC_LANG_ICELANDIC = 31,
57 CTSVC_LANG_GEORGIAN = 32,
58 CTSVC_LANG_KAZAKHSTAN = 33,
59 CTSVC_LANG_LITHUANIAN = 34,
60 CTSVC_LANG_LATVIAN = 35,
61 CTSVC_LANG_MACEDONIA = 36,
62 CTSVC_LANG_NORWAY = 37,
63 CTSVC_LANG_POLISH = 38,
64 CTSVC_LANG_ROMANIA = 39,
65 CTSVC_LANG_SLOVAK = 40,
66 CTSVC_LANG_SLOVENIAN = 41,
67 CTSVC_LANG_SERBIAN = 42,
68 CTSVC_LANG_SWEDISH = 43,
69 CTSVC_LANG_UKRAINE = 44,
71 CTSVC_LANG_BENGALI = 46,
72 CTSVC_LANG_PUNJABI = 47,
73 CTSVC_LANG_MALAYALAM = 48,
74 CTSVC_LANG_TELUGU = 49,
75 CTSVC_LANG_TAMIL = 50,
76 CTSVC_LANG_ORIYA = 51,
77 CTSVC_LANG_SINHALA = 52,
78 CTSVC_LANG_GUJARATI = 53,
79 CTSVC_LANG_KANNADA = 54,
81 CTSVC_LANG_HEBREW = 56,
82 CTSVC_LANG_VIETNAMESE = 57,
83 CTSVC_LANG_PERSIAN = 58,
84 CTSVC_LANG_UZBEK = 59,
86 CTSVC_LANG_ALBANIAN = 61,
87 CTSVC_LANG_BURMESE = 62,
88 CTSVC_LANG_MALAY = 63,
89 CTSVC_LANG_KHMER = 64,
90 CTSVC_LANG_INDONESIAN = 65,
91 CTSVC_LANG_TAGALOG = 66,
92 CTSVC_LANG_OTHERS = 1000,
95 #define array_sizeof(a) (sizeof(a) / sizeof(a[0]))
97 #define CTSVC_COMPARE_BETWEEN(left_range, value, right_range) (((left_range) <= (value)) && ((value) <= (right_range)))
99 int ctsvc_check_utf8(char c);
100 int ctsvc_check_language(UChar *word);
101 int ctsvc_check_language_type(const char *src);
103 #endif /* __CTSVC_LOCALIZE_UTILS_H__ */