1 | /* |
1 | /* |
2 | parse.h - Part of psiconv, a PSION 5 file formats converter |
2 | parse.h - Part of psiconv, a PSION 5 file formats converter |
3 | Copyright (c) 1999 Frodo Looijaard <frodol@dds.nl> |
3 | Copyright (c) 1999, 2000 Frodo Looijaard <frodol@dds.nl> |
4 | |
4 | |
5 | This program is free software; you can redistribute it and/or modify |
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 |
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 |
7 | the Free Software Foundation; either version 2 of the License, or |
8 | (at your option) any later version. |
8 | (at your option) any later version. |
… | |
… | |
15 | You should have received a copy of the GNU General Public License |
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 |
16 | along with this program; if not, write to the Free Software |
17 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
17 | Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. |
18 | */ |
18 | */ |
19 | |
19 | |
20 | /* Declarations only needed for the parser */ |
20 | /* Declarations only needed for the parser. If you want to parse, just |
|
|
21 | include this. */ |
21 | |
22 | |
22 | #ifndef PSICONV_PARSE_H |
23 | #ifndef PSICONV_PARSE_H |
23 | #define PSICONV_PARSE_H |
24 | #define PSICONV_PARSE_H |
24 | |
25 | |
25 | #include <psiconv/data.h> |
26 | #include <psiconv/data.h> |
|
|
27 | #include <psiconv/error.h> |
|
|
28 | #include <psiconv/list.h> |
|
|
29 | #include <psiconv/general.h> |
26 | |
30 | |
27 | #ifdef __cplusplus |
31 | #ifdef __cplusplus |
28 | extern "C" { |
32 | extern "C" { |
29 | #endif /* __cplusplus */ |
33 | #endif /* __cplusplus */ |
30 | |
34 | |
31 | typedef psiconv_list psiconv_buffer; /* of u8 */ |
35 | typedef psiconv_list psiconv_buffer; /* of u8 */ |
32 | |
36 | |
33 | extern psiconv_file_type_t psiconv_file_type(psiconv_buffer buf, |
37 | extern psiconv_file_type_t psiconv_file_type(psiconv_buffer buf, |
34 | int *length, |
38 | int *length, |
35 | psiconv_header_section *result); |
39 | psiconv_header_section *result); |
|
|
40 | |
|
|
41 | /* Parses a Psion file. If its return-value is non-zero, something has |
|
|
42 | gone horribly wrong (badly corrupted file, or out of memory, usually), |
|
|
43 | and *result is undefined and unallocated; in normal cases, memory is |
|
|
44 | allocated to it and it is up to you to free it (using psiconv_free_file; |
|
|
45 | this is valid even if (*result)->file equals NULL). |
|
|
46 | Note that (*result)->file may be NULL if this file type is unknown |
|
|
47 | or unsupported! */ |
36 | extern int psiconv_parse(const psiconv_buffer buf,psiconv_file *result); |
48 | extern int psiconv_parse(const psiconv_buffer buf,psiconv_file *result); |
37 | |
|
|
38 | extern int psiconv_verbosity; |
|
|
39 | |
|
|
40 | #define PSICONV_VERB_DEBUG 4 |
|
|
41 | #define PSICONV_VERB_PROGRESS 3 |
|
|
42 | #define PSICONV_VERB_WARN 2 |
|
|
43 | #define PSICONV_VERB_SILENT 1 |
|
|
44 | |
49 | |
45 | #ifdef __cplusplus |
50 | #ifdef __cplusplus |
46 | } |
51 | } |
47 | #endif /* __cplusplus */ |
52 | #endif /* __cplusplus */ |
48 | |
53 | |