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 "data.h" |
26 | #include <psiconv/general.h> |
26 | typedef psiconv_list psiconv_buffer; /* of u8 */ |
27 | #include <psiconv/configuration.h> |
|
|
28 | #include <psiconv/error.h> |
|
|
29 | #include <psiconv/data.h> |
|
|
30 | #include <psiconv/common.h> |
|
|
31 | #include <psiconv/list.h> |
|
|
32 | #include <psiconv/buffer.h> |
27 | |
33 | |
|
|
34 | #ifdef __cplusplus |
|
|
35 | extern "C" { |
|
|
36 | #endif /* __cplusplus */ |
|
|
37 | |
28 | extern psiconv_file_type_t psiconv_file_type(psiconv_buffer buf, |
38 | extern psiconv_file_type_t psiconv_file_type(psiconv_config config, |
|
|
39 | psiconv_buffer buf, |
29 | int *length, |
40 | int *length, |
30 | psiconv_header_section *result); |
41 | psiconv_header_section *result); |
31 | extern int psiconv_parse(const psiconv_buffer buf,psiconv_file *result); |
|
|
32 | |
42 | |
33 | extern int psiconv_verbosity; |
43 | /* Parses a Psion file. If its return-value is non-zero, something has |
|
|
44 | gone horribly wrong (badly corrupted file, or out of memory, usually), |
|
|
45 | and *result is undefined and unallocated; in normal cases, memory is |
|
|
46 | allocated to it and it is up to you to free it (using psiconv_free_file; |
|
|
47 | this is valid even if (*result)->file equals NULL). |
|
|
48 | Note that (*result)->file may be NULL if this file type is unknown |
|
|
49 | or unsupported! */ |
|
|
50 | extern int psiconv_parse(psiconv_config config, |
|
|
51 | const psiconv_buffer buf,psiconv_file *result); |
34 | |
52 | |
35 | #define PSICONV_VERB_DEBUG 4 |
53 | #ifdef __cplusplus |
36 | #define PSICONV_VERB_PROGRESS 3 |
54 | } |
37 | #define PSICONV_VERB_WARN 2 |
55 | #endif /* __cplusplus */ |
38 | #define PSICONV_VERB_SILENT 1 |
|
|
39 | |
56 | |
40 | #endif /* def PSICONV_PARSE_H */ |
57 | #endif /* def PSICONV_PARSE_H */ |