1 /*
2  * "streamable kanji code filter and converter"
3  * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved.
4  *
5  * LICENSE NOTICES
6  *
7  * This file is part of "streamable kanji code filter and converter",
8  * which is distributed under the terms of GNU Lesser General Public
9  * License (version 2) as published by the Free Software Foundation.
10  *
11  * This software is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with "streamable kanji code filter and converter";
18  * if not, write to the Free Software Foundation, Inc., 59 Temple Place,
19  * Suite 330, Boston, MA  02111-1307  USA
20  *
21  * The author of this file:
22  *
23  */
24 /*
25  * the source code included in this files was separated from mbfilter_sjis_open.c
26  * by Rui Hirokawa <hirokawa@php.net> on 25 July 2011.
27  *
28  */
29 
30 #ifndef MBFL_MBFILTER_SJIS_MOBILE_H
31 #define MBFL_MBFILTER_SJIS_MOBILE_H
32 
33 #include "mbfilter.h"
34 
35 extern const mbfl_encoding mbfl_encoding_sjis_docomo;
36 extern const mbfl_encoding mbfl_encoding_sjis_kddi;
37 extern const mbfl_encoding mbfl_encoding_sjis_sb;
38 
39 extern const struct mbfl_identify_vtbl vtbl_identify_sjis_docomo;
40 extern const struct mbfl_identify_vtbl vtbl_identify_sjis_kddi;
41 extern const struct mbfl_identify_vtbl vtbl_identify_sjis_sb;
42 
43 extern const struct mbfl_convert_vtbl vtbl_sjis_docomo_wchar;
44 extern const struct mbfl_convert_vtbl vtbl_wchar_sjis_docomo;
45 extern const struct mbfl_convert_vtbl vtbl_sjis_kddi_wchar;
46 extern const struct mbfl_convert_vtbl vtbl_wchar_sjis_kddi;
47 extern const struct mbfl_convert_vtbl vtbl_sjis_sb_wchar;
48 extern const struct mbfl_convert_vtbl vtbl_wchar_sjis_sb;
49 
50 extern const unsigned short mbfl_docomo2uni_pua[4][3];
51 extern const unsigned short mbfl_kddi2uni_pua[7][3];
52 extern const unsigned short mbfl_sb2uni_pua[6][3];
53 extern const unsigned short mbfl_kddi2uni_pua_b[8][3];
54 
55 int mbfl_filt_conv_sjis_mobile_wchar(int c, mbfl_convert_filter *filter);
56 int mbfl_filt_conv_wchar_sjis_mobile(int c, mbfl_convert_filter *filter);
57 int mbfl_filt_conv_sjis_mobile_flush(mbfl_convert_filter *filter);
58 
59 int mbfilter_sjis_emoji_docomo2unicode(int s, int *snd);
60 int mbfilter_sjis_emoji_kddi2unicode(int s, int *snd);
61 int mbfilter_sjis_emoji_sb2unicode(int s, int *snd);
62 
63 int mbfilter_unicode2sjis_emoji_docomo(int c, int *s1, mbfl_convert_filter *filter);
64 int mbfilter_unicode2sjis_emoji_kddi(int c, int *s1, mbfl_convert_filter *filter);
65 int mbfilter_unicode2sjis_emoji_sb(int c, int *s1, mbfl_convert_filter *filter);
66 
67 int mbfilter_conv_map_tbl(int c, int *w, const unsigned short map[][3], int n);
68 int mbfilter_conv_r_map_tbl(int c, int *w, const unsigned short map[][3], int n);
69 
70 #endif /* MBFL_MBFILTER_SJIS_MOBILE_H */
71