/[public]/psiconv/trunk/lib/psiconv/parse_routines.h
ViewVC logotype

Contents of /psiconv/trunk/lib/psiconv/parse_routines.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 129 - (show annotations)
Tue Jul 24 20:32:51 2001 UTC (22 years, 8 months ago) by frodo
File MIME type: text/plain
File size: 14415 byte(s)
(Frodo) Many new sheet things

  * Variable section and formula variable parsing
  * Info section
  * Name section
  * Better parsing of vararg functions

1 /*
2 parse_routines.h - Part of psiconv, a PSION 5 file formats converter
3 Copyright (c) 1999, 2000 Frodo Looijaard <frodol@dds.nl>
4
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18 */
19
20 #ifndef PSICONV_PARSE_ROUTINES_H
21 #define PSICONV_PARSE_ROUTINES_H
22
23 #include <psiconv/general.h>
24 #include <psiconv/data.h>
25 #include <psiconv/buffer.h>
26 #include <psiconv/common.h>
27
28 #ifdef __cplusplus
29 extern "C" {
30 #endif /* __cplusplus */
31
32
33 /* ******************
34 * parse_simple.c *
35 ****************** */
36
37 extern psiconv_u8 psiconv_read_u8(const psiconv_buffer buf,int lev,
38 psiconv_u32 off, int *status);
39 extern psiconv_u16 psiconv_read_u16(const psiconv_buffer buf,int lev,
40 psiconv_u32 off, int *status);
41 extern psiconv_u32 psiconv_read_u32(const psiconv_buffer buf,int lev,
42 psiconv_u32 off, int *status);
43 extern psiconv_s32 psiconv_read_sint(const psiconv_buffer buf,int lev,
44 psiconv_u32 off, int *length, int *status);
45
46 extern psiconv_S_t psiconv_read_S(const psiconv_buffer buf, int lev,
47 psiconv_u32 off, int *length, int *status);
48 extern psiconv_X_t psiconv_read_X(const psiconv_buffer buf, int lev,
49 psiconv_u32 off, int *length, int *status);
50 extern psiconv_length_t psiconv_read_length(const psiconv_buffer buf, int lev,
51 psiconv_u32 off, int *length,
52 int *status);
53 extern psiconv_size_t psiconv_read_size (const psiconv_buffer buf, int lev,
54 psiconv_u32 off, int *length,
55 int *status);
56 extern psiconv_string_t psiconv_read_string(const psiconv_buffer buf,int lev,
57 psiconv_u32 off,int *length,
58 int *status);
59 extern psiconv_string_t psiconv_read_short_string(const psiconv_buffer buf,
60 int lev,psiconv_u32 off,
61 int *length,int *status);
62
63 extern int psiconv_parse_bool(const psiconv_buffer buf, int lev,
64 psiconv_u32 off, int *length,
65 psiconv_bool_t *result);
66
67 extern psiconv_float_t psiconv_read_float(const psiconv_buffer buf, int lev,
68 psiconv_u32 off, int *length, int *status);
69
70
71
72 /* ******************
73 * parse_layout.c *
74 ****************** */
75
76 extern int psiconv_parse_color(const psiconv_buffer buf, int lev,
77 psiconv_u32 off, int *length,
78 psiconv_color *result);
79
80 extern int psiconv_parse_font(const psiconv_buffer buf, int lev,
81 psiconv_u32 off, int *length,
82 psiconv_font *result);
83
84 extern int psiconv_parse_border(const psiconv_buffer buf,int lev,
85 psiconv_u32 off, int *length,
86 psiconv_border *result);
87
88 extern int psiconv_parse_bullet(const psiconv_buffer buf,int lev,
89 psiconv_u32 off, int *length,
90 psiconv_bullet *result);
91
92 extern int psiconv_parse_tab(const psiconv_buffer buf, int lev,
93 psiconv_u32 off, int *length,
94 psiconv_tab *result);
95
96 /* Note: the next two are special, because they modify an existing
97 layout structure! If it exits due to an unexpected error, part
98 of the structure may be modified, but it is still safe to call
99 psiconv_free_{paragraph,character}_layout_list on it (and that
100 is the only safe thing to do!) */
101
102 extern int psiconv_parse_paragraph_layout_list(const psiconv_buffer buf,
103 int lev, psiconv_u32 off, int *length,
104 psiconv_paragraph_layout result);
105
106 extern int psiconv_parse_character_layout_list(const psiconv_buffer buf,
107 int lev, psiconv_u32 off, int *length,
108 psiconv_character_layout result);
109
110
111 /* ****************
112 * parse_page.c *
113 **************** */
114
115 extern int psiconv_parse_page_header(const psiconv_buffer buf,int lev,
116 psiconv_u32 off, int *length,
117 psiconv_page_header *result);
118
119 extern int psiconv_parse_page_layout_section(const psiconv_buffer buf,int lev,
120 psiconv_u32 off, int *length,
121 psiconv_page_layout_section *result);
122
123 /* ******************
124 * parse_common.c *
125 ****************** */
126
127 extern int psiconv_parse_header_section(const psiconv_buffer buf,int lev,
128 psiconv_u32 off, int *length,
129 psiconv_header_section *result);
130
131 extern int psiconv_parse_section_table_section(const psiconv_buffer buf,
132 int lev, psiconv_u32 off,
133 int *length,
134 psiconv_section_table_section *result);
135
136 extern int psiconv_parse_application_id_section(const psiconv_buffer buf,
137 int lev, psiconv_u32 off, int *length,
138 psiconv_application_id_section *result);
139
140 extern int psiconv_parse_text_section(const psiconv_buffer buf,int lev,
141 psiconv_u32 off, int *length,
142 psiconv_text_and_layout *result);
143
144 extern int psiconv_parse_styled_layout_section(const psiconv_buffer buf,
145 int lev,psiconv_u32 off,
146 int *length,
147 psiconv_text_and_layout result,
148 const psiconv_word_styles_section styles);
149 extern int psiconv_parse_styleless_layout_section(const psiconv_buffer buf,
150 int lev,psiconv_u32 off,
151 int *length,
152 psiconv_text_and_layout result,
153 const psiconv_character_layout base_char,
154 const psiconv_paragraph_layout base_para);
155
156
157 /* ******************
158 * parse_texted.c *
159 ****************** */
160
161 extern int psiconv_parse_texted_section(const psiconv_buffer buf,int lev,
162 psiconv_u32 off, int *length,
163 psiconv_texted_section *result,
164 psiconv_character_layout base_char,
165 psiconv_paragraph_layout base_para);
166
167
168 /* ****************
169 * parse_word.c *
170 **************** */
171
172 extern int psiconv_parse_word_status_section(const psiconv_buffer buf, int lev,
173 psiconv_u32 off, int *length,
174 psiconv_word_status_section *result);
175
176 extern int psiconv_parse_word_styles_section(const psiconv_buffer buf, int lev,
177 psiconv_u32 off, int *length,
178 psiconv_word_styles_section *result);
179
180
181 /* *****************
182 * parse_sheet.c *
183 ***************** */
184
185 extern int psiconv_parse_sheet_status_section(const psiconv_buffer buf, int lev,
186 psiconv_u32 off, int *length,
187 psiconv_sheet_status_section *result);
188
189 extern int psiconv_parse_sheet_formula_list(const psiconv_buffer buf, int lev,
190 psiconv_u32 off, int *length,
191 psiconv_formula_list *result);
192
193 extern int psiconv_parse_formula(const psiconv_buffer buf, int lev,
194 psiconv_u32 off, int *length,
195 psiconv_formula *result);
196
197 extern int psiconv_parse_sheet_workbook_section(const psiconv_buffer buf,
198 int lev,
199 psiconv_u32 off, int *length,
200 psiconv_sheet_workbook_section *result);
201 extern int psiconv_parse_sheet_cell(const psiconv_buffer buf, int lev,
202 psiconv_u32 off, int *length,
203 psiconv_sheet_cell *result,
204 const psiconv_sheet_cell_layout default_layout,
205 const psiconv_sheet_line_list row_default_layouts,
206 const psiconv_sheet_line_list col_default_layouts);
207
208 extern int psiconv_parse_sheet_cell_list(const psiconv_buffer buf, int lev,
209 psiconv_u32 off, int *length,
210 psiconv_sheet_cell_list *result,
211 const psiconv_sheet_cell_layout default_layout,
212 const psiconv_sheet_line_list row_default_layouts,
213 const psiconv_sheet_line_list col_default_layouts);
214 extern int psiconv_parse_sheet_worksheet_list( const psiconv_buffer buf,
215 int lev,
216 psiconv_u32 off, int *length,
217 psiconv_sheet_worksheet_list *result);
218 extern int psiconv_parse_sheet_worksheet(const psiconv_buffer buf, int lev,
219 psiconv_u32 off, int *length,
220 psiconv_sheet_worksheet *result);
221 extern int psiconv_parse_sheet_numberformat(const psiconv_buffer buf, int lev,
222 psiconv_u32 off, int *length,
223 psiconv_sheet_numberformat result);
224 extern int psiconv_parse_sheet_cell_layout(const psiconv_buffer buf, int lev,
225 psiconv_u32 off, int *length,
226 psiconv_sheet_cell_layout result);
227 extern int psiconv_parse_sheet_line(const psiconv_buffer buf, int lev,
228 psiconv_u32 off, int *length,
229 psiconv_sheet_line *result,
230 const psiconv_sheet_cell_layout default_layout);
231 extern int psiconv_parse_sheet_line_list(const psiconv_buffer buf, int lev,
232 psiconv_u32 off, int *length,
233 psiconv_sheet_line_list *result,
234 const psiconv_sheet_cell_layout default_layout);
235 extern int psiconv_parse_sheet_name_section(const psiconv_buffer buf, int lev,
236 psiconv_u32 off, int *length,
237 psiconv_sheet_name_section *result);
238 extern int psiconv_parse_sheet_info_section(const psiconv_buffer buf, int lev,
239 psiconv_u32 off, int *length,
240 psiconv_sheet_info_section *result);
241 extern int psiconv_parse_sheet_variable(const psiconv_buffer buf, int lev,
242 psiconv_u32 off, int *length,
243 psiconv_sheet_variable *result);
244 extern int psiconv_parse_sheet_variable_list(const psiconv_buffer buf, int lev,
245 psiconv_u32 off, int *length,
246 psiconv_sheet_variable_list *result);
247
248
249 /* *****************
250 * parse_image.c *
251 ***************** */
252
253 extern int psiconv_parse_paint_data_section(const psiconv_buffer buf,int lev,
254 psiconv_u32 off, int *length,
255 int isclipart,
256 psiconv_paint_data_section *result);
257
258 extern int psiconv_parse_jumptable_section(const psiconv_buffer buf,int lev,
259 psiconv_u32 off, int *length,
260 psiconv_jumptable_section *result);
261 extern int psiconv_parse_sketch_section(const psiconv_buffer buf, int lev,
262 psiconv_u32 off, int *length, int is_object,
263 psiconv_sketch_section *result);
264 extern int psiconv_parse_clipart_section(const psiconv_buffer buf, int lev,
265 psiconv_u32 off, int *length,
266 psiconv_clipart_section *result);
267
268
269
270
271
272 /* ****************
273 * parse_driver.c *
274 **************** */
275
276 extern int psiconv_parse_texted_file(const psiconv_buffer buf,int lev,
277 psiconv_u32 off, psiconv_texted_f *result);
278
279 extern int psiconv_parse_word_file(const psiconv_buffer buf,int lev,
280 psiconv_u32 off, psiconv_word_f *result);
281
282 extern int psiconv_parse_mbm_file(const psiconv_buffer buf,int lev,
283 psiconv_u32 off, psiconv_mbm_f *result);
284
285 extern int psiconv_parse_sketch_file(const psiconv_buffer buf,int lev,
286 psiconv_u32 off, psiconv_sketch_f *result);
287
288 extern int psiconv_parse_clipart_file(const psiconv_buffer buf,int lev,
289 psiconv_u32 off, psiconv_clipart_f *result);
290 extern int psiconv_parse_sheet_file(const psiconv_buffer buf,int lev,
291 psiconv_u32 off, psiconv_sheet_f *result);
292
293 #ifdef __cplusplus
294 }
295 #endif /* __cplusplus */
296
297 #endif /* PSICONV_PARSE_ROUTINES_H */

frodo@frodo.looijaard.name
ViewVC Help
Powered by ViewVC 1.1.26