/[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 163 - (show annotations)
Sat Nov 22 22:17:04 2003 UTC (20 years, 4 months ago) by frodo
File MIME type: text/plain
File size: 15953 byte(s)
(Frodo) Some more work on objects:
  * Bumped up major library version
  * Corrected parsing of sketch_section, changed struct
  * parse_sketch_section does not have the is_object flag anymore

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 extern int psiconv_parse_embedded_object(const psiconv_buffer buf, int lev,
156 psiconv_u32 off, int *length,
157 psiconv_object *result);
158 extern int psiconv_parse_object_display_section(const psiconv_buffer buf,
159 int lev,
160 psiconv_u32 off, int *length,
161 psiconv_object_display_section *result);
162 extern int psiconv_parse_object_icon_section(const psiconv_buffer buf,int lev,
163 psiconv_u32 off, int *length,
164 psiconv_object_icon_section *result);
165
166
167
168
169
170 /* ******************
171 * parse_texted.c *
172 ****************** */
173
174 extern int psiconv_parse_texted_section(const psiconv_buffer buf,int lev,
175 psiconv_u32 off, int *length,
176 psiconv_texted_section *result,
177 psiconv_character_layout base_char,
178 psiconv_paragraph_layout base_para);
179
180
181 /* ****************
182 * parse_word.c *
183 **************** */
184
185 extern int psiconv_parse_word_status_section(const psiconv_buffer buf, int lev,
186 psiconv_u32 off, int *length,
187 psiconv_word_status_section *result);
188
189 extern int psiconv_parse_word_styles_section(const psiconv_buffer buf, int lev,
190 psiconv_u32 off, int *length,
191 psiconv_word_styles_section *result);
192
193
194 /* *****************
195 * parse_sheet.c *
196 ***************** */
197
198 extern int psiconv_parse_sheet_status_section(const psiconv_buffer buf, int lev,
199 psiconv_u32 off, int *length,
200 psiconv_sheet_status_section *result);
201
202 extern int psiconv_parse_sheet_formula_list(const psiconv_buffer buf, int lev,
203 psiconv_u32 off, int *length,
204 psiconv_formula_list *result);
205
206 extern int psiconv_parse_formula(const psiconv_buffer buf, int lev,
207 psiconv_u32 off, int *length,
208 psiconv_formula *result);
209
210 extern int psiconv_parse_sheet_workbook_section(const psiconv_buffer buf,
211 int lev,
212 psiconv_u32 off, int *length,
213 psiconv_sheet_workbook_section *result);
214 extern int psiconv_parse_sheet_cell(const psiconv_buffer buf, int lev,
215 psiconv_u32 off, int *length,
216 psiconv_sheet_cell *result,
217 const psiconv_sheet_cell_layout default_layout,
218 const psiconv_sheet_line_list row_default_layouts,
219 const psiconv_sheet_line_list col_default_layouts);
220
221 extern int psiconv_parse_sheet_cell_list(const psiconv_buffer buf, int lev,
222 psiconv_u32 off, int *length,
223 psiconv_sheet_cell_list *result,
224 const psiconv_sheet_cell_layout default_layout,
225 const psiconv_sheet_line_list row_default_layouts,
226 const psiconv_sheet_line_list col_default_layouts);
227 extern int psiconv_parse_sheet_worksheet_list( const psiconv_buffer buf,
228 int lev,
229 psiconv_u32 off, int *length,
230 psiconv_sheet_worksheet_list *result);
231 extern int psiconv_parse_sheet_worksheet(const psiconv_buffer buf, int lev,
232 psiconv_u32 off, int *length,
233 psiconv_sheet_worksheet *result);
234 extern int psiconv_parse_sheet_numberformat(const psiconv_buffer buf, int lev,
235 psiconv_u32 off, int *length,
236 psiconv_sheet_numberformat result);
237 extern int psiconv_parse_sheet_cell_layout(const psiconv_buffer buf, int lev,
238 psiconv_u32 off, int *length,
239 psiconv_sheet_cell_layout result);
240 extern int psiconv_parse_sheet_line(const psiconv_buffer buf, int lev,
241 psiconv_u32 off, int *length,
242 psiconv_sheet_line *result,
243 const psiconv_sheet_cell_layout default_layout);
244 extern int psiconv_parse_sheet_line_list(const psiconv_buffer buf, int lev,
245 psiconv_u32 off, int *length,
246 psiconv_sheet_line_list *result,
247 const psiconv_sheet_cell_layout default_layout);
248 extern int psiconv_parse_sheet_name_section(const psiconv_buffer buf, int lev,
249 psiconv_u32 off, int *length,
250 psiconv_sheet_name_section *result);
251 extern int psiconv_parse_sheet_info_section(const psiconv_buffer buf, int lev,
252 psiconv_u32 off, int *length,
253 psiconv_sheet_info_section *result);
254 extern int psiconv_parse_sheet_variable(const psiconv_buffer buf, int lev,
255 psiconv_u32 off, int *length,
256 psiconv_sheet_variable *result);
257 extern int psiconv_parse_sheet_variable_list(const psiconv_buffer buf, int lev,
258 psiconv_u32 off, int *length,
259 psiconv_sheet_variable_list *result);
260 extern int psiconv_parse_sheet_grid_section(const psiconv_buffer buf, int lev,
261 psiconv_u32 off, int *length,
262 psiconv_sheet_grid_section *result);
263 extern int psiconv_parse_sheet_grid_size_list(const psiconv_buffer buf, int lev,
264 psiconv_u32 off, int *length,
265 psiconv_sheet_grid_size_list *result);
266 extern int psiconv_parse_sheet_grid_size(const psiconv_buffer buf, int lev,
267 psiconv_u32 off, int *length,
268 psiconv_sheet_grid_size *result);
269 extern int psiconv_parse_sheet_grid_break_list(const psiconv_buffer buf,
270 int lev, psiconv_u32 off, int *length,
271 psiconv_sheet_grid_break_list *result);
272
273
274
275
276 /* *****************
277 * parse_image.c *
278 ***************** */
279
280 extern int psiconv_parse_paint_data_section(const psiconv_buffer buf,int lev,
281 psiconv_u32 off, int *length,
282 int isclipart,
283 psiconv_paint_data_section *result);
284
285 extern int psiconv_parse_jumptable_section(const psiconv_buffer buf,int lev,
286 psiconv_u32 off, int *length,
287 psiconv_jumptable_section *result);
288 extern int psiconv_parse_sketch_section(const psiconv_buffer buf, int lev,
289 psiconv_u32 off, int *length,
290 psiconv_sketch_section *result);
291 extern int psiconv_parse_clipart_section(const psiconv_buffer buf, int lev,
292 psiconv_u32 off, int *length,
293 psiconv_clipart_section *result);
294
295
296
297
298
299 /* ****************
300 * parse_driver.c *
301 **************** */
302
303 extern int psiconv_parse_texted_file(const psiconv_buffer buf,int lev,
304 psiconv_u32 off, psiconv_texted_f *result);
305
306 extern int psiconv_parse_word_file(const psiconv_buffer buf,int lev,
307 psiconv_u32 off, psiconv_word_f *result);
308
309 extern int psiconv_parse_mbm_file(const psiconv_buffer buf,int lev,
310 psiconv_u32 off, psiconv_mbm_f *result);
311
312 extern int psiconv_parse_sketch_file(const psiconv_buffer buf,int lev,
313 psiconv_u32 off, psiconv_sketch_f *result);
314
315 extern int psiconv_parse_clipart_file(const psiconv_buffer buf,int lev,
316 psiconv_u32 off, psiconv_clipart_f *result);
317 extern int psiconv_parse_sheet_file(const psiconv_buffer buf,int lev,
318 psiconv_u32 off, psiconv_sheet_f *result);
319
320 #ifdef __cplusplus
321 }
322 #endif /* __cplusplus */
323
324 #endif /* PSICONV_PARSE_ROUTINES_H */

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