1 /*
2  * Copyright (c) 1994  Sony Corporation
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining
5  * a copy of this software and associated documentation files (the
6  * "Software"), to deal in the Software without restriction, including
7  * without limitation the rights to use, copy, modify, merge, publish,
8  * distribute, sublicense, and/or sell copies of the Software, and to
9  * permit persons to whom the Software is furnished to do so, subject to
10  * the following conditions:
11  *
12  * The above copyright notice and this permission notice shall be
13  * included in all copies or substantial portions of the Software.
14  *
15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
18  * IN NO EVENT SHALL SONY CORPORATION BE LIABLE FOR ANY CLAIM,
19  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
20  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
21  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22  *
23  * Except as contained in this notice, the name of Sony Corporation
24  * shall not be used in advertising or otherwise to promote the sale, use
25  * or other dealings in this Software without prior written authorization
26  * from Sony Corporation.
27  *
28  */
29 
30 /*
31  * $SonyRCSfile: conversion.h,v $
32  * $SonyRevision: 1.1 $
33  * $SonyDate: 1994/06/03 08:03:43 $
34  */
35 
36 #ifndef CONVERSION_H
37 #define CONVERSION_H
38 
39 #include "sj2.h"
40 #include "sj3libsj3.h"
41 #include "henkan.h"
42 
43 typedef struct bunsetu_sj3	Bunsetu;
44 
45 typedef struct _Conversion {
46 	u_short	out_mode[BUFFLENGTH*2];
47 
48 	u_short	Plen[BUFFLENGTH];
49 	u_short	OrgPlen[BUFFLENGTH];
50 	u_short	Bpoint[BUFFLENGTH];
51 	u_short	Edit[BUFFLENGTH];
52 	u_short	span_l[BUFFLENGTH];
53 	u_short	Elen[BUFFLENGTH];
54 	u_short	Displen[BUFFLENGTH];
55 
56 	u_short Vindex[BUFFLENGTH * 2];
57 
58 	short	ha_point;
59 	short	ha_epoint;
60 	short	out_point;
61 	short	out_epoint;
62 	short	span_point;
63 	short	Bnum;
64 	short	Enum;
65 	short	e_point;
66 
67 	u_short line;
68 	u_short column;
69 
70 	u_short	PushCurrentVcol;
71 	u_short	Vlen;
72 	u_short	SavedRow;
73 	u_short	SavedCol;
74 	u_short	CurrentVcol;
75 	u_short	MaxVcol;
76 
77 	short	CurBun;
78 	short	PreBun;
79 
80 	Bunsetu	Bun[BUFFLENGTH];
81 
82 	wchar16_t	out_buf[BUFFLENGTH * 2];
83 	u_char	in_mode[BUFFLENGTH * 2];
84 	wchar16_t	*span_p[BUFFLENGTH];
85 	wchar16_t	*Ppoint[BUFFLENGTH];
86 	wchar16_t	*Epoint[BUFFLENGTH];
87 	wchar16_t	Halpha[BUFFLENGTH];
88 	u_char	kettei[BUFFLENGTH];
89 	u_char	Pkettei[BUFFLENGTH];
90 	u_char	Pedited[BUFFLENGTH];
91 	wchar16_t	Ebuff[EDITLEN];
92 	u_char	Bkettei[BUFFLENGTH];
93 	u_char	Dispmod[BUFFLENGTH];
94 	wchar16_t	yomiout[BUFFLENGTH * 2];
95 	wchar16_t	kanjiout[BUFFLENGTH * 4];
96 
97 	u_char	Imode;
98 	u_char	BuffMode;
99 	u_char	Kanji;
100 	u_char	Dflag;
101 	u_char	word_regist;
102 	u_char	Cflag;
103 	u_char	henkanflag;
104 
105 	u_char	wrap;
106 } Conversion;
107 
108 
109 wchar16_t osave_buf[BUFFLENGTH * 2];
110 u_short osave_mode[BUFFLENGTH * 2];
111 u_short isave_mode[BUFFLENGTH * 2];
112 u_short os_point;
113 
114 wchar16_t hsave_buf[BUFFLENGTH];
115 u_short hs_point;
116 
117 #endif /* CONVERSION_H */
118 
119