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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 167 - (hide annotations)
Sun Nov 23 21:47:24 2003 UTC (20 years, 5 months ago) by frodo
File MIME type: text/plain
File size: 16003 byte(s)
(Frodo) Embedded object generation works!

Not too useful though, we also need sketch or sheet generation; the only thing
actually working at the moment is embedding word docs within word docs.
Oh well. It's a good start.

1 frodo 2 /*
2     parse_routines.h - Part of psiconv, a PSION 5 file formats converter
3 frodo 63 Copyright (c) 1999, 2000 Frodo Looijaard <frodol@dds.nl>
4 frodo 2
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 frodo 71 #include <psiconv/general.h>
24 frodo 79 #include <psiconv/data.h>
25     #include <psiconv/buffer.h>
26 frodo 71 #include <psiconv/common.h>
27 frodo 2
28 frodo 55 #ifdef __cplusplus
29     extern "C" {
30     #endif /* __cplusplus */
31    
32    
33 frodo 2 /* ******************
34     * parse_simple.c *
35     ****************** */
36    
37     extern psiconv_u8 psiconv_read_u8(const psiconv_buffer buf,int lev,
38 frodo 64 psiconv_u32 off, int *status);
39 frodo 2 extern psiconv_u16 psiconv_read_u16(const psiconv_buffer buf,int lev,
40 frodo 64 psiconv_u32 off, int *status);
41 frodo 2 extern psiconv_u32 psiconv_read_u32(const psiconv_buffer buf,int lev,
42 frodo 64 psiconv_u32 off, int *status);
43 frodo 129 extern psiconv_s32 psiconv_read_sint(const psiconv_buffer buf,int lev,
44     psiconv_u32 off, int *length, int *status);
45 frodo 2
46     extern psiconv_S_t psiconv_read_S(const psiconv_buffer buf, int lev,
47 frodo 64 psiconv_u32 off, int *length, int *status);
48 frodo 2 extern psiconv_X_t psiconv_read_X(const psiconv_buffer buf, int lev,
49 frodo 64 psiconv_u32 off, int *length, int *status);
50 frodo 2 extern psiconv_length_t psiconv_read_length(const psiconv_buffer buf, int lev,
51 frodo 64 psiconv_u32 off, int *length,
52     int *status);
53 frodo 2 extern psiconv_size_t psiconv_read_size (const psiconv_buffer buf, int lev,
54 frodo 64 psiconv_u32 off, int *length,
55     int *status);
56 frodo 2 extern psiconv_string_t psiconv_read_string(const psiconv_buffer buf,int lev,
57 frodo 64 psiconv_u32 off,int *length,
58     int *status);
59 frodo 110 extern psiconv_string_t psiconv_read_short_string(const psiconv_buffer buf,
60     int lev,psiconv_u32 off,
61     int *length,int *status);
62 frodo 2
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 frodo 101 extern psiconv_float_t psiconv_read_float(const psiconv_buffer buf, int lev,
68     psiconv_u32 off, int *length, int *status);
69 frodo 2
70 frodo 101
71    
72 frodo 2 /* ******************
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 frodo 64 /* 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 frodo 2 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 frodo 79 int lev,psiconv_u32 off,
146     int *length,
147     psiconv_text_and_layout result,
148     const psiconv_word_styles_section styles);
149 frodo 2 extern int psiconv_parse_styleless_layout_section(const psiconv_buffer buf,
150 frodo 79 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 frodo 167 extern int psiconv_parse_embedded_object_section
156     (const psiconv_buffer buf, int lev,
157     psiconv_u32 off, int *length,
158     psiconv_embedded_object_section *result);
159 frodo 161 extern int psiconv_parse_object_display_section(const psiconv_buffer buf,
160     int lev,
161     psiconv_u32 off, int *length,
162     psiconv_object_display_section *result);
163     extern int psiconv_parse_object_icon_section(const psiconv_buffer buf,int lev,
164     psiconv_u32 off, int *length,
165     psiconv_object_icon_section *result);
166 frodo 2
167    
168 frodo 161
169    
170    
171 frodo 2 /* ******************
172     * parse_texted.c *
173     ****************** */
174    
175     extern int psiconv_parse_texted_section(const psiconv_buffer buf,int lev,
176     psiconv_u32 off, int *length,
177     psiconv_texted_section *result,
178     psiconv_character_layout base_char,
179     psiconv_paragraph_layout base_para);
180    
181    
182     /* ****************
183     * parse_word.c *
184     **************** */
185    
186     extern int psiconv_parse_word_status_section(const psiconv_buffer buf, int lev,
187     psiconv_u32 off, int *length,
188     psiconv_word_status_section *result);
189    
190     extern int psiconv_parse_word_styles_section(const psiconv_buffer buf, int lev,
191     psiconv_u32 off, int *length,
192     psiconv_word_styles_section *result);
193    
194 frodo 11
195     /* *****************
196 frodo 94 * parse_sheet.c *
197     ***************** */
198    
199     extern int psiconv_parse_sheet_status_section(const psiconv_buffer buf, int lev,
200     psiconv_u32 off, int *length,
201     psiconv_sheet_status_section *result);
202    
203 frodo 129 extern int psiconv_parse_sheet_formula_list(const psiconv_buffer buf, int lev,
204 frodo 97 psiconv_u32 off, int *length,
205 frodo 98 psiconv_formula_list *result);
206 frodo 97
207 frodo 98 extern int psiconv_parse_formula(const psiconv_buffer buf, int lev,
208 frodo 97 psiconv_u32 off, int *length,
209 frodo 98 psiconv_formula *result);
210 frodo 97
211 frodo 95 extern int psiconv_parse_sheet_workbook_section(const psiconv_buffer buf,
212     int lev,
213     psiconv_u32 off, int *length,
214     psiconv_sheet_workbook_section *result);
215 frodo 111 extern int psiconv_parse_sheet_cell(const psiconv_buffer buf, int lev,
216 frodo 128 psiconv_u32 off, int *length,
217     psiconv_sheet_cell *result,
218     const psiconv_sheet_cell_layout default_layout,
219     const psiconv_sheet_line_list row_default_layouts,
220     const psiconv_sheet_line_list col_default_layouts);
221    
222 frodo 111 extern int psiconv_parse_sheet_cell_list(const psiconv_buffer buf, int lev,
223 frodo 128 psiconv_u32 off, int *length,
224     psiconv_sheet_cell_list *result,
225     const psiconv_sheet_cell_layout default_layout,
226     const psiconv_sheet_line_list row_default_layouts,
227     const psiconv_sheet_line_list col_default_layouts);
228 frodo 111 extern int psiconv_parse_sheet_worksheet_list( const psiconv_buffer buf,
229     int lev,
230     psiconv_u32 off, int *length,
231     psiconv_sheet_worksheet_list *result);
232     extern int psiconv_parse_sheet_worksheet(const psiconv_buffer buf, int lev,
233     psiconv_u32 off, int *length,
234     psiconv_sheet_worksheet *result);
235     extern int psiconv_parse_sheet_numberformat(const psiconv_buffer buf, int lev,
236     psiconv_u32 off, int *length,
237 frodo 121 psiconv_sheet_numberformat result);
238 frodo 111 extern int psiconv_parse_sheet_cell_layout(const psiconv_buffer buf, int lev,
239     psiconv_u32 off, int *length,
240 frodo 121 psiconv_sheet_cell_layout result);
241 frodo 128 extern int psiconv_parse_sheet_line(const psiconv_buffer buf, int lev,
242     psiconv_u32 off, int *length,
243     psiconv_sheet_line *result,
244     const psiconv_sheet_cell_layout default_layout);
245     extern int psiconv_parse_sheet_line_list(const psiconv_buffer buf, int lev,
246     psiconv_u32 off, int *length,
247     psiconv_sheet_line_list *result,
248     const psiconv_sheet_cell_layout default_layout);
249 frodo 129 extern int psiconv_parse_sheet_name_section(const psiconv_buffer buf, int lev,
250     psiconv_u32 off, int *length,
251     psiconv_sheet_name_section *result);
252     extern int psiconv_parse_sheet_info_section(const psiconv_buffer buf, int lev,
253     psiconv_u32 off, int *length,
254     psiconv_sheet_info_section *result);
255     extern int psiconv_parse_sheet_variable(const psiconv_buffer buf, int lev,
256     psiconv_u32 off, int *length,
257     psiconv_sheet_variable *result);
258     extern int psiconv_parse_sheet_variable_list(const psiconv_buffer buf, int lev,
259     psiconv_u32 off, int *length,
260     psiconv_sheet_variable_list *result);
261 frodo 134 extern int psiconv_parse_sheet_grid_section(const psiconv_buffer buf, int lev,
262     psiconv_u32 off, int *length,
263     psiconv_sheet_grid_section *result);
264     extern int psiconv_parse_sheet_grid_size_list(const psiconv_buffer buf, int lev,
265     psiconv_u32 off, int *length,
266     psiconv_sheet_grid_size_list *result);
267     extern int psiconv_parse_sheet_grid_size(const psiconv_buffer buf, int lev,
268     psiconv_u32 off, int *length,
269     psiconv_sheet_grid_size *result);
270     extern int psiconv_parse_sheet_grid_break_list(const psiconv_buffer buf,
271     int lev, psiconv_u32 off, int *length,
272     psiconv_sheet_grid_break_list *result);
273 frodo 94
274    
275 frodo 134
276    
277 frodo 94 /* *****************
278 frodo 11 * parse_image.c *
279     ***************** */
280    
281     extern int psiconv_parse_paint_data_section(const psiconv_buffer buf,int lev,
282 frodo 45 psiconv_u32 off, int *length,
283     int isclipart,
284 frodo 11 psiconv_paint_data_section *result);
285    
286 frodo 42 extern int psiconv_parse_jumptable_section(const psiconv_buffer buf,int lev,
287 frodo 12 psiconv_u32 off, int *length,
288 frodo 42 psiconv_jumptable_section *result);
289 frodo 24 extern int psiconv_parse_sketch_section(const psiconv_buffer buf, int lev,
290 frodo 163 psiconv_u32 off, int *length,
291 frodo 24 psiconv_sketch_section *result);
292 frodo 43 extern int psiconv_parse_clipart_section(const psiconv_buffer buf, int lev,
293     psiconv_u32 off, int *length,
294     psiconv_clipart_section *result);
295 frodo 11
296 frodo 12
297    
298 frodo 24
299 frodo 43
300 frodo 2 /* ****************
301     * parse_driver.c *
302     **************** */
303    
304     extern int psiconv_parse_texted_file(const psiconv_buffer buf,int lev,
305     psiconv_u32 off, psiconv_texted_f *result);
306    
307     extern int psiconv_parse_word_file(const psiconv_buffer buf,int lev,
308     psiconv_u32 off, psiconv_word_f *result);
309    
310 frodo 12 extern int psiconv_parse_mbm_file(const psiconv_buffer buf,int lev,
311     psiconv_u32 off, psiconv_mbm_f *result);
312 frodo 2
313 frodo 24 extern int psiconv_parse_sketch_file(const psiconv_buffer buf,int lev,
314     psiconv_u32 off, psiconv_sketch_f *result);
315    
316 frodo 41 extern int psiconv_parse_clipart_file(const psiconv_buffer buf,int lev,
317     psiconv_u32 off, psiconv_clipart_f *result);
318 frodo 94 extern int psiconv_parse_sheet_file(const psiconv_buffer buf,int lev,
319     psiconv_u32 off, psiconv_sheet_f *result);
320    
321 frodo 55 #ifdef __cplusplus
322     }
323     #endif /* __cplusplus */
324 frodo 41
325 frodo 2 #endif /* PSICONV_PARSE_ROUTINES_H */

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