Main Page
Namespaces
Classes
Files
File List
File Members
WPDocument.h
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */
2
/* libwpd
3
* Version: MPL 2.0 / LGPLv2.1+
4
*
5
* This Source Code Form is subject to the terms of the Mozilla Public
6
* License, v. 2.0. If a copy of the MPL was not distributed with this
7
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
*
9
* Major Contributor(s):
10
* Copyright (C) 2003-2005 William Lachance (wrlach@gmail.com)
11
* Copyright (C) 2003 Marc Maurer (uwog@uwog.net)
12
*
13
* For minor contributions see the git repository.
14
*
15
* Alternatively, the contents of this file may be used under the terms
16
* of the GNU Lesser General Public License Version 2.1 or later
17
* (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are
18
* applicable instead of those above.
19
*
20
* For further information visit http://libwpd.sourceforge.net
21
*/
22
23
/* "This product is not manufactured, approved, or supported by
24
* Corel Corporation or Corel Corporation Limited."
25
*/
26
27
#ifndef WPDOCUMENT_H
28
#define WPDOCUMENT_H
29
30
#ifdef DLL_EXPORT
31
#ifdef LIBWPD_BUILD
32
#define WPDAPI __declspec(dllexport)
33
#else
34
#define WPDAPI __declspec(dllimport)
35
#endif
36
#else
37
#define WPDAPI
38
#endif
39
40
#include <librevenge/librevenge.h>
41
42
namespace
libwpd
43
{
44
45
/* The "WPD_CONFIDENCE_NONE=0" must not be removed for the type detection to work well */
46
enum
WPDConfidence
{
WPD_CONFIDENCE_NONE
=0,
WPD_CONFIDENCE_UNSUPPORTED_ENCRYPTION
,
WPD_CONFIDENCE_SUPPORTED_ENCRYPTION
,
WPD_CONFIDENCE_EXCELLENT
};
47
enum
WPDResult
{
WPD_OK
,
WPD_FILE_ACCESS_ERROR
,
WPD_PARSE_ERROR
,
WPD_UNSUPPORTED_ENCRYPTION_ERROR
,
WPD_PASSWORD_MISSMATCH_ERROR
,
WPD_OLE_ERROR
,
WPD_UNKNOWN_ERROR
};
48
enum
WPDPasswordMatch
{
WPD_PASSWORD_MATCH_NONE
,
WPD_PASSWORD_MATCH_DONTKNOW
,
WPD_PASSWORD_MATCH_OK
};
49
enum
WPDFileFormat
{
WPD_FILE_FORMAT_WP6
,
WPD_FILE_FORMAT_WP5
,
WPD_FILE_FORMAT_WP42
,
WPD_FILE_FORMAT_WP3
,
WPD_FILE_FORMAT_WP1
,
WPD_FILE_FORMAT_UNKNOWN
};
50
56
class
WPDocument
57
{
58
public
:
59
static
WPDAPI
WPDConfidence
isFileFormatSupported
(librevenge::RVNGInputStream *input);
60
static
WPDAPI
WPDPasswordMatch
verifyPassword
(librevenge::RVNGInputStream *input,
const
char
*password);
61
static
WPDAPI
WPDResult
parse
(librevenge::RVNGInputStream *input, librevenge::RVNGTextInterface *documentInterface,
const
char
*password);
62
static
WPDAPI
WPDResult
parseSubDocument
(librevenge::RVNGInputStream *input, librevenge::RVNGTextInterface *documentInterface,
WPDFileFormat
fileFormat);
63
};
64
65
}
// namespace libwpd
66
67
#endif
/* WPDOCUMENT_H */
68
/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */
Generated for libwpd by
doxygen
1.8.4