xref: /illumos-gate/usr/src/lib/iconv_modules/ko/common/ktable.h (revision 7931524763ef94dc16989451dddd206563d03bb4)
1 /*
2  * CDDL HEADER START
3  *
4  * The contents of this file are subject to the terms of the
5  * Common Development and Distribution License (the "License").
6  * You may not use this file except in compliance with the License.
7  *
8  * You can obtain a copy of the license at src/OPENSOLARIS.LICENSE
9  * or http://www.opensolaris.org/os/licensing.
10  * See the License for the specific language governing permissions
11  * and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL HEADER in each
14  * file and include the License file at src/OPENSOLARIS.LICENSE.
15  * If applicable, add the following below this CDDL HEADER, with the
16  * fields enclosed by brackets "[]" replaced with your own identifying
17  * information: Portions Copyright [yyyy] [name of copyright owner]
18  *
19  * CDDL HEADER END
20  */
21 /*
22  * Copyright (c) 1994 by Sun Microsystems, Inc.
23  */
24 
25 
26 
27 #ifndef	_KTABLE_H_
28 #define	_KTABLE_H_
29 
30 
31 #include <widec.h>
32 
33 /*  7 bit Sound ---> 5 bit Combination Code		*/
34 /*	: give 5 bit combination code to each sound	*/
35 
36 extern short X32_19[];	/* INITIAL SOUND	*/
37 extern short X32_21[];	/* MIDDLE SOUND		*/
38 extern short X32_28[];	/* FINAL SOUND		*/
39 
40 
41 /*  5 bit Combination Code ---> 7 bit code 	*/
42 /*	: give 7 bit Code to each Sound		*/
43 
44 extern short Y19_32[];	/* INITIAL SOUND	*/
45 extern short Y21_32[];	/* MIDDLE SOUND		*/
46 extern short Y28_32[];	/* FINAL SOUND		*/
47 
48 
49 /*
50  * Bit map of all possible Hangul Character compositions.
51  * 	first  sound = 19 consonants;
52  *	middle sound = 21 vowels;
53  *	final  sound = 28 consonants;
54  * For each array element of first_sound and middle_sound, there is bit map
55  * of 28 final_sound in 32bits according to ***KSC 5601***.
56  */
57 extern long cmp_bitmap[19][21];
58 
59 /*
60  * Each cmp_srctbl[i][j] has 2-byte compeletion code
61  * where i is initial_sound and j is middle_sound.
62  * So, cmp_srctbl[i][0] is the code for some initial_sound and
63  * the first of middle_sound(always 'a').
64  */
65 extern unsigned short cmp_srchtbl[19][21];
66 
67 
68 #endif	/* _KTABLE_H_ */
69